@blinkk/root-cms 3.0.6 → 3.1.2
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/README.md +77 -0
- package/dist/app.js +6 -4
- package/dist/browser-client/browser-client.d.ts +148 -0
- package/dist/browser-client/embed-window.d.ts +66 -0
- package/dist/browser-client/emitter.d.ts +11 -0
- package/dist/browser-client.js +377 -0
- package/dist/{chunk-RXWDB3K4.js → chunk-4VZTYUQ7.js} +1 -1
- package/dist/{chunk-N4K6ICFR.js → chunk-AFBSITEO.js} +4 -6
- package/dist/{chunk-PNLLZXVY.js → chunk-AJDMNTZQ.js} +2 -2
- package/dist/chunk-J72JK4KR.js +8 -0
- package/dist/{chunk-7L5OI5ES.js → chunk-X5CNR4CK.js} +8 -4
- package/dist/cli.js +2 -1
- package/dist/client.js +2 -1
- package/dist/core/client.d.ts +5 -0
- package/dist/core/plugin.d.ts +1 -1
- package/dist/core/translations.d.ts +19 -4
- package/dist/core.js +4 -2
- package/dist/functions.js +4 -3
- package/dist/plugin.js +38 -7
- package/dist/shared/embed-protocol.d.ts +72 -0
- package/dist/shared/translation-languages.d.ts +67 -0
- package/dist/ui/AIPage-2N5UYBRX.js +1 -0
- package/dist/ui/AssetsPage-KLGNE6D6.js +1 -0
- package/dist/ui/CollectionPage-D7IG6526.js +1 -0
- package/dist/ui/ComparePage-726NIJW5.js +1 -0
- package/dist/ui/DataPage-YMSQCIVK.js +1 -0
- package/dist/ui/DataSourcePage-7VPFUG3K.js +1 -0
- package/dist/ui/DocTranslationsPage-FO7O76VK.js +1 -0
- package/dist/ui/DocumentPage-M7SJ4ITQ.js +1 -0
- package/dist/ui/EditDataSourcePage-Y7YK6IWT.js +1 -0
- package/dist/ui/EditReleasePage-XZ4RHHRT.js +1 -0
- package/dist/ui/EmbeddedAIPage-RJOUIPF2.js +1 -0
- package/dist/ui/EmbeddedDocumentPage-4TLMCDSO.js +1 -0
- package/dist/ui/{ImageEditorDialog-QEULJAT2.js → ImageEditorDialog-GGS4VFEA.js} +2 -2
- package/dist/ui/LogsPage-IGDDZGEI.js +1 -0
- package/dist/ui/NewDataSourcePage-YUPRHL7F.js +1 -0
- package/dist/ui/NewReleasePage-6HHLYOQP.js +1 -0
- package/dist/ui/NotFoundPage-A6OCYREA.js +1 -0
- package/dist/ui/ProjectPage-UHRXNN7O.js +1 -0
- package/dist/ui/ReleasePage-V2JMPWX7.js +1 -0
- package/dist/ui/ReleasesPage-SCR4SVKN.js +1 -0
- package/dist/ui/SettingsPage-5XKHPG6K.js +1 -0
- package/dist/ui/SidebarToolsPage-VXVRZ2C3.js +1 -0
- package/dist/ui/TaskPage-LDPRN3G6.js +1 -0
- package/dist/ui/TasksPage-DIXUWYXM.js +1 -0
- package/dist/ui/TranslationsArbPage-QPD3ZBT4.js +2 -0
- package/dist/ui/TranslationsEditPage-475Z7UPC.js +1 -0
- package/dist/ui/{TranslationsPage-OBN6CQZZ.js → TranslationsPage-674JU6L4.js} +32 -32
- package/dist/ui/{chunk-N4DFAIC5.js → chunk-2EPQJUGM.js} +1 -1
- package/dist/ui/{chunk-WKOX3VFN.js → chunk-2RAVKX2Z.js} +2 -2
- package/dist/ui/chunk-2S5HMST6.js +1 -0
- package/dist/ui/{chunk-V7RAXP2W.js → chunk-3E6CASIN.js} +1 -1
- package/dist/ui/chunk-4ALFT4ES.js +141 -0
- package/dist/ui/{chunk-KYKFNAX4.js → chunk-4FGASIIX.js} +1 -1
- package/dist/ui/chunk-4ISFTE2G.js +5 -0
- package/dist/ui/{chunk-SKEP5WYH.js → chunk-7SK47HHZ.js} +3 -3
- package/dist/ui/chunk-AAHM6RYJ.js +1 -0
- package/dist/ui/chunk-AGFPVTBA.js +1 -0
- package/dist/ui/chunk-BUNR5EU3.js +1 -0
- package/dist/ui/{chunk-N5Y5OWTV.js → chunk-BW2MKGNP.js} +1 -1
- package/dist/ui/{chunk-2225WAJ2.js → chunk-CAY5NM4Z.js} +1 -1
- package/dist/ui/{chunk-4KE2SZKH.js → chunk-D3UIZHRK.js} +1 -1
- package/dist/ui/{chunk-HYARD7BK.js → chunk-ENQKSLGJ.js} +1 -1
- package/dist/ui/chunk-FBSBL476.js +1 -0
- package/dist/ui/{chunk-NQB37NMX.js → chunk-FJLNXXE3.js} +1 -1
- package/dist/ui/chunk-GT5EQSEX.js +1 -0
- package/dist/ui/{chunk-KPJ53X55.js → chunk-HARRKJFZ.js} +1 -1
- package/dist/ui/{chunk-6E7PGMZX.js → chunk-HO3W4RVG.js} +1 -1
- package/dist/ui/{chunk-CVGYBXVH.js → chunk-J5E457OI.js} +1 -1
- package/dist/ui/{chunk-SEUH7LN2.js → chunk-JBHRZ4EX.js} +1 -1
- package/dist/ui/{chunk-W3HIZQ4Z.js → chunk-JS6TK4OP.js} +1 -1
- package/dist/ui/{chunk-BEDUTYQP.js → chunk-JTIQBW33.js} +1 -1
- package/dist/ui/{chunk-ORXEMIQC.js → chunk-KRNQ6L35.js} +1 -1
- package/dist/ui/chunk-LROR6N3B.js +7 -0
- package/dist/ui/{chunk-4CUWZQXT.js.LEGAL.txt → chunk-LROR6N3B.js.LEGAL.txt} +6 -1
- package/dist/ui/{chunk-6GPTGBA7.js → chunk-MSYTAJBV.js} +1 -1
- package/dist/ui/{chunk-RQKL4KXY.js → chunk-N3JSLTMV.js} +1 -1
- package/dist/ui/{chunk-NMBXHKIJ.js → chunk-NJMNOITA.js} +1 -1
- package/dist/ui/{chunk-D37DCENS.js → chunk-NSOTG64N.js} +1 -1
- package/dist/ui/chunk-NWHGT476.js +1 -0
- package/dist/ui/chunk-P2Z66DHV.js +1 -0
- package/dist/ui/{chunk-4IXGYXA2.js → chunk-PTPYMVFW.js} +1 -1
- package/dist/ui/{chunk-OVRTVMO5.js → chunk-Q7IU4QCY.js} +1 -1
- package/dist/ui/{chunk-XYBHH5L4.js → chunk-QF3GPZTI.js} +1 -1
- package/dist/ui/{chunk-AXETBZ6T.js → chunk-QHJOTXYB.js} +1 -1
- package/dist/ui/{chunk-UHWNLNP4.js → chunk-RHAJNURN.js} +1 -1
- package/dist/ui/chunk-SENZVSVZ.js +1 -0
- package/dist/ui/chunk-SKQECSUR.js +1 -0
- package/dist/ui/chunk-TOGLZDK3.js +1 -0
- package/dist/ui/chunk-TPJCPCRR.js +1 -0
- package/dist/ui/{chunk-EMYXSVTD.js → chunk-TVYAZN2Q.js} +1 -1
- package/dist/ui/{chunk-GDSSFO5R.js → chunk-UUVAD4U4.js} +1 -1
- package/dist/ui/{chunk-EGEB6N4J.js → chunk-VD6G5NV4.js} +11 -11
- package/dist/ui/{chunk-DXKEDMEI.js → chunk-VJUMFJIX.js} +1 -1
- package/dist/ui/chunk-W5DOO6ID.js +1 -0
- package/dist/ui/{chunk-6MOPIV5T.js → chunk-W6LP22IK.js} +1 -1
- package/dist/ui/{chunk-3XYCOR6Z.js → chunk-WFQU7V3W.js} +1 -1
- package/dist/ui/chunk-WMICEDOT.js +1 -0
- package/dist/ui/chunk-XMESZUC5.js +1 -0
- package/dist/ui/{chunk-T47V6AGW.js → chunk-XWX2622O.js} +1 -1
- package/dist/ui/chunk-YMBBWVBB.js +3 -0
- package/dist/ui/chunk-YXSXWFLZ.js +1 -0
- package/dist/ui/chunk-ZMS6NIGG.js +1 -0
- package/dist/ui/gcs-ECSDFCIU.js +1 -0
- package/dist/ui/ui.css +1 -1
- package/dist/ui/ui.js +1 -1
- package/package.json +7 -3
- package/dist/ui/AIPage-JPZ4QUB4.js +0 -1
- package/dist/ui/AssetsPage-GDJMKS3M.js +0 -1
- package/dist/ui/CollectionPage-5DVXJEET.js +0 -1
- package/dist/ui/ComparePage-LIXA6G66.js +0 -1
- package/dist/ui/DataPage-AP4Z5JPS.js +0 -1
- package/dist/ui/DataSourcePage-WO3ZKMFI.js +0 -1
- package/dist/ui/DocTranslationsPage-QKYFIVHP.js +0 -1
- package/dist/ui/DocumentPage-ON43I5KM.js +0 -1
- package/dist/ui/EditDataSourcePage-XVMEV2LJ.js +0 -1
- package/dist/ui/EditReleasePage-A2NB5TFG.js +0 -1
- package/dist/ui/LogsPage-4LZJX3O4.js +0 -1
- package/dist/ui/NewDataSourcePage-4YWX7IOG.js +0 -1
- package/dist/ui/NewReleasePage-HWLVTEXX.js +0 -1
- package/dist/ui/NotFoundPage-72AXQAYX.js +0 -1
- package/dist/ui/ProjectPage-L4GYDIA5.js +0 -1
- package/dist/ui/ReleasePage-43BSWL5B.js +0 -1
- package/dist/ui/ReleasesPage-CJXAZBP6.js +0 -1
- package/dist/ui/SettingsPage-SYXAMKSF.js +0 -1
- package/dist/ui/SidebarToolsPage-OFF5BOXP.js +0 -1
- package/dist/ui/TaskPage-HBDLHFI5.js +0 -1
- package/dist/ui/TasksPage-OLCDTQNB.js +0 -1
- package/dist/ui/TranslationsArbPage-E3NCMAMS.js +0 -2
- package/dist/ui/TranslationsEditPage-IWOI7Y5G.js +0 -1
- package/dist/ui/chunk-32LRQ5MJ.js +0 -1
- package/dist/ui/chunk-3HVDIPSS.js +0 -1
- package/dist/ui/chunk-3IDOZ4MG.js +0 -1
- package/dist/ui/chunk-4CUWZQXT.js +0 -7
- package/dist/ui/chunk-AOCBDKLV.js +0 -1
- package/dist/ui/chunk-DUJYIOLE.js +0 -5
- package/dist/ui/chunk-IDYKCAAL.js +0 -1
- package/dist/ui/chunk-IKED2IGU.js +0 -1
- package/dist/ui/chunk-J3EGGI57.js +0 -1
- package/dist/ui/chunk-MZP6RIG2.js +0 -1
- package/dist/ui/chunk-NQ5ARARP.js +0 -1
- package/dist/ui/chunk-RI2JWWU3.js +0 -141
- package/dist/ui/chunk-RPOP6MVJ.js +0 -1
- package/dist/ui/chunk-TDKVKTW4.js +0 -1
- package/dist/ui/chunk-TZEZEMRQ.js +0 -1
- package/dist/ui/chunk-UA7UCTX5.js +0 -1
- package/dist/ui/chunk-UFQSZ6J2.js +0 -3
- package/dist/ui/gcs-L33FIRZU.js +0 -1
- /package/dist/ui/{ImageEditorDialog-QEULJAT2.js.LEGAL.txt → ImageEditorDialog-GGS4VFEA.js.LEGAL.txt} +0 -0
- /package/dist/ui/{chunk-RI2JWWU3.js.LEGAL.txt → chunk-4ALFT4ES.js.LEGAL.txt} +0 -0
- /package/dist/ui/{chunk-SKEP5WYH.js.LEGAL.txt → chunk-7SK47HHZ.js.LEGAL.txt} +0 -0
- /package/dist/ui/{chunk-NMBXHKIJ.js.LEGAL.txt → chunk-NJMNOITA.js.LEGAL.txt} +0 -0
- /package/dist/ui/{chunk-EGEB6N4J.js.LEGAL.txt → chunk-VD6G5NV4.js.LEGAL.txt} +0 -0
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import{A as Cu,B as xu,C as Du,D as Nu,E as ku,H as Ws,e as $s,f as Su,i as bu,o as Ru,p as Pu,s as Qs,x as wt,y as Vu,z as kt}from"./chunk-DTMZLUNY.js";var Mu=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ou={};var Gt,Hs;(function(){var n;function t(E,g){function y(){}y.prototype=g.prototype,E.D=g.prototype,E.prototype=new y,E.prototype.constructor=E,E.C=function(_,w,v){for(var p=Array(arguments.length-2),Ut=2;Ut<arguments.length;Ut++)p[Ut-2]=arguments[Ut];return g.prototype[w].apply(_,p)}}function e(){this.blockSize=-1}function r(){this.blockSize=-1,this.blockSize=64,this.g=Array(4),this.B=Array(this.blockSize),this.o=this.h=0,this.s()}t(r,e),r.prototype.s=function(){this.g[0]=1732584193,this.g[1]=4023233417,this.g[2]=2562383102,this.g[3]=271733878,this.o=this.h=0};function i(E,g,y){y||(y=0);var _=Array(16);if(typeof g=="string")for(var w=0;16>w;++w)_[w]=g.charCodeAt(y++)|g.charCodeAt(y++)<<8|g.charCodeAt(y++)<<16|g.charCodeAt(y++)<<24;else for(w=0;16>w;++w)_[w]=g[y++]|g[y++]<<8|g[y++]<<16|g[y++]<<24;g=E.g[0],y=E.g[1],w=E.g[2];var v=E.g[3],p=g+(v^y&(w^v))+_[0]+3614090360&4294967295;g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[1]+3905402710&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[2]+606105819&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[3]+3250441966&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(v^y&(w^v))+_[4]+4118548399&4294967295,g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[5]+1200080426&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[6]+2821735955&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[7]+4249261313&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(v^y&(w^v))+_[8]+1770035416&4294967295,g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[9]+2336552879&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[10]+4294925233&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[11]+2304563134&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(v^y&(w^v))+_[12]+1804603682&4294967295,g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[13]+4254626195&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[14]+2792965006&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[15]+1236535329&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(w^v&(y^w))+_[1]+4129170786&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[6]+3225465664&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[11]+643717713&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[0]+3921069994&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(w^v&(y^w))+_[5]+3593408605&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[10]+38016083&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[15]+3634488961&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[4]+3889429448&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(w^v&(y^w))+_[9]+568446438&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[14]+3275163606&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[3]+4107603335&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[8]+1163531501&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(w^v&(y^w))+_[13]+2850285829&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[2]+4243563512&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[7]+1735328473&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[12]+2368359562&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(y^w^v)+_[5]+4294588738&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[8]+2272392833&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[11]+1839030562&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[14]+4259657740&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(y^w^v)+_[1]+2763975236&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[4]+1272893353&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[7]+4139469664&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[10]+3200236656&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(y^w^v)+_[13]+681279174&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[0]+3936430074&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[3]+3572445317&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[6]+76029189&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(y^w^v)+_[9]+3654602809&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[12]+3873151461&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[15]+530742520&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[2]+3299628645&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(w^(y|~v))+_[0]+4096336452&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[7]+1126891415&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[14]+2878612391&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[5]+4237533241&4294967295,y=w+(p<<21&4294967295|p>>>11),p=g+(w^(y|~v))+_[12]+1700485571&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[3]+2399980690&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[10]+4293915773&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[1]+2240044497&4294967295,y=w+(p<<21&4294967295|p>>>11),p=g+(w^(y|~v))+_[8]+1873313359&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[15]+4264355552&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[6]+2734768916&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[13]+1309151649&4294967295,y=w+(p<<21&4294967295|p>>>11),p=g+(w^(y|~v))+_[4]+4149444226&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[11]+3174756917&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[2]+718787259&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[9]+3951481745&4294967295,E.g[0]=E.g[0]+g&4294967295,E.g[1]=E.g[1]+(w+(p<<21&4294967295|p>>>11))&4294967295,E.g[2]=E.g[2]+w&4294967295,E.g[3]=E.g[3]+v&4294967295}r.prototype.u=function(E,g){g===void 0&&(g=E.length);for(var y=g-this.blockSize,_=this.B,w=this.h,v=0;v<g;){if(w==0)for(;v<=y;)i(this,E,v),v+=this.blockSize;if(typeof E=="string"){for(;v<g;)if(_[w++]=E.charCodeAt(v++),w==this.blockSize){i(this,_),w=0;break}}else for(;v<g;)if(_[w++]=E[v++],w==this.blockSize){i(this,_),w=0;break}}this.h=w,this.o+=g},r.prototype.v=function(){var E=Array((56>this.h?this.blockSize:2*this.blockSize)-this.h);E[0]=128;for(var g=1;g<E.length-8;++g)E[g]=0;var y=8*this.o;for(g=E.length-8;g<E.length;++g)E[g]=y&255,y/=256;for(this.u(E),E=Array(16),g=y=0;4>g;++g)for(var _=0;32>_;_+=8)E[y++]=this.g[g]>>>_&255;return E};function o(E,g){var y=l;return Object.prototype.hasOwnProperty.call(y,E)?y[E]:y[E]=g(E)}function u(E,g){this.h=g;for(var y=[],_=!0,w=E.length-1;0<=w;w--){var v=E[w]|0;_&&v==g||(y[w]=v,_=!1)}this.g=y}var l={};function h(E){return-128<=E&&128>E?o(E,function(g){return new u([g|0],0>g?-1:0)}):new u([E|0],0>E?-1:0)}function f(E){if(isNaN(E)||!isFinite(E))return T;if(0>E)return C(f(-E));for(var g=[],y=1,_=0;E>=y;_++)g[_]=E/y|0,y*=4294967296;return new u(g,0)}function m(E,g){if(E.length==0)throw Error("number format error: empty string");if(g=g||10,2>g||36<g)throw Error("radix out of range: "+g);if(E.charAt(0)=="-")return C(m(E.substring(1),g));if(0<=E.indexOf("-"))throw Error('number format error: interior "-" character');for(var y=f(Math.pow(g,8)),_=T,w=0;w<E.length;w+=8){var v=Math.min(8,E.length-w),p=parseInt(E.substring(w,w+v),g);8>v?(v=f(Math.pow(g,v)),_=_.j(v).add(f(p))):(_=_.j(y),_=_.add(f(p)))}return _}var T=h(0),A=h(1),R=h(16777216);n=u.prototype,n.m=function(){if(k(this))return-C(this).m();for(var E=0,g=1,y=0;y<this.g.length;y++){var _=this.i(y);E+=(0<=_?_:4294967296+_)*g,g*=4294967296}return E},n.toString=function(E){if(E=E||10,2>E||36<E)throw Error("radix out of range: "+E);if(D(this))return"0";if(k(this))return"-"+C(this).toString(E);for(var g=f(Math.pow(E,6)),y=this,_="";;){var w=pt(y,g).g;y=G(y,w.j(g));var v=((0<y.g.length?y.g[0]:y.h)>>>0).toString(E);if(y=w,D(y))return v+_;for(;6>v.length;)v="0"+v;_=v+_}},n.i=function(E){return 0>E?0:E<this.g.length?this.g[E]:this.h};function D(E){if(E.h!=0)return!1;for(var g=0;g<E.g.length;g++)if(E.g[g]!=0)return!1;return!0}function k(E){return E.h==-1}n.l=function(E){return E=G(this,E),k(E)?-1:D(E)?0:1};function C(E){for(var g=E.g.length,y=[],_=0;_<g;_++)y[_]=~E.g[_];return new u(y,~E.h).add(A)}n.abs=function(){return k(this)?C(this):this},n.add=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0,w=0;w<=g;w++){var v=_+(this.i(w)&65535)+(E.i(w)&65535),p=(v>>>16)+(this.i(w)>>>16)+(E.i(w)>>>16);_=p>>>16,v&=65535,p&=65535,y[w]=p<<16|v}return new u(y,y[y.length-1]&-2147483648?-1:0)};function G(E,g){return E.add(C(g))}n.j=function(E){if(D(this)||D(E))return T;if(k(this))return k(E)?C(this).j(C(E)):C(C(this).j(E));if(k(E))return C(this.j(C(E)));if(0>this.l(R)&&0>E.l(R))return f(this.m()*E.m());for(var g=this.g.length+E.g.length,y=[],_=0;_<2*g;_++)y[_]=0;for(_=0;_<this.g.length;_++)for(var w=0;w<E.g.length;w++){var v=this.i(_)>>>16,p=this.i(_)&65535,Ut=E.i(w)>>>16,hn=E.i(w)&65535;y[2*_+2*w]+=p*hn,K(y,2*_+2*w),y[2*_+2*w+1]+=v*hn,K(y,2*_+2*w+1),y[2*_+2*w+1]+=p*Ut,K(y,2*_+2*w+1),y[2*_+2*w+2]+=v*Ut,K(y,2*_+2*w+2)}for(_=0;_<g;_++)y[_]=y[2*_+1]<<16|y[2*_];for(_=g;_<2*g;_++)y[_]=0;return new u(y,0)};function K(E,g){for(;(E[g]&65535)!=E[g];)E[g+1]+=E[g]>>>16,E[g]&=65535,g++}function $(E,g){this.g=E,this.h=g}function pt(E,g){if(D(g))throw Error("division by zero");if(D(E))return new $(T,T);if(k(E))return g=pt(C(E),g),new $(C(g.g),C(g.h));if(k(g))return g=pt(E,C(g)),new $(C(g.g),g.h);if(30<E.g.length){if(k(E)||k(g))throw Error("slowDivide_ only works with positive integers.");for(var y=A,_=g;0>=_.l(E);)y=Nt(y),_=Nt(_);var w=at(y,1),v=at(_,1);for(_=at(_,2),y=at(y,2);!D(_);){var p=v.add(_);0>=p.l(E)&&(w=w.add(y),v=p),_=at(_,1),y=at(y,1)}return g=G(E,w.j(g)),new $(w,g)}for(w=T;0<=E.l(g);){for(y=Math.max(1,Math.floor(E.m()/g.m())),_=Math.ceil(Math.log(y)/Math.LN2),_=48>=_?1:Math.pow(2,_-48),v=f(y),p=v.j(g);k(p)||0<p.l(E);)y-=_,v=f(y),p=v.j(g);D(v)&&(v=A),w=w.add(v),E=G(E,p)}return new $(w,E)}n.A=function(E){return pt(this,E).h},n.and=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0;_<g;_++)y[_]=this.i(_)&E.i(_);return new u(y,this.h&E.h)},n.or=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0;_<g;_++)y[_]=this.i(_)|E.i(_);return new u(y,this.h|E.h)},n.xor=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0;_<g;_++)y[_]=this.i(_)^E.i(_);return new u(y,this.h^E.h)};function Nt(E){for(var g=E.g.length+1,y=[],_=0;_<g;_++)y[_]=E.i(_)<<1|E.i(_-1)>>>31;return new u(y,E.h)}function at(E,g){var y=g>>5;g%=32;for(var _=E.g.length-y,w=[],v=0;v<_;v++)w[v]=0<g?E.i(v+y)>>>g|E.i(v+y+1)<<32-g:E.i(v+y);return new u(w,E.h)}r.prototype.digest=r.prototype.v,r.prototype.reset=r.prototype.s,r.prototype.update=r.prototype.u,Hs=Ou.Md5=r,u.prototype.add=u.prototype.add,u.prototype.multiply=u.prototype.j,u.prototype.modulo=u.prototype.A,u.prototype.compare=u.prototype.l,u.prototype.toNumber=u.prototype.m,u.prototype.toString=u.prototype.toString,u.prototype.getBits=u.prototype.i,u.fromNumber=f,u.fromString=m,Gt=Ou.Integer=u}).apply(typeof Mu<"u"?Mu:typeof self<"u"?self:typeof window<"u"?window:{});var Tr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},zt={};var Js,xh,Oe,Xs,Cn,Ir,Ys,Zs,ti;(function(){var n,t=typeof Object.defineProperties=="function"?Object.defineProperty:function(s,a,c){return s==Array.prototype||s==Object.prototype||(s[a]=c.value),s};function e(s){s=[typeof globalThis=="object"&&globalThis,s,typeof window=="object"&&window,typeof self=="object"&&self,typeof Tr=="object"&&Tr];for(var a=0;a<s.length;++a){var c=s[a];if(c&&c.Math==Math)return c}throw Error("Cannot find global object")}var r=e(this);function i(s,a){if(a)t:{var c=r;s=s.split(".");for(var d=0;d<s.length-1;d++){var I=s[d];if(!(I in c))break t;c=c[I]}s=s[s.length-1],d=c[s],a=a(d),a!=d&&a!=null&&t(c,s,{configurable:!0,writable:!0,value:a})}}function o(s,a){s instanceof String&&(s+="");var c=0,d=!1,I={next:function(){if(!d&&c<s.length){var S=c++;return{value:a(S,s[S]),done:!1}}return d=!0,{done:!0,value:void 0}}};return I[Symbol.iterator]=function(){return I},I}i("Array.prototype.values",function(s){return s||function(){return o(this,function(a,c){return c})}});var u=u||{},l=this||self;function h(s){var a=typeof s;return a=a!="object"?a:s?Array.isArray(s)?"array":a:"null",a=="array"||a=="object"&&typeof s.length=="number"}function f(s){var a=typeof s;return a=="object"&&s!=null||a=="function"}function m(s,a,c){return s.call.apply(s.bind,arguments)}function T(s,a,c){if(!s)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var I=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(I,d),s.apply(a,I)}}return function(){return s.apply(a,arguments)}}function A(s,a,c){return A=Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?m:T,A.apply(null,arguments)}function R(s,a){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();return d.push.apply(d,arguments),s.apply(this,d)}}function D(s,a){function c(){}c.prototype=a.prototype,s.aa=a.prototype,s.prototype=new c,s.prototype.constructor=s,s.Qb=function(d,I,S){for(var x=Array(arguments.length-2),Q=2;Q<arguments.length;Q++)x[Q-2]=arguments[Q];return a.prototype[I].apply(d,x)}}function k(s){let a=s.length;if(0<a){let c=Array(a);for(let d=0;d<a;d++)c[d]=s[d];return c}return[]}function C(s,a){for(let c=1;c<arguments.length;c++){let d=arguments[c];if(h(d)){let I=s.length||0,S=d.length||0;s.length=I+S;for(let x=0;x<S;x++)s[I+x]=d[x]}else s.push(d)}}class G{constructor(a,c){this.i=a,this.j=c,this.h=0,this.g=null}get(){let a;return 0<this.h?(this.h--,a=this.g,this.g=a.next,a.next=null):a=this.i(),a}}function K(s){return/^[\s\xa0]*$/.test(s)}function $(){var s=l.navigator;return s&&(s=s.userAgent)?s:""}function pt(s){return pt[" "](s),s}pt[" "]=function(){};var Nt=$().indexOf("Gecko")!=-1&&!($().toLowerCase().indexOf("webkit")!=-1&&$().indexOf("Edge")==-1)&&!($().indexOf("Trident")!=-1||$().indexOf("MSIE")!=-1)&&$().indexOf("Edge")==-1;function at(s,a,c){for(let d in s)a.call(c,s[d],d,s)}function E(s,a){for(let c in s)a.call(void 0,s[c],c,s)}function g(s){let a={};for(let c in s)a[c]=s[c];return a}let y="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function _(s,a){let c,d;for(let I=1;I<arguments.length;I++){d=arguments[I];for(c in d)s[c]=d[c];for(let S=0;S<y.length;S++)c=y[S],Object.prototype.hasOwnProperty.call(d,c)&&(s[c]=d[c])}}function w(s){var a=1;s=s.split(":");let c=[];for(;0<a&&s.length;)c.push(s.shift()),a--;return s.length&&c.push(s.join(":")),c}function v(s){l.setTimeout(()=>{throw s},0)}function p(){var s=Is;let a=null;return s.g&&(a=s.g,s.g=s.g.next,s.g||(s.h=null),a.next=null),a}class Ut{constructor(){this.h=this.g=null}add(a,c){let d=hn.get();d.set(a,c),this.h?this.h.next=d:this.g=d,this.h=d}}var hn=new G(()=>new Xl,s=>s.reset());class Xl{constructor(){this.next=this.g=this.h=null}set(a,c){this.h=a,this.g=c,this.next=null}reset(){this.next=this.g=this.h=null}}let dn,fn=!1,Is=new Ut,Aa=()=>{let s=l.Promise.resolve(void 0);dn=()=>{s.then(Yl)}};var Yl=()=>{for(var s;s=p();){try{s.h.call(s.g)}catch(c){v(c)}var a=hn;a.j(s),100>a.h&&(a.h++,s.next=a.g,a.g=s)}fn=!1};function Yt(){this.s=this.s,this.C=this.C}Yt.prototype.s=!1,Yt.prototype.ma=function(){this.s||(this.s=!0,this.N())},Yt.prototype.N=function(){if(this.C)for(;this.C.length;)this.C.shift()()};function ut(s,a){this.type=s,this.g=this.target=a,this.defaultPrevented=!1}ut.prototype.h=function(){this.defaultPrevented=!0};var Zl=(function(){if(!l.addEventListener||!Object.defineProperty)return!1;var s=!1,a=Object.defineProperty({},"passive",{get:function(){s=!0}});try{let c=()=>{};l.addEventListener("test",c,a),l.removeEventListener("test",c,a)}catch{}return s})();function mn(s,a){if(ut.call(this,s?s.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,s){var c=this.type=s.type,d=s.changedTouches&&s.changedTouches.length?s.changedTouches[0]:null;if(this.target=s.target||s.srcElement,this.g=a,a=s.relatedTarget){if(Nt){t:{try{pt(a.nodeName);var I=!0;break t}catch{}I=!1}I||(a=null)}}else c=="mouseover"?a=s.fromElement:c=="mouseout"&&(a=s.toElement);this.relatedTarget=a,d?(this.clientX=d.clientX!==void 0?d.clientX:d.pageX,this.clientY=d.clientY!==void 0?d.clientY:d.pageY,this.screenX=d.screenX||0,this.screenY=d.screenY||0):(this.clientX=s.clientX!==void 0?s.clientX:s.pageX,this.clientY=s.clientY!==void 0?s.clientY:s.pageY,this.screenX=s.screenX||0,this.screenY=s.screenY||0),this.button=s.button,this.key=s.key||"",this.ctrlKey=s.ctrlKey,this.altKey=s.altKey,this.shiftKey=s.shiftKey,this.metaKey=s.metaKey,this.pointerId=s.pointerId||0,this.pointerType=typeof s.pointerType=="string"?s.pointerType:th[s.pointerType]||"",this.state=s.state,this.i=s,s.defaultPrevented&&mn.aa.h.call(this)}}D(mn,ut);var th={2:"touch",3:"pen",4:"mouse"};mn.prototype.h=function(){mn.aa.h.call(this);var s=this.i;s.preventDefault?s.preventDefault():s.returnValue=!1};var gn="closure_listenable_"+(1e6*Math.random()|0),eh=0;function nh(s,a,c,d,I){this.listener=s,this.proxy=null,this.src=a,this.type=c,this.capture=!!d,this.ha=I,this.key=++eh,this.da=this.fa=!1}function rr(s){s.da=!0,s.listener=null,s.proxy=null,s.src=null,s.ha=null}function sr(s){this.src=s,this.g={},this.h=0}sr.prototype.add=function(s,a,c,d,I){var S=s.toString();s=this.g[S],s||(s=this.g[S]=[],this.h++);var x=vs(s,a,d,I);return-1<x?(a=s[x],c||(a.fa=!1)):(a=new nh(a,this.src,S,!!d,I),a.fa=c,s.push(a)),a};function Es(s,a){var c=a.type;if(c in s.g){var d=s.g[c],I=Array.prototype.indexOf.call(d,a,void 0),S;(S=0<=I)&&Array.prototype.splice.call(d,I,1),S&&(rr(a),s.g[c].length==0&&(delete s.g[c],s.h--))}}function vs(s,a,c,d){for(var I=0;I<s.length;++I){var S=s[I];if(!S.da&&S.listener==a&&S.capture==!!c&&S.ha==d)return I}return-1}var As="closure_lm_"+(1e6*Math.random()|0),Ss={};function Sa(s,a,c,d,I){if(d&&d.once)return Ra(s,a,c,d,I);if(Array.isArray(a)){for(var S=0;S<a.length;S++)Sa(s,a[S],c,d,I);return null}return c=Vs(c),s&&s[gn]?s.K(a,c,f(d)?!!d.capture:!!d,I):ba(s,a,c,!1,d,I)}function ba(s,a,c,d,I,S){if(!a)throw Error("Invalid event type");var x=f(I)?!!I.capture:!!I,Q=Rs(s);if(Q||(s[As]=Q=new sr(s)),c=Q.add(a,c,d,x,S),c.proxy)return c;if(d=rh(),c.proxy=d,d.src=s,d.listener=c,s.addEventListener)Zl||(I=x),I===void 0&&(I=!1),s.addEventListener(a.toString(),d,I);else if(s.attachEvent)s.attachEvent(Va(a.toString()),d);else if(s.addListener&&s.removeListener)s.addListener(d);else throw Error("addEventListener and attachEvent are unavailable.");return c}function rh(){function s(c){return a.call(s.src,s.listener,c)}let a=sh;return s}function Ra(s,a,c,d,I){if(Array.isArray(a)){for(var S=0;S<a.length;S++)Ra(s,a[S],c,d,I);return null}return c=Vs(c),s&&s[gn]?s.L(a,c,f(d)?!!d.capture:!!d,I):ba(s,a,c,!0,d,I)}function Pa(s,a,c,d,I){if(Array.isArray(a))for(var S=0;S<a.length;S++)Pa(s,a[S],c,d,I);else d=f(d)?!!d.capture:!!d,c=Vs(c),s&&s[gn]?(s=s.i,a=String(a).toString(),a in s.g&&(S=s.g[a],c=vs(S,c,d,I),-1<c&&(rr(S[c]),Array.prototype.splice.call(S,c,1),S.length==0&&(delete s.g[a],s.h--)))):s&&(s=Rs(s))&&(a=s.g[a.toString()],s=-1,a&&(s=vs(a,c,d,I)),(c=-1<s?a[s]:null)&&bs(c))}function bs(s){if(typeof s!="number"&&s&&!s.da){var a=s.src;if(a&&a[gn])Es(a.i,s);else{var c=s.type,d=s.proxy;a.removeEventListener?a.removeEventListener(c,d,s.capture):a.detachEvent?a.detachEvent(Va(c),d):a.addListener&&a.removeListener&&a.removeListener(d),(c=Rs(a))?(Es(c,s),c.h==0&&(c.src=null,a[As]=null)):rr(s)}}}function Va(s){return s in Ss?Ss[s]:Ss[s]="on"+s}function sh(s,a){if(s.da)s=!0;else{a=new mn(a,this);var c=s.listener,d=s.ha||s.src;s.fa&&bs(s),s=c.call(d,a)}return s}function Rs(s){return s=s[As],s instanceof sr?s:null}var Ps="__closure_events_fn_"+(1e9*Math.random()>>>0);function Vs(s){return typeof s=="function"?s:(s[Ps]||(s[Ps]=function(a){return s.handleEvent(a)}),s[Ps])}function ct(){Yt.call(this),this.i=new sr(this),this.M=this,this.F=null}D(ct,Yt),ct.prototype[gn]=!0,ct.prototype.removeEventListener=function(s,a,c,d){Pa(this,s,a,c,d)};function yt(s,a){var c,d=s.F;if(d)for(c=[];d;d=d.F)c.push(d);if(s=s.M,d=a.type||a,typeof a=="string")a=new ut(a,s);else if(a instanceof ut)a.target=a.target||s;else{var I=a;a=new ut(d,s),_(a,I)}if(I=!0,c)for(var S=c.length-1;0<=S;S--){var x=a.g=c[S];I=ir(x,d,!0,a)&&I}if(x=a.g=s,I=ir(x,d,!0,a)&&I,I=ir(x,d,!1,a)&&I,c)for(S=0;S<c.length;S++)x=a.g=c[S],I=ir(x,d,!1,a)&&I}ct.prototype.N=function(){if(ct.aa.N.call(this),this.i){var s=this.i,a;for(a in s.g){for(var c=s.g[a],d=0;d<c.length;d++)rr(c[d]);delete s.g[a],s.h--}}this.F=null},ct.prototype.K=function(s,a,c,d){return this.i.add(String(s),a,!1,c,d)},ct.prototype.L=function(s,a,c,d){return this.i.add(String(s),a,!0,c,d)};function ir(s,a,c,d){if(a=s.i.g[String(a)],!a)return!0;a=a.concat();for(var I=!0,S=0;S<a.length;++S){var x=a[S];if(x&&!x.da&&x.capture==c){var Q=x.listener,ot=x.ha||x.src;x.fa&&Es(s.i,x),I=Q.call(ot,d)!==!1&&I}}return I&&!d.defaultPrevented}function Ca(s,a,c){if(typeof s=="function")c&&(s=A(s,c));else if(s&&typeof s.handleEvent=="function")s=A(s.handleEvent,s);else throw Error("Invalid listener argument");return 2147483647<Number(a)?-1:l.setTimeout(s,a||0)}function xa(s){s.g=Ca(()=>{s.g=null,s.i&&(s.i=!1,xa(s))},s.l);let a=s.h;s.h=null,s.m.apply(null,a)}class ih extends Yt{constructor(a,c){super(),this.m=a,this.l=c,this.h=null,this.i=!1,this.g=null}j(a){this.h=arguments,this.g?this.i=!0:xa(this)}N(){super.N(),this.g&&(l.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function pn(s){Yt.call(this),this.h=s,this.g={}}D(pn,Yt);var Da=[];function Na(s){at(s.g,function(a,c){this.g.hasOwnProperty(c)&&bs(a)},s),s.g={}}pn.prototype.N=function(){pn.aa.N.call(this),Na(this)},pn.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented")};var Cs=l.JSON.stringify,oh=l.JSON.parse,ah=class{stringify(s){return l.JSON.stringify(s,void 0)}parse(s){return l.JSON.parse(s,void 0)}};function xs(){}xs.prototype.h=null;function ka(s){return s.h||(s.h=s.i())}function Ma(){}var yn={OPEN:"a",kb:"b",Ja:"c",wb:"d"};function Ds(){ut.call(this,"d")}D(Ds,ut);function Ns(){ut.call(this,"c")}D(Ns,ut);var me={},Oa=null;function or(){return Oa=Oa||new ct}me.La="serverreachability";function Fa(s){ut.call(this,me.La,s)}D(Fa,ut);function _n(s){let a=or();yt(a,new Fa(a))}me.STAT_EVENT="statevent";function La(s,a){ut.call(this,me.STAT_EVENT,s),this.stat=a}D(La,ut);function _t(s){let a=or();yt(a,new La(a,s))}me.Ma="timingevent";function qa(s,a){ut.call(this,me.Ma,s),this.size=a}D(qa,ut);function wn(s,a){if(typeof s!="function")throw Error("Fn must not be null and must be a function");return l.setTimeout(function(){s()},a)}function Tn(){this.g=!0}Tn.prototype.xa=function(){this.g=!1};function uh(s,a,c,d,I,S){s.info(function(){if(s.g)if(S)for(var x="",Q=S.split("&"),ot=0;ot<Q.length;ot++){var z=Q[ot].split("=");if(1<z.length){var lt=z[0];z=z[1];var ht=lt.split("_");x=2<=ht.length&&ht[1]=="type"?x+(lt+"="+z+"&"):x+(lt+"=redacted&")}}else x=null;else x=S;return"XMLHTTP REQ ("+d+") [attempt "+I+"]: "+a+`
|
|
1
|
+
import{A as Cu,B as xu,C as Du,D as Nu,E as ku,H as Hs,e as Qs,f as Su,i as bu,o as Ru,p as Pu,s as Ws,x as wt,y as Vu,z as kt}from"./chunk-DTMZLUNY.js";var Mu=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ou={};var Gt,Js;(function(){var n;function t(E,g){function y(){}y.prototype=g.prototype,E.D=g.prototype,E.prototype=new y,E.prototype.constructor=E,E.C=function(_,w,v){for(var p=Array(arguments.length-2),Ut=2;Ut<arguments.length;Ut++)p[Ut-2]=arguments[Ut];return g.prototype[w].apply(_,p)}}function e(){this.blockSize=-1}function r(){this.blockSize=-1,this.blockSize=64,this.g=Array(4),this.B=Array(this.blockSize),this.o=this.h=0,this.s()}t(r,e),r.prototype.s=function(){this.g[0]=1732584193,this.g[1]=4023233417,this.g[2]=2562383102,this.g[3]=271733878,this.o=this.h=0};function i(E,g,y){y||(y=0);var _=Array(16);if(typeof g=="string")for(var w=0;16>w;++w)_[w]=g.charCodeAt(y++)|g.charCodeAt(y++)<<8|g.charCodeAt(y++)<<16|g.charCodeAt(y++)<<24;else for(w=0;16>w;++w)_[w]=g[y++]|g[y++]<<8|g[y++]<<16|g[y++]<<24;g=E.g[0],y=E.g[1],w=E.g[2];var v=E.g[3],p=g+(v^y&(w^v))+_[0]+3614090360&4294967295;g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[1]+3905402710&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[2]+606105819&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[3]+3250441966&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(v^y&(w^v))+_[4]+4118548399&4294967295,g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[5]+1200080426&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[6]+2821735955&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[7]+4249261313&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(v^y&(w^v))+_[8]+1770035416&4294967295,g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[9]+2336552879&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[10]+4294925233&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[11]+2304563134&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(v^y&(w^v))+_[12]+1804603682&4294967295,g=y+(p<<7&4294967295|p>>>25),p=v+(w^g&(y^w))+_[13]+4254626195&4294967295,v=g+(p<<12&4294967295|p>>>20),p=w+(y^v&(g^y))+_[14]+2792965006&4294967295,w=v+(p<<17&4294967295|p>>>15),p=y+(g^w&(v^g))+_[15]+1236535329&4294967295,y=w+(p<<22&4294967295|p>>>10),p=g+(w^v&(y^w))+_[1]+4129170786&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[6]+3225465664&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[11]+643717713&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[0]+3921069994&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(w^v&(y^w))+_[5]+3593408605&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[10]+38016083&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[15]+3634488961&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[4]+3889429448&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(w^v&(y^w))+_[9]+568446438&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[14]+3275163606&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[3]+4107603335&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[8]+1163531501&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(w^v&(y^w))+_[13]+2850285829&4294967295,g=y+(p<<5&4294967295|p>>>27),p=v+(y^w&(g^y))+_[2]+4243563512&4294967295,v=g+(p<<9&4294967295|p>>>23),p=w+(g^y&(v^g))+_[7]+1735328473&4294967295,w=v+(p<<14&4294967295|p>>>18),p=y+(v^g&(w^v))+_[12]+2368359562&4294967295,y=w+(p<<20&4294967295|p>>>12),p=g+(y^w^v)+_[5]+4294588738&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[8]+2272392833&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[11]+1839030562&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[14]+4259657740&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(y^w^v)+_[1]+2763975236&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[4]+1272893353&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[7]+4139469664&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[10]+3200236656&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(y^w^v)+_[13]+681279174&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[0]+3936430074&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[3]+3572445317&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[6]+76029189&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(y^w^v)+_[9]+3654602809&4294967295,g=y+(p<<4&4294967295|p>>>28),p=v+(g^y^w)+_[12]+3873151461&4294967295,v=g+(p<<11&4294967295|p>>>21),p=w+(v^g^y)+_[15]+530742520&4294967295,w=v+(p<<16&4294967295|p>>>16),p=y+(w^v^g)+_[2]+3299628645&4294967295,y=w+(p<<23&4294967295|p>>>9),p=g+(w^(y|~v))+_[0]+4096336452&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[7]+1126891415&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[14]+2878612391&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[5]+4237533241&4294967295,y=w+(p<<21&4294967295|p>>>11),p=g+(w^(y|~v))+_[12]+1700485571&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[3]+2399980690&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[10]+4293915773&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[1]+2240044497&4294967295,y=w+(p<<21&4294967295|p>>>11),p=g+(w^(y|~v))+_[8]+1873313359&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[15]+4264355552&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[6]+2734768916&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[13]+1309151649&4294967295,y=w+(p<<21&4294967295|p>>>11),p=g+(w^(y|~v))+_[4]+4149444226&4294967295,g=y+(p<<6&4294967295|p>>>26),p=v+(y^(g|~w))+_[11]+3174756917&4294967295,v=g+(p<<10&4294967295|p>>>22),p=w+(g^(v|~y))+_[2]+718787259&4294967295,w=v+(p<<15&4294967295|p>>>17),p=y+(v^(w|~g))+_[9]+3951481745&4294967295,E.g[0]=E.g[0]+g&4294967295,E.g[1]=E.g[1]+(w+(p<<21&4294967295|p>>>11))&4294967295,E.g[2]=E.g[2]+w&4294967295,E.g[3]=E.g[3]+v&4294967295}r.prototype.u=function(E,g){g===void 0&&(g=E.length);for(var y=g-this.blockSize,_=this.B,w=this.h,v=0;v<g;){if(w==0)for(;v<=y;)i(this,E,v),v+=this.blockSize;if(typeof E=="string"){for(;v<g;)if(_[w++]=E.charCodeAt(v++),w==this.blockSize){i(this,_),w=0;break}}else for(;v<g;)if(_[w++]=E[v++],w==this.blockSize){i(this,_),w=0;break}}this.h=w,this.o+=g},r.prototype.v=function(){var E=Array((56>this.h?this.blockSize:2*this.blockSize)-this.h);E[0]=128;for(var g=1;g<E.length-8;++g)E[g]=0;var y=8*this.o;for(g=E.length-8;g<E.length;++g)E[g]=y&255,y/=256;for(this.u(E),E=Array(16),g=y=0;4>g;++g)for(var _=0;32>_;_+=8)E[y++]=this.g[g]>>>_&255;return E};function o(E,g){var y=l;return Object.prototype.hasOwnProperty.call(y,E)?y[E]:y[E]=g(E)}function u(E,g){this.h=g;for(var y=[],_=!0,w=E.length-1;0<=w;w--){var v=E[w]|0;_&&v==g||(y[w]=v,_=!1)}this.g=y}var l={};function h(E){return-128<=E&&128>E?o(E,function(g){return new u([g|0],0>g?-1:0)}):new u([E|0],0>E?-1:0)}function f(E){if(isNaN(E)||!isFinite(E))return T;if(0>E)return C(f(-E));for(var g=[],y=1,_=0;E>=y;_++)g[_]=E/y|0,y*=4294967296;return new u(g,0)}function m(E,g){if(E.length==0)throw Error("number format error: empty string");if(g=g||10,2>g||36<g)throw Error("radix out of range: "+g);if(E.charAt(0)=="-")return C(m(E.substring(1),g));if(0<=E.indexOf("-"))throw Error('number format error: interior "-" character');for(var y=f(Math.pow(g,8)),_=T,w=0;w<E.length;w+=8){var v=Math.min(8,E.length-w),p=parseInt(E.substring(w,w+v),g);8>v?(v=f(Math.pow(g,v)),_=_.j(v).add(f(p))):(_=_.j(y),_=_.add(f(p)))}return _}var T=h(0),A=h(1),R=h(16777216);n=u.prototype,n.m=function(){if(k(this))return-C(this).m();for(var E=0,g=1,y=0;y<this.g.length;y++){var _=this.i(y);E+=(0<=_?_:4294967296+_)*g,g*=4294967296}return E},n.toString=function(E){if(E=E||10,2>E||36<E)throw Error("radix out of range: "+E);if(D(this))return"0";if(k(this))return"-"+C(this).toString(E);for(var g=f(Math.pow(E,6)),y=this,_="";;){var w=pt(y,g).g;y=G(y,w.j(g));var v=((0<y.g.length?y.g[0]:y.h)>>>0).toString(E);if(y=w,D(y))return v+_;for(;6>v.length;)v="0"+v;_=v+_}},n.i=function(E){return 0>E?0:E<this.g.length?this.g[E]:this.h};function D(E){if(E.h!=0)return!1;for(var g=0;g<E.g.length;g++)if(E.g[g]!=0)return!1;return!0}function k(E){return E.h==-1}n.l=function(E){return E=G(this,E),k(E)?-1:D(E)?0:1};function C(E){for(var g=E.g.length,y=[],_=0;_<g;_++)y[_]=~E.g[_];return new u(y,~E.h).add(A)}n.abs=function(){return k(this)?C(this):this},n.add=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0,w=0;w<=g;w++){var v=_+(this.i(w)&65535)+(E.i(w)&65535),p=(v>>>16)+(this.i(w)>>>16)+(E.i(w)>>>16);_=p>>>16,v&=65535,p&=65535,y[w]=p<<16|v}return new u(y,y[y.length-1]&-2147483648?-1:0)};function G(E,g){return E.add(C(g))}n.j=function(E){if(D(this)||D(E))return T;if(k(this))return k(E)?C(this).j(C(E)):C(C(this).j(E));if(k(E))return C(this.j(C(E)));if(0>this.l(R)&&0>E.l(R))return f(this.m()*E.m());for(var g=this.g.length+E.g.length,y=[],_=0;_<2*g;_++)y[_]=0;for(_=0;_<this.g.length;_++)for(var w=0;w<E.g.length;w++){var v=this.i(_)>>>16,p=this.i(_)&65535,Ut=E.i(w)>>>16,hn=E.i(w)&65535;y[2*_+2*w]+=p*hn,K(y,2*_+2*w),y[2*_+2*w+1]+=v*hn,K(y,2*_+2*w+1),y[2*_+2*w+1]+=p*Ut,K(y,2*_+2*w+1),y[2*_+2*w+2]+=v*Ut,K(y,2*_+2*w+2)}for(_=0;_<g;_++)y[_]=y[2*_+1]<<16|y[2*_];for(_=g;_<2*g;_++)y[_]=0;return new u(y,0)};function K(E,g){for(;(E[g]&65535)!=E[g];)E[g+1]+=E[g]>>>16,E[g]&=65535,g++}function $(E,g){this.g=E,this.h=g}function pt(E,g){if(D(g))throw Error("division by zero");if(D(E))return new $(T,T);if(k(E))return g=pt(C(E),g),new $(C(g.g),C(g.h));if(k(g))return g=pt(E,C(g)),new $(C(g.g),g.h);if(30<E.g.length){if(k(E)||k(g))throw Error("slowDivide_ only works with positive integers.");for(var y=A,_=g;0>=_.l(E);)y=Nt(y),_=Nt(_);var w=ut(y,1),v=ut(_,1);for(_=ut(_,2),y=ut(y,2);!D(_);){var p=v.add(_);0>=p.l(E)&&(w=w.add(y),v=p),_=ut(_,1),y=ut(y,1)}return g=G(E,w.j(g)),new $(w,g)}for(w=T;0<=E.l(g);){for(y=Math.max(1,Math.floor(E.m()/g.m())),_=Math.ceil(Math.log(y)/Math.LN2),_=48>=_?1:Math.pow(2,_-48),v=f(y),p=v.j(g);k(p)||0<p.l(E);)y-=_,v=f(y),p=v.j(g);D(v)&&(v=A),w=w.add(v),E=G(E,p)}return new $(w,E)}n.A=function(E){return pt(this,E).h},n.and=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0;_<g;_++)y[_]=this.i(_)&E.i(_);return new u(y,this.h&E.h)},n.or=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0;_<g;_++)y[_]=this.i(_)|E.i(_);return new u(y,this.h|E.h)},n.xor=function(E){for(var g=Math.max(this.g.length,E.g.length),y=[],_=0;_<g;_++)y[_]=this.i(_)^E.i(_);return new u(y,this.h^E.h)};function Nt(E){for(var g=E.g.length+1,y=[],_=0;_<g;_++)y[_]=E.i(_)<<1|E.i(_-1)>>>31;return new u(y,E.h)}function ut(E,g){var y=g>>5;g%=32;for(var _=E.g.length-y,w=[],v=0;v<_;v++)w[v]=0<g?E.i(v+y)>>>g|E.i(v+y+1)<<32-g:E.i(v+y);return new u(w,E.h)}r.prototype.digest=r.prototype.v,r.prototype.reset=r.prototype.s,r.prototype.update=r.prototype.u,Js=Ou.Md5=r,u.prototype.add=u.prototype.add,u.prototype.multiply=u.prototype.j,u.prototype.modulo=u.prototype.A,u.prototype.compare=u.prototype.l,u.prototype.toNumber=u.prototype.m,u.prototype.toString=u.prototype.toString,u.prototype.getBits=u.prototype.i,u.fromNumber=f,u.fromString=m,Gt=Ou.Integer=u}).apply(typeof Mu<"u"?Mu:typeof self<"u"?self:typeof window<"u"?window:{});var Tr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},zt={};var Xs,xh,Fe,Ys,Cn,Ir,Zs,ti,ei;(function(){var n,t=typeof Object.defineProperties=="function"?Object.defineProperty:function(s,a,c){return s==Array.prototype||s==Object.prototype||(s[a]=c.value),s};function e(s){s=[typeof globalThis=="object"&&globalThis,s,typeof window=="object"&&window,typeof self=="object"&&self,typeof Tr=="object"&&Tr];for(var a=0;a<s.length;++a){var c=s[a];if(c&&c.Math==Math)return c}throw Error("Cannot find global object")}var r=e(this);function i(s,a){if(a)t:{var c=r;s=s.split(".");for(var d=0;d<s.length-1;d++){var I=s[d];if(!(I in c))break t;c=c[I]}s=s[s.length-1],d=c[s],a=a(d),a!=d&&a!=null&&t(c,s,{configurable:!0,writable:!0,value:a})}}function o(s,a){s instanceof String&&(s+="");var c=0,d=!1,I={next:function(){if(!d&&c<s.length){var S=c++;return{value:a(S,s[S]),done:!1}}return d=!0,{done:!0,value:void 0}}};return I[Symbol.iterator]=function(){return I},I}i("Array.prototype.values",function(s){return s||function(){return o(this,function(a,c){return c})}});var u=u||{},l=this||self;function h(s){var a=typeof s;return a=a!="object"?a:s?Array.isArray(s)?"array":a:"null",a=="array"||a=="object"&&typeof s.length=="number"}function f(s){var a=typeof s;return a=="object"&&s!=null||a=="function"}function m(s,a,c){return s.call.apply(s.bind,arguments)}function T(s,a,c){if(!s)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var I=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(I,d),s.apply(a,I)}}return function(){return s.apply(a,arguments)}}function A(s,a,c){return A=Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?m:T,A.apply(null,arguments)}function R(s,a){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();return d.push.apply(d,arguments),s.apply(this,d)}}function D(s,a){function c(){}c.prototype=a.prototype,s.aa=a.prototype,s.prototype=new c,s.prototype.constructor=s,s.Qb=function(d,I,S){for(var x=Array(arguments.length-2),Q=2;Q<arguments.length;Q++)x[Q-2]=arguments[Q];return a.prototype[I].apply(d,x)}}function k(s){let a=s.length;if(0<a){let c=Array(a);for(let d=0;d<a;d++)c[d]=s[d];return c}return[]}function C(s,a){for(let c=1;c<arguments.length;c++){let d=arguments[c];if(h(d)){let I=s.length||0,S=d.length||0;s.length=I+S;for(let x=0;x<S;x++)s[I+x]=d[x]}else s.push(d)}}class G{constructor(a,c){this.i=a,this.j=c,this.h=0,this.g=null}get(){let a;return 0<this.h?(this.h--,a=this.g,this.g=a.next,a.next=null):a=this.i(),a}}function K(s){return/^[\s\xa0]*$/.test(s)}function $(){var s=l.navigator;return s&&(s=s.userAgent)?s:""}function pt(s){return pt[" "](s),s}pt[" "]=function(){};var Nt=$().indexOf("Gecko")!=-1&&!($().toLowerCase().indexOf("webkit")!=-1&&$().indexOf("Edge")==-1)&&!($().indexOf("Trident")!=-1||$().indexOf("MSIE")!=-1)&&$().indexOf("Edge")==-1;function ut(s,a,c){for(let d in s)a.call(c,s[d],d,s)}function E(s,a){for(let c in s)a.call(void 0,s[c],c,s)}function g(s){let a={};for(let c in s)a[c]=s[c];return a}let y="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function _(s,a){let c,d;for(let I=1;I<arguments.length;I++){d=arguments[I];for(c in d)s[c]=d[c];for(let S=0;S<y.length;S++)c=y[S],Object.prototype.hasOwnProperty.call(d,c)&&(s[c]=d[c])}}function w(s){var a=1;s=s.split(":");let c=[];for(;0<a&&s.length;)c.push(s.shift()),a--;return s.length&&c.push(s.join(":")),c}function v(s){l.setTimeout(()=>{throw s},0)}function p(){var s=Es;let a=null;return s.g&&(a=s.g,s.g=s.g.next,s.g||(s.h=null),a.next=null),a}class Ut{constructor(){this.h=this.g=null}add(a,c){let d=hn.get();d.set(a,c),this.h?this.h.next=d:this.g=d,this.h=d}}var hn=new G(()=>new Xl,s=>s.reset());class Xl{constructor(){this.next=this.g=this.h=null}set(a,c){this.h=a,this.g=c,this.next=null}reset(){this.next=this.g=this.h=null}}let dn,fn=!1,Es=new Ut,Aa=()=>{let s=l.Promise.resolve(void 0);dn=()=>{s.then(Yl)}};var Yl=()=>{for(var s;s=p();){try{s.h.call(s.g)}catch(c){v(c)}var a=hn;a.j(s),100>a.h&&(a.h++,s.next=a.g,a.g=s)}fn=!1};function Yt(){this.s=this.s,this.C=this.C}Yt.prototype.s=!1,Yt.prototype.ma=function(){this.s||(this.s=!0,this.N())},Yt.prototype.N=function(){if(this.C)for(;this.C.length;)this.C.shift()()};function ct(s,a){this.type=s,this.g=this.target=a,this.defaultPrevented=!1}ct.prototype.h=function(){this.defaultPrevented=!0};var Zl=(function(){if(!l.addEventListener||!Object.defineProperty)return!1;var s=!1,a=Object.defineProperty({},"passive",{get:function(){s=!0}});try{let c=()=>{};l.addEventListener("test",c,a),l.removeEventListener("test",c,a)}catch{}return s})();function mn(s,a){if(ct.call(this,s?s.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,s){var c=this.type=s.type,d=s.changedTouches&&s.changedTouches.length?s.changedTouches[0]:null;if(this.target=s.target||s.srcElement,this.g=a,a=s.relatedTarget){if(Nt){t:{try{pt(a.nodeName);var I=!0;break t}catch{}I=!1}I||(a=null)}}else c=="mouseover"?a=s.fromElement:c=="mouseout"&&(a=s.toElement);this.relatedTarget=a,d?(this.clientX=d.clientX!==void 0?d.clientX:d.pageX,this.clientY=d.clientY!==void 0?d.clientY:d.pageY,this.screenX=d.screenX||0,this.screenY=d.screenY||0):(this.clientX=s.clientX!==void 0?s.clientX:s.pageX,this.clientY=s.clientY!==void 0?s.clientY:s.pageY,this.screenX=s.screenX||0,this.screenY=s.screenY||0),this.button=s.button,this.key=s.key||"",this.ctrlKey=s.ctrlKey,this.altKey=s.altKey,this.shiftKey=s.shiftKey,this.metaKey=s.metaKey,this.pointerId=s.pointerId||0,this.pointerType=typeof s.pointerType=="string"?s.pointerType:th[s.pointerType]||"",this.state=s.state,this.i=s,s.defaultPrevented&&mn.aa.h.call(this)}}D(mn,ct);var th={2:"touch",3:"pen",4:"mouse"};mn.prototype.h=function(){mn.aa.h.call(this);var s=this.i;s.preventDefault?s.preventDefault():s.returnValue=!1};var gn="closure_listenable_"+(1e6*Math.random()|0),eh=0;function nh(s,a,c,d,I){this.listener=s,this.proxy=null,this.src=a,this.type=c,this.capture=!!d,this.ha=I,this.key=++eh,this.da=this.fa=!1}function rr(s){s.da=!0,s.listener=null,s.proxy=null,s.src=null,s.ha=null}function sr(s){this.src=s,this.g={},this.h=0}sr.prototype.add=function(s,a,c,d,I){var S=s.toString();s=this.g[S],s||(s=this.g[S]=[],this.h++);var x=As(s,a,d,I);return-1<x?(a=s[x],c||(a.fa=!1)):(a=new nh(a,this.src,S,!!d,I),a.fa=c,s.push(a)),a};function vs(s,a){var c=a.type;if(c in s.g){var d=s.g[c],I=Array.prototype.indexOf.call(d,a,void 0),S;(S=0<=I)&&Array.prototype.splice.call(d,I,1),S&&(rr(a),s.g[c].length==0&&(delete s.g[c],s.h--))}}function As(s,a,c,d){for(var I=0;I<s.length;++I){var S=s[I];if(!S.da&&S.listener==a&&S.capture==!!c&&S.ha==d)return I}return-1}var Ss="closure_lm_"+(1e6*Math.random()|0),bs={};function Sa(s,a,c,d,I){if(d&&d.once)return Ra(s,a,c,d,I);if(Array.isArray(a)){for(var S=0;S<a.length;S++)Sa(s,a[S],c,d,I);return null}return c=Cs(c),s&&s[gn]?s.K(a,c,f(d)?!!d.capture:!!d,I):ba(s,a,c,!1,d,I)}function ba(s,a,c,d,I,S){if(!a)throw Error("Invalid event type");var x=f(I)?!!I.capture:!!I,Q=Ps(s);if(Q||(s[Ss]=Q=new sr(s)),c=Q.add(a,c,d,x,S),c.proxy)return c;if(d=rh(),c.proxy=d,d.src=s,d.listener=c,s.addEventListener)Zl||(I=x),I===void 0&&(I=!1),s.addEventListener(a.toString(),d,I);else if(s.attachEvent)s.attachEvent(Va(a.toString()),d);else if(s.addListener&&s.removeListener)s.addListener(d);else throw Error("addEventListener and attachEvent are unavailable.");return c}function rh(){function s(c){return a.call(s.src,s.listener,c)}let a=sh;return s}function Ra(s,a,c,d,I){if(Array.isArray(a)){for(var S=0;S<a.length;S++)Ra(s,a[S],c,d,I);return null}return c=Cs(c),s&&s[gn]?s.L(a,c,f(d)?!!d.capture:!!d,I):ba(s,a,c,!0,d,I)}function Pa(s,a,c,d,I){if(Array.isArray(a))for(var S=0;S<a.length;S++)Pa(s,a[S],c,d,I);else d=f(d)?!!d.capture:!!d,c=Cs(c),s&&s[gn]?(s=s.i,a=String(a).toString(),a in s.g&&(S=s.g[a],c=As(S,c,d,I),-1<c&&(rr(S[c]),Array.prototype.splice.call(S,c,1),S.length==0&&(delete s.g[a],s.h--)))):s&&(s=Ps(s))&&(a=s.g[a.toString()],s=-1,a&&(s=As(a,c,d,I)),(c=-1<s?a[s]:null)&&Rs(c))}function Rs(s){if(typeof s!="number"&&s&&!s.da){var a=s.src;if(a&&a[gn])vs(a.i,s);else{var c=s.type,d=s.proxy;a.removeEventListener?a.removeEventListener(c,d,s.capture):a.detachEvent?a.detachEvent(Va(c),d):a.addListener&&a.removeListener&&a.removeListener(d),(c=Ps(a))?(vs(c,s),c.h==0&&(c.src=null,a[Ss]=null)):rr(s)}}}function Va(s){return s in bs?bs[s]:bs[s]="on"+s}function sh(s,a){if(s.da)s=!0;else{a=new mn(a,this);var c=s.listener,d=s.ha||s.src;s.fa&&Rs(s),s=c.call(d,a)}return s}function Ps(s){return s=s[Ss],s instanceof sr?s:null}var Vs="__closure_events_fn_"+(1e9*Math.random()>>>0);function Cs(s){return typeof s=="function"?s:(s[Vs]||(s[Vs]=function(a){return s.handleEvent(a)}),s[Vs])}function lt(){Yt.call(this),this.i=new sr(this),this.M=this,this.F=null}D(lt,Yt),lt.prototype[gn]=!0,lt.prototype.removeEventListener=function(s,a,c,d){Pa(this,s,a,c,d)};function yt(s,a){var c,d=s.F;if(d)for(c=[];d;d=d.F)c.push(d);if(s=s.M,d=a.type||a,typeof a=="string")a=new ct(a,s);else if(a instanceof ct)a.target=a.target||s;else{var I=a;a=new ct(d,s),_(a,I)}if(I=!0,c)for(var S=c.length-1;0<=S;S--){var x=a.g=c[S];I=ir(x,d,!0,a)&&I}if(x=a.g=s,I=ir(x,d,!0,a)&&I,I=ir(x,d,!1,a)&&I,c)for(S=0;S<c.length;S++)x=a.g=c[S],I=ir(x,d,!1,a)&&I}lt.prototype.N=function(){if(lt.aa.N.call(this),this.i){var s=this.i,a;for(a in s.g){for(var c=s.g[a],d=0;d<c.length;d++)rr(c[d]);delete s.g[a],s.h--}}this.F=null},lt.prototype.K=function(s,a,c,d){return this.i.add(String(s),a,!1,c,d)},lt.prototype.L=function(s,a,c,d){return this.i.add(String(s),a,!0,c,d)};function ir(s,a,c,d){if(a=s.i.g[String(a)],!a)return!0;a=a.concat();for(var I=!0,S=0;S<a.length;++S){var x=a[S];if(x&&!x.da&&x.capture==c){var Q=x.listener,ot=x.ha||x.src;x.fa&&vs(s.i,x),I=Q.call(ot,d)!==!1&&I}}return I&&!d.defaultPrevented}function Ca(s,a,c){if(typeof s=="function")c&&(s=A(s,c));else if(s&&typeof s.handleEvent=="function")s=A(s.handleEvent,s);else throw Error("Invalid listener argument");return 2147483647<Number(a)?-1:l.setTimeout(s,a||0)}function xa(s){s.g=Ca(()=>{s.g=null,s.i&&(s.i=!1,xa(s))},s.l);let a=s.h;s.h=null,s.m.apply(null,a)}class ih extends Yt{constructor(a,c){super(),this.m=a,this.l=c,this.h=null,this.i=!1,this.g=null}j(a){this.h=arguments,this.g?this.i=!0:xa(this)}N(){super.N(),this.g&&(l.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function pn(s){Yt.call(this),this.h=s,this.g={}}D(pn,Yt);var Da=[];function Na(s){ut(s.g,function(a,c){this.g.hasOwnProperty(c)&&Rs(a)},s),s.g={}}pn.prototype.N=function(){pn.aa.N.call(this),Na(this)},pn.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented")};var xs=l.JSON.stringify,oh=l.JSON.parse,ah=class{stringify(s){return l.JSON.stringify(s,void 0)}parse(s){return l.JSON.parse(s,void 0)}};function Ds(){}Ds.prototype.h=null;function ka(s){return s.h||(s.h=s.i())}function Ma(){}var yn={OPEN:"a",kb:"b",Ja:"c",wb:"d"};function Ns(){ct.call(this,"d")}D(Ns,ct);function ks(){ct.call(this,"c")}D(ks,ct);var me={},Oa=null;function or(){return Oa=Oa||new lt}me.La="serverreachability";function Fa(s){ct.call(this,me.La,s)}D(Fa,ct);function _n(s){let a=or();yt(a,new Fa(a))}me.STAT_EVENT="statevent";function La(s,a){ct.call(this,me.STAT_EVENT,s),this.stat=a}D(La,ct);function _t(s){let a=or();yt(a,new La(a,s))}me.Ma="timingevent";function qa(s,a){ct.call(this,me.Ma,s),this.size=a}D(qa,ct);function wn(s,a){if(typeof s!="function")throw Error("Fn must not be null and must be a function");return l.setTimeout(function(){s()},a)}function Tn(){this.g=!0}Tn.prototype.xa=function(){this.g=!1};function uh(s,a,c,d,I,S){s.info(function(){if(s.g)if(S)for(var x="",Q=S.split("&"),ot=0;ot<Q.length;ot++){var z=Q[ot].split("=");if(1<z.length){var ht=z[0];z=z[1];var dt=ht.split("_");x=2<=dt.length&&dt[1]=="type"?x+(ht+"="+z+"&"):x+(ht+"=redacted&")}}else x=null;else x=S;return"XMLHTTP REQ ("+d+") [attempt "+I+"]: "+a+`
|
|
2
2
|
`+c+`
|
|
3
3
|
`+x})}function ch(s,a,c,d,I,S,x){s.info(function(){return"XMLHTTP RESP ("+d+") [ attempt "+I+"]: "+a+`
|
|
4
4
|
`+c+`
|
|
5
|
-
`+S+" "+x})}function
|
|
6
|
-
`,c);return d==-1?Ms:(c=Number(a.substring(c,d)),isNaN(c)?ja:(d+=1,d+c>a.length?Ms:(a=a.slice(d,d+c),s.C=d+c,a)))}Zt.prototype.cancel=function(){this.J=!0,ge(this)};function cr(s){s.S=Date.now()+s.I,Ka(s,s.I)}function Ka(s,a){if(s.B!=null)throw Error("WatchDog timer not null");s.B=wn(A(s.ba,s),a)}function Fs(s){s.B&&(l.clearTimeout(s.B),s.B=null)}Zt.prototype.ba=function(){this.B=null;let s=Date.now();0<=s-this.S?(lh(this.i,this.A),this.L!=2&&(_n(),_t(17)),ge(this),this.s=2,In(this)):Ka(this,this.S-s)};function In(s){s.j.G==0||s.J||yu(s.j,s)}function ge(s){Fs(s);var a=s.M;a&&typeof a.ma=="function"&&a.ma(),s.M=null,Na(s.U),s.g&&(a=s.g,s.g=null,a.abort(),a.ma())}function Ls(s,a){try{var c=s.j;if(c.G!=0&&(c.g==s||qs(c.h,s))){if(!s.K&&qs(c.h,s)&&c.G==3){try{var d=c.Da.g.parse(a)}catch{d=null}if(Array.isArray(d)&&d.length==3){var I=d;if(I[0]==0){t:if(!c.u){if(c.g)if(c.g.F+3e3<s.F)yr(c),gr(c);else break t;Gs(c),_t(18)}}else c.za=I[1],0<c.za-c.T&&37500>I[2]&&c.F&&c.v==0&&!c.C&&(c.C=wn(A(c.Za,c),6e3));if(1>=Wa(c.h)&&c.ca){try{c.ca()}catch{}c.ca=void 0}}else ye(c,11)}else if((s.K||c.g==s)&&yr(c),!K(a))for(I=c.Da.g.parse(a),a=0;a<I.length;a++){let z=I[a];if(c.T=z[0],z=z[1],c.G==2)if(z[0]=="c"){c.K=z[1],c.ia=z[2];let lt=z[3];lt!=null&&(c.la=lt,c.j.info("VER="+c.la));let ht=z[4];ht!=null&&(c.Aa=ht,c.j.info("SVER="+c.Aa));let Me=z[5];Me!=null&&typeof Me=="number"&&0<Me&&(d=1.5*Me,c.L=d,c.j.info("backChannelRequestTimeoutMs_="+d)),d=c;let Vt=s.g;if(Vt){let wr=Vt.g?Vt.g.getResponseHeader("X-Client-Wire-Protocol"):null;if(wr){var S=d.h;S.g||wr.indexOf("spdy")==-1&&wr.indexOf("quic")==-1&&wr.indexOf("h2")==-1||(S.j=S.l,S.g=new Set,S.h&&(Us(S,S.h),S.h=null))}if(d.D){let Ks=Vt.g?Vt.g.getResponseHeader("X-HTTP-Session-Id"):null;Ks&&(d.ya=Ks,H(d.I,d.D,Ks))}}c.G=3,c.l&&c.l.ua(),c.ba&&(c.R=Date.now()-s.F,c.j.info("Handshake RTT: "+c.R+"ms")),d=c;var x=s;if(d.qa=Tu(d,d.J?d.ia:null,d.W),x.K){Ha(d.h,x);var Q=x,ot=d.L;ot&&(Q.I=ot),Q.B&&(Fs(Q),cr(Q)),d.g=x}else gu(d);0<c.i.length&&pr(c)}else z[0]!="stop"&&z[0]!="close"||ye(c,7);else c.G==3&&(z[0]=="stop"||z[0]=="close"?z[0]=="stop"?ye(c,7):js(c):z[0]!="noop"&&c.l&&c.l.ta(z),c.v=0)}}_n(4)}catch{}}var fh=class{constructor(s,a){this.g=s,this.map=a}};function $a(s){this.l=s||10,l.PerformanceNavigationTiming?(s=l.performance.getEntriesByType("navigation"),s=0<s.length&&(s[0].nextHopProtocol=="hq"||s[0].nextHopProtocol=="h2")):s=!!(l.chrome&&l.chrome.loadTimes&&l.chrome.loadTimes()&&l.chrome.loadTimes().wasFetchedViaSpdy),this.j=s?this.l:1,this.g=null,1<this.j&&(this.g=new Set),this.h=null,this.i=[]}function Qa(s){return s.h?!0:s.g?s.g.size>=s.j:!1}function Wa(s){return s.h?1:s.g?s.g.size:0}function qs(s,a){return s.h?s.h==a:s.g?s.g.has(a):!1}function Us(s,a){s.g?s.g.add(a):s.h=a}function Ha(s,a){s.h&&s.h==a?s.h=null:s.g&&s.g.has(a)&&s.g.delete(a)}$a.prototype.cancel=function(){if(this.i=Ja(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(let s of this.g.values())s.cancel();this.g.clear()}};function Ja(s){if(s.h!=null)return s.i.concat(s.h.D);if(s.g!=null&&s.g.size!==0){let a=s.i;for(let c of s.g.values())a=a.concat(c.D);return a}return k(s.i)}function mh(s){if(s.V&&typeof s.V=="function")return s.V();if(typeof Map<"u"&&s instanceof Map||typeof Set<"u"&&s instanceof Set)return Array.from(s.values());if(typeof s=="string")return s.split("");if(h(s)){for(var a=[],c=s.length,d=0;d<c;d++)a.push(s[d]);return a}a=[],c=0;for(d in s)a[c++]=s[d];return a}function gh(s){if(s.na&&typeof s.na=="function")return s.na();if(!s.V||typeof s.V!="function"){if(typeof Map<"u"&&s instanceof Map)return Array.from(s.keys());if(!(typeof Set<"u"&&s instanceof Set)){if(h(s)||typeof s=="string"){var a=[];s=s.length;for(var c=0;c<s;c++)a.push(c);return a}a=[],c=0;for(let d in s)a[c++]=d;return a}}}function Xa(s,a){if(s.forEach&&typeof s.forEach=="function")s.forEach(a,void 0);else if(h(s)||typeof s=="string")Array.prototype.forEach.call(s,a,void 0);else for(var c=gh(s),d=mh(s),I=d.length,S=0;S<I;S++)a.call(void 0,d[S],c&&c[S],s)}var Ya=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$");function ph(s,a){if(s){s=s.split("&");for(var c=0;c<s.length;c++){var d=s[c].indexOf("="),I=null;if(0<=d){var S=s[c].substring(0,d);I=s[c].substring(d+1)}else S=s[c];a(S,I?decodeURIComponent(I.replace(/\+/g," ")):"")}}}function pe(s){if(this.g=this.o=this.j="",this.s=null,this.m=this.l="",this.h=!1,s instanceof pe){this.h=s.h,lr(this,s.j),this.o=s.o,this.g=s.g,hr(this,s.s),this.l=s.l;var a=s.i,c=new An;c.i=a.i,a.g&&(c.g=new Map(a.g),c.h=a.h),Za(this,c),this.m=s.m}else s&&(a=String(s).match(Ya))?(this.h=!1,lr(this,a[1]||"",!0),this.o=En(a[2]||""),this.g=En(a[3]||"",!0),hr(this,a[4]),this.l=En(a[5]||"",!0),Za(this,a[6]||"",!0),this.m=En(a[7]||"")):(this.h=!1,this.i=new An(null,this.h))}pe.prototype.toString=function(){var s=[],a=this.j;a&&s.push(vn(a,tu,!0),":");var c=this.g;return(c||a=="file")&&(s.push("//"),(a=this.o)&&s.push(vn(a,tu,!0),"@"),s.push(encodeURIComponent(String(c)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.s,c!=null&&s.push(":",String(c))),(c=this.l)&&(this.g&&c.charAt(0)!="/"&&s.push("/"),s.push(vn(c,c.charAt(0)=="/"?wh:_h,!0))),(c=this.i.toString())&&s.push("?",c),(c=this.m)&&s.push("#",vn(c,Ih)),s.join("")};function Bt(s){return new pe(s)}function lr(s,a,c){s.j=c?En(a,!0):a,s.j&&(s.j=s.j.replace(/:$/,""))}function hr(s,a){if(a){if(a=Number(a),isNaN(a)||0>a)throw Error("Bad port number "+a);s.s=a}else s.s=null}function Za(s,a,c){a instanceof An?(s.i=a,Eh(s.i,s.h)):(c||(a=vn(a,Th)),s.i=new An(a,s.h))}function H(s,a,c){s.i.set(a,c)}function dr(s){return H(s,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)),s}function En(s,a){return s?a?decodeURI(s.replace(/%25/g,"%2525")):decodeURIComponent(s):""}function vn(s,a,c){return typeof s=="string"?(s=encodeURI(s).replace(a,yh),c&&(s=s.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),s):null}function yh(s){return s=s.charCodeAt(0),"%"+(s>>4&15).toString(16)+(s&15).toString(16)}var tu=/[#\/\?@]/g,_h=/[#\?:]/g,wh=/[#\?]/g,Th=/[#\?@]/g,Ih=/#/g;function An(s,a){this.h=this.g=null,this.i=s||null,this.j=!!a}function te(s){s.g||(s.g=new Map,s.h=0,s.i&&ph(s.i,function(a,c){s.add(decodeURIComponent(a.replace(/\+/g," ")),c)}))}n=An.prototype,n.add=function(s,a){te(this),this.i=null,s=Ne(this,s);var c=this.g.get(s);return c||this.g.set(s,c=[]),c.push(a),this.h+=1,this};function eu(s,a){te(s),a=Ne(s,a),s.g.has(a)&&(s.i=null,s.h-=s.g.get(a).length,s.g.delete(a))}function nu(s,a){return te(s),a=Ne(s,a),s.g.has(a)}n.forEach=function(s,a){te(this),this.g.forEach(function(c,d){c.forEach(function(I){s.call(a,I,d,this)},this)},this)},n.na=function(){te(this);let s=Array.from(this.g.values()),a=Array.from(this.g.keys()),c=[];for(let d=0;d<a.length;d++){let I=s[d];for(let S=0;S<I.length;S++)c.push(a[d])}return c},n.V=function(s){te(this);let a=[];if(typeof s=="string")nu(this,s)&&(a=a.concat(this.g.get(Ne(this,s))));else{s=Array.from(this.g.values());for(let c=0;c<s.length;c++)a=a.concat(s[c])}return a},n.set=function(s,a){return te(this),this.i=null,s=Ne(this,s),nu(this,s)&&(this.h-=this.g.get(s).length),this.g.set(s,[a]),this.h+=1,this},n.get=function(s,a){return s?(s=this.V(s),0<s.length?String(s[0]):a):a};function ru(s,a,c){eu(s,a),0<c.length&&(s.i=null,s.g.set(Ne(s,a),k(c)),s.h+=c.length)}n.toString=function(){if(this.i)return this.i;if(!this.g)return"";let s=[],a=Array.from(this.g.keys());for(var c=0;c<a.length;c++){var d=a[c];let S=encodeURIComponent(String(d)),x=this.V(d);for(d=0;d<x.length;d++){var I=S;x[d]!==""&&(I+="="+encodeURIComponent(String(x[d]))),s.push(I)}}return this.i=s.join("&")};function Ne(s,a){return a=String(a),s.j&&(a=a.toLowerCase()),a}function Eh(s,a){a&&!s.j&&(te(s),s.i=null,s.g.forEach(function(c,d){var I=d.toLowerCase();d!=I&&(eu(this,d),ru(this,I,c))},s)),s.j=a}function vh(s,a){let c=new Tn;if(l.Image){let d=new Image;d.onload=R(ee,c,"TestLoadImage: loaded",!0,a,d),d.onerror=R(ee,c,"TestLoadImage: error",!1,a,d),d.onabort=R(ee,c,"TestLoadImage: abort",!1,a,d),d.ontimeout=R(ee,c,"TestLoadImage: timeout",!1,a,d),l.setTimeout(function(){d.ontimeout&&d.ontimeout()},1e4),d.src=s}else a(!1)}function Ah(s,a){let c=new Tn,d=new AbortController,I=setTimeout(()=>{d.abort(),ee(c,"TestPingServer: timeout",!1,a)},1e4);fetch(s,{signal:d.signal}).then(S=>{clearTimeout(I),S.ok?ee(c,"TestPingServer: ok",!0,a):ee(c,"TestPingServer: server error",!1,a)}).catch(()=>{clearTimeout(I),ee(c,"TestPingServer: error",!1,a)})}function ee(s,a,c,d,I){try{I&&(I.onload=null,I.onerror=null,I.onabort=null,I.ontimeout=null),d(c)}catch{}}function Sh(){this.g=new ah}function bh(s,a,c){let d=c||"";try{Xa(s,function(I,S){let x=I;f(I)&&(x=Cs(I)),a.push(d+S+"="+encodeURIComponent(x))})}catch(I){throw a.push(d+"type="+encodeURIComponent("_badmap")),I}}function Sn(s){this.l=s.Ub||null,this.j=s.eb||!1}D(Sn,xs),Sn.prototype.g=function(){return new fr(this.l,this.j)},Sn.prototype.i=(function(s){return function(){return s}})({});function fr(s,a){ct.call(this),this.D=s,this.o=a,this.m=void 0,this.status=this.readyState=0,this.responseType=this.responseText=this.response=this.statusText="",this.onreadystatechange=null,this.u=new Headers,this.h=null,this.B="GET",this.A="",this.g=!1,this.v=this.j=this.l=null}D(fr,ct),n=fr.prototype,n.open=function(s,a){if(this.readyState!=0)throw this.abort(),Error("Error reopening a connection");this.B=s,this.A=a,this.readyState=1,Rn(this)},n.send=function(s){if(this.readyState!=1)throw this.abort(),Error("need to call open() first. ");this.g=!0;let a={headers:this.u,method:this.B,credentials:this.m,cache:void 0};s&&(a.body=s),(this.D||l).fetch(new Request(this.A,a)).then(this.Sa.bind(this),this.ga.bind(this))},n.abort=function(){this.response=this.responseText="",this.u=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,bn(this)),this.readyState=0},n.Sa=function(s){if(this.g&&(this.l=s,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=s.headers,this.readyState=2,Rn(this)),this.g&&(this.readyState=3,Rn(this),this.g)))if(this.responseType==="arraybuffer")s.arrayBuffer().then(this.Qa.bind(this),this.ga.bind(this));else if(typeof l.ReadableStream<"u"&&"body"in s){if(this.j=s.body.getReader(),this.o){if(this.responseType)throw Error('responseType must be empty for "streamBinaryChunks" mode responses.');this.response=[]}else this.response=this.responseText="",this.v=new TextDecoder;su(this)}else s.text().then(this.Ra.bind(this),this.ga.bind(this))};function su(s){s.j.read().then(s.Pa.bind(s)).catch(s.ga.bind(s))}n.Pa=function(s){if(this.g){if(this.o&&s.value)this.response.push(s.value);else if(!this.o){var a=s.value?s.value:new Uint8Array(0);(a=this.v.decode(a,{stream:!s.done}))&&(this.response=this.responseText+=a)}s.done?bn(this):Rn(this),this.readyState==3&&su(this)}},n.Ra=function(s){this.g&&(this.response=this.responseText=s,bn(this))},n.Qa=function(s){this.g&&(this.response=s,bn(this))},n.ga=function(){this.g&&bn(this)};function bn(s){s.readyState=4,s.l=null,s.j=null,s.v=null,Rn(s)}n.setRequestHeader=function(s,a){this.u.append(s,a)},n.getResponseHeader=function(s){return this.h&&this.h.get(s.toLowerCase())||""},n.getAllResponseHeaders=function(){if(!this.h)return"";let s=[],a=this.h.entries();for(var c=a.next();!c.done;)c=c.value,s.push(c[0]+": "+c[1]),c=a.next();return s.join(`\r
|
|
7
|
-
`)};function Rn(s){s.onreadystatechange&&s.onreadystatechange.call(s)}Object.defineProperty(fr.prototype,"withCredentials",{get:function(){return this.m==="include"},set:function(s){this.m=s?"include":"same-origin"}});function iu(s){let a="";return
|
|
8
|
-
`}),a}function
|
|
9
|
-
`);for(let d=0;d<s.length;d++){if(K(s[d]))continue;var c=w(s[d]);let I=c[0];if(c=c[1],typeof c!="string")continue;c=c.trim();let S=a[I]||[];a[I]=S,S.push(c)}E(a,function(d){return d.join(", ")})}n.Ba=function(){return this.m},n.Ka=function(){return typeof this.l=="string"?this.l:String(this.l)};function Pn(s,a,c){return c&&c.internalChannelParams&&c.internalChannelParams[s]||a}function hu(s){this.Aa=0,this.i=[],this.j=new Tn,this.ia=this.qa=this.I=this.W=this.g=this.ya=this.D=this.H=this.m=this.S=this.o=null,this.Ya=this.U=0,this.Va=Pn("failFast",!1,s),this.F=this.C=this.u=this.s=this.l=null,this.X=!0,this.za=this.T=-1,this.Y=this.v=this.B=0,this.Ta=Pn("baseRetryDelayMs",5e3,s),this.cb=Pn("retryDelaySeedMs",1e4,s),this.Wa=Pn("forwardChannelMaxRetries",2,s),this.wa=Pn("forwardChannelRequestTimeoutMs",2e4,s),this.pa=s&&s.xmlHttpFactory||void 0,this.Xa=s&&s.Tb||void 0,this.Ca=s&&s.useFetchStreams||!1,this.L=void 0,this.J=s&&s.supportsCrossDomainXhr||!1,this.K="",this.h=new $a(s&&s.concurrentRequestLimit),this.Da=new Sh,this.P=s&&s.fastHandshake||!1,this.O=s&&s.encodeInitMessageHeaders||!1,this.P&&this.O&&(this.O=!1),this.Ua=s&&s.Rb||!1,s&&s.xa&&this.j.xa(),s&&s.forceLongPolling&&(this.X=!1),this.ba=!this.P&&this.X&&s&&s.detectBufferingProxy||!1,this.ja=void 0,s&&s.longPollingTimeout&&0<s.longPollingTimeout&&(this.ja=s.longPollingTimeout),this.ca=void 0,this.R=0,this.M=!1,this.ka=this.A=null}n=hu.prototype,n.la=8,n.G=1,n.connect=function(s,a,c,d){_t(0),this.W=s,this.H=a||{},c&&d!==void 0&&(this.H.OSID=c,this.H.OAID=d),this.F=this.X,this.I=Tu(this,null,this.W),pr(this)};function js(s){if(du(s),s.G==3){var a=s.U++,c=Bt(s.I);if(H(c,"SID",s.K),H(c,"RID",a),H(c,"TYPE","terminate"),Vn(s,c),a=new Zt(s,s.j,a),a.L=2,a.v=dr(Bt(c)),c=!1,l.navigator&&l.navigator.sendBeacon)try{c=l.navigator.sendBeacon(a.v.toString(),"")}catch{}!c&&l.Image&&(new Image().src=a.v,c=!0),c||(a.g=Iu(a.j,null),a.g.ea(a.v)),a.F=Date.now(),cr(a)}wu(s)}function gr(s){s.g&&(zs(s),s.g.cancel(),s.g=null)}function du(s){gr(s),s.u&&(l.clearTimeout(s.u),s.u=null),yr(s),s.h.cancel(),s.s&&(typeof s.s=="number"&&l.clearTimeout(s.s),s.s=null)}function pr(s){if(!Qa(s.h)&&!s.s){s.s=!0;var a=s.Ga;dn||Aa(),fn||(dn(),fn=!0),Is.add(a,s),s.B=0}}function Ch(s,a){return Wa(s.h)>=s.h.j-(s.s?1:0)?!1:s.s?(s.i=a.D.concat(s.i),!0):s.G==1||s.G==2||s.B>=(s.Va?0:s.Wa)?!1:(s.s=wn(A(s.Ga,s,a),_u(s,s.B)),s.B++,!0)}n.Ga=function(s){if(this.s)if(this.s=null,this.G==1){if(!s){this.U=Math.floor(1e5*Math.random()),s=this.U++;let I=new Zt(this,this.j,s),S=this.o;if(this.S&&(S?(S=g(S),_(S,this.S)):S=this.S),this.m!==null||this.O||(I.H=S,S=null),this.P)t:{for(var a=0,c=0;c<this.i.length;c++){e:{var d=this.i[c];if("__data__"in d.map&&(d=d.map.__data__,typeof d=="string")){d=d.length;break e}d=void 0}if(d===void 0)break;if(a+=d,4096<a){a=c;break t}if(a===4096||c===this.i.length-1){a=c+1;break t}}a=1e3}else a=1e3;a=mu(this,I,a),c=Bt(this.I),H(c,"RID",s),H(c,"CVER",22),this.D&&H(c,"X-HTTP-Session-Id",this.D),Vn(this,c),S&&(this.O?a="headers="+encodeURIComponent(String(iu(S)))+"&"+a:this.m&&Bs(c,this.m,S)),Us(this.h,I),this.Ua&&H(c,"TYPE","init"),this.P?(H(c,"$req",a),H(c,"SID","null"),I.T=!0,Os(I,c,null)):Os(I,c,a),this.G=2}}else this.G==3&&(s?fu(this,s):this.i.length==0||Qa(this.h)||fu(this))};function fu(s,a){var c;a?c=a.l:c=s.U++;let d=Bt(s.I);H(d,"SID",s.K),H(d,"RID",c),H(d,"AID",s.T),Vn(s,d),s.m&&s.o&&Bs(d,s.m,s.o),c=new Zt(s,s.j,c,s.B+1),s.m===null&&(c.H=s.o),a&&(s.i=a.D.concat(s.i)),a=mu(s,c,1e3),c.I=Math.round(.5*s.wa)+Math.round(.5*s.wa*Math.random()),Us(s.h,c),Os(c,d,a)}function Vn(s,a){s.H&&at(s.H,function(c,d){H(a,d,c)}),s.l&&Xa({},function(c,d){H(a,d,c)})}function mu(s,a,c){c=Math.min(s.i.length,c);var d=s.l?A(s.l.Na,s.l,s):null;t:{var I=s.i;let S=-1;for(;;){let x=["count="+c];S==-1?0<c?(S=I[0].g,x.push("ofs="+S)):S=0:x.push("ofs="+S);let Q=!0;for(let ot=0;ot<c;ot++){let z=I[ot].g,lt=I[ot].map;if(z-=S,0>z)S=Math.max(0,I[ot].g-100),Q=!1;else try{bh(lt,x,"req"+z+"_")}catch{d&&d(lt)}}if(Q){d=x.join("&");break t}}}return s=s.i.splice(0,c),a.D=s,d}function gu(s){if(!s.g&&!s.u){s.Y=1;var a=s.Fa;dn||Aa(),fn||(dn(),fn=!0),Is.add(a,s),s.v=0}}function Gs(s){return s.g||s.u||3<=s.v?!1:(s.Y++,s.u=wn(A(s.Fa,s),_u(s,s.v)),s.v++,!0)}n.Fa=function(){if(this.u=null,pu(this),this.ba&&!(this.M||this.g==null||0>=this.R)){var s=2*this.R;this.j.info("BP detection timer enabled: "+s),this.A=wn(A(this.ab,this),s)}},n.ab=function(){this.A&&(this.A=null,this.j.info("BP detection timeout reached."),this.j.info("Buffering proxy detected and switch to long-polling!"),this.F=!1,this.M=!0,_t(10),gr(this),pu(this))};function zs(s){s.A!=null&&(l.clearTimeout(s.A),s.A=null)}function pu(s){s.g=new Zt(s,s.j,"rpc",s.Y),s.m===null&&(s.g.H=s.o),s.g.O=0;var a=Bt(s.qa);H(a,"RID","rpc"),H(a,"SID",s.K),H(a,"AID",s.T),H(a,"CI",s.F?"0":"1"),!s.F&&s.ja&&H(a,"TO",s.ja),H(a,"TYPE","xmlhttp"),Vn(s,a),s.m&&s.o&&Bs(a,s.m,s.o),s.L&&(s.g.I=s.L);var c=s.g;s=s.ia,c.L=1,c.v=dr(Bt(a)),c.m=null,c.P=!0,Ga(c,s)}n.Za=function(){this.C!=null&&(this.C=null,gr(this),Gs(this),_t(19))};function yr(s){s.C!=null&&(l.clearTimeout(s.C),s.C=null)}function yu(s,a){var c=null;if(s.g==a){yr(s),zs(s),s.g=null;var d=2}else if(qs(s.h,a))c=a.D,Ha(s.h,a),d=1;else return;if(s.G!=0){if(a.o)if(d==1){c=a.m?a.m.length:0,a=Date.now()-a.F;var I=s.B;d=or(),yt(d,new qa(d,c)),pr(s)}else gu(s);else if(I=a.s,I==3||I==0&&0<a.X||!(d==1&&Ch(s,a)||d==2&&Gs(s)))switch(c&&0<c.length&&(a=s.h,a.i=a.i.concat(c)),I){case 1:ye(s,5);break;case 4:ye(s,10);break;case 3:ye(s,6);break;default:ye(s,2)}}}function _u(s,a){let c=s.Ta+Math.floor(Math.random()*s.cb);return s.isActive()||(c*=2),c*a}function ye(s,a){if(s.j.info("Error code "+a),a==2){var c=A(s.fb,s),d=s.Xa;let I=!d;d=new pe(d||"//www.google.com/images/cleardot.gif"),l.location&&l.location.protocol=="http"||lr(d,"https"),dr(d),I?vh(d.toString(),c):Ah(d.toString(),c)}else _t(2);s.G=0,s.l&&s.l.sa(a),wu(s),du(s)}n.fb=function(s){s?(this.j.info("Successfully pinged google.com"),_t(2)):(this.j.info("Failed to ping google.com"),_t(1))};function wu(s){if(s.G=0,s.ka=[],s.l){let a=Ja(s.h);(a.length!=0||s.i.length!=0)&&(C(s.ka,a),C(s.ka,s.i),s.h.i.length=0,k(s.i),s.i.length=0),s.l.ra()}}function Tu(s,a,c){var d=c instanceof pe?Bt(c):new pe(c);if(d.g!="")a&&(d.g=a+"."+d.g),hr(d,d.s);else{var I=l.location;d=I.protocol,a=a?a+"."+I.hostname:I.hostname,I=+I.port;var S=new pe(null);d&&lr(S,d),a&&(S.g=a),I&&hr(S,I),c&&(S.l=c),d=S}return c=s.D,a=s.ya,c&&a&&H(d,c,a),H(d,"VER",s.la),Vn(s,d),d}function Iu(s,a,c){if(a&&!s.J)throw Error("Can't create secondary domain capable XhrIo object.");return a=s.Ca&&!s.pa?new X(new Sn({eb:c})):new X(s.pa),a.Ha(s.J),a}n.isActive=function(){return!!this.l&&this.l.isActive(this)};function Eu(){}n=Eu.prototype,n.ua=function(){},n.ta=function(){},n.sa=function(){},n.ra=function(){},n.isActive=function(){return!0},n.Na=function(){};function _r(){}_r.prototype.g=function(s,a){return new It(s,a)};function It(s,a){ct.call(this),this.g=new hu(a),this.l=s,this.h=a&&a.messageUrlParams||null,s=a&&a.messageHeaders||null,a&&a.clientProtocolHeaderRequired&&(s?s["X-Client-Protocol"]="webchannel":s={"X-Client-Protocol":"webchannel"}),this.g.o=s,s=a&&a.initMessageHeaders||null,a&&a.messageContentType&&(s?s["X-WebChannel-Content-Type"]=a.messageContentType:s={"X-WebChannel-Content-Type":a.messageContentType}),a&&a.va&&(s?s["X-WebChannel-Client-Profile"]=a.va:s={"X-WebChannel-Client-Profile":a.va}),this.g.S=s,(s=a&&a.Sb)&&!K(s)&&(this.g.m=s),this.v=a&&a.supportsCrossDomainXhr||!1,this.u=a&&a.sendRawJson||!1,(a=a&&a.httpSessionIdParam)&&!K(a)&&(this.g.D=a,s=this.h,s!==null&&a in s&&(s=this.h,a in s&&delete s[a])),this.j=new ke(this)}D(It,ct),It.prototype.m=function(){this.g.l=this.j,this.v&&(this.g.J=!0),this.g.connect(this.l,this.h||void 0)},It.prototype.close=function(){js(this.g)},It.prototype.o=function(s){var a=this.g;if(typeof s=="string"){var c={};c.__data__=s,s=c}else this.u&&(c={},c.__data__=Cs(s),s=c);a.i.push(new fh(a.Ya++,s)),a.G==3&&pr(a)},It.prototype.N=function(){this.g.l=null,delete this.j,js(this.g),delete this.g,It.aa.N.call(this)};function vu(s){Ds.call(this),s.__headers__&&(this.headers=s.__headers__,this.statusCode=s.__status__,delete s.__headers__,delete s.__status__);var a=s.__sm__;if(a){t:{for(let c in a){s=c;break t}s=void 0}(this.i=s)&&(s=this.i,a=a!==null&&s in a?a[s]:void 0),this.data=a}else this.data=s}D(vu,Ds);function Au(){Ns.call(this),this.status=1}D(Au,Ns);function ke(s){this.g=s}D(ke,Eu),ke.prototype.ua=function(){yt(this.g,"a")},ke.prototype.ta=function(s){yt(this.g,new vu(s))},ke.prototype.sa=function(s){yt(this.g,new Au)},ke.prototype.ra=function(){yt(this.g,"b")},_r.prototype.createWebChannel=_r.prototype.g,It.prototype.send=It.prototype.o,It.prototype.open=It.prototype.m,It.prototype.close=It.prototype.close,ti=zt.createWebChannelTransport=function(){return new _r},Zs=zt.getStatEventTarget=function(){return or()},Ys=zt.Event=me,Ir=zt.Stat={mb:0,pb:1,qb:2,Jb:3,Ob:4,Lb:5,Mb:6,Kb:7,Ib:8,Nb:9,PROXY:10,NOPROXY:11,Gb:12,Cb:13,Db:14,Bb:15,Eb:16,Fb:17,ib:18,hb:19,jb:20},ar.NO_ERROR=0,ar.TIMEOUT=8,ar.HTTP_ERROR=6,Cn=zt.ErrorCode=ar,Ua.COMPLETE="complete",Xs=zt.EventType=Ua,Ma.EventType=yn,yn.OPEN="a",yn.CLOSE="b",yn.ERROR="c",yn.MESSAGE="d",ct.prototype.listen=ct.prototype.K,Oe=zt.WebChannel=Ma,xh=zt.FetchXmlHttpFactory=Sn,X.prototype.listenOnce=X.prototype.L,X.prototype.getLastError=X.prototype.Ka,X.prototype.getLastErrorCode=X.prototype.Ba,X.prototype.getStatus=X.prototype.Z,X.prototype.getResponseJson=X.prototype.Oa,X.prototype.getResponseText=X.prototype.oa,X.prototype.send=X.prototype.ea,X.prototype.setWithCredentials=X.prototype.Ha,Js=zt.XhrIo=X}).apply(typeof Tr<"u"?Tr:typeof self<"u"?self:typeof window<"u"?window:{});var Fu="@firebase/firestore",Lu="4.9.1";var ft=class{constructor(t){this.uid=t}isAuthenticated(){return this.uid!=null}toKey(){return this.isAuthenticated()?"uid:"+this.uid:"anonymous-user"}isEqual(t){return t.uid===this.uid}};ft.UNAUTHENTICATED=new ft(null),ft.GOOGLE_CREDENTIALS=new ft("google-credentials-uid"),ft.FIRST_PARTY=new ft("first-party-uid"),ft.MOCK_USER=new ft("mock-user");var rn="12.2.0";var Ie=new Cu("@firebase/firestore");function Fe(){return Ie.logLevel}function N(n,...t){if(Ie.logLevel<=kt.DEBUG){let e=t.map(Ho);Ie.debug(`Firestore (${rn}): ${n}`,...e)}}function $t(n,...t){if(Ie.logLevel<=kt.ERROR){let e=t.map(Ho);Ie.error(`Firestore (${rn}): ${n}`,...e)}}function On(n,...t){if(Ie.logLevel<=kt.WARN){let e=t.map(Ho);Ie.warn(`Firestore (${rn}): ${n}`,...e)}}function Ho(n){if(typeof n=="string")return n;try{return(function(e){return JSON.stringify(e)})(n)}catch{return n}}function O(n,t,e){let r="Unexpected state";typeof t=="string"?r=t:e=t,bc(n,r,e)}function bc(n,t,e){let r=`FIRESTORE (${rn}) INTERNAL ASSERTION FAILED: ${t} (ID: ${n.toString(16)})`;if(e!==void 0)try{r+=" CONTEXT: "+JSON.stringify(e)}catch{r+=" CONTEXT: "+e}throw $t(r),new Error(r)}function j(n,t,e,r){let i="Unexpected state";typeof e=="string"?i=e:r=e,n||bc(t,i,r)}function L(n,t){return n}var b={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"},V=class extends Pu{constructor(t,e){super(t,e),this.code=t,this.message=e,this.toString=()=>`${this.name}: [code=${this.code}]: ${this.message}`}};var Pt=class{constructor(){this.promise=new Promise(((t,e)=>{this.resolve=t,this.reject=e}))}};var ii=class{constructor(t,e){this.user=e,this.type="OAuth",this.headers=new Map,this.headers.set("Authorization",`Bearer ${t}`)}},oi=class{getToken(){return Promise.resolve(null)}invalidateToken(){}start(t,e){t.enqueueRetryable((()=>e(ft.UNAUTHENTICATED)))}shutdown(){}};var ai=class{constructor(t){this.t=t,this.currentUser=ft.UNAUTHENTICATED,this.i=0,this.forceRefresh=!1,this.auth=null}start(t,e){j(this.o===void 0,42304);let r=this.i,i=h=>this.i!==r?(r=this.i,e(h)):Promise.resolve(),o=new Pt;this.o=()=>{this.i++,this.currentUser=this.u(),o.resolve(),o=new Pt,t.enqueueRetryable((()=>i(this.currentUser)))};let u=()=>{let h=o;t.enqueueRetryable((async()=>{await h.promise,await i(this.currentUser)}))},l=h=>{N("FirebaseAuthCredentialsProvider","Auth detected"),this.auth=h,this.o&&(this.auth.addAuthTokenListener(this.o),u())};this.t.onInit((h=>l(h))),setTimeout((()=>{if(!this.auth){let h=this.t.getImmediate({optional:!0});h?l(h):(N("FirebaseAuthCredentialsProvider","Auth not yet detected"),o.resolve(),o=new Pt)}}),0),u()}getToken(){let t=this.i,e=this.forceRefresh;return this.forceRefresh=!1,this.auth?this.auth.getToken(e).then((r=>this.i!==t?(N("FirebaseAuthCredentialsProvider","getToken aborted due to token change."),this.getToken()):r?(j(typeof r.accessToken=="string",31837,{l:r}),new ii(r.accessToken,this.currentUser)):null)):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.auth&&this.o&&this.auth.removeAuthTokenListener(this.o),this.o=void 0}u(){let t=this.auth&&this.auth.getUid();return j(t===null||typeof t=="string",2055,{h:t}),new ft(t)}},ui=class{constructor(t,e,r){this.P=t,this.T=e,this.I=r,this.type="FirstParty",this.user=ft.FIRST_PARTY,this.A=new Map}R(){return this.I?this.I():null}get headers(){this.A.set("X-Goog-AuthUser",this.P);let t=this.R();return t&&this.A.set("Authorization",t),this.T&&this.A.set("X-Goog-Iam-Authorization-Token",this.T),this.A}},ci=class{constructor(t,e,r){this.P=t,this.T=e,this.I=r}getToken(){return Promise.resolve(new ui(this.P,this.T,this.I))}start(t,e){t.enqueueRetryable((()=>e(ft.FIRST_PARTY)))}shutdown(){}invalidateToken(){}},Pr=class{constructor(t){this.value=t,this.type="AppCheck",this.headers=new Map,t&&t.length>0&&this.headers.set("x-firebase-appcheck",this.value)}},li=class{constructor(t,e){this.V=e,this.forceRefresh=!1,this.appCheck=null,this.m=null,this.p=null,Nu(t)&&t.settings.appCheckToken&&(this.p=t.settings.appCheckToken)}start(t,e){j(this.o===void 0,3512);let r=o=>{o.error!=null&&N("FirebaseAppCheckTokenProvider",`Error getting App Check token; using placeholder token instead. Error: ${o.error.message}`);let u=o.token!==this.m;return this.m=o.token,N("FirebaseAppCheckTokenProvider",`Received ${u?"new":"existing"} token.`),u?e(o.token):Promise.resolve()};this.o=o=>{t.enqueueRetryable((()=>r(o)))};let i=o=>{N("FirebaseAppCheckTokenProvider","AppCheck detected"),this.appCheck=o,this.o&&this.appCheck.addTokenListener(this.o)};this.V.onInit((o=>i(o))),setTimeout((()=>{if(!this.appCheck){let o=this.V.getImmediate({optional:!0});o?i(o):N("FirebaseAppCheckTokenProvider","AppCheck not yet detected")}}),0)}getToken(){if(this.p)return Promise.resolve(new Pr(this.p));let t=this.forceRefresh;return this.forceRefresh=!1,this.appCheck?this.appCheck.getToken(t).then((e=>e?(j(typeof e.token=="string",44558,{tokenResult:e}),this.m=e.token,new Pr(e.token)):null)):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.appCheck&&this.o&&this.appCheck.removeTokenListener(this.o),this.o=void 0}};function Dh(n){let t=typeof self<"u"&&(self.crypto||self.msCrypto),e=new Uint8Array(n);if(t&&typeof t.getRandomValues=="function")t.getRandomValues(e);else for(let r=0;r<n;r++)e[r]=Math.floor(256*Math.random());return e}var Fn=class{static newId(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e=62*Math.floor(4.129032258064516),r="";for(;r.length<20;){let i=Dh(40);for(let o=0;o<i.length;++o)r.length<20&&i[o]<e&&(r+=t.charAt(i[o]%62))}return r}};function q(n,t){return n<t?-1:n>t?1:0}function hi(n,t){let e=Math.min(n.length,t.length);for(let r=0;r<e;r++){let i=n.charAt(r),o=t.charAt(r);if(i!==o)return ei(i)===ei(o)?q(i,o):ei(i)?1:-1}return q(n.length,t.length)}var Nh=55296,kh=57343;function ei(n){let t=n.charCodeAt(0);return t>=Nh&&t<=kh}function Ke(n,t,e){return n.length===t.length&&n.every(((r,i)=>e(r,t[i])))}var di="__name__",Vr=class n{constructor(t,e,r){e===void 0?e=0:e>t.length&&O(637,{offset:e,range:t.length}),r===void 0?r=t.length-e:r>t.length-e&&O(1746,{length:r,range:t.length-e}),this.segments=t,this.offset=e,this.len=r}get length(){return this.len}isEqual(t){return n.comparator(this,t)===0}child(t){let e=this.segments.slice(this.offset,this.limit());return t instanceof n?t.forEach((r=>{e.push(r)})):e.push(t),this.construct(e)}limit(){return this.offset+this.length}popFirst(t){return t=t===void 0?1:t,this.construct(this.segments,this.offset+t,this.length-t)}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(t){return this.segments[this.offset+t]}isEmpty(){return this.length===0}isPrefixOf(t){if(t.length<this.length)return!1;for(let e=0;e<this.length;e++)if(this.get(e)!==t.get(e))return!1;return!0}isImmediateParentOf(t){if(this.length+1!==t.length)return!1;for(let e=0;e<this.length;e++)if(this.get(e)!==t.get(e))return!1;return!0}forEach(t){for(let e=this.offset,r=this.limit();e<r;e++)t(this.segments[e])}toArray(){return this.segments.slice(this.offset,this.limit())}static comparator(t,e){let r=Math.min(t.length,e.length);for(let i=0;i<r;i++){let o=n.compareSegments(t.get(i),e.get(i));if(o!==0)return o}return q(t.length,e.length)}static compareSegments(t,e){let r=n.isNumericId(t),i=n.isNumericId(e);return r&&!i?-1:!r&&i?1:r&&i?n.extractNumericId(t).compare(n.extractNumericId(e)):hi(t,e)}static isNumericId(t){return t.startsWith("__id")&&t.endsWith("__")}static extractNumericId(t){return Gt.fromString(t.substring(4,t.length-2))}},W=class n extends Vr{construct(t,e,r){return new n(t,e,r)}canonicalString(){return this.toArray().join("/")}toString(){return this.canonicalString()}toUriEncodedString(){return this.toArray().map(encodeURIComponent).join("/")}static fromString(...t){let e=[];for(let r of t){if(r.indexOf("//")>=0)throw new V(b.INVALID_ARGUMENT,`Invalid segment (${r}). Paths must not contain // in them.`);e.push(...r.split("/").filter((i=>i.length>0)))}return new n(e)}static emptyPath(){return new n([])}},Mh=/^[_a-zA-Z][_a-zA-Z0-9]*$/,Et=class n extends Vr{construct(t,e,r){return new n(t,e,r)}static isValidIdentifier(t){return Mh.test(t)}canonicalString(){return this.toArray().map((t=>(t=t.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),n.isValidIdentifier(t)||(t="`"+t+"`"),t))).join(".")}toString(){return this.canonicalString()}isKeyField(){return this.length===1&&this.get(0)===di}static keyField(){return new n([di])}static fromServerFormat(t){let e=[],r="",i=0,o=()=>{if(r.length===0)throw new V(b.INVALID_ARGUMENT,`Invalid field path (${t}). Paths must not be empty, begin with '.', end with '.', or contain '..'`);e.push(r),r=""},u=!1;for(;i<t.length;){let l=t[i];if(l==="\\"){if(i+1===t.length)throw new V(b.INVALID_ARGUMENT,"Path has trailing escape character: "+t);let h=t[i+1];if(h!=="\\"&&h!=="."&&h!=="`")throw new V(b.INVALID_ARGUMENT,"Path has invalid escape sequence: "+t);r+=h,i+=2}else l==="`"?(u=!u,i++):l!=="."||u?(r+=l,i++):(o(),i++)}if(o(),u)throw new V(b.INVALID_ARGUMENT,"Unterminated ` in path: "+t);return new n(e)}static emptyPath(){return new n([])}};var M=class n{constructor(t){this.path=t}static fromPath(t){return new n(W.fromString(t))}static fromName(t){return new n(W.fromString(t).popFirst(5))}static empty(){return new n(W.emptyPath())}get collectionGroup(){return this.path.popLast().lastSegment()}hasCollectionId(t){return this.path.length>=2&&this.path.get(this.path.length-2)===t}getCollectionGroup(){return this.path.get(this.path.length-2)}getCollectionPath(){return this.path.popLast()}isEqual(t){return t!==null&&W.comparator(this.path,t.path)===0}toString(){return this.path.toString()}static comparator(t,e){return W.comparator(t.path,e.path)}static isDocumentKey(t){return t.length%2==0}static fromSegments(t){return new n(new W(t.slice()))}};function Rc(n,t,e){if(!e)throw new V(b.INVALID_ARGUMENT,`Function ${n}() cannot be called with an empty ${t}.`)}function Oh(n,t,e,r){if(t===!0&&r===!0)throw new V(b.INVALID_ARGUMENT,`${n} and ${e} cannot be used together.`)}function qu(n){if(!M.isDocumentKey(n))throw new V(b.INVALID_ARGUMENT,`Invalid document reference. Document references must have an even number of segments, but ${n} has ${n.length}.`)}function Uu(n){if(M.isDocumentKey(n))throw new V(b.INVALID_ARGUMENT,`Invalid collection reference. Collection references must have an odd number of segments, but ${n} has ${n.length}.`)}function Pc(n){return typeof n=="object"&&n!==null&&(Object.getPrototypeOf(n)===Object.prototype||Object.getPrototypeOf(n)===null)}function hs(n){if(n===void 0)return"undefined";if(n===null)return"null";if(typeof n=="string")return n.length>20&&(n=`${n.substring(0,20)}...`),JSON.stringify(n);if(typeof n=="number"||typeof n=="boolean")return""+n;if(typeof n=="object"){if(n instanceof Array)return"an array";{let t=(function(r){return r.constructor?r.constructor.name:null})(n);return t?`a custom ${t} object`:"an object"}}return typeof n=="function"?"a function":O(12329,{type:typeof n})}function vt(n,t){if("_delegate"in n&&(n=n._delegate),!(n instanceof t)){if(t.name===n.constructor.name)throw new V(b.INVALID_ARGUMENT,"Type does not match the expected instance. Did you pass a reference from a different Firestore SDK?");{let e=hs(n);throw new V(b.INVALID_ARGUMENT,`Expected type '${t.name}', but it was: ${e}`)}}return n}function Fh(n,t){if(t<=0)throw new V(b.INVALID_ARGUMENT,`Function ${n}() requires a positive number, but it was: ${t}.`)}function nt(n,t){let e={typeString:n};return t&&(e.value=t),e}function Zn(n,t){if(!Pc(n))throw new V(b.INVALID_ARGUMENT,"JSON must be an object");let e;for(let r in t)if(t[r]){let i=t[r].typeString,o="value"in t[r]?{value:t[r].value}:void 0;if(!(r in n)){e=`JSON missing required field: '${r}'`;break}let u=n[r];if(i&&typeof u!==i){e=`JSON field '${r}' must be a ${i}.`;break}if(o!==void 0&&u!==o.value){e=`Expected '${r}' field to equal '${o.value}'`;break}}if(e)throw new V(b.INVALID_ARGUMENT,e);return!0}var Bu=-62135596800,ju=1e6,rt=class n{static now(){return n.fromMillis(Date.now())}static fromDate(t){return n.fromMillis(t.getTime())}static fromMillis(t){let e=Math.floor(t/1e3),r=Math.floor((t-1e3*e)*ju);return new n(e,r)}constructor(t,e){if(this.seconds=t,this.nanoseconds=e,e<0)throw new V(b.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+e);if(e>=1e9)throw new V(b.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+e);if(t<Bu)throw new V(b.INVALID_ARGUMENT,"Timestamp seconds out of range: "+t);if(t>=253402300800)throw new V(b.INVALID_ARGUMENT,"Timestamp seconds out of range: "+t)}toDate(){return new Date(this.toMillis())}toMillis(){return 1e3*this.seconds+this.nanoseconds/ju}_compareTo(t){return this.seconds===t.seconds?q(this.nanoseconds,t.nanoseconds):q(this.seconds,t.seconds)}isEqual(t){return t.seconds===this.seconds&&t.nanoseconds===this.nanoseconds}toString(){return"Timestamp(seconds="+this.seconds+", nanoseconds="+this.nanoseconds+")"}toJSON(){return{type:n._jsonSchemaVersion,seconds:this.seconds,nanoseconds:this.nanoseconds}}static fromJSON(t){if(Zn(t,n._jsonSchema))return new n(t.seconds,t.nanoseconds)}valueOf(){let t=this.seconds-Bu;return String(t).padStart(12,"0")+"."+String(this.nanoseconds).padStart(9,"0")}};rt._jsonSchemaVersion="firestore/timestamp/1.0",rt._jsonSchema={type:nt("string",rt._jsonSchemaVersion),seconds:nt("number"),nanoseconds:nt("number")};var F=class n{static fromTimestamp(t){return new n(t)}static min(){return new n(new rt(0,0))}static max(){return new n(new rt(253402300799,999999999))}constructor(t){this.timestamp=t}compareTo(t){return this.timestamp._compareTo(t.timestamp)}isEqual(t){return this.timestamp.isEqual(t.timestamp)}toMicroseconds(){return 1e6*this.timestamp.seconds+this.timestamp.nanoseconds/1e3}toString(){return"SnapshotVersion("+this.timestamp.toString()+")"}toTimestamp(){return this.timestamp}};var Ln=-1,fi=class{constructor(t,e,r,i){this.indexId=t,this.collectionGroup=e,this.fields=r,this.indexState=i}};fi.UNKNOWN_ID=-1;function Lh(n,t){let e=n.toTimestamp().seconds,r=n.toTimestamp().nanoseconds+1,i=F.fromTimestamp(r===1e9?new rt(e+1,0):new rt(e,r));return new Ee(i,M.empty(),t)}function qh(n){return new Ee(n.readTime,n.key,Ln)}var Ee=class n{constructor(t,e,r){this.readTime=t,this.documentKey=e,this.largestBatchId=r}static min(){return new n(F.min(),M.empty(),Ln)}static max(){return new n(F.max(),M.empty(),Ln)}};function Uh(n,t){let e=n.readTime.compareTo(t.readTime);return e!==0?e:(e=M.comparator(n.documentKey,t.documentKey),e!==0?e:q(n.largestBatchId,t.largestBatchId))}var Bh="The current tab is not in the required state to perform this operation. It might be necessary to refresh the browser tab.",mi=class{constructor(){this.onCommittedListeners=[]}addOnCommittedListener(t){this.onCommittedListeners.push(t)}raiseOnCommittedEvent(){this.onCommittedListeners.forEach((t=>t()))}};async function sn(n){if(n.code!==b.FAILED_PRECONDITION||n.message!==Bh)throw n;N("LocalStore","Unexpectedly lost primary lease")}var P=class n{constructor(t){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,t((e=>{this.isDone=!0,this.result=e,this.nextCallback&&this.nextCallback(e)}),(e=>{this.isDone=!0,this.error=e,this.catchCallback&&this.catchCallback(e)}))}catch(t){return this.next(void 0,t)}next(t,e){return this.callbackAttached&&O(59440),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(e,this.error):this.wrapSuccess(t,this.result):new n(((r,i)=>{this.nextCallback=o=>{this.wrapSuccess(t,o).next(r,i)},this.catchCallback=o=>{this.wrapFailure(e,o).next(r,i)}}))}toPromise(){return new Promise(((t,e)=>{this.next(t,e)}))}wrapUserFunction(t){try{let e=t();return e instanceof n?e:n.resolve(e)}catch(e){return n.reject(e)}}wrapSuccess(t,e){return t?this.wrapUserFunction((()=>t(e))):n.resolve(e)}wrapFailure(t,e){return t?this.wrapUserFunction((()=>t(e))):n.reject(e)}static resolve(t){return new n(((e,r)=>{e(t)}))}static reject(t){return new n(((e,r)=>{r(t)}))}static waitFor(t){return new n(((e,r)=>{let i=0,o=0,u=!1;t.forEach((l=>{++i,l.next((()=>{++o,u&&o===i&&e()}),(h=>r(h)))})),u=!0,o===i&&e()}))}static or(t){let e=n.resolve(!1);for(let r of t)e=e.next((i=>i?n.resolve(i):r()));return e}static forEach(t,e){let r=[];return t.forEach(((i,o)=>{r.push(e.call(this,i,o))})),this.waitFor(r)}static mapArray(t,e){return new n(((r,i)=>{let o=t.length,u=new Array(o),l=0;for(let h=0;h<o;h++){let f=h;e(t[f]).next((m=>{u[f]=m,++l,l===o&&r(u)}),(m=>i(m)))}}))}static doWhile(t,e){return new n(((r,i)=>{let o=()=>{t()===!0?e().next((()=>{o()}),i):r()};o()}))}};function jh(n){let t=n.match(/Android ([\d.]+)/i),e=t?t[1].split(".").slice(0,2).join("."):"-1";return Number(e)}function on(n){return n.name==="IndexedDbTransactionError"}var $e=class{constructor(t,e){this.previousValue=t,e&&(e.sequenceNumberHandler=r=>this.ae(r),this.ue=r=>e.writeSequenceNumber(r))}ae(t){return this.previousValue=Math.max(t,this.previousValue),this.previousValue}next(){let t=++this.previousValue;return this.ue&&this.ue(t),t}};$e.ce=-1;var Jo=-1;function tr(n){return n==null}function qn(n){return n===0&&1/n==-1/0}function Gh(n){return typeof n=="number"&&Number.isInteger(n)&&!qn(n)&&n<=Number.MAX_SAFE_INTEGER&&n>=Number.MIN_SAFE_INTEGER}var Vc="";function zh(n){let t="";for(let e=0;e<n.length;e++)t.length>0&&(t=Gu(t)),t=Kh(n.get(e),t);return Gu(t)}function Kh(n,t){let e=t,r=n.length;for(let i=0;i<r;i++){let o=n.charAt(i);switch(o){case"\0":e+="";break;case Vc:e+="";break;default:e+=o}}return e}function Gu(n){return n+Vc+""}var $h="remoteDocuments",Cc="owner";var xc="mutationQueues";var Dc="mutations";var Nc="documentMutations",Qh="remoteDocumentsV14";var kc="remoteDocumentGlobal";var Mc="targets";var Oc="targetDocuments";var Fc="targetGlobal",Lc="collectionParents";var qc="clientMetadata";var Uc="bundles";var Bc="namedQueries";var Wh="indexConfiguration";var Hh="indexState";var Jh="indexEntries";var jc="documentOverlays";var Xh="globals";var Yh=[xc,Dc,Nc,$h,Mc,Cc,Fc,Oc,qc,kc,Lc,Uc,Bc],Zf=[...Yh,jc],Zh=[xc,Dc,Nc,Qh,Mc,Cc,Fc,Oc,qc,kc,Lc,Uc,Bc,jc],td=Zh,ed=[...td,Wh,Hh,Jh];var tm=[...ed,Xh];function zu(n){let t=0;for(let e in n)Object.prototype.hasOwnProperty.call(n,e)&&t++;return t}function fe(n,t){for(let e in n)Object.prototype.hasOwnProperty.call(n,e)&&t(e,n[e])}function Gc(n){for(let t in n)if(Object.prototype.hasOwnProperty.call(n,t))return!1;return!0}var Y=class n{constructor(t,e){this.comparator=t,this.root=e||Mt.EMPTY}insert(t,e){return new n(this.comparator,this.root.insert(t,e,this.comparator).copy(null,null,Mt.BLACK,null,null))}remove(t){return new n(this.comparator,this.root.remove(t,this.comparator).copy(null,null,Mt.BLACK,null,null))}get(t){let e=this.root;for(;!e.isEmpty();){let r=this.comparator(t,e.key);if(r===0)return e.value;r<0?e=e.left:r>0&&(e=e.right)}return null}indexOf(t){let e=0,r=this.root;for(;!r.isEmpty();){let i=this.comparator(t,r.key);if(i===0)return e+r.left.size;i<0?r=r.left:(e+=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(t){return this.root.inorderTraversal(t)}forEach(t){this.inorderTraversal(((e,r)=>(t(e,r),!1)))}toString(){let t=[];return this.inorderTraversal(((e,r)=>(t.push(`${e}:${r}`),!1))),`{${t.join(", ")}}`}reverseTraversal(t){return this.root.reverseTraversal(t)}getIterator(){return new Be(this.root,null,this.comparator,!1)}getIteratorFrom(t){return new Be(this.root,t,this.comparator,!1)}getReverseIterator(){return new Be(this.root,null,this.comparator,!0)}getReverseIteratorFrom(t){return new Be(this.root,t,this.comparator,!0)}},Be=class{constructor(t,e,r,i){this.isReverse=i,this.nodeStack=[];let o=1;for(;!t.isEmpty();)if(o=e?r(t.key,e):1,e&&i&&(o*=-1),o<0)t=this.isReverse?t.left:t.right;else{if(o===0){this.nodeStack.push(t);break}this.nodeStack.push(t),t=this.isReverse?t.right:t.left}}getNext(){let t=this.nodeStack.pop(),e={key:t.key,value:t.value};if(this.isReverse)for(t=t.left;!t.isEmpty();)this.nodeStack.push(t),t=t.right;else for(t=t.right;!t.isEmpty();)this.nodeStack.push(t),t=t.left;return e}hasNext(){return this.nodeStack.length>0}peek(){if(this.nodeStack.length===0)return null;let t=this.nodeStack[this.nodeStack.length-1];return{key:t.key,value:t.value}}},Mt=class n{constructor(t,e,r,i,o){this.key=t,this.value=e,this.color=r??n.RED,this.left=i??n.EMPTY,this.right=o??n.EMPTY,this.size=this.left.size+1+this.right.size}copy(t,e,r,i,o){return new n(t??this.key,e??this.value,r??this.color,i??this.left,o??this.right)}isEmpty(){return!1}inorderTraversal(t){return this.left.inorderTraversal(t)||t(this.key,this.value)||this.right.inorderTraversal(t)}reverseTraversal(t){return this.right.reverseTraversal(t)||t(this.key,this.value)||this.left.reverseTraversal(t)}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(t,e,r){let i=this,o=r(t,i.key);return i=o<0?i.copy(null,null,null,i.left.insert(t,e,r),null):o===0?i.copy(null,e,null,null,null):i.copy(null,null,null,null,i.right.insert(t,e,r)),i.fixUp()}removeMin(){if(this.left.isEmpty())return n.EMPTY;let t=this;return t.left.isRed()||t.left.left.isRed()||(t=t.moveRedLeft()),t=t.copy(null,null,null,t.left.removeMin(),null),t.fixUp()}remove(t,e){let r,i=this;if(e(t,i.key)<0)i.left.isEmpty()||i.left.isRed()||i.left.left.isRed()||(i=i.moveRedLeft()),i=i.copy(null,null,null,i.left.remove(t,e),null);else{if(i.left.isRed()&&(i=i.rotateRight()),i.right.isEmpty()||i.right.isRed()||i.right.left.isRed()||(i=i.moveRedRight()),e(t,i.key)===0){if(i.right.isEmpty())return n.EMPTY;r=i.right.min(),i=i.copy(r.key,r.value,null,null,i.right.removeMin())}i=i.copy(null,null,null,null,i.right.remove(t,e))}return i.fixUp()}isRed(){return this.color}fixUp(){let t=this;return t.right.isRed()&&!t.left.isRed()&&(t=t.rotateLeft()),t.left.isRed()&&t.left.left.isRed()&&(t=t.rotateRight()),t.left.isRed()&&t.right.isRed()&&(t=t.colorFlip()),t}moveRedLeft(){let t=this.colorFlip();return t.right.left.isRed()&&(t=t.copy(null,null,null,null,t.right.rotateRight()),t=t.rotateLeft(),t=t.colorFlip()),t}moveRedRight(){let t=this.colorFlip();return t.left.left.isRed()&&(t=t.rotateRight(),t=t.colorFlip()),t}rotateLeft(){let t=this.copy(null,null,n.RED,null,this.right.left);return this.right.copy(null,null,this.color,t,null)}rotateRight(){let t=this.copy(null,null,n.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,t)}colorFlip(){let t=this.left.copy(null,null,!this.left.color,null,null),e=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,t,e)}checkMaxDepth(){let t=this.check();return Math.pow(2,t)<=this.size+1}check(){if(this.isRed()&&this.left.isRed())throw O(43730,{key:this.key,value:this.value});if(this.right.isRed())throw O(14113,{key:this.key,value:this.value});let t=this.left.check();if(t!==this.right.check())throw O(27949);return t+(this.isRed()?0:1)}};Mt.EMPTY=null,Mt.RED=!0,Mt.BLACK=!1;Mt.EMPTY=new class{constructor(){this.size=0}get key(){throw O(57766)}get value(){throw O(16141)}get color(){throw O(16727)}get left(){throw O(29726)}get right(){throw O(36894)}copy(t,e,r,i,o){return this}insert(t,e,r){return new Mt(t,e)}remove(t,e){return this}isEmpty(){return!0}inorderTraversal(t){return!1}reverseTraversal(t){return!1}minKey(){return null}maxKey(){return null}isRed(){return!1}checkMaxDepth(){return!0}check(){return 0}};var it=class n{constructor(t){this.comparator=t,this.data=new Y(this.comparator)}has(t){return this.data.get(t)!==null}first(){return this.data.minKey()}last(){return this.data.maxKey()}get size(){return this.data.size}indexOf(t){return this.data.indexOf(t)}forEach(t){this.data.inorderTraversal(((e,r)=>(t(e),!1)))}forEachInRange(t,e){let r=this.data.getIteratorFrom(t[0]);for(;r.hasNext();){let i=r.getNext();if(this.comparator(i.key,t[1])>=0)return;e(i.key)}}forEachWhile(t,e){let r;for(r=e!==void 0?this.data.getIteratorFrom(e):this.data.getIterator();r.hasNext();)if(!t(r.getNext().key))return}firstAfterOrEqual(t){let e=this.data.getIteratorFrom(t);return e.hasNext()?e.getNext().key:null}getIterator(){return new Cr(this.data.getIterator())}getIteratorFrom(t){return new Cr(this.data.getIteratorFrom(t))}add(t){return this.copy(this.data.remove(t).insert(t,!0))}delete(t){return this.has(t)?this.copy(this.data.remove(t)):this}isEmpty(){return this.data.isEmpty()}unionWith(t){let e=this;return e.size<t.size&&(e=t,t=this),t.forEach((r=>{e=e.add(r)})),e}isEqual(t){if(!(t instanceof n)||this.size!==t.size)return!1;let e=this.data.getIterator(),r=t.data.getIterator();for(;e.hasNext();){let i=e.getNext().key,o=r.getNext().key;if(this.comparator(i,o)!==0)return!1}return!0}toArray(){let t=[];return this.forEach((e=>{t.push(e)})),t}toString(){let t=[];return this.forEach((e=>t.push(e))),"SortedSet("+t.toString()+")"}copy(t){let e=new n(this.comparator);return e.data=t,e}},Cr=class{constructor(t){this.iter=t}getNext(){return this.iter.getNext().key}hasNext(){return this.iter.hasNext()}};var Rt=class n{constructor(t){this.fields=t,t.sort(Et.comparator)}static empty(){return new n([])}unionWith(t){let e=new it(Et.comparator);for(let r of this.fields)e=e.add(r);for(let r of t)e=e.add(r);return new n(e.toArray())}covers(t){for(let e of this.fields)if(e.isPrefixOf(t))return!0;return!1}isEqual(t){return Ke(this.fields,t.fields,((e,r)=>e.isEqual(r)))}};var xr=class extends Error{constructor(){super(...arguments),this.name="Base64DecodeError"}};var gt=class n{constructor(t){this.binaryString=t}static fromBase64String(t){let e=(function(i){try{return atob(i)}catch(o){throw typeof DOMException<"u"&&o instanceof DOMException?new xr("Invalid base64 string: "+o):o}})(t);return new n(e)}static fromUint8Array(t){let e=(function(i){let o="";for(let u=0;u<i.length;++u)o+=String.fromCharCode(i[u]);return o})(t);return new n(e)}[Symbol.iterator](){let t=0;return{next:()=>t<this.binaryString.length?{value:this.binaryString.charCodeAt(t++),done:!1}:{value:void 0,done:!0}}}toBase64(){return(function(e){return btoa(e)})(this.binaryString)}toUint8Array(){return(function(e){let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e.charCodeAt(i);return r})(this.binaryString)}approximateByteSize(){return 2*this.binaryString.length}compareTo(t){return q(this.binaryString,t.binaryString)}isEqual(t){return this.binaryString===t.binaryString}};gt.EMPTY_BYTE_STRING=new gt("");var nd=new RegExp(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.(\d+))?Z$/);function Qt(n){if(j(!!n,39018),typeof n=="string"){let t=0,e=nd.exec(n);if(j(!!e,46558,{timestamp:n}),e[1]){let i=e[1];i=(i+"000000000").substr(0,9),t=Number(i)}let r=new Date(n);return{seconds:Math.floor(r.getTime()/1e3),nanos:t}}return{seconds:J(n.seconds),nanos:J(n.nanos)}}function J(n){return typeof n=="number"?n:typeof n=="string"?Number(n):0}function Wt(n){return typeof n=="string"?gt.fromBase64String(n):gt.fromUint8Array(n)}var zc="server_timestamp",Kc="__type__",$c="__previous_value__",Qc="__local_write_time__";function ds(n){return(n?.mapValue?.fields||{})[Kc]?.stringValue===zc}function fs(n){let t=n.mapValue.fields[$c];return ds(t)?fs(t):t}function Un(n){let t=Qt(n.mapValue.fields[Qc].timestampValue);return new rt(t.seconds,t.nanos)}var gi=class{constructor(t,e,r,i,o,u,l,h,f,m){this.databaseId=t,this.appId=e,this.persistenceKey=r,this.host=i,this.ssl=o,this.forceLongPolling=u,this.autoDetectLongPolling=l,this.longPollingOptions=h,this.useFetchStreams=f,this.isUsingEmulator=m}},Dr="(default)",Nr=class n{constructor(t,e){this.projectId=t,this.database=e||Dr}static empty(){return new n("","")}get isDefaultDatabase(){return this.database===Dr}isEqual(t){return t instanceof n&&t.projectId===this.projectId&&t.database===this.database}};var Xo="__type__",Wc="__max__",Er={mapValue:{fields:{__type__:{stringValue:Wc}}}},Yo="__vector__",Qe="value";function ue(n){return"nullValue"in n?0:"booleanValue"in n?1:"integerValue"in n||"doubleValue"in n?2:"timestampValue"in n?3:"stringValue"in n?5:"bytesValue"in n?6:"referenceValue"in n?7:"geoPointValue"in n?8:"arrayValue"in n?9:"mapValue"in n?ds(n)?4:Jc(n)?9007199254740991:Hc(n)?10:11:O(28295,{value:n})}function Ft(n,t){if(n===t)return!0;let e=ue(n);if(e!==ue(t))return!1;switch(e){case 0:case 9007199254740991:return!0;case 1:return n.booleanValue===t.booleanValue;case 4:return Un(n).isEqual(Un(t));case 3:return(function(i,o){if(typeof i.timestampValue=="string"&&typeof o.timestampValue=="string"&&i.timestampValue.length===o.timestampValue.length)return i.timestampValue===o.timestampValue;let u=Qt(i.timestampValue),l=Qt(o.timestampValue);return u.seconds===l.seconds&&u.nanos===l.nanos})(n,t);case 5:return n.stringValue===t.stringValue;case 6:return(function(i,o){return Wt(i.bytesValue).isEqual(Wt(o.bytesValue))})(n,t);case 7:return n.referenceValue===t.referenceValue;case 8:return(function(i,o){return J(i.geoPointValue.latitude)===J(o.geoPointValue.latitude)&&J(i.geoPointValue.longitude)===J(o.geoPointValue.longitude)})(n,t);case 2:return(function(i,o){if("integerValue"in i&&"integerValue"in o)return J(i.integerValue)===J(o.integerValue);if("doubleValue"in i&&"doubleValue"in o){let u=J(i.doubleValue),l=J(o.doubleValue);return u===l?qn(u)===qn(l):isNaN(u)&&isNaN(l)}return!1})(n,t);case 9:return Ke(n.arrayValue.values||[],t.arrayValue.values||[],Ft);case 10:case 11:return(function(i,o){let u=i.mapValue.fields||{},l=o.mapValue.fields||{};if(zu(u)!==zu(l))return!1;for(let h in u)if(u.hasOwnProperty(h)&&(l[h]===void 0||!Ft(u[h],l[h])))return!1;return!0})(n,t);default:return O(52216,{left:n})}}function Bn(n,t){return(n.values||[]).find((e=>Ft(e,t)))!==void 0}function We(n,t){if(n===t)return 0;let e=ue(n),r=ue(t);if(e!==r)return q(e,r);switch(e){case 0:case 9007199254740991:return 0;case 1:return q(n.booleanValue,t.booleanValue);case 2:return(function(o,u){let l=J(o.integerValue||o.doubleValue),h=J(u.integerValue||u.doubleValue);return l<h?-1:l>h?1:l===h?0:isNaN(l)?isNaN(h)?0:-1:1})(n,t);case 3:return Ku(n.timestampValue,t.timestampValue);case 4:return Ku(Un(n),Un(t));case 5:return hi(n.stringValue,t.stringValue);case 6:return(function(o,u){let l=Wt(o),h=Wt(u);return l.compareTo(h)})(n.bytesValue,t.bytesValue);case 7:return(function(o,u){let l=o.split("/"),h=u.split("/");for(let f=0;f<l.length&&f<h.length;f++){let m=q(l[f],h[f]);if(m!==0)return m}return q(l.length,h.length)})(n.referenceValue,t.referenceValue);case 8:return(function(o,u){let l=q(J(o.latitude),J(u.latitude));return l!==0?l:q(J(o.longitude),J(u.longitude))})(n.geoPointValue,t.geoPointValue);case 9:return $u(n.arrayValue,t.arrayValue);case 10:return(function(o,u){let l=o.fields||{},h=u.fields||{},f=l[Qe]?.arrayValue,m=h[Qe]?.arrayValue,T=q(f?.values?.length||0,m?.values?.length||0);return T!==0?T:$u(f,m)})(n.mapValue,t.mapValue);case 11:return(function(o,u){if(o===Er.mapValue&&u===Er.mapValue)return 0;if(o===Er.mapValue)return 1;if(u===Er.mapValue)return-1;let l=o.fields||{},h=Object.keys(l),f=u.fields||{},m=Object.keys(f);h.sort(),m.sort();for(let T=0;T<h.length&&T<m.length;++T){let A=hi(h[T],m[T]);if(A!==0)return A;let R=We(l[h[T]],f[m[T]]);if(R!==0)return R}return q(h.length,m.length)})(n.mapValue,t.mapValue);default:throw O(23264,{he:e})}}function Ku(n,t){if(typeof n=="string"&&typeof t=="string"&&n.length===t.length)return q(n,t);let e=Qt(n),r=Qt(t),i=q(e.seconds,r.seconds);return i!==0?i:q(e.nanos,r.nanos)}function $u(n,t){let e=n.values||[],r=t.values||[];for(let i=0;i<e.length&&i<r.length;++i){let o=We(e[i],r[i]);if(o)return o}return q(e.length,r.length)}function He(n){return pi(n)}function pi(n){return"nullValue"in n?"null":"booleanValue"in n?""+n.booleanValue:"integerValue"in n?""+n.integerValue:"doubleValue"in n?""+n.doubleValue:"timestampValue"in n?(function(e){let r=Qt(e);return`time(${r.seconds},${r.nanos})`})(n.timestampValue):"stringValue"in n?n.stringValue:"bytesValue"in n?(function(e){return Wt(e).toBase64()})(n.bytesValue):"referenceValue"in n?(function(e){return M.fromName(e).toString()})(n.referenceValue):"geoPointValue"in n?(function(e){return`geo(${e.latitude},${e.longitude})`})(n.geoPointValue):"arrayValue"in n?(function(e){let r="[",i=!0;for(let o of e.values||[])i?i=!1:r+=",",r+=pi(o);return r+"]"})(n.arrayValue):"mapValue"in n?(function(e){let r=Object.keys(e.fields||{}).sort(),i="{",o=!0;for(let u of r)o?o=!1:i+=",",i+=`${u}:${pi(e.fields[u])}`;return i+"}"})(n.mapValue):O(61005,{value:n})}function Sr(n){switch(ue(n)){case 0:case 1:return 4;case 2:return 8;case 3:case 8:return 16;case 4:let t=fs(n);return t?16+Sr(t):16;case 5:return 2*n.stringValue.length;case 6:return Wt(n.bytesValue).approximateByteSize();case 7:return n.referenceValue.length;case 9:return(function(r){return(r.values||[]).reduce(((i,o)=>i+Sr(o)),0)})(n.arrayValue);case 10:case 11:return(function(r){let i=0;return fe(r.fields,((o,u)=>{i+=o.length+Sr(u)})),i})(n.mapValue);default:throw O(13486,{value:n})}}function kr(n,t){return{referenceValue:`projects/${n.projectId}/databases/${n.database}/documents/${t.path.canonicalString()}`}}function yi(n){return!!n&&"integerValue"in n}function Zo(n){return!!n&&"arrayValue"in n}function Qu(n){return!!n&&"nullValue"in n}function Wu(n){return!!n&&"doubleValue"in n&&isNaN(Number(n.doubleValue))}function br(n){return!!n&&"mapValue"in n}function Hc(n){return(n?.mapValue?.fields||{})[Xo]?.stringValue===Yo}function Dn(n){if(n.geoPointValue)return{geoPointValue:{...n.geoPointValue}};if(n.timestampValue&&typeof n.timestampValue=="object")return{timestampValue:{...n.timestampValue}};if(n.mapValue){let t={mapValue:{fields:{}}};return fe(n.mapValue.fields,((e,r)=>t.mapValue.fields[e]=Dn(r))),t}if(n.arrayValue){let t={arrayValue:{values:[]}};for(let e=0;e<(n.arrayValue.values||[]).length;++e)t.arrayValue.values[e]=Dn(n.arrayValue.values[e]);return t}return{...n}}function Jc(n){return(((n.mapValue||{}).fields||{}).__type__||{}).stringValue===Wc}var nm={mapValue:{fields:{[Xo]:{stringValue:Yo},[Qe]:{arrayValue:{}}}}};var Tt=class n{constructor(t){this.value=t}static empty(){return new n({mapValue:{}})}field(t){if(t.isEmpty())return this.value;{let e=this.value;for(let r=0;r<t.length-1;++r)if(e=(e.mapValue.fields||{})[t.get(r)],!br(e))return null;return e=(e.mapValue.fields||{})[t.lastSegment()],e||null}}set(t,e){this.getFieldsMap(t.popLast())[t.lastSegment()]=Dn(e)}setAll(t){let e=Et.emptyPath(),r={},i=[];t.forEach(((u,l)=>{if(!e.isImmediateParentOf(l)){let h=this.getFieldsMap(e);this.applyChanges(h,r,i),r={},i=[],e=l.popLast()}u?r[l.lastSegment()]=Dn(u):i.push(l.lastSegment())}));let o=this.getFieldsMap(e);this.applyChanges(o,r,i)}delete(t){let e=this.field(t.popLast());br(e)&&e.mapValue.fields&&delete e.mapValue.fields[t.lastSegment()]}isEqual(t){return Ft(this.value,t.value)}getFieldsMap(t){let e=this.value;e.mapValue.fields||(e.mapValue={fields:{}});for(let r=0;r<t.length;++r){let i=e.mapValue.fields[t.get(r)];br(i)&&i.mapValue.fields||(i={mapValue:{fields:{}}},e.mapValue.fields[t.get(r)]=i),e=i}return e.mapValue.fields}applyChanges(t,e,r){fe(e,((i,o)=>t[i]=o));for(let i of r)delete t[i]}clone(){return new n(Dn(this.value))}};function Xc(n){let t=[];return fe(n.fields,((e,r)=>{let i=new Et([e]);if(br(r)){let o=Xc(r.mapValue).fields;if(o.length===0)t.push(i);else for(let u of o)t.push(i.child(u))}else t.push(i)})),new Rt(t)}var St=class n{constructor(t,e,r,i,o,u,l){this.key=t,this.documentType=e,this.version=r,this.readTime=i,this.createTime=o,this.data=u,this.documentState=l}static newInvalidDocument(t){return new n(t,0,F.min(),F.min(),F.min(),Tt.empty(),0)}static newFoundDocument(t,e,r,i){return new n(t,1,e,F.min(),r,i,0)}static newNoDocument(t,e){return new n(t,2,e,F.min(),F.min(),Tt.empty(),0)}static newUnknownDocument(t,e){return new n(t,3,e,F.min(),F.min(),Tt.empty(),2)}convertToFoundDocument(t,e){return!this.createTime.isEqual(F.min())||this.documentType!==2&&this.documentType!==0||(this.createTime=t),this.version=t,this.documentType=1,this.data=e,this.documentState=0,this}convertToNoDocument(t){return this.version=t,this.documentType=2,this.data=Tt.empty(),this.documentState=0,this}convertToUnknownDocument(t){return this.version=t,this.documentType=3,this.data=Tt.empty(),this.documentState=2,this}setHasCommittedMutations(){return this.documentState=2,this}setHasLocalMutations(){return this.documentState=1,this.version=F.min(),this}setReadTime(t){return this.readTime=t,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(t){return t instanceof n&&this.key.isEqual(t.key)&&this.version.isEqual(t.version)&&this.documentType===t.documentType&&this.documentState===t.documentState&&this.data.isEqual(t.data)}mutableCopy(){return new n(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}})`}};var ce=class{constructor(t,e){this.position=t,this.inclusive=e}};function Hu(n,t,e){let r=0;for(let i=0;i<n.position.length;i++){let o=t[i],u=n.position[i];if(o.field.isKeyField()?r=M.comparator(M.fromName(u.referenceValue),e.key):r=We(u,e.data.field(o.field)),o.dir==="desc"&&(r*=-1),r!==0)break}return r}function Ju(n,t){if(n===null)return t===null;if(t===null||n.inclusive!==t.inclusive||n.position.length!==t.position.length)return!1;for(let e=0;e<n.position.length;e++)if(!Ft(n.position[e],t.position[e]))return!1;return!0}var ve=class{constructor(t,e="asc"){this.field=t,this.dir=e}};function rd(n,t){return n.dir===t.dir&&n.field.isEqual(t.field)}var Mr=class{},et=class n extends Mr{constructor(t,e,r){super(),this.field=t,this.op=e,this.value=r}static create(t,e,r){return t.isKeyField()?e==="in"||e==="not-in"?this.createKeyFieldInFilter(t,e,r):new wi(t,e,r):e==="array-contains"?new Ei(t,r):e==="in"?new vi(t,r):e==="not-in"?new Ai(t,r):e==="array-contains-any"?new Si(t,r):new n(t,e,r)}static createKeyFieldInFilter(t,e,r){return e==="in"?new Ti(t,r):new Ii(t,r)}matches(t){let e=t.data.field(this.field);return this.op==="!="?e!==null&&e.nullValue===void 0&&this.matchesComparison(We(e,this.value)):e!==null&&ue(this.value)===ue(e)&&this.matchesComparison(We(e,this.value))}matchesComparison(t){switch(this.op){case"<":return t<0;case"<=":return t<=0;case"==":return t===0;case"!=":return t!==0;case">":return t>0;case">=":return t>=0;default:return O(47266,{operator:this.op})}}isInequality(){return["<","<=",">",">=","!=","not-in"].indexOf(this.op)>=0}getFlattenedFilters(){return[this]}getFilters(){return[this]}},Ct=class n extends Mr{constructor(t,e){super(),this.filters=t,this.op=e,this.Pe=null}static create(t,e){return new n(t,e)}matches(t){return Yc(this)?this.filters.find((e=>!e.matches(t)))===void 0:this.filters.find((e=>e.matches(t)))!==void 0}getFlattenedFilters(){return this.Pe!==null||(this.Pe=this.filters.reduce(((t,e)=>t.concat(e.getFlattenedFilters())),[])),this.Pe}getFilters(){return Object.assign([],this.filters)}};function Yc(n){return n.op==="and"}function Zc(n){return sd(n)&&Yc(n)}function sd(n){for(let t of n.filters)if(t instanceof Ct)return!1;return!0}function _i(n){if(n instanceof et)return n.field.canonicalString()+n.op.toString()+He(n.value);if(Zc(n))return n.filters.map((t=>_i(t))).join(",");{let t=n.filters.map((e=>_i(e))).join(",");return`${n.op}(${t})`}}function tl(n,t){return n instanceof et?(function(r,i){return i instanceof et&&r.op===i.op&&r.field.isEqual(i.field)&&Ft(r.value,i.value)})(n,t):n instanceof Ct?(function(r,i){return i instanceof Ct&&r.op===i.op&&r.filters.length===i.filters.length?r.filters.reduce(((o,u,l)=>o&&tl(u,i.filters[l])),!0):!1})(n,t):void O(19439)}function el(n){return n instanceof et?(function(e){return`${e.field.canonicalString()} ${e.op} ${He(e.value)}`})(n):n instanceof Ct?(function(e){return e.op.toString()+" {"+e.getFilters().map(el).join(" ,")+"}"})(n):"Filter"}var wi=class extends et{constructor(t,e,r){super(t,e,r),this.key=M.fromName(r.referenceValue)}matches(t){let e=M.comparator(t.key,this.key);return this.matchesComparison(e)}},Ti=class extends et{constructor(t,e){super(t,"in",e),this.keys=nl("in",e)}matches(t){return this.keys.some((e=>e.isEqual(t.key)))}},Ii=class extends et{constructor(t,e){super(t,"not-in",e),this.keys=nl("not-in",e)}matches(t){return!this.keys.some((e=>e.isEqual(t.key)))}};function nl(n,t){return(t.arrayValue?.values||[]).map((e=>M.fromName(e.referenceValue)))}var Ei=class extends et{constructor(t,e){super(t,"array-contains",e)}matches(t){let e=t.data.field(this.field);return Zo(e)&&Bn(e.arrayValue,this.value)}},vi=class extends et{constructor(t,e){super(t,"in",e)}matches(t){let e=t.data.field(this.field);return e!==null&&Bn(this.value.arrayValue,e)}},Ai=class extends et{constructor(t,e){super(t,"not-in",e)}matches(t){if(Bn(this.value.arrayValue,{nullValue:"NULL_VALUE"}))return!1;let e=t.data.field(this.field);return e!==null&&e.nullValue===void 0&&!Bn(this.value.arrayValue,e)}},Si=class extends et{constructor(t,e){super(t,"array-contains-any",e)}matches(t){let e=t.data.field(this.field);return!(!Zo(e)||!e.arrayValue.values)&&e.arrayValue.values.some((r=>Bn(this.value.arrayValue,r)))}};var bi=class{constructor(t,e=null,r=[],i=[],o=null,u=null,l=null){this.path=t,this.collectionGroup=e,this.orderBy=r,this.filters=i,this.limit=o,this.startAt=u,this.endAt=l,this.Te=null}};function Xu(n,t=null,e=[],r=[],i=null,o=null,u=null){return new bi(n,t,e,r,i,o,u)}function ta(n){let t=L(n);if(t.Te===null){let e=t.path.canonicalString();t.collectionGroup!==null&&(e+="|cg:"+t.collectionGroup),e+="|f:",e+=t.filters.map((r=>_i(r))).join(","),e+="|ob:",e+=t.orderBy.map((r=>(function(o){return o.field.canonicalString()+o.dir})(r))).join(","),tr(t.limit)||(e+="|l:",e+=t.limit),t.startAt&&(e+="|lb:",e+=t.startAt.inclusive?"b:":"a:",e+=t.startAt.position.map((r=>He(r))).join(",")),t.endAt&&(e+="|ub:",e+=t.endAt.inclusive?"a:":"b:",e+=t.endAt.position.map((r=>He(r))).join(",")),t.Te=e}return t.Te}function ea(n,t){if(n.limit!==t.limit||n.orderBy.length!==t.orderBy.length)return!1;for(let e=0;e<n.orderBy.length;e++)if(!rd(n.orderBy[e],t.orderBy[e]))return!1;if(n.filters.length!==t.filters.length)return!1;for(let e=0;e<n.filters.length;e++)if(!tl(n.filters[e],t.filters[e]))return!1;return n.collectionGroup===t.collectionGroup&&!!n.path.isEqual(t.path)&&!!Ju(n.startAt,t.startAt)&&Ju(n.endAt,t.endAt)}function Ri(n){return M.isDocumentKey(n.path)&&n.collectionGroup===null&&n.filters.length===0}var Lt=class{constructor(t,e=null,r=[],i=[],o=null,u="F",l=null,h=null){this.path=t,this.collectionGroup=e,this.explicitOrderBy=r,this.filters=i,this.limit=o,this.limitType=u,this.startAt=l,this.endAt=h,this.Ie=null,this.Ee=null,this.de=null,this.startAt,this.endAt}};function id(n,t,e,r,i,o,u,l){return new Lt(n,t,e,r,i,o,u,l)}function ms(n){return new Lt(n)}function Yu(n){return n.filters.length===0&&n.limit===null&&n.startAt==null&&n.endAt==null&&(n.explicitOrderBy.length===0||n.explicitOrderBy.length===1&&n.explicitOrderBy[0].field.isKeyField())}function na(n){return n.collectionGroup!==null}function je(n){let t=L(n);if(t.Ie===null){t.Ie=[];let e=new Set;for(let o of t.explicitOrderBy)t.Ie.push(o),e.add(o.field.canonicalString());let r=t.explicitOrderBy.length>0?t.explicitOrderBy[t.explicitOrderBy.length-1].dir:"asc";(function(u){let l=new it(Et.comparator);return u.filters.forEach((h=>{h.getFlattenedFilters().forEach((f=>{f.isInequality()&&(l=l.add(f.field))}))})),l})(t).forEach((o=>{e.has(o.canonicalString())||o.isKeyField()||t.Ie.push(new ve(o,r))})),e.has(Et.keyField().canonicalString())||t.Ie.push(new ve(Et.keyField(),r))}return t.Ie}function Ot(n){let t=L(n);return t.Ee||(t.Ee=od(t,je(n))),t.Ee}function od(n,t){if(n.limitType==="F")return Xu(n.path,n.collectionGroup,t,n.filters,n.limit,n.startAt,n.endAt);{t=t.map((i=>{let o=i.dir==="desc"?"asc":"desc";return new ve(i.field,o)}));let e=n.endAt?new ce(n.endAt.position,n.endAt.inclusive):null,r=n.startAt?new ce(n.startAt.position,n.startAt.inclusive):null;return Xu(n.path,n.collectionGroup,t,n.filters,n.limit,e,r)}}function Pi(n,t){let e=n.filters.concat([t]);return new Lt(n.path,n.collectionGroup,n.explicitOrderBy.slice(),e,n.limit,n.limitType,n.startAt,n.endAt)}function Or(n,t,e){return new Lt(n.path,n.collectionGroup,n.explicitOrderBy.slice(),n.filters.slice(),t,e,n.startAt,n.endAt)}function gs(n,t){return ea(Ot(n),Ot(t))&&n.limitType===t.limitType}function rl(n){return`${ta(Ot(n))}|lt:${n.limitType}`}function Le(n){return`Query(target=${(function(e){let r=e.path.canonicalString();return e.collectionGroup!==null&&(r+=" collectionGroup="+e.collectionGroup),e.filters.length>0&&(r+=`, filters: [${e.filters.map((i=>el(i))).join(", ")}]`),tr(e.limit)||(r+=", limit: "+e.limit),e.orderBy.length>0&&(r+=`, orderBy: [${e.orderBy.map((i=>(function(u){return`${u.field.canonicalString()} (${u.dir})`})(i))).join(", ")}]`),e.startAt&&(r+=", startAt: ",r+=e.startAt.inclusive?"b:":"a:",r+=e.startAt.position.map((i=>He(i))).join(",")),e.endAt&&(r+=", endAt: ",r+=e.endAt.inclusive?"a:":"b:",r+=e.endAt.position.map((i=>He(i))).join(",")),`Target(${r})`})(Ot(n))}; limitType=${n.limitType})`}function ps(n,t){return t.isFoundDocument()&&(function(r,i){let o=i.key.path;return r.collectionGroup!==null?i.key.hasCollectionId(r.collectionGroup)&&r.path.isPrefixOf(o):M.isDocumentKey(r.path)?r.path.isEqual(o):r.path.isImmediateParentOf(o)})(n,t)&&(function(r,i){for(let o of je(r))if(!o.field.isKeyField()&&i.data.field(o.field)===null)return!1;return!0})(n,t)&&(function(r,i){for(let o of r.filters)if(!o.matches(i))return!1;return!0})(n,t)&&(function(r,i){return!(r.startAt&&!(function(u,l,h){let f=Hu(u,l,h);return u.inclusive?f<=0:f<0})(r.startAt,je(r),i)||r.endAt&&!(function(u,l,h){let f=Hu(u,l,h);return u.inclusive?f>=0:f>0})(r.endAt,je(r),i))})(n,t)}function ad(n){return n.collectionGroup||(n.path.length%2==1?n.path.lastSegment():n.path.get(n.path.length-2))}function sl(n){return(t,e)=>{let r=!1;for(let i of je(n)){let o=ud(i,t,e);if(o!==0)return o;r=r||i.field.isKeyField()}return 0}}function ud(n,t,e){let r=n.field.isKeyField()?M.comparator(t.key,e.key):(function(o,u,l){let h=u.data.field(o),f=l.data.field(o);return h!==null&&f!==null?We(h,f):O(42886)})(n.field,t,e);switch(n.dir){case"asc":return r;case"desc":return-1*r;default:return O(19790,{direction:n.dir})}}var Ht=class{constructor(t,e){this.mapKeyFn=t,this.equalsFn=e,this.inner={},this.innerSize=0}get(t){let e=this.mapKeyFn(t),r=this.inner[e];if(r!==void 0){for(let[i,o]of r)if(this.equalsFn(i,t))return o}}has(t){return this.get(t)!==void 0}set(t,e){let r=this.mapKeyFn(t),i=this.inner[r];if(i===void 0)return this.inner[r]=[[t,e]],void this.innerSize++;for(let o=0;o<i.length;o++)if(this.equalsFn(i[o][0],t))return void(i[o]=[t,e]);i.push([t,e]),this.innerSize++}delete(t){let e=this.mapKeyFn(t),r=this.inner[e];if(r===void 0)return!1;for(let i=0;i<r.length;i++)if(this.equalsFn(r[i][0],t))return r.length===1?delete this.inner[e]:r.splice(i,1),this.innerSize--,!0;return!1}forEach(t){fe(this.inner,((e,r)=>{for(let[i,o]of r)t(i,o)}))}isEmpty(){return Gc(this.inner)}size(){return this.innerSize}};var cd=new Y(M.comparator);function Jt(){return cd}var il=new Y(M.comparator);function xn(...n){let t=il;for(let e of n)t=t.insert(e.key,e);return t}function ol(n){let t=il;return n.forEach(((e,r)=>t=t.insert(e,r.overlayedDocument))),t}function _e(){return Nn()}function al(){return Nn()}function Nn(){return new Ht((n=>n.toString()),((n,t)=>n.isEqual(t)))}var ld=new Y(M.comparator),hd=new it(M.comparator);function U(...n){let t=hd;for(let e of n)t=t.add(e);return t}var dd=new it(q);function fd(){return dd}function ra(n,t){if(n.useProto3Json){if(isNaN(t))return{doubleValue:"NaN"};if(t===1/0)return{doubleValue:"Infinity"};if(t===-1/0)return{doubleValue:"-Infinity"}}return{doubleValue:qn(t)?"-0":t}}function ul(n){return{integerValue:""+n}}function md(n,t){return Gh(t)?ul(t):ra(n,t)}var Je=class{constructor(){this._=void 0}};function gd(n,t,e){return n instanceof Ae?(function(i,o){let u={fields:{[Kc]:{stringValue:zc},[Qc]:{timestampValue:{seconds:i.seconds,nanos:i.nanoseconds}}}};return o&&ds(o)&&(o=fs(o)),o&&(u.fields[$c]=o),{mapValue:u}})(e,t):n instanceof le?ll(n,t):n instanceof Se?hl(n,t):(function(i,o){let u=cl(i,o),l=Zu(u)+Zu(i.Ae);return yi(u)&&yi(i.Ae)?ul(l):ra(i.serializer,l)})(n,t)}function pd(n,t,e){return n instanceof le?ll(n,t):n instanceof Se?hl(n,t):e}function cl(n,t){return n instanceof Xe?(function(r){return yi(r)||(function(o){return!!o&&"doubleValue"in o})(r)})(t)?t:{integerValue:0}:null}var Ae=class extends Je{},le=class extends Je{constructor(t){super(),this.elements=t}};function ll(n,t){let e=dl(t);for(let r of n.elements)e.some((i=>Ft(i,r)))||e.push(r);return{arrayValue:{values:e}}}var Se=class extends Je{constructor(t){super(),this.elements=t}};function hl(n,t){let e=dl(t);for(let r of n.elements)e=e.filter((i=>!Ft(i,r)));return{arrayValue:{values:e}}}var Xe=class extends Je{constructor(t,e){super(),this.serializer=t,this.Ae=e}};function Zu(n){return J(n.integerValue||n.doubleValue)}function dl(n){return Zo(n)&&n.arrayValue.values?n.arrayValue.values.slice():[]}var Fr=class{constructor(t,e){this.field=t,this.transform=e}};function yd(n,t){return n.field.isEqual(t.field)&&(function(r,i){return r instanceof le&&i instanceof le||r instanceof Se&&i instanceof Se?Ke(r.elements,i.elements,Ft):r instanceof Xe&&i instanceof Xe?Ft(r.Ae,i.Ae):r instanceof Ae&&i instanceof Ae})(n.transform,t.transform)}var Vi=class{constructor(t,e){this.version=t,this.transformResults=e}},mt=class n{constructor(t,e){this.updateTime=t,this.exists=e}static none(){return new n}static exists(t){return new n(void 0,t)}static updateTime(t){return new n(t)}get isNone(){return this.updateTime===void 0&&this.exists===void 0}isEqual(t){return this.exists===t.exists&&(this.updateTime?!!t.updateTime&&this.updateTime.isEqual(t.updateTime):!t.updateTime)}};function Rr(n,t){return n.updateTime!==void 0?t.isFoundDocument()&&t.version.isEqual(n.updateTime):n.exists===void 0||n.exists===t.isFoundDocument()}var Ye=class{};function fl(n,t){if(!n.hasLocalMutations||t&&t.fields.length===0)return null;if(t===null)return n.isNoDocument()?new Ze(n.key,mt.none()):new be(n.key,n.data,mt.none());{let e=n.data,r=Tt.empty(),i=new it(Et.comparator);for(let o of t.fields)if(!i.has(o)){let u=e.field(o);u===null&&o.length>1&&(o=o.popLast(),u=e.field(o)),u===null?r.delete(o):r.set(o,u),i=i.add(o)}return new qt(n.key,r,new Rt(i.toArray()),mt.none())}}function _d(n,t,e){n instanceof be?(function(i,o,u){let l=i.value.clone(),h=ec(i.fieldTransforms,o,u.transformResults);l.setAll(h),o.convertToFoundDocument(u.version,l).setHasCommittedMutations()})(n,t,e):n instanceof qt?(function(i,o,u){if(!Rr(i.precondition,o))return void o.convertToUnknownDocument(u.version);let l=ec(i.fieldTransforms,o,u.transformResults),h=o.data;h.setAll(ml(i)),h.setAll(l),o.convertToFoundDocument(u.version,h).setHasCommittedMutations()})(n,t,e):(function(i,o,u){o.convertToNoDocument(u.version).setHasCommittedMutations()})(0,t,e)}function kn(n,t,e,r){return n instanceof be?(function(o,u,l,h){if(!Rr(o.precondition,u))return l;let f=o.value.clone(),m=nc(o.fieldTransforms,h,u);return f.setAll(m),u.convertToFoundDocument(u.version,f).setHasLocalMutations(),null})(n,t,e,r):n instanceof qt?(function(o,u,l,h){if(!Rr(o.precondition,u))return l;let f=nc(o.fieldTransforms,h,u),m=u.data;return m.setAll(ml(o)),m.setAll(f),u.convertToFoundDocument(u.version,m).setHasLocalMutations(),l===null?null:l.unionWith(o.fieldMask.fields).unionWith(o.fieldTransforms.map((T=>T.field)))})(n,t,e,r):(function(o,u,l){return Rr(o.precondition,u)?(u.convertToNoDocument(u.version).setHasLocalMutations(),null):l})(n,t,e)}function wd(n,t){let e=null;for(let r of n.fieldTransforms){let i=t.data.field(r.field),o=cl(r.transform,i||null);o!=null&&(e===null&&(e=Tt.empty()),e.set(r.field,o))}return e||null}function tc(n,t){return n.type===t.type&&!!n.key.isEqual(t.key)&&!!n.precondition.isEqual(t.precondition)&&!!(function(r,i){return r===void 0&&i===void 0||!(!r||!i)&&Ke(r,i,((o,u)=>yd(o,u)))})(n.fieldTransforms,t.fieldTransforms)&&(n.type===0?n.value.isEqual(t.value):n.type!==1||n.data.isEqual(t.data)&&n.fieldMask.isEqual(t.fieldMask))}var be=class extends Ye{constructor(t,e,r,i=[]){super(),this.key=t,this.value=e,this.precondition=r,this.fieldTransforms=i,this.type=0}getFieldMask(){return null}},qt=class extends Ye{constructor(t,e,r,i,o=[]){super(),this.key=t,this.data=e,this.fieldMask=r,this.precondition=i,this.fieldTransforms=o,this.type=1}getFieldMask(){return this.fieldMask}};function ml(n){let t=new Map;return n.fieldMask.fields.forEach((e=>{if(!e.isEmpty()){let r=n.data.field(e);t.set(e,r)}})),t}function ec(n,t,e){let r=new Map;j(n.length===e.length,32656,{Re:e.length,Ve:n.length});for(let i=0;i<e.length;i++){let o=n[i],u=o.transform,l=t.data.field(o.field);r.set(o.field,pd(u,l,e[i]))}return r}function nc(n,t,e){let r=new Map;for(let i of n){let o=i.transform,u=e.data.field(i.field);r.set(i.field,gd(o,u,t))}return r}var Ze=class extends Ye{constructor(t,e){super(),this.key=t,this.precondition=e,this.type=2,this.fieldTransforms=[]}getFieldMask(){return null}},Lr=class extends Ye{constructor(t,e){super(),this.key=t,this.precondition=e,this.type=3,this.fieldTransforms=[]}getFieldMask(){return null}};var Ci=class{constructor(t,e,r,i){this.batchId=t,this.localWriteTime=e,this.baseMutations=r,this.mutations=i}applyToRemoteDocument(t,e){let r=e.mutationResults;for(let i=0;i<this.mutations.length;i++){let o=this.mutations[i];o.key.isEqual(t.key)&&_d(o,t,r[i])}}applyToLocalView(t,e){for(let r of this.baseMutations)r.key.isEqual(t.key)&&(e=kn(r,t,e,this.localWriteTime));for(let r of this.mutations)r.key.isEqual(t.key)&&(e=kn(r,t,e,this.localWriteTime));return e}applyToLocalDocumentSet(t,e){let r=al();return this.mutations.forEach((i=>{let o=t.get(i.key),u=o.overlayedDocument,l=this.applyToLocalView(u,o.mutatedFields);l=e.has(i.key)?null:l;let h=fl(u,l);h!==null&&r.set(i.key,h),u.isValidDocument()||u.convertToNoDocument(F.min())})),r}keys(){return this.mutations.reduce(((t,e)=>t.add(e.key)),U())}isEqual(t){return this.batchId===t.batchId&&Ke(this.mutations,t.mutations,((e,r)=>tc(e,r)))&&Ke(this.baseMutations,t.baseMutations,((e,r)=>tc(e,r)))}},xi=class n{constructor(t,e,r,i){this.batch=t,this.commitVersion=e,this.mutationResults=r,this.docVersions=i}static from(t,e,r){j(t.mutations.length===r.length,58842,{me:t.mutations.length,fe:r.length});let i=(function(){return ld})(),o=t.mutations;for(let u=0;u<o.length;u++)i=i.insert(o[u].key,r[u].version);return new n(t,e,r,i)}};var Di=class{constructor(t,e){this.largestBatchId=t,this.mutation=e}getKey(){return this.mutation.key}isEqual(t){return t!==null&&this.mutation===t.mutation}toString(){return`Overlay{
|
|
5
|
+
`+S+" "+x})}function Ne(s,a,c,d){s.info(function(){return"XMLHTTP TEXT ("+a+"): "+hh(s,c)+(d?" "+d:"")})}function lh(s,a){s.info(function(){return"TIMEOUT: "+a})}Tn.prototype.info=function(){};function hh(s,a){if(!s.g)return a;if(!a)return null;try{var c=JSON.parse(a);if(c){for(s=0;s<c.length;s++)if(Array.isArray(c[s])){var d=c[s];if(!(2>d.length)){var I=d[1];if(Array.isArray(I)&&!(1>I.length)){var S=I[0];if(S!="noop"&&S!="stop"&&S!="close")for(var x=1;x<I.length;x++)I[x]=""}}}}return xs(c)}catch{return a}}var ar={NO_ERROR:0,gb:1,tb:2,sb:3,nb:4,rb:5,ub:6,Ia:7,TIMEOUT:8,xb:9},Ua={lb:"complete",Hb:"success",Ja:"error",Ia:"abort",zb:"ready",Ab:"readystatechange",TIMEOUT:"timeout",vb:"incrementaldata",yb:"progress",ob:"downloadprogress",Pb:"uploadprogress"},Ms;function ur(){}D(ur,Ds),ur.prototype.g=function(){return new XMLHttpRequest},ur.prototype.i=function(){return{}},Ms=new ur;function Zt(s,a,c,d){this.j=s,this.i=a,this.l=c,this.R=d||1,this.U=new pn(this),this.I=45e3,this.H=null,this.o=!1,this.m=this.A=this.v=this.L=this.F=this.S=this.B=null,this.D=[],this.g=null,this.C=0,this.s=this.u=null,this.X=-1,this.J=!1,this.O=0,this.M=null,this.W=this.K=this.T=this.P=!1,this.h=new Ba}function Ba(){this.i=null,this.g="",this.h=!1}var ja={},Os={};function Fs(s,a,c){s.L=1,s.v=dr(Bt(a)),s.m=c,s.P=!0,Ga(s,null)}function Ga(s,a){s.F=Date.now(),cr(s),s.A=Bt(s.v);var c=s.A,d=s.R;Array.isArray(d)||(d=[String(d)]),ru(c.i,"t",d),s.C=0,c=s.j.J,s.h=new Ba,s.g=Iu(s.j,c?a:null,!s.m),0<s.O&&(s.M=new ih(A(s.Y,s,s.g),s.O)),a=s.U,c=s.g,d=s.ca;var I="readystatechange";Array.isArray(I)||(I&&(Da[0]=I.toString()),I=Da);for(var S=0;S<I.length;S++){var x=Sa(c,I[S],d||a.handleEvent,!1,a.h||a);if(!x)break;a.g[x.key]=x}a=s.H?g(s.H):{},s.m?(s.u||(s.u="POST"),a["Content-Type"]="application/x-www-form-urlencoded",s.g.ea(s.A,s.u,s.m,a)):(s.u="GET",s.g.ea(s.A,s.u,null,a)),_n(),uh(s.i,s.u,s.A,s.l,s.R,s.m)}Zt.prototype.ca=function(s){s=s.target;let a=this.M;a&&jt(s)==3?a.j():this.Y(s)},Zt.prototype.Y=function(s){try{if(s==this.g)t:{let dt=jt(this.g);var a=this.g.Ba();let Oe=this.g.Z();if(!(3>dt)&&(dt!=3||this.g&&(this.h.h||this.g.oa()||lu(this.g)))){this.J||dt!=4||a==7||(a==8||0>=Oe?_n(3):_n(2)),Ls(this);var c=this.g.Z();this.X=c;e:if(za(this)){var d=lu(this.g);s="";var I=d.length,S=jt(this.g)==4;if(!this.h.i){if(typeof TextDecoder>"u"){ge(this),In(this);var x="";break e}this.h.i=new l.TextDecoder}for(a=0;a<I;a++)this.h.h=!0,s+=this.h.i.decode(d[a],{stream:!(S&&a==I-1)});d.length=0,this.h.g+=s,this.C=0,x=this.h.g}else x=this.g.oa();if(this.o=c==200,ch(this.i,this.u,this.A,this.l,this.R,dt,c),this.o){if(this.T&&!this.K){e:{if(this.g){var Q,ot=this.g;if((Q=ot.g?ot.g.getResponseHeader("X-HTTP-Initial-Response"):null)&&!K(Q)){var z=Q;break e}}z=null}if(c=z)Ne(this.i,this.l,c,"Initial handshake response via X-HTTP-Initial-Response"),this.K=!0,qs(this,c);else{this.o=!1,this.s=3,_t(12),ge(this),In(this);break t}}if(this.P){c=!0;let Ct;for(;!this.J&&this.C<x.length;)if(Ct=dh(this,x),Ct==Os){dt==4&&(this.s=4,_t(14),c=!1),Ne(this.i,this.l,null,"[Incomplete Response]");break}else if(Ct==ja){this.s=4,_t(15),Ne(this.i,this.l,x,"[Invalid Chunk]"),c=!1;break}else Ne(this.i,this.l,Ct,null),qs(this,Ct);if(za(this)&&this.C!=0&&(this.h.g=this.h.g.slice(this.C),this.C=0),dt!=4||x.length!=0||this.h.h||(this.s=1,_t(16),c=!1),this.o=this.o&&c,!c)Ne(this.i,this.l,x,"[Invalid Chunked Response]"),ge(this),In(this);else if(0<x.length&&!this.W){this.W=!0;var ht=this.j;ht.g==this&&ht.ba&&!ht.M&&(ht.j.info("Great, no buffering proxy detected. Bytes received: "+x.length),Ks(ht),ht.M=!0,_t(11))}}else Ne(this.i,this.l,x,null),qs(this,x);dt==4&&ge(this),this.o&&!this.J&&(dt==4?yu(this.j,this):(this.o=!1,cr(this)))}else Vh(this.g),c==400&&0<x.indexOf("Unknown SID")?(this.s=3,_t(12)):(this.s=0,_t(13)),ge(this),In(this)}}}catch{}};function za(s){return s.g?s.u=="GET"&&s.L!=2&&s.j.Ca:!1}function dh(s,a){var c=s.C,d=a.indexOf(`
|
|
6
|
+
`,c);return d==-1?Os:(c=Number(a.substring(c,d)),isNaN(c)?ja:(d+=1,d+c>a.length?Os:(a=a.slice(d,d+c),s.C=d+c,a)))}Zt.prototype.cancel=function(){this.J=!0,ge(this)};function cr(s){s.S=Date.now()+s.I,Ka(s,s.I)}function Ka(s,a){if(s.B!=null)throw Error("WatchDog timer not null");s.B=wn(A(s.ba,s),a)}function Ls(s){s.B&&(l.clearTimeout(s.B),s.B=null)}Zt.prototype.ba=function(){this.B=null;let s=Date.now();0<=s-this.S?(lh(this.i,this.A),this.L!=2&&(_n(),_t(17)),ge(this),this.s=2,In(this)):Ka(this,this.S-s)};function In(s){s.j.G==0||s.J||yu(s.j,s)}function ge(s){Ls(s);var a=s.M;a&&typeof a.ma=="function"&&a.ma(),s.M=null,Na(s.U),s.g&&(a=s.g,s.g=null,a.abort(),a.ma())}function qs(s,a){try{var c=s.j;if(c.G!=0&&(c.g==s||Us(c.h,s))){if(!s.K&&Us(c.h,s)&&c.G==3){try{var d=c.Da.g.parse(a)}catch{d=null}if(Array.isArray(d)&&d.length==3){var I=d;if(I[0]==0){t:if(!c.u){if(c.g)if(c.g.F+3e3<s.F)yr(c),gr(c);else break t;zs(c),_t(18)}}else c.za=I[1],0<c.za-c.T&&37500>I[2]&&c.F&&c.v==0&&!c.C&&(c.C=wn(A(c.Za,c),6e3));if(1>=Wa(c.h)&&c.ca){try{c.ca()}catch{}c.ca=void 0}}else ye(c,11)}else if((s.K||c.g==s)&&yr(c),!K(a))for(I=c.Da.g.parse(a),a=0;a<I.length;a++){let z=I[a];if(c.T=z[0],z=z[1],c.G==2)if(z[0]=="c"){c.K=z[1],c.ia=z[2];let ht=z[3];ht!=null&&(c.la=ht,c.j.info("VER="+c.la));let dt=z[4];dt!=null&&(c.Aa=dt,c.j.info("SVER="+c.Aa));let Oe=z[5];Oe!=null&&typeof Oe=="number"&&0<Oe&&(d=1.5*Oe,c.L=d,c.j.info("backChannelRequestTimeoutMs_="+d)),d=c;let Ct=s.g;if(Ct){let wr=Ct.g?Ct.g.getResponseHeader("X-Client-Wire-Protocol"):null;if(wr){var S=d.h;S.g||wr.indexOf("spdy")==-1&&wr.indexOf("quic")==-1&&wr.indexOf("h2")==-1||(S.j=S.l,S.g=new Set,S.h&&(Bs(S,S.h),S.h=null))}if(d.D){let $s=Ct.g?Ct.g.getResponseHeader("X-HTTP-Session-Id"):null;$s&&(d.ya=$s,H(d.I,d.D,$s))}}c.G=3,c.l&&c.l.ua(),c.ba&&(c.R=Date.now()-s.F,c.j.info("Handshake RTT: "+c.R+"ms")),d=c;var x=s;if(d.qa=Tu(d,d.J?d.ia:null,d.W),x.K){Ha(d.h,x);var Q=x,ot=d.L;ot&&(Q.I=ot),Q.B&&(Ls(Q),cr(Q)),d.g=x}else gu(d);0<c.i.length&&pr(c)}else z[0]!="stop"&&z[0]!="close"||ye(c,7);else c.G==3&&(z[0]=="stop"||z[0]=="close"?z[0]=="stop"?ye(c,7):Gs(c):z[0]!="noop"&&c.l&&c.l.ta(z),c.v=0)}}_n(4)}catch{}}var fh=class{constructor(s,a){this.g=s,this.map=a}};function $a(s){this.l=s||10,l.PerformanceNavigationTiming?(s=l.performance.getEntriesByType("navigation"),s=0<s.length&&(s[0].nextHopProtocol=="hq"||s[0].nextHopProtocol=="h2")):s=!!(l.chrome&&l.chrome.loadTimes&&l.chrome.loadTimes()&&l.chrome.loadTimes().wasFetchedViaSpdy),this.j=s?this.l:1,this.g=null,1<this.j&&(this.g=new Set),this.h=null,this.i=[]}function Qa(s){return s.h?!0:s.g?s.g.size>=s.j:!1}function Wa(s){return s.h?1:s.g?s.g.size:0}function Us(s,a){return s.h?s.h==a:s.g?s.g.has(a):!1}function Bs(s,a){s.g?s.g.add(a):s.h=a}function Ha(s,a){s.h&&s.h==a?s.h=null:s.g&&s.g.has(a)&&s.g.delete(a)}$a.prototype.cancel=function(){if(this.i=Ja(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(let s of this.g.values())s.cancel();this.g.clear()}};function Ja(s){if(s.h!=null)return s.i.concat(s.h.D);if(s.g!=null&&s.g.size!==0){let a=s.i;for(let c of s.g.values())a=a.concat(c.D);return a}return k(s.i)}function mh(s){if(s.V&&typeof s.V=="function")return s.V();if(typeof Map<"u"&&s instanceof Map||typeof Set<"u"&&s instanceof Set)return Array.from(s.values());if(typeof s=="string")return s.split("");if(h(s)){for(var a=[],c=s.length,d=0;d<c;d++)a.push(s[d]);return a}a=[],c=0;for(d in s)a[c++]=s[d];return a}function gh(s){if(s.na&&typeof s.na=="function")return s.na();if(!s.V||typeof s.V!="function"){if(typeof Map<"u"&&s instanceof Map)return Array.from(s.keys());if(!(typeof Set<"u"&&s instanceof Set)){if(h(s)||typeof s=="string"){var a=[];s=s.length;for(var c=0;c<s;c++)a.push(c);return a}a=[],c=0;for(let d in s)a[c++]=d;return a}}}function Xa(s,a){if(s.forEach&&typeof s.forEach=="function")s.forEach(a,void 0);else if(h(s)||typeof s=="string")Array.prototype.forEach.call(s,a,void 0);else for(var c=gh(s),d=mh(s),I=d.length,S=0;S<I;S++)a.call(void 0,d[S],c&&c[S],s)}var Ya=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$");function ph(s,a){if(s){s=s.split("&");for(var c=0;c<s.length;c++){var d=s[c].indexOf("="),I=null;if(0<=d){var S=s[c].substring(0,d);I=s[c].substring(d+1)}else S=s[c];a(S,I?decodeURIComponent(I.replace(/\+/g," ")):"")}}}function pe(s){if(this.g=this.o=this.j="",this.s=null,this.m=this.l="",this.h=!1,s instanceof pe){this.h=s.h,lr(this,s.j),this.o=s.o,this.g=s.g,hr(this,s.s),this.l=s.l;var a=s.i,c=new An;c.i=a.i,a.g&&(c.g=new Map(a.g),c.h=a.h),Za(this,c),this.m=s.m}else s&&(a=String(s).match(Ya))?(this.h=!1,lr(this,a[1]||"",!0),this.o=En(a[2]||""),this.g=En(a[3]||"",!0),hr(this,a[4]),this.l=En(a[5]||"",!0),Za(this,a[6]||"",!0),this.m=En(a[7]||"")):(this.h=!1,this.i=new An(null,this.h))}pe.prototype.toString=function(){var s=[],a=this.j;a&&s.push(vn(a,tu,!0),":");var c=this.g;return(c||a=="file")&&(s.push("//"),(a=this.o)&&s.push(vn(a,tu,!0),"@"),s.push(encodeURIComponent(String(c)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),c=this.s,c!=null&&s.push(":",String(c))),(c=this.l)&&(this.g&&c.charAt(0)!="/"&&s.push("/"),s.push(vn(c,c.charAt(0)=="/"?wh:_h,!0))),(c=this.i.toString())&&s.push("?",c),(c=this.m)&&s.push("#",vn(c,Ih)),s.join("")};function Bt(s){return new pe(s)}function lr(s,a,c){s.j=c?En(a,!0):a,s.j&&(s.j=s.j.replace(/:$/,""))}function hr(s,a){if(a){if(a=Number(a),isNaN(a)||0>a)throw Error("Bad port number "+a);s.s=a}else s.s=null}function Za(s,a,c){a instanceof An?(s.i=a,Eh(s.i,s.h)):(c||(a=vn(a,Th)),s.i=new An(a,s.h))}function H(s,a,c){s.i.set(a,c)}function dr(s){return H(s,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)),s}function En(s,a){return s?a?decodeURI(s.replace(/%25/g,"%2525")):decodeURIComponent(s):""}function vn(s,a,c){return typeof s=="string"?(s=encodeURI(s).replace(a,yh),c&&(s=s.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),s):null}function yh(s){return s=s.charCodeAt(0),"%"+(s>>4&15).toString(16)+(s&15).toString(16)}var tu=/[#\/\?@]/g,_h=/[#\?:]/g,wh=/[#\?]/g,Th=/[#\?@]/g,Ih=/#/g;function An(s,a){this.h=this.g=null,this.i=s||null,this.j=!!a}function te(s){s.g||(s.g=new Map,s.h=0,s.i&&ph(s.i,function(a,c){s.add(decodeURIComponent(a.replace(/\+/g," ")),c)}))}n=An.prototype,n.add=function(s,a){te(this),this.i=null,s=ke(this,s);var c=this.g.get(s);return c||this.g.set(s,c=[]),c.push(a),this.h+=1,this};function eu(s,a){te(s),a=ke(s,a),s.g.has(a)&&(s.i=null,s.h-=s.g.get(a).length,s.g.delete(a))}function nu(s,a){return te(s),a=ke(s,a),s.g.has(a)}n.forEach=function(s,a){te(this),this.g.forEach(function(c,d){c.forEach(function(I){s.call(a,I,d,this)},this)},this)},n.na=function(){te(this);let s=Array.from(this.g.values()),a=Array.from(this.g.keys()),c=[];for(let d=0;d<a.length;d++){let I=s[d];for(let S=0;S<I.length;S++)c.push(a[d])}return c},n.V=function(s){te(this);let a=[];if(typeof s=="string")nu(this,s)&&(a=a.concat(this.g.get(ke(this,s))));else{s=Array.from(this.g.values());for(let c=0;c<s.length;c++)a=a.concat(s[c])}return a},n.set=function(s,a){return te(this),this.i=null,s=ke(this,s),nu(this,s)&&(this.h-=this.g.get(s).length),this.g.set(s,[a]),this.h+=1,this},n.get=function(s,a){return s?(s=this.V(s),0<s.length?String(s[0]):a):a};function ru(s,a,c){eu(s,a),0<c.length&&(s.i=null,s.g.set(ke(s,a),k(c)),s.h+=c.length)}n.toString=function(){if(this.i)return this.i;if(!this.g)return"";let s=[],a=Array.from(this.g.keys());for(var c=0;c<a.length;c++){var d=a[c];let S=encodeURIComponent(String(d)),x=this.V(d);for(d=0;d<x.length;d++){var I=S;x[d]!==""&&(I+="="+encodeURIComponent(String(x[d]))),s.push(I)}}return this.i=s.join("&")};function ke(s,a){return a=String(a),s.j&&(a=a.toLowerCase()),a}function Eh(s,a){a&&!s.j&&(te(s),s.i=null,s.g.forEach(function(c,d){var I=d.toLowerCase();d!=I&&(eu(this,d),ru(this,I,c))},s)),s.j=a}function vh(s,a){let c=new Tn;if(l.Image){let d=new Image;d.onload=R(ee,c,"TestLoadImage: loaded",!0,a,d),d.onerror=R(ee,c,"TestLoadImage: error",!1,a,d),d.onabort=R(ee,c,"TestLoadImage: abort",!1,a,d),d.ontimeout=R(ee,c,"TestLoadImage: timeout",!1,a,d),l.setTimeout(function(){d.ontimeout&&d.ontimeout()},1e4),d.src=s}else a(!1)}function Ah(s,a){let c=new Tn,d=new AbortController,I=setTimeout(()=>{d.abort(),ee(c,"TestPingServer: timeout",!1,a)},1e4);fetch(s,{signal:d.signal}).then(S=>{clearTimeout(I),S.ok?ee(c,"TestPingServer: ok",!0,a):ee(c,"TestPingServer: server error",!1,a)}).catch(()=>{clearTimeout(I),ee(c,"TestPingServer: error",!1,a)})}function ee(s,a,c,d,I){try{I&&(I.onload=null,I.onerror=null,I.onabort=null,I.ontimeout=null),d(c)}catch{}}function Sh(){this.g=new ah}function bh(s,a,c){let d=c||"";try{Xa(s,function(I,S){let x=I;f(I)&&(x=xs(I)),a.push(d+S+"="+encodeURIComponent(x))})}catch(I){throw a.push(d+"type="+encodeURIComponent("_badmap")),I}}function Sn(s){this.l=s.Ub||null,this.j=s.eb||!1}D(Sn,Ds),Sn.prototype.g=function(){return new fr(this.l,this.j)},Sn.prototype.i=(function(s){return function(){return s}})({});function fr(s,a){lt.call(this),this.D=s,this.o=a,this.m=void 0,this.status=this.readyState=0,this.responseType=this.responseText=this.response=this.statusText="",this.onreadystatechange=null,this.u=new Headers,this.h=null,this.B="GET",this.A="",this.g=!1,this.v=this.j=this.l=null}D(fr,lt),n=fr.prototype,n.open=function(s,a){if(this.readyState!=0)throw this.abort(),Error("Error reopening a connection");this.B=s,this.A=a,this.readyState=1,Rn(this)},n.send=function(s){if(this.readyState!=1)throw this.abort(),Error("need to call open() first. ");this.g=!0;let a={headers:this.u,method:this.B,credentials:this.m,cache:void 0};s&&(a.body=s),(this.D||l).fetch(new Request(this.A,a)).then(this.Sa.bind(this),this.ga.bind(this))},n.abort=function(){this.response=this.responseText="",this.u=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,bn(this)),this.readyState=0},n.Sa=function(s){if(this.g&&(this.l=s,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=s.headers,this.readyState=2,Rn(this)),this.g&&(this.readyState=3,Rn(this),this.g)))if(this.responseType==="arraybuffer")s.arrayBuffer().then(this.Qa.bind(this),this.ga.bind(this));else if(typeof l.ReadableStream<"u"&&"body"in s){if(this.j=s.body.getReader(),this.o){if(this.responseType)throw Error('responseType must be empty for "streamBinaryChunks" mode responses.');this.response=[]}else this.response=this.responseText="",this.v=new TextDecoder;su(this)}else s.text().then(this.Ra.bind(this),this.ga.bind(this))};function su(s){s.j.read().then(s.Pa.bind(s)).catch(s.ga.bind(s))}n.Pa=function(s){if(this.g){if(this.o&&s.value)this.response.push(s.value);else if(!this.o){var a=s.value?s.value:new Uint8Array(0);(a=this.v.decode(a,{stream:!s.done}))&&(this.response=this.responseText+=a)}s.done?bn(this):Rn(this),this.readyState==3&&su(this)}},n.Ra=function(s){this.g&&(this.response=this.responseText=s,bn(this))},n.Qa=function(s){this.g&&(this.response=s,bn(this))},n.ga=function(){this.g&&bn(this)};function bn(s){s.readyState=4,s.l=null,s.j=null,s.v=null,Rn(s)}n.setRequestHeader=function(s,a){this.u.append(s,a)},n.getResponseHeader=function(s){return this.h&&this.h.get(s.toLowerCase())||""},n.getAllResponseHeaders=function(){if(!this.h)return"";let s=[],a=this.h.entries();for(var c=a.next();!c.done;)c=c.value,s.push(c[0]+": "+c[1]),c=a.next();return s.join(`\r
|
|
7
|
+
`)};function Rn(s){s.onreadystatechange&&s.onreadystatechange.call(s)}Object.defineProperty(fr.prototype,"withCredentials",{get:function(){return this.m==="include"},set:function(s){this.m=s?"include":"same-origin"}});function iu(s){let a="";return ut(s,function(c,d){a+=d,a+=":",a+=c,a+=`\r
|
|
8
|
+
`}),a}function js(s,a,c){t:{for(d in c){var d=!1;break t}d=!0}d||(c=iu(c),typeof s=="string"?c!=null&&encodeURIComponent(String(c)):H(s,a,c))}function X(s){lt.call(this),this.headers=new Map,this.o=s||null,this.h=!1,this.v=this.g=null,this.D="",this.m=0,this.l="",this.j=this.B=this.u=this.A=!1,this.I=null,this.H="",this.J=!1}D(X,lt);var Rh=/^https?$/i,Ph=["POST","PUT"];n=X.prototype,n.Ha=function(s){this.J=s},n.ea=function(s,a,c,d){if(this.g)throw Error("[goog.net.XhrIo] Object is active with another request="+this.D+"; newUri="+s);a=a?a.toUpperCase():"GET",this.D=s,this.l="",this.m=0,this.A=!1,this.h=!0,this.g=this.o?this.o.g():Ms.g(),this.v=this.o?ka(this.o):ka(Ms),this.g.onreadystatechange=A(this.Ea,this);try{this.B=!0,this.g.open(a,String(s),!0),this.B=!1}catch(S){ou(this,S);return}if(s=c||"",c=new Map(this.headers),d)if(Object.getPrototypeOf(d)===Object.prototype)for(var I in d)c.set(I,d[I]);else if(typeof d.keys=="function"&&typeof d.get=="function")for(let S of d.keys())c.set(S,d.get(S));else throw Error("Unknown input type for opt_headers: "+String(d));d=Array.from(c.keys()).find(S=>S.toLowerCase()=="content-type"),I=l.FormData&&s instanceof l.FormData,!(0<=Array.prototype.indexOf.call(Ph,a,void 0))||d||I||c.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8");for(let[S,x]of c)this.g.setRequestHeader(S,x);this.H&&(this.g.responseType=this.H),"withCredentials"in this.g&&this.g.withCredentials!==this.J&&(this.g.withCredentials=this.J);try{cu(this),this.u=!0,this.g.send(s),this.u=!1}catch(S){ou(this,S)}};function ou(s,a){s.h=!1,s.g&&(s.j=!0,s.g.abort(),s.j=!1),s.l=a,s.m=5,au(s),mr(s)}function au(s){s.A||(s.A=!0,yt(s,"complete"),yt(s,"error"))}n.abort=function(s){this.g&&this.h&&(this.h=!1,this.j=!0,this.g.abort(),this.j=!1,this.m=s||7,yt(this,"complete"),yt(this,"abort"),mr(this))},n.N=function(){this.g&&(this.h&&(this.h=!1,this.j=!0,this.g.abort(),this.j=!1),mr(this,!0)),X.aa.N.call(this)},n.Ea=function(){this.s||(this.B||this.u||this.j?uu(this):this.bb())},n.bb=function(){uu(this)};function uu(s){if(s.h&&typeof u<"u"&&(!s.v[1]||jt(s)!=4||s.Z()!=2)){if(s.u&&jt(s)==4)Ca(s.Ea,0,s);else if(yt(s,"readystatechange"),jt(s)==4){s.h=!1;try{let x=s.Z();t:switch(x){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:var a=!0;break t;default:a=!1}var c;if(!(c=a)){var d;if(d=x===0){var I=String(s.D).match(Ya)[1]||null;!I&&l.self&&l.self.location&&(I=l.self.location.protocol.slice(0,-1)),d=!Rh.test(I?I.toLowerCase():"")}c=d}if(c)yt(s,"complete"),yt(s,"success");else{s.m=6;try{var S=2<jt(s)?s.g.statusText:""}catch{S=""}s.l=S+" ["+s.Z()+"]",au(s)}}finally{mr(s)}}}}function mr(s,a){if(s.g){cu(s);let c=s.g,d=s.v[0]?()=>{}:null;s.g=null,s.v=null,a||yt(s,"ready");try{c.onreadystatechange=d}catch{}}}function cu(s){s.I&&(l.clearTimeout(s.I),s.I=null)}n.isActive=function(){return!!this.g};function jt(s){return s.g?s.g.readyState:0}n.Z=function(){try{return 2<jt(this)?this.g.status:-1}catch{return-1}},n.oa=function(){try{return this.g?this.g.responseText:""}catch{return""}},n.Oa=function(s){if(this.g){var a=this.g.responseText;return s&&a.indexOf(s)==0&&(a=a.substring(s.length)),oh(a)}};function lu(s){try{if(!s.g)return null;if("response"in s.g)return s.g.response;switch(s.H){case"":case"text":return s.g.responseText;case"arraybuffer":if("mozResponseArrayBuffer"in s.g)return s.g.mozResponseArrayBuffer}return null}catch{return null}}function Vh(s){let a={};s=(s.g&&2<=jt(s)&&s.g.getAllResponseHeaders()||"").split(`\r
|
|
9
|
+
`);for(let d=0;d<s.length;d++){if(K(s[d]))continue;var c=w(s[d]);let I=c[0];if(c=c[1],typeof c!="string")continue;c=c.trim();let S=a[I]||[];a[I]=S,S.push(c)}E(a,function(d){return d.join(", ")})}n.Ba=function(){return this.m},n.Ka=function(){return typeof this.l=="string"?this.l:String(this.l)};function Pn(s,a,c){return c&&c.internalChannelParams&&c.internalChannelParams[s]||a}function hu(s){this.Aa=0,this.i=[],this.j=new Tn,this.ia=this.qa=this.I=this.W=this.g=this.ya=this.D=this.H=this.m=this.S=this.o=null,this.Ya=this.U=0,this.Va=Pn("failFast",!1,s),this.F=this.C=this.u=this.s=this.l=null,this.X=!0,this.za=this.T=-1,this.Y=this.v=this.B=0,this.Ta=Pn("baseRetryDelayMs",5e3,s),this.cb=Pn("retryDelaySeedMs",1e4,s),this.Wa=Pn("forwardChannelMaxRetries",2,s),this.wa=Pn("forwardChannelRequestTimeoutMs",2e4,s),this.pa=s&&s.xmlHttpFactory||void 0,this.Xa=s&&s.Tb||void 0,this.Ca=s&&s.useFetchStreams||!1,this.L=void 0,this.J=s&&s.supportsCrossDomainXhr||!1,this.K="",this.h=new $a(s&&s.concurrentRequestLimit),this.Da=new Sh,this.P=s&&s.fastHandshake||!1,this.O=s&&s.encodeInitMessageHeaders||!1,this.P&&this.O&&(this.O=!1),this.Ua=s&&s.Rb||!1,s&&s.xa&&this.j.xa(),s&&s.forceLongPolling&&(this.X=!1),this.ba=!this.P&&this.X&&s&&s.detectBufferingProxy||!1,this.ja=void 0,s&&s.longPollingTimeout&&0<s.longPollingTimeout&&(this.ja=s.longPollingTimeout),this.ca=void 0,this.R=0,this.M=!1,this.ka=this.A=null}n=hu.prototype,n.la=8,n.G=1,n.connect=function(s,a,c,d){_t(0),this.W=s,this.H=a||{},c&&d!==void 0&&(this.H.OSID=c,this.H.OAID=d),this.F=this.X,this.I=Tu(this,null,this.W),pr(this)};function Gs(s){if(du(s),s.G==3){var a=s.U++,c=Bt(s.I);if(H(c,"SID",s.K),H(c,"RID",a),H(c,"TYPE","terminate"),Vn(s,c),a=new Zt(s,s.j,a),a.L=2,a.v=dr(Bt(c)),c=!1,l.navigator&&l.navigator.sendBeacon)try{c=l.navigator.sendBeacon(a.v.toString(),"")}catch{}!c&&l.Image&&(new Image().src=a.v,c=!0),c||(a.g=Iu(a.j,null),a.g.ea(a.v)),a.F=Date.now(),cr(a)}wu(s)}function gr(s){s.g&&(Ks(s),s.g.cancel(),s.g=null)}function du(s){gr(s),s.u&&(l.clearTimeout(s.u),s.u=null),yr(s),s.h.cancel(),s.s&&(typeof s.s=="number"&&l.clearTimeout(s.s),s.s=null)}function pr(s){if(!Qa(s.h)&&!s.s){s.s=!0;var a=s.Ga;dn||Aa(),fn||(dn(),fn=!0),Es.add(a,s),s.B=0}}function Ch(s,a){return Wa(s.h)>=s.h.j-(s.s?1:0)?!1:s.s?(s.i=a.D.concat(s.i),!0):s.G==1||s.G==2||s.B>=(s.Va?0:s.Wa)?!1:(s.s=wn(A(s.Ga,s,a),_u(s,s.B)),s.B++,!0)}n.Ga=function(s){if(this.s)if(this.s=null,this.G==1){if(!s){this.U=Math.floor(1e5*Math.random()),s=this.U++;let I=new Zt(this,this.j,s),S=this.o;if(this.S&&(S?(S=g(S),_(S,this.S)):S=this.S),this.m!==null||this.O||(I.H=S,S=null),this.P)t:{for(var a=0,c=0;c<this.i.length;c++){e:{var d=this.i[c];if("__data__"in d.map&&(d=d.map.__data__,typeof d=="string")){d=d.length;break e}d=void 0}if(d===void 0)break;if(a+=d,4096<a){a=c;break t}if(a===4096||c===this.i.length-1){a=c+1;break t}}a=1e3}else a=1e3;a=mu(this,I,a),c=Bt(this.I),H(c,"RID",s),H(c,"CVER",22),this.D&&H(c,"X-HTTP-Session-Id",this.D),Vn(this,c),S&&(this.O?a="headers="+encodeURIComponent(String(iu(S)))+"&"+a:this.m&&js(c,this.m,S)),Bs(this.h,I),this.Ua&&H(c,"TYPE","init"),this.P?(H(c,"$req",a),H(c,"SID","null"),I.T=!0,Fs(I,c,null)):Fs(I,c,a),this.G=2}}else this.G==3&&(s?fu(this,s):this.i.length==0||Qa(this.h)||fu(this))};function fu(s,a){var c;a?c=a.l:c=s.U++;let d=Bt(s.I);H(d,"SID",s.K),H(d,"RID",c),H(d,"AID",s.T),Vn(s,d),s.m&&s.o&&js(d,s.m,s.o),c=new Zt(s,s.j,c,s.B+1),s.m===null&&(c.H=s.o),a&&(s.i=a.D.concat(s.i)),a=mu(s,c,1e3),c.I=Math.round(.5*s.wa)+Math.round(.5*s.wa*Math.random()),Bs(s.h,c),Fs(c,d,a)}function Vn(s,a){s.H&&ut(s.H,function(c,d){H(a,d,c)}),s.l&&Xa({},function(c,d){H(a,d,c)})}function mu(s,a,c){c=Math.min(s.i.length,c);var d=s.l?A(s.l.Na,s.l,s):null;t:{var I=s.i;let S=-1;for(;;){let x=["count="+c];S==-1?0<c?(S=I[0].g,x.push("ofs="+S)):S=0:x.push("ofs="+S);let Q=!0;for(let ot=0;ot<c;ot++){let z=I[ot].g,ht=I[ot].map;if(z-=S,0>z)S=Math.max(0,I[ot].g-100),Q=!1;else try{bh(ht,x,"req"+z+"_")}catch{d&&d(ht)}}if(Q){d=x.join("&");break t}}}return s=s.i.splice(0,c),a.D=s,d}function gu(s){if(!s.g&&!s.u){s.Y=1;var a=s.Fa;dn||Aa(),fn||(dn(),fn=!0),Es.add(a,s),s.v=0}}function zs(s){return s.g||s.u||3<=s.v?!1:(s.Y++,s.u=wn(A(s.Fa,s),_u(s,s.v)),s.v++,!0)}n.Fa=function(){if(this.u=null,pu(this),this.ba&&!(this.M||this.g==null||0>=this.R)){var s=2*this.R;this.j.info("BP detection timer enabled: "+s),this.A=wn(A(this.ab,this),s)}},n.ab=function(){this.A&&(this.A=null,this.j.info("BP detection timeout reached."),this.j.info("Buffering proxy detected and switch to long-polling!"),this.F=!1,this.M=!0,_t(10),gr(this),pu(this))};function Ks(s){s.A!=null&&(l.clearTimeout(s.A),s.A=null)}function pu(s){s.g=new Zt(s,s.j,"rpc",s.Y),s.m===null&&(s.g.H=s.o),s.g.O=0;var a=Bt(s.qa);H(a,"RID","rpc"),H(a,"SID",s.K),H(a,"AID",s.T),H(a,"CI",s.F?"0":"1"),!s.F&&s.ja&&H(a,"TO",s.ja),H(a,"TYPE","xmlhttp"),Vn(s,a),s.m&&s.o&&js(a,s.m,s.o),s.L&&(s.g.I=s.L);var c=s.g;s=s.ia,c.L=1,c.v=dr(Bt(a)),c.m=null,c.P=!0,Ga(c,s)}n.Za=function(){this.C!=null&&(this.C=null,gr(this),zs(this),_t(19))};function yr(s){s.C!=null&&(l.clearTimeout(s.C),s.C=null)}function yu(s,a){var c=null;if(s.g==a){yr(s),Ks(s),s.g=null;var d=2}else if(Us(s.h,a))c=a.D,Ha(s.h,a),d=1;else return;if(s.G!=0){if(a.o)if(d==1){c=a.m?a.m.length:0,a=Date.now()-a.F;var I=s.B;d=or(),yt(d,new qa(d,c)),pr(s)}else gu(s);else if(I=a.s,I==3||I==0&&0<a.X||!(d==1&&Ch(s,a)||d==2&&zs(s)))switch(c&&0<c.length&&(a=s.h,a.i=a.i.concat(c)),I){case 1:ye(s,5);break;case 4:ye(s,10);break;case 3:ye(s,6);break;default:ye(s,2)}}}function _u(s,a){let c=s.Ta+Math.floor(Math.random()*s.cb);return s.isActive()||(c*=2),c*a}function ye(s,a){if(s.j.info("Error code "+a),a==2){var c=A(s.fb,s),d=s.Xa;let I=!d;d=new pe(d||"//www.google.com/images/cleardot.gif"),l.location&&l.location.protocol=="http"||lr(d,"https"),dr(d),I?vh(d.toString(),c):Ah(d.toString(),c)}else _t(2);s.G=0,s.l&&s.l.sa(a),wu(s),du(s)}n.fb=function(s){s?(this.j.info("Successfully pinged google.com"),_t(2)):(this.j.info("Failed to ping google.com"),_t(1))};function wu(s){if(s.G=0,s.ka=[],s.l){let a=Ja(s.h);(a.length!=0||s.i.length!=0)&&(C(s.ka,a),C(s.ka,s.i),s.h.i.length=0,k(s.i),s.i.length=0),s.l.ra()}}function Tu(s,a,c){var d=c instanceof pe?Bt(c):new pe(c);if(d.g!="")a&&(d.g=a+"."+d.g),hr(d,d.s);else{var I=l.location;d=I.protocol,a=a?a+"."+I.hostname:I.hostname,I=+I.port;var S=new pe(null);d&&lr(S,d),a&&(S.g=a),I&&hr(S,I),c&&(S.l=c),d=S}return c=s.D,a=s.ya,c&&a&&H(d,c,a),H(d,"VER",s.la),Vn(s,d),d}function Iu(s,a,c){if(a&&!s.J)throw Error("Can't create secondary domain capable XhrIo object.");return a=s.Ca&&!s.pa?new X(new Sn({eb:c})):new X(s.pa),a.Ha(s.J),a}n.isActive=function(){return!!this.l&&this.l.isActive(this)};function Eu(){}n=Eu.prototype,n.ua=function(){},n.ta=function(){},n.sa=function(){},n.ra=function(){},n.isActive=function(){return!0},n.Na=function(){};function _r(){}_r.prototype.g=function(s,a){return new Et(s,a)};function Et(s,a){lt.call(this),this.g=new hu(a),this.l=s,this.h=a&&a.messageUrlParams||null,s=a&&a.messageHeaders||null,a&&a.clientProtocolHeaderRequired&&(s?s["X-Client-Protocol"]="webchannel":s={"X-Client-Protocol":"webchannel"}),this.g.o=s,s=a&&a.initMessageHeaders||null,a&&a.messageContentType&&(s?s["X-WebChannel-Content-Type"]=a.messageContentType:s={"X-WebChannel-Content-Type":a.messageContentType}),a&&a.va&&(s?s["X-WebChannel-Client-Profile"]=a.va:s={"X-WebChannel-Client-Profile":a.va}),this.g.S=s,(s=a&&a.Sb)&&!K(s)&&(this.g.m=s),this.v=a&&a.supportsCrossDomainXhr||!1,this.u=a&&a.sendRawJson||!1,(a=a&&a.httpSessionIdParam)&&!K(a)&&(this.g.D=a,s=this.h,s!==null&&a in s&&(s=this.h,a in s&&delete s[a])),this.j=new Me(this)}D(Et,lt),Et.prototype.m=function(){this.g.l=this.j,this.v&&(this.g.J=!0),this.g.connect(this.l,this.h||void 0)},Et.prototype.close=function(){Gs(this.g)},Et.prototype.o=function(s){var a=this.g;if(typeof s=="string"){var c={};c.__data__=s,s=c}else this.u&&(c={},c.__data__=xs(s),s=c);a.i.push(new fh(a.Ya++,s)),a.G==3&&pr(a)},Et.prototype.N=function(){this.g.l=null,delete this.j,Gs(this.g),delete this.g,Et.aa.N.call(this)};function vu(s){Ns.call(this),s.__headers__&&(this.headers=s.__headers__,this.statusCode=s.__status__,delete s.__headers__,delete s.__status__);var a=s.__sm__;if(a){t:{for(let c in a){s=c;break t}s=void 0}(this.i=s)&&(s=this.i,a=a!==null&&s in a?a[s]:void 0),this.data=a}else this.data=s}D(vu,Ns);function Au(){ks.call(this),this.status=1}D(Au,ks);function Me(s){this.g=s}D(Me,Eu),Me.prototype.ua=function(){yt(this.g,"a")},Me.prototype.ta=function(s){yt(this.g,new vu(s))},Me.prototype.sa=function(s){yt(this.g,new Au)},Me.prototype.ra=function(){yt(this.g,"b")},_r.prototype.createWebChannel=_r.prototype.g,Et.prototype.send=Et.prototype.o,Et.prototype.open=Et.prototype.m,Et.prototype.close=Et.prototype.close,ei=zt.createWebChannelTransport=function(){return new _r},ti=zt.getStatEventTarget=function(){return or()},Zs=zt.Event=me,Ir=zt.Stat={mb:0,pb:1,qb:2,Jb:3,Ob:4,Lb:5,Mb:6,Kb:7,Ib:8,Nb:9,PROXY:10,NOPROXY:11,Gb:12,Cb:13,Db:14,Bb:15,Eb:16,Fb:17,ib:18,hb:19,jb:20},ar.NO_ERROR=0,ar.TIMEOUT=8,ar.HTTP_ERROR=6,Cn=zt.ErrorCode=ar,Ua.COMPLETE="complete",Ys=zt.EventType=Ua,Ma.EventType=yn,yn.OPEN="a",yn.CLOSE="b",yn.ERROR="c",yn.MESSAGE="d",lt.prototype.listen=lt.prototype.K,Fe=zt.WebChannel=Ma,xh=zt.FetchXmlHttpFactory=Sn,X.prototype.listenOnce=X.prototype.L,X.prototype.getLastError=X.prototype.Ka,X.prototype.getLastErrorCode=X.prototype.Ba,X.prototype.getStatus=X.prototype.Z,X.prototype.getResponseJson=X.prototype.Oa,X.prototype.getResponseText=X.prototype.oa,X.prototype.send=X.prototype.ea,X.prototype.setWithCredentials=X.prototype.Ha,Xs=zt.XhrIo=X}).apply(typeof Tr<"u"?Tr:typeof self<"u"?self:typeof window<"u"?window:{});var Fu="@firebase/firestore",Lu="4.9.1";var mt=class{constructor(t){this.uid=t}isAuthenticated(){return this.uid!=null}toKey(){return this.isAuthenticated()?"uid:"+this.uid:"anonymous-user"}isEqual(t){return t.uid===this.uid}};mt.UNAUTHENTICATED=new mt(null),mt.GOOGLE_CREDENTIALS=new mt("google-credentials-uid"),mt.FIRST_PARTY=new mt("first-party-uid"),mt.MOCK_USER=new mt("mock-user");var rn="12.2.0";var Ie=new Cu("@firebase/firestore");function Le(){return Ie.logLevel}function N(n,...t){if(Ie.logLevel<=kt.DEBUG){let e=t.map(Jo);Ie.debug(`Firestore (${rn}): ${n}`,...e)}}function $t(n,...t){if(Ie.logLevel<=kt.ERROR){let e=t.map(Jo);Ie.error(`Firestore (${rn}): ${n}`,...e)}}function On(n,...t){if(Ie.logLevel<=kt.WARN){let e=t.map(Jo);Ie.warn(`Firestore (${rn}): ${n}`,...e)}}function Jo(n){if(typeof n=="string")return n;try{return(function(e){return JSON.stringify(e)})(n)}catch{return n}}function O(n,t,e){let r="Unexpected state";typeof t=="string"?r=t:e=t,bc(n,r,e)}function bc(n,t,e){let r=`FIRESTORE (${rn}) INTERNAL ASSERTION FAILED: ${t} (ID: ${n.toString(16)})`;if(e!==void 0)try{r+=" CONTEXT: "+JSON.stringify(e)}catch{r+=" CONTEXT: "+e}throw $t(r),new Error(r)}function j(n,t,e,r){let i="Unexpected state";typeof e=="string"?i=e:r=e,n||bc(t,i,r)}function L(n,t){return n}var b={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"},V=class extends Pu{constructor(t,e){super(t,e),this.code=t,this.message=e,this.toString=()=>`${this.name}: [code=${this.code}]: ${this.message}`}};var Pt=class{constructor(){this.promise=new Promise(((t,e)=>{this.resolve=t,this.reject=e}))}};var oi=class{constructor(t,e){this.user=e,this.type="OAuth",this.headers=new Map,this.headers.set("Authorization",`Bearer ${t}`)}},ai=class{getToken(){return Promise.resolve(null)}invalidateToken(){}start(t,e){t.enqueueRetryable((()=>e(mt.UNAUTHENTICATED)))}shutdown(){}};var ui=class{constructor(t){this.t=t,this.currentUser=mt.UNAUTHENTICATED,this.i=0,this.forceRefresh=!1,this.auth=null}start(t,e){j(this.o===void 0,42304);let r=this.i,i=h=>this.i!==r?(r=this.i,e(h)):Promise.resolve(),o=new Pt;this.o=()=>{this.i++,this.currentUser=this.u(),o.resolve(),o=new Pt,t.enqueueRetryable((()=>i(this.currentUser)))};let u=()=>{let h=o;t.enqueueRetryable((async()=>{await h.promise,await i(this.currentUser)}))},l=h=>{N("FirebaseAuthCredentialsProvider","Auth detected"),this.auth=h,this.o&&(this.auth.addAuthTokenListener(this.o),u())};this.t.onInit((h=>l(h))),setTimeout((()=>{if(!this.auth){let h=this.t.getImmediate({optional:!0});h?l(h):(N("FirebaseAuthCredentialsProvider","Auth not yet detected"),o.resolve(),o=new Pt)}}),0),u()}getToken(){let t=this.i,e=this.forceRefresh;return this.forceRefresh=!1,this.auth?this.auth.getToken(e).then((r=>this.i!==t?(N("FirebaseAuthCredentialsProvider","getToken aborted due to token change."),this.getToken()):r?(j(typeof r.accessToken=="string",31837,{l:r}),new oi(r.accessToken,this.currentUser)):null)):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.auth&&this.o&&this.auth.removeAuthTokenListener(this.o),this.o=void 0}u(){let t=this.auth&&this.auth.getUid();return j(t===null||typeof t=="string",2055,{h:t}),new mt(t)}},ci=class{constructor(t,e,r){this.P=t,this.T=e,this.I=r,this.type="FirstParty",this.user=mt.FIRST_PARTY,this.A=new Map}R(){return this.I?this.I():null}get headers(){this.A.set("X-Goog-AuthUser",this.P);let t=this.R();return t&&this.A.set("Authorization",t),this.T&&this.A.set("X-Goog-Iam-Authorization-Token",this.T),this.A}},li=class{constructor(t,e,r){this.P=t,this.T=e,this.I=r}getToken(){return Promise.resolve(new ci(this.P,this.T,this.I))}start(t,e){t.enqueueRetryable((()=>e(mt.FIRST_PARTY)))}shutdown(){}invalidateToken(){}},Pr=class{constructor(t){this.value=t,this.type="AppCheck",this.headers=new Map,t&&t.length>0&&this.headers.set("x-firebase-appcheck",this.value)}},hi=class{constructor(t,e){this.V=e,this.forceRefresh=!1,this.appCheck=null,this.m=null,this.p=null,Nu(t)&&t.settings.appCheckToken&&(this.p=t.settings.appCheckToken)}start(t,e){j(this.o===void 0,3512);let r=o=>{o.error!=null&&N("FirebaseAppCheckTokenProvider",`Error getting App Check token; using placeholder token instead. Error: ${o.error.message}`);let u=o.token!==this.m;return this.m=o.token,N("FirebaseAppCheckTokenProvider",`Received ${u?"new":"existing"} token.`),u?e(o.token):Promise.resolve()};this.o=o=>{t.enqueueRetryable((()=>r(o)))};let i=o=>{N("FirebaseAppCheckTokenProvider","AppCheck detected"),this.appCheck=o,this.o&&this.appCheck.addTokenListener(this.o)};this.V.onInit((o=>i(o))),setTimeout((()=>{if(!this.appCheck){let o=this.V.getImmediate({optional:!0});o?i(o):N("FirebaseAppCheckTokenProvider","AppCheck not yet detected")}}),0)}getToken(){if(this.p)return Promise.resolve(new Pr(this.p));let t=this.forceRefresh;return this.forceRefresh=!1,this.appCheck?this.appCheck.getToken(t).then((e=>e?(j(typeof e.token=="string",44558,{tokenResult:e}),this.m=e.token,new Pr(e.token)):null)):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.appCheck&&this.o&&this.appCheck.removeTokenListener(this.o),this.o=void 0}};function Dh(n){let t=typeof self<"u"&&(self.crypto||self.msCrypto),e=new Uint8Array(n);if(t&&typeof t.getRandomValues=="function")t.getRandomValues(e);else for(let r=0;r<n;r++)e[r]=Math.floor(256*Math.random());return e}var Fn=class{static newId(){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e=62*Math.floor(4.129032258064516),r="";for(;r.length<20;){let i=Dh(40);for(let o=0;o<i.length;++o)r.length<20&&i[o]<e&&(r+=t.charAt(i[o]%62))}return r}};function q(n,t){return n<t?-1:n>t?1:0}function di(n,t){let e=Math.min(n.length,t.length);for(let r=0;r<e;r++){let i=n.charAt(r),o=t.charAt(r);if(i!==o)return ni(i)===ni(o)?q(i,o):ni(i)?1:-1}return q(n.length,t.length)}var Nh=55296,kh=57343;function ni(n){let t=n.charCodeAt(0);return t>=Nh&&t<=kh}function $e(n,t,e){return n.length===t.length&&n.every(((r,i)=>e(r,t[i])))}var fi="__name__",Vr=class n{constructor(t,e,r){e===void 0?e=0:e>t.length&&O(637,{offset:e,range:t.length}),r===void 0?r=t.length-e:r>t.length-e&&O(1746,{length:r,range:t.length-e}),this.segments=t,this.offset=e,this.len=r}get length(){return this.len}isEqual(t){return n.comparator(this,t)===0}child(t){let e=this.segments.slice(this.offset,this.limit());return t instanceof n?t.forEach((r=>{e.push(r)})):e.push(t),this.construct(e)}limit(){return this.offset+this.length}popFirst(t){return t=t===void 0?1:t,this.construct(this.segments,this.offset+t,this.length-t)}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(t){return this.segments[this.offset+t]}isEmpty(){return this.length===0}isPrefixOf(t){if(t.length<this.length)return!1;for(let e=0;e<this.length;e++)if(this.get(e)!==t.get(e))return!1;return!0}isImmediateParentOf(t){if(this.length+1!==t.length)return!1;for(let e=0;e<this.length;e++)if(this.get(e)!==t.get(e))return!1;return!0}forEach(t){for(let e=this.offset,r=this.limit();e<r;e++)t(this.segments[e])}toArray(){return this.segments.slice(this.offset,this.limit())}static comparator(t,e){let r=Math.min(t.length,e.length);for(let i=0;i<r;i++){let o=n.compareSegments(t.get(i),e.get(i));if(o!==0)return o}return q(t.length,e.length)}static compareSegments(t,e){let r=n.isNumericId(t),i=n.isNumericId(e);return r&&!i?-1:!r&&i?1:r&&i?n.extractNumericId(t).compare(n.extractNumericId(e)):di(t,e)}static isNumericId(t){return t.startsWith("__id")&&t.endsWith("__")}static extractNumericId(t){return Gt.fromString(t.substring(4,t.length-2))}},W=class n extends Vr{construct(t,e,r){return new n(t,e,r)}canonicalString(){return this.toArray().join("/")}toString(){return this.canonicalString()}toUriEncodedString(){return this.toArray().map(encodeURIComponent).join("/")}static fromString(...t){let e=[];for(let r of t){if(r.indexOf("//")>=0)throw new V(b.INVALID_ARGUMENT,`Invalid segment (${r}). Paths must not contain // in them.`);e.push(...r.split("/").filter((i=>i.length>0)))}return new n(e)}static emptyPath(){return new n([])}},Mh=/^[_a-zA-Z][_a-zA-Z0-9]*$/,vt=class n extends Vr{construct(t,e,r){return new n(t,e,r)}static isValidIdentifier(t){return Mh.test(t)}canonicalString(){return this.toArray().map((t=>(t=t.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),n.isValidIdentifier(t)||(t="`"+t+"`"),t))).join(".")}toString(){return this.canonicalString()}isKeyField(){return this.length===1&&this.get(0)===fi}static keyField(){return new n([fi])}static fromServerFormat(t){let e=[],r="",i=0,o=()=>{if(r.length===0)throw new V(b.INVALID_ARGUMENT,`Invalid field path (${t}). Paths must not be empty, begin with '.', end with '.', or contain '..'`);e.push(r),r=""},u=!1;for(;i<t.length;){let l=t[i];if(l==="\\"){if(i+1===t.length)throw new V(b.INVALID_ARGUMENT,"Path has trailing escape character: "+t);let h=t[i+1];if(h!=="\\"&&h!=="."&&h!=="`")throw new V(b.INVALID_ARGUMENT,"Path has invalid escape sequence: "+t);r+=h,i+=2}else l==="`"?(u=!u,i++):l!=="."||u?(r+=l,i++):(o(),i++)}if(o(),u)throw new V(b.INVALID_ARGUMENT,"Unterminated ` in path: "+t);return new n(e)}static emptyPath(){return new n([])}};var M=class n{constructor(t){this.path=t}static fromPath(t){return new n(W.fromString(t))}static fromName(t){return new n(W.fromString(t).popFirst(5))}static empty(){return new n(W.emptyPath())}get collectionGroup(){return this.path.popLast().lastSegment()}hasCollectionId(t){return this.path.length>=2&&this.path.get(this.path.length-2)===t}getCollectionGroup(){return this.path.get(this.path.length-2)}getCollectionPath(){return this.path.popLast()}isEqual(t){return t!==null&&W.comparator(this.path,t.path)===0}toString(){return this.path.toString()}static comparator(t,e){return W.comparator(t.path,e.path)}static isDocumentKey(t){return t.length%2==0}static fromSegments(t){return new n(new W(t.slice()))}};function Rc(n,t,e){if(!e)throw new V(b.INVALID_ARGUMENT,`Function ${n}() cannot be called with an empty ${t}.`)}function Oh(n,t,e,r){if(t===!0&&r===!0)throw new V(b.INVALID_ARGUMENT,`${n} and ${e} cannot be used together.`)}function qu(n){if(!M.isDocumentKey(n))throw new V(b.INVALID_ARGUMENT,`Invalid document reference. Document references must have an even number of segments, but ${n} has ${n.length}.`)}function Uu(n){if(M.isDocumentKey(n))throw new V(b.INVALID_ARGUMENT,`Invalid collection reference. Collection references must have an odd number of segments, but ${n} has ${n.length}.`)}function Pc(n){return typeof n=="object"&&n!==null&&(Object.getPrototypeOf(n)===Object.prototype||Object.getPrototypeOf(n)===null)}function hs(n){if(n===void 0)return"undefined";if(n===null)return"null";if(typeof n=="string")return n.length>20&&(n=`${n.substring(0,20)}...`),JSON.stringify(n);if(typeof n=="number"||typeof n=="boolean")return""+n;if(typeof n=="object"){if(n instanceof Array)return"an array";{let t=(function(r){return r.constructor?r.constructor.name:null})(n);return t?`a custom ${t} object`:"an object"}}return typeof n=="function"?"a function":O(12329,{type:typeof n})}function It(n,t){if("_delegate"in n&&(n=n._delegate),!(n instanceof t)){if(t.name===n.constructor.name)throw new V(b.INVALID_ARGUMENT,"Type does not match the expected instance. Did you pass a reference from a different Firestore SDK?");{let e=hs(n);throw new V(b.INVALID_ARGUMENT,`Expected type '${t.name}', but it was: ${e}`)}}return n}function Fh(n,t){if(t<=0)throw new V(b.INVALID_ARGUMENT,`Function ${n}() requires a positive number, but it was: ${t}.`)}function nt(n,t){let e={typeString:n};return t&&(e.value=t),e}function Zn(n,t){if(!Pc(n))throw new V(b.INVALID_ARGUMENT,"JSON must be an object");let e;for(let r in t)if(t[r]){let i=t[r].typeString,o="value"in t[r]?{value:t[r].value}:void 0;if(!(r in n)){e=`JSON missing required field: '${r}'`;break}let u=n[r];if(i&&typeof u!==i){e=`JSON field '${r}' must be a ${i}.`;break}if(o!==void 0&&u!==o.value){e=`Expected '${r}' field to equal '${o.value}'`;break}}if(e)throw new V(b.INVALID_ARGUMENT,e);return!0}var Bu=-62135596800,ju=1e6,rt=class n{static now(){return n.fromMillis(Date.now())}static fromDate(t){return n.fromMillis(t.getTime())}static fromMillis(t){let e=Math.floor(t/1e3),r=Math.floor((t-1e3*e)*ju);return new n(e,r)}constructor(t,e){if(this.seconds=t,this.nanoseconds=e,e<0)throw new V(b.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+e);if(e>=1e9)throw new V(b.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+e);if(t<Bu)throw new V(b.INVALID_ARGUMENT,"Timestamp seconds out of range: "+t);if(t>=253402300800)throw new V(b.INVALID_ARGUMENT,"Timestamp seconds out of range: "+t)}toDate(){return new Date(this.toMillis())}toMillis(){return 1e3*this.seconds+this.nanoseconds/ju}_compareTo(t){return this.seconds===t.seconds?q(this.nanoseconds,t.nanoseconds):q(this.seconds,t.seconds)}isEqual(t){return t.seconds===this.seconds&&t.nanoseconds===this.nanoseconds}toString(){return"Timestamp(seconds="+this.seconds+", nanoseconds="+this.nanoseconds+")"}toJSON(){return{type:n._jsonSchemaVersion,seconds:this.seconds,nanoseconds:this.nanoseconds}}static fromJSON(t){if(Zn(t,n._jsonSchema))return new n(t.seconds,t.nanoseconds)}valueOf(){let t=this.seconds-Bu;return String(t).padStart(12,"0")+"."+String(this.nanoseconds).padStart(9,"0")}};rt._jsonSchemaVersion="firestore/timestamp/1.0",rt._jsonSchema={type:nt("string",rt._jsonSchemaVersion),seconds:nt("number"),nanoseconds:nt("number")};var F=class n{static fromTimestamp(t){return new n(t)}static min(){return new n(new rt(0,0))}static max(){return new n(new rt(253402300799,999999999))}constructor(t){this.timestamp=t}compareTo(t){return this.timestamp._compareTo(t.timestamp)}isEqual(t){return this.timestamp.isEqual(t.timestamp)}toMicroseconds(){return 1e6*this.timestamp.seconds+this.timestamp.nanoseconds/1e3}toString(){return"SnapshotVersion("+this.timestamp.toString()+")"}toTimestamp(){return this.timestamp}};var Ln=-1,mi=class{constructor(t,e,r,i){this.indexId=t,this.collectionGroup=e,this.fields=r,this.indexState=i}};mi.UNKNOWN_ID=-1;function Lh(n,t){let e=n.toTimestamp().seconds,r=n.toTimestamp().nanoseconds+1,i=F.fromTimestamp(r===1e9?new rt(e+1,0):new rt(e,r));return new Ee(i,M.empty(),t)}function qh(n){return new Ee(n.readTime,n.key,Ln)}var Ee=class n{constructor(t,e,r){this.readTime=t,this.documentKey=e,this.largestBatchId=r}static min(){return new n(F.min(),M.empty(),Ln)}static max(){return new n(F.max(),M.empty(),Ln)}};function Uh(n,t){let e=n.readTime.compareTo(t.readTime);return e!==0?e:(e=M.comparator(n.documentKey,t.documentKey),e!==0?e:q(n.largestBatchId,t.largestBatchId))}var Bh="The current tab is not in the required state to perform this operation. It might be necessary to refresh the browser tab.",gi=class{constructor(){this.onCommittedListeners=[]}addOnCommittedListener(t){this.onCommittedListeners.push(t)}raiseOnCommittedEvent(){this.onCommittedListeners.forEach((t=>t()))}};async function sn(n){if(n.code!==b.FAILED_PRECONDITION||n.message!==Bh)throw n;N("LocalStore","Unexpectedly lost primary lease")}var P=class n{constructor(t){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,t((e=>{this.isDone=!0,this.result=e,this.nextCallback&&this.nextCallback(e)}),(e=>{this.isDone=!0,this.error=e,this.catchCallback&&this.catchCallback(e)}))}catch(t){return this.next(void 0,t)}next(t,e){return this.callbackAttached&&O(59440),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(e,this.error):this.wrapSuccess(t,this.result):new n(((r,i)=>{this.nextCallback=o=>{this.wrapSuccess(t,o).next(r,i)},this.catchCallback=o=>{this.wrapFailure(e,o).next(r,i)}}))}toPromise(){return new Promise(((t,e)=>{this.next(t,e)}))}wrapUserFunction(t){try{let e=t();return e instanceof n?e:n.resolve(e)}catch(e){return n.reject(e)}}wrapSuccess(t,e){return t?this.wrapUserFunction((()=>t(e))):n.resolve(e)}wrapFailure(t,e){return t?this.wrapUserFunction((()=>t(e))):n.reject(e)}static resolve(t){return new n(((e,r)=>{e(t)}))}static reject(t){return new n(((e,r)=>{r(t)}))}static waitFor(t){return new n(((e,r)=>{let i=0,o=0,u=!1;t.forEach((l=>{++i,l.next((()=>{++o,u&&o===i&&e()}),(h=>r(h)))})),u=!0,o===i&&e()}))}static or(t){let e=n.resolve(!1);for(let r of t)e=e.next((i=>i?n.resolve(i):r()));return e}static forEach(t,e){let r=[];return t.forEach(((i,o)=>{r.push(e.call(this,i,o))})),this.waitFor(r)}static mapArray(t,e){return new n(((r,i)=>{let o=t.length,u=new Array(o),l=0;for(let h=0;h<o;h++){let f=h;e(t[f]).next((m=>{u[f]=m,++l,l===o&&r(u)}),(m=>i(m)))}}))}static doWhile(t,e){return new n(((r,i)=>{let o=()=>{t()===!0?e().next((()=>{o()}),i):r()};o()}))}};function jh(n){let t=n.match(/Android ([\d.]+)/i),e=t?t[1].split(".").slice(0,2).join("."):"-1";return Number(e)}function on(n){return n.name==="IndexedDbTransactionError"}var Qe=class{constructor(t,e){this.previousValue=t,e&&(e.sequenceNumberHandler=r=>this.ae(r),this.ue=r=>e.writeSequenceNumber(r))}ae(t){return this.previousValue=Math.max(t,this.previousValue),this.previousValue}next(){let t=++this.previousValue;return this.ue&&this.ue(t),t}};Qe.ce=-1;var Xo=-1;function tr(n){return n==null}function qn(n){return n===0&&1/n==-1/0}function Gh(n){return typeof n=="number"&&Number.isInteger(n)&&!qn(n)&&n<=Number.MAX_SAFE_INTEGER&&n>=Number.MIN_SAFE_INTEGER}var Vc="";function zh(n){let t="";for(let e=0;e<n.length;e++)t.length>0&&(t=Gu(t)),t=Kh(n.get(e),t);return Gu(t)}function Kh(n,t){let e=t,r=n.length;for(let i=0;i<r;i++){let o=n.charAt(i);switch(o){case"\0":e+="";break;case Vc:e+="";break;default:e+=o}}return e}function Gu(n){return n+Vc+""}var $h="remoteDocuments",Cc="owner";var xc="mutationQueues";var Dc="mutations";var Nc="documentMutations",Qh="remoteDocumentsV14";var kc="remoteDocumentGlobal";var Mc="targets";var Oc="targetDocuments";var Fc="targetGlobal",Lc="collectionParents";var qc="clientMetadata";var Uc="bundles";var Bc="namedQueries";var Wh="indexConfiguration";var Hh="indexState";var Jh="indexEntries";var jc="documentOverlays";var Xh="globals";var Yh=[xc,Dc,Nc,$h,Mc,Cc,Fc,Oc,qc,kc,Lc,Uc,Bc],Zf=[...Yh,jc],Zh=[xc,Dc,Nc,Qh,Mc,Cc,Fc,Oc,qc,kc,Lc,Uc,Bc,jc],td=Zh,ed=[...td,Wh,Hh,Jh];var tm=[...ed,Xh];function zu(n){let t=0;for(let e in n)Object.prototype.hasOwnProperty.call(n,e)&&t++;return t}function fe(n,t){for(let e in n)Object.prototype.hasOwnProperty.call(n,e)&&t(e,n[e])}function Gc(n){for(let t in n)if(Object.prototype.hasOwnProperty.call(n,t))return!1;return!0}var Y=class n{constructor(t,e){this.comparator=t,this.root=e||Mt.EMPTY}insert(t,e){return new n(this.comparator,this.root.insert(t,e,this.comparator).copy(null,null,Mt.BLACK,null,null))}remove(t){return new n(this.comparator,this.root.remove(t,this.comparator).copy(null,null,Mt.BLACK,null,null))}get(t){let e=this.root;for(;!e.isEmpty();){let r=this.comparator(t,e.key);if(r===0)return e.value;r<0?e=e.left:r>0&&(e=e.right)}return null}indexOf(t){let e=0,r=this.root;for(;!r.isEmpty();){let i=this.comparator(t,r.key);if(i===0)return e+r.left.size;i<0?r=r.left:(e+=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(t){return this.root.inorderTraversal(t)}forEach(t){this.inorderTraversal(((e,r)=>(t(e,r),!1)))}toString(){let t=[];return this.inorderTraversal(((e,r)=>(t.push(`${e}:${r}`),!1))),`{${t.join(", ")}}`}reverseTraversal(t){return this.root.reverseTraversal(t)}getIterator(){return new je(this.root,null,this.comparator,!1)}getIteratorFrom(t){return new je(this.root,t,this.comparator,!1)}getReverseIterator(){return new je(this.root,null,this.comparator,!0)}getReverseIteratorFrom(t){return new je(this.root,t,this.comparator,!0)}},je=class{constructor(t,e,r,i){this.isReverse=i,this.nodeStack=[];let o=1;for(;!t.isEmpty();)if(o=e?r(t.key,e):1,e&&i&&(o*=-1),o<0)t=this.isReverse?t.left:t.right;else{if(o===0){this.nodeStack.push(t);break}this.nodeStack.push(t),t=this.isReverse?t.right:t.left}}getNext(){let t=this.nodeStack.pop(),e={key:t.key,value:t.value};if(this.isReverse)for(t=t.left;!t.isEmpty();)this.nodeStack.push(t),t=t.right;else for(t=t.right;!t.isEmpty();)this.nodeStack.push(t),t=t.left;return e}hasNext(){return this.nodeStack.length>0}peek(){if(this.nodeStack.length===0)return null;let t=this.nodeStack[this.nodeStack.length-1];return{key:t.key,value:t.value}}},Mt=class n{constructor(t,e,r,i,o){this.key=t,this.value=e,this.color=r??n.RED,this.left=i??n.EMPTY,this.right=o??n.EMPTY,this.size=this.left.size+1+this.right.size}copy(t,e,r,i,o){return new n(t??this.key,e??this.value,r??this.color,i??this.left,o??this.right)}isEmpty(){return!1}inorderTraversal(t){return this.left.inorderTraversal(t)||t(this.key,this.value)||this.right.inorderTraversal(t)}reverseTraversal(t){return this.right.reverseTraversal(t)||t(this.key,this.value)||this.left.reverseTraversal(t)}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(t,e,r){let i=this,o=r(t,i.key);return i=o<0?i.copy(null,null,null,i.left.insert(t,e,r),null):o===0?i.copy(null,e,null,null,null):i.copy(null,null,null,null,i.right.insert(t,e,r)),i.fixUp()}removeMin(){if(this.left.isEmpty())return n.EMPTY;let t=this;return t.left.isRed()||t.left.left.isRed()||(t=t.moveRedLeft()),t=t.copy(null,null,null,t.left.removeMin(),null),t.fixUp()}remove(t,e){let r,i=this;if(e(t,i.key)<0)i.left.isEmpty()||i.left.isRed()||i.left.left.isRed()||(i=i.moveRedLeft()),i=i.copy(null,null,null,i.left.remove(t,e),null);else{if(i.left.isRed()&&(i=i.rotateRight()),i.right.isEmpty()||i.right.isRed()||i.right.left.isRed()||(i=i.moveRedRight()),e(t,i.key)===0){if(i.right.isEmpty())return n.EMPTY;r=i.right.min(),i=i.copy(r.key,r.value,null,null,i.right.removeMin())}i=i.copy(null,null,null,null,i.right.remove(t,e))}return i.fixUp()}isRed(){return this.color}fixUp(){let t=this;return t.right.isRed()&&!t.left.isRed()&&(t=t.rotateLeft()),t.left.isRed()&&t.left.left.isRed()&&(t=t.rotateRight()),t.left.isRed()&&t.right.isRed()&&(t=t.colorFlip()),t}moveRedLeft(){let t=this.colorFlip();return t.right.left.isRed()&&(t=t.copy(null,null,null,null,t.right.rotateRight()),t=t.rotateLeft(),t=t.colorFlip()),t}moveRedRight(){let t=this.colorFlip();return t.left.left.isRed()&&(t=t.rotateRight(),t=t.colorFlip()),t}rotateLeft(){let t=this.copy(null,null,n.RED,null,this.right.left);return this.right.copy(null,null,this.color,t,null)}rotateRight(){let t=this.copy(null,null,n.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,t)}colorFlip(){let t=this.left.copy(null,null,!this.left.color,null,null),e=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,t,e)}checkMaxDepth(){let t=this.check();return Math.pow(2,t)<=this.size+1}check(){if(this.isRed()&&this.left.isRed())throw O(43730,{key:this.key,value:this.value});if(this.right.isRed())throw O(14113,{key:this.key,value:this.value});let t=this.left.check();if(t!==this.right.check())throw O(27949);return t+(this.isRed()?0:1)}};Mt.EMPTY=null,Mt.RED=!0,Mt.BLACK=!1;Mt.EMPTY=new class{constructor(){this.size=0}get key(){throw O(57766)}get value(){throw O(16141)}get color(){throw O(16727)}get left(){throw O(29726)}get right(){throw O(36894)}copy(t,e,r,i,o){return this}insert(t,e,r){return new Mt(t,e)}remove(t,e){return this}isEmpty(){return!0}inorderTraversal(t){return!1}reverseTraversal(t){return!1}minKey(){return null}maxKey(){return null}isRed(){return!1}checkMaxDepth(){return!0}check(){return 0}};var it=class n{constructor(t){this.comparator=t,this.data=new Y(this.comparator)}has(t){return this.data.get(t)!==null}first(){return this.data.minKey()}last(){return this.data.maxKey()}get size(){return this.data.size}indexOf(t){return this.data.indexOf(t)}forEach(t){this.data.inorderTraversal(((e,r)=>(t(e),!1)))}forEachInRange(t,e){let r=this.data.getIteratorFrom(t[0]);for(;r.hasNext();){let i=r.getNext();if(this.comparator(i.key,t[1])>=0)return;e(i.key)}}forEachWhile(t,e){let r;for(r=e!==void 0?this.data.getIteratorFrom(e):this.data.getIterator();r.hasNext();)if(!t(r.getNext().key))return}firstAfterOrEqual(t){let e=this.data.getIteratorFrom(t);return e.hasNext()?e.getNext().key:null}getIterator(){return new Cr(this.data.getIterator())}getIteratorFrom(t){return new Cr(this.data.getIteratorFrom(t))}add(t){return this.copy(this.data.remove(t).insert(t,!0))}delete(t){return this.has(t)?this.copy(this.data.remove(t)):this}isEmpty(){return this.data.isEmpty()}unionWith(t){let e=this;return e.size<t.size&&(e=t,t=this),t.forEach((r=>{e=e.add(r)})),e}isEqual(t){if(!(t instanceof n)||this.size!==t.size)return!1;let e=this.data.getIterator(),r=t.data.getIterator();for(;e.hasNext();){let i=e.getNext().key,o=r.getNext().key;if(this.comparator(i,o)!==0)return!1}return!0}toArray(){let t=[];return this.forEach((e=>{t.push(e)})),t}toString(){let t=[];return this.forEach((e=>t.push(e))),"SortedSet("+t.toString()+")"}copy(t){let e=new n(this.comparator);return e.data=t,e}},Cr=class{constructor(t){this.iter=t}getNext(){return this.iter.getNext().key}hasNext(){return this.iter.hasNext()}};var Rt=class n{constructor(t){this.fields=t,t.sort(vt.comparator)}static empty(){return new n([])}unionWith(t){let e=new it(vt.comparator);for(let r of this.fields)e=e.add(r);for(let r of t)e=e.add(r);return new n(e.toArray())}covers(t){for(let e of this.fields)if(e.isPrefixOf(t))return!0;return!1}isEqual(t){return $e(this.fields,t.fields,((e,r)=>e.isEqual(r)))}};var xr=class extends Error{constructor(){super(...arguments),this.name="Base64DecodeError"}};var gt=class n{constructor(t){this.binaryString=t}static fromBase64String(t){let e=(function(i){try{return atob(i)}catch(o){throw typeof DOMException<"u"&&o instanceof DOMException?new xr("Invalid base64 string: "+o):o}})(t);return new n(e)}static fromUint8Array(t){let e=(function(i){let o="";for(let u=0;u<i.length;++u)o+=String.fromCharCode(i[u]);return o})(t);return new n(e)}[Symbol.iterator](){let t=0;return{next:()=>t<this.binaryString.length?{value:this.binaryString.charCodeAt(t++),done:!1}:{value:void 0,done:!0}}}toBase64(){return(function(e){return btoa(e)})(this.binaryString)}toUint8Array(){return(function(e){let r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e.charCodeAt(i);return r})(this.binaryString)}approximateByteSize(){return 2*this.binaryString.length}compareTo(t){return q(this.binaryString,t.binaryString)}isEqual(t){return this.binaryString===t.binaryString}};gt.EMPTY_BYTE_STRING=new gt("");var nd=new RegExp(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.(\d+))?Z$/);function Qt(n){if(j(!!n,39018),typeof n=="string"){let t=0,e=nd.exec(n);if(j(!!e,46558,{timestamp:n}),e[1]){let i=e[1];i=(i+"000000000").substr(0,9),t=Number(i)}let r=new Date(n);return{seconds:Math.floor(r.getTime()/1e3),nanos:t}}return{seconds:J(n.seconds),nanos:J(n.nanos)}}function J(n){return typeof n=="number"?n:typeof n=="string"?Number(n):0}function Wt(n){return typeof n=="string"?gt.fromBase64String(n):gt.fromUint8Array(n)}var zc="server_timestamp",Kc="__type__",$c="__previous_value__",Qc="__local_write_time__";function ds(n){return(n?.mapValue?.fields||{})[Kc]?.stringValue===zc}function fs(n){let t=n.mapValue.fields[$c];return ds(t)?fs(t):t}function Un(n){let t=Qt(n.mapValue.fields[Qc].timestampValue);return new rt(t.seconds,t.nanos)}var pi=class{constructor(t,e,r,i,o,u,l,h,f,m){this.databaseId=t,this.appId=e,this.persistenceKey=r,this.host=i,this.ssl=o,this.forceLongPolling=u,this.autoDetectLongPolling=l,this.longPollingOptions=h,this.useFetchStreams=f,this.isUsingEmulator=m}},Dr="(default)",Nr=class n{constructor(t,e){this.projectId=t,this.database=e||Dr}static empty(){return new n("","")}get isDefaultDatabase(){return this.database===Dr}isEqual(t){return t instanceof n&&t.projectId===this.projectId&&t.database===this.database}};var Yo="__type__",Wc="__max__",Er={mapValue:{fields:{__type__:{stringValue:Wc}}}},Zo="__vector__",We="value";function ue(n){return"nullValue"in n?0:"booleanValue"in n?1:"integerValue"in n||"doubleValue"in n?2:"timestampValue"in n?3:"stringValue"in n?5:"bytesValue"in n?6:"referenceValue"in n?7:"geoPointValue"in n?8:"arrayValue"in n?9:"mapValue"in n?ds(n)?4:Jc(n)?9007199254740991:Hc(n)?10:11:O(28295,{value:n})}function Ft(n,t){if(n===t)return!0;let e=ue(n);if(e!==ue(t))return!1;switch(e){case 0:case 9007199254740991:return!0;case 1:return n.booleanValue===t.booleanValue;case 4:return Un(n).isEqual(Un(t));case 3:return(function(i,o){if(typeof i.timestampValue=="string"&&typeof o.timestampValue=="string"&&i.timestampValue.length===o.timestampValue.length)return i.timestampValue===o.timestampValue;let u=Qt(i.timestampValue),l=Qt(o.timestampValue);return u.seconds===l.seconds&&u.nanos===l.nanos})(n,t);case 5:return n.stringValue===t.stringValue;case 6:return(function(i,o){return Wt(i.bytesValue).isEqual(Wt(o.bytesValue))})(n,t);case 7:return n.referenceValue===t.referenceValue;case 8:return(function(i,o){return J(i.geoPointValue.latitude)===J(o.geoPointValue.latitude)&&J(i.geoPointValue.longitude)===J(o.geoPointValue.longitude)})(n,t);case 2:return(function(i,o){if("integerValue"in i&&"integerValue"in o)return J(i.integerValue)===J(o.integerValue);if("doubleValue"in i&&"doubleValue"in o){let u=J(i.doubleValue),l=J(o.doubleValue);return u===l?qn(u)===qn(l):isNaN(u)&&isNaN(l)}return!1})(n,t);case 9:return $e(n.arrayValue.values||[],t.arrayValue.values||[],Ft);case 10:case 11:return(function(i,o){let u=i.mapValue.fields||{},l=o.mapValue.fields||{};if(zu(u)!==zu(l))return!1;for(let h in u)if(u.hasOwnProperty(h)&&(l[h]===void 0||!Ft(u[h],l[h])))return!1;return!0})(n,t);default:return O(52216,{left:n})}}function Bn(n,t){return(n.values||[]).find((e=>Ft(e,t)))!==void 0}function He(n,t){if(n===t)return 0;let e=ue(n),r=ue(t);if(e!==r)return q(e,r);switch(e){case 0:case 9007199254740991:return 0;case 1:return q(n.booleanValue,t.booleanValue);case 2:return(function(o,u){let l=J(o.integerValue||o.doubleValue),h=J(u.integerValue||u.doubleValue);return l<h?-1:l>h?1:l===h?0:isNaN(l)?isNaN(h)?0:-1:1})(n,t);case 3:return Ku(n.timestampValue,t.timestampValue);case 4:return Ku(Un(n),Un(t));case 5:return di(n.stringValue,t.stringValue);case 6:return(function(o,u){let l=Wt(o),h=Wt(u);return l.compareTo(h)})(n.bytesValue,t.bytesValue);case 7:return(function(o,u){let l=o.split("/"),h=u.split("/");for(let f=0;f<l.length&&f<h.length;f++){let m=q(l[f],h[f]);if(m!==0)return m}return q(l.length,h.length)})(n.referenceValue,t.referenceValue);case 8:return(function(o,u){let l=q(J(o.latitude),J(u.latitude));return l!==0?l:q(J(o.longitude),J(u.longitude))})(n.geoPointValue,t.geoPointValue);case 9:return $u(n.arrayValue,t.arrayValue);case 10:return(function(o,u){let l=o.fields||{},h=u.fields||{},f=l[We]?.arrayValue,m=h[We]?.arrayValue,T=q(f?.values?.length||0,m?.values?.length||0);return T!==0?T:$u(f,m)})(n.mapValue,t.mapValue);case 11:return(function(o,u){if(o===Er.mapValue&&u===Er.mapValue)return 0;if(o===Er.mapValue)return 1;if(u===Er.mapValue)return-1;let l=o.fields||{},h=Object.keys(l),f=u.fields||{},m=Object.keys(f);h.sort(),m.sort();for(let T=0;T<h.length&&T<m.length;++T){let A=di(h[T],m[T]);if(A!==0)return A;let R=He(l[h[T]],f[m[T]]);if(R!==0)return R}return q(h.length,m.length)})(n.mapValue,t.mapValue);default:throw O(23264,{he:e})}}function Ku(n,t){if(typeof n=="string"&&typeof t=="string"&&n.length===t.length)return q(n,t);let e=Qt(n),r=Qt(t),i=q(e.seconds,r.seconds);return i!==0?i:q(e.nanos,r.nanos)}function $u(n,t){let e=n.values||[],r=t.values||[];for(let i=0;i<e.length&&i<r.length;++i){let o=He(e[i],r[i]);if(o)return o}return q(e.length,r.length)}function Je(n){return yi(n)}function yi(n){return"nullValue"in n?"null":"booleanValue"in n?""+n.booleanValue:"integerValue"in n?""+n.integerValue:"doubleValue"in n?""+n.doubleValue:"timestampValue"in n?(function(e){let r=Qt(e);return`time(${r.seconds},${r.nanos})`})(n.timestampValue):"stringValue"in n?n.stringValue:"bytesValue"in n?(function(e){return Wt(e).toBase64()})(n.bytesValue):"referenceValue"in n?(function(e){return M.fromName(e).toString()})(n.referenceValue):"geoPointValue"in n?(function(e){return`geo(${e.latitude},${e.longitude})`})(n.geoPointValue):"arrayValue"in n?(function(e){let r="[",i=!0;for(let o of e.values||[])i?i=!1:r+=",",r+=yi(o);return r+"]"})(n.arrayValue):"mapValue"in n?(function(e){let r=Object.keys(e.fields||{}).sort(),i="{",o=!0;for(let u of r)o?o=!1:i+=",",i+=`${u}:${yi(e.fields[u])}`;return i+"}"})(n.mapValue):O(61005,{value:n})}function Sr(n){switch(ue(n)){case 0:case 1:return 4;case 2:return 8;case 3:case 8:return 16;case 4:let t=fs(n);return t?16+Sr(t):16;case 5:return 2*n.stringValue.length;case 6:return Wt(n.bytesValue).approximateByteSize();case 7:return n.referenceValue.length;case 9:return(function(r){return(r.values||[]).reduce(((i,o)=>i+Sr(o)),0)})(n.arrayValue);case 10:case 11:return(function(r){let i=0;return fe(r.fields,((o,u)=>{i+=o.length+Sr(u)})),i})(n.mapValue);default:throw O(13486,{value:n})}}function kr(n,t){return{referenceValue:`projects/${n.projectId}/databases/${n.database}/documents/${t.path.canonicalString()}`}}function _i(n){return!!n&&"integerValue"in n}function ta(n){return!!n&&"arrayValue"in n}function Qu(n){return!!n&&"nullValue"in n}function Wu(n){return!!n&&"doubleValue"in n&&isNaN(Number(n.doubleValue))}function br(n){return!!n&&"mapValue"in n}function Hc(n){return(n?.mapValue?.fields||{})[Yo]?.stringValue===Zo}function Dn(n){if(n.geoPointValue)return{geoPointValue:{...n.geoPointValue}};if(n.timestampValue&&typeof n.timestampValue=="object")return{timestampValue:{...n.timestampValue}};if(n.mapValue){let t={mapValue:{fields:{}}};return fe(n.mapValue.fields,((e,r)=>t.mapValue.fields[e]=Dn(r))),t}if(n.arrayValue){let t={arrayValue:{values:[]}};for(let e=0;e<(n.arrayValue.values||[]).length;++e)t.arrayValue.values[e]=Dn(n.arrayValue.values[e]);return t}return{...n}}function Jc(n){return(((n.mapValue||{}).fields||{}).__type__||{}).stringValue===Wc}var nm={mapValue:{fields:{[Yo]:{stringValue:Zo},[We]:{arrayValue:{}}}}};var Tt=class n{constructor(t){this.value=t}static empty(){return new n({mapValue:{}})}field(t){if(t.isEmpty())return this.value;{let e=this.value;for(let r=0;r<t.length-1;++r)if(e=(e.mapValue.fields||{})[t.get(r)],!br(e))return null;return e=(e.mapValue.fields||{})[t.lastSegment()],e||null}}set(t,e){this.getFieldsMap(t.popLast())[t.lastSegment()]=Dn(e)}setAll(t){let e=vt.emptyPath(),r={},i=[];t.forEach(((u,l)=>{if(!e.isImmediateParentOf(l)){let h=this.getFieldsMap(e);this.applyChanges(h,r,i),r={},i=[],e=l.popLast()}u?r[l.lastSegment()]=Dn(u):i.push(l.lastSegment())}));let o=this.getFieldsMap(e);this.applyChanges(o,r,i)}delete(t){let e=this.field(t.popLast());br(e)&&e.mapValue.fields&&delete e.mapValue.fields[t.lastSegment()]}isEqual(t){return Ft(this.value,t.value)}getFieldsMap(t){let e=this.value;e.mapValue.fields||(e.mapValue={fields:{}});for(let r=0;r<t.length;++r){let i=e.mapValue.fields[t.get(r)];br(i)&&i.mapValue.fields||(i={mapValue:{fields:{}}},e.mapValue.fields[t.get(r)]=i),e=i}return e.mapValue.fields}applyChanges(t,e,r){fe(e,((i,o)=>t[i]=o));for(let i of r)delete t[i]}clone(){return new n(Dn(this.value))}};function Xc(n){let t=[];return fe(n.fields,((e,r)=>{let i=new vt([e]);if(br(r)){let o=Xc(r.mapValue).fields;if(o.length===0)t.push(i);else for(let u of o)t.push(i.child(u))}else t.push(i)})),new Rt(t)}var St=class n{constructor(t,e,r,i,o,u,l){this.key=t,this.documentType=e,this.version=r,this.readTime=i,this.createTime=o,this.data=u,this.documentState=l}static newInvalidDocument(t){return new n(t,0,F.min(),F.min(),F.min(),Tt.empty(),0)}static newFoundDocument(t,e,r,i){return new n(t,1,e,F.min(),r,i,0)}static newNoDocument(t,e){return new n(t,2,e,F.min(),F.min(),Tt.empty(),0)}static newUnknownDocument(t,e){return new n(t,3,e,F.min(),F.min(),Tt.empty(),2)}convertToFoundDocument(t,e){return!this.createTime.isEqual(F.min())||this.documentType!==2&&this.documentType!==0||(this.createTime=t),this.version=t,this.documentType=1,this.data=e,this.documentState=0,this}convertToNoDocument(t){return this.version=t,this.documentType=2,this.data=Tt.empty(),this.documentState=0,this}convertToUnknownDocument(t){return this.version=t,this.documentType=3,this.data=Tt.empty(),this.documentState=2,this}setHasCommittedMutations(){return this.documentState=2,this}setHasLocalMutations(){return this.documentState=1,this.version=F.min(),this}setReadTime(t){return this.readTime=t,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(t){return t instanceof n&&this.key.isEqual(t.key)&&this.version.isEqual(t.version)&&this.documentType===t.documentType&&this.documentState===t.documentState&&this.data.isEqual(t.data)}mutableCopy(){return new n(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}})`}};var ce=class{constructor(t,e){this.position=t,this.inclusive=e}};function Hu(n,t,e){let r=0;for(let i=0;i<n.position.length;i++){let o=t[i],u=n.position[i];if(o.field.isKeyField()?r=M.comparator(M.fromName(u.referenceValue),e.key):r=He(u,e.data.field(o.field)),o.dir==="desc"&&(r*=-1),r!==0)break}return r}function Ju(n,t){if(n===null)return t===null;if(t===null||n.inclusive!==t.inclusive||n.position.length!==t.position.length)return!1;for(let e=0;e<n.position.length;e++)if(!Ft(n.position[e],t.position[e]))return!1;return!0}var ve=class{constructor(t,e="asc"){this.field=t,this.dir=e}};function rd(n,t){return n.dir===t.dir&&n.field.isEqual(t.field)}var Mr=class{},et=class n extends Mr{constructor(t,e,r){super(),this.field=t,this.op=e,this.value=r}static create(t,e,r){return t.isKeyField()?e==="in"||e==="not-in"?this.createKeyFieldInFilter(t,e,r):new Ti(t,e,r):e==="array-contains"?new vi(t,r):e==="in"?new Ai(t,r):e==="not-in"?new Si(t,r):e==="array-contains-any"?new bi(t,r):new n(t,e,r)}static createKeyFieldInFilter(t,e,r){return e==="in"?new Ii(t,r):new Ei(t,r)}matches(t){let e=t.data.field(this.field);return this.op==="!="?e!==null&&e.nullValue===void 0&&this.matchesComparison(He(e,this.value)):e!==null&&ue(this.value)===ue(e)&&this.matchesComparison(He(e,this.value))}matchesComparison(t){switch(this.op){case"<":return t<0;case"<=":return t<=0;case"==":return t===0;case"!=":return t!==0;case">":return t>0;case">=":return t>=0;default:return O(47266,{operator:this.op})}}isInequality(){return["<","<=",">",">=","!=","not-in"].indexOf(this.op)>=0}getFlattenedFilters(){return[this]}getFilters(){return[this]}},xt=class n extends Mr{constructor(t,e){super(),this.filters=t,this.op=e,this.Pe=null}static create(t,e){return new n(t,e)}matches(t){return Yc(this)?this.filters.find((e=>!e.matches(t)))===void 0:this.filters.find((e=>e.matches(t)))!==void 0}getFlattenedFilters(){return this.Pe!==null||(this.Pe=this.filters.reduce(((t,e)=>t.concat(e.getFlattenedFilters())),[])),this.Pe}getFilters(){return Object.assign([],this.filters)}};function Yc(n){return n.op==="and"}function Zc(n){return sd(n)&&Yc(n)}function sd(n){for(let t of n.filters)if(t instanceof xt)return!1;return!0}function wi(n){if(n instanceof et)return n.field.canonicalString()+n.op.toString()+Je(n.value);if(Zc(n))return n.filters.map((t=>wi(t))).join(",");{let t=n.filters.map((e=>wi(e))).join(",");return`${n.op}(${t})`}}function tl(n,t){return n instanceof et?(function(r,i){return i instanceof et&&r.op===i.op&&r.field.isEqual(i.field)&&Ft(r.value,i.value)})(n,t):n instanceof xt?(function(r,i){return i instanceof xt&&r.op===i.op&&r.filters.length===i.filters.length?r.filters.reduce(((o,u,l)=>o&&tl(u,i.filters[l])),!0):!1})(n,t):void O(19439)}function el(n){return n instanceof et?(function(e){return`${e.field.canonicalString()} ${e.op} ${Je(e.value)}`})(n):n instanceof xt?(function(e){return e.op.toString()+" {"+e.getFilters().map(el).join(" ,")+"}"})(n):"Filter"}var Ti=class extends et{constructor(t,e,r){super(t,e,r),this.key=M.fromName(r.referenceValue)}matches(t){let e=M.comparator(t.key,this.key);return this.matchesComparison(e)}},Ii=class extends et{constructor(t,e){super(t,"in",e),this.keys=nl("in",e)}matches(t){return this.keys.some((e=>e.isEqual(t.key)))}},Ei=class extends et{constructor(t,e){super(t,"not-in",e),this.keys=nl("not-in",e)}matches(t){return!this.keys.some((e=>e.isEqual(t.key)))}};function nl(n,t){return(t.arrayValue?.values||[]).map((e=>M.fromName(e.referenceValue)))}var vi=class extends et{constructor(t,e){super(t,"array-contains",e)}matches(t){let e=t.data.field(this.field);return ta(e)&&Bn(e.arrayValue,this.value)}},Ai=class extends et{constructor(t,e){super(t,"in",e)}matches(t){let e=t.data.field(this.field);return e!==null&&Bn(this.value.arrayValue,e)}},Si=class extends et{constructor(t,e){super(t,"not-in",e)}matches(t){if(Bn(this.value.arrayValue,{nullValue:"NULL_VALUE"}))return!1;let e=t.data.field(this.field);return e!==null&&e.nullValue===void 0&&!Bn(this.value.arrayValue,e)}},bi=class extends et{constructor(t,e){super(t,"array-contains-any",e)}matches(t){let e=t.data.field(this.field);return!(!ta(e)||!e.arrayValue.values)&&e.arrayValue.values.some((r=>Bn(this.value.arrayValue,r)))}};var Ri=class{constructor(t,e=null,r=[],i=[],o=null,u=null,l=null){this.path=t,this.collectionGroup=e,this.orderBy=r,this.filters=i,this.limit=o,this.startAt=u,this.endAt=l,this.Te=null}};function Xu(n,t=null,e=[],r=[],i=null,o=null,u=null){return new Ri(n,t,e,r,i,o,u)}function ea(n){let t=L(n);if(t.Te===null){let e=t.path.canonicalString();t.collectionGroup!==null&&(e+="|cg:"+t.collectionGroup),e+="|f:",e+=t.filters.map((r=>wi(r))).join(","),e+="|ob:",e+=t.orderBy.map((r=>(function(o){return o.field.canonicalString()+o.dir})(r))).join(","),tr(t.limit)||(e+="|l:",e+=t.limit),t.startAt&&(e+="|lb:",e+=t.startAt.inclusive?"b:":"a:",e+=t.startAt.position.map((r=>Je(r))).join(",")),t.endAt&&(e+="|ub:",e+=t.endAt.inclusive?"a:":"b:",e+=t.endAt.position.map((r=>Je(r))).join(",")),t.Te=e}return t.Te}function na(n,t){if(n.limit!==t.limit||n.orderBy.length!==t.orderBy.length)return!1;for(let e=0;e<n.orderBy.length;e++)if(!rd(n.orderBy[e],t.orderBy[e]))return!1;if(n.filters.length!==t.filters.length)return!1;for(let e=0;e<n.filters.length;e++)if(!tl(n.filters[e],t.filters[e]))return!1;return n.collectionGroup===t.collectionGroup&&!!n.path.isEqual(t.path)&&!!Ju(n.startAt,t.startAt)&&Ju(n.endAt,t.endAt)}function Pi(n){return M.isDocumentKey(n.path)&&n.collectionGroup===null&&n.filters.length===0}var Lt=class{constructor(t,e=null,r=[],i=[],o=null,u="F",l=null,h=null){this.path=t,this.collectionGroup=e,this.explicitOrderBy=r,this.filters=i,this.limit=o,this.limitType=u,this.startAt=l,this.endAt=h,this.Ie=null,this.Ee=null,this.de=null,this.startAt,this.endAt}};function id(n,t,e,r,i,o,u,l){return new Lt(n,t,e,r,i,o,u,l)}function ms(n){return new Lt(n)}function Yu(n){return n.filters.length===0&&n.limit===null&&n.startAt==null&&n.endAt==null&&(n.explicitOrderBy.length===0||n.explicitOrderBy.length===1&&n.explicitOrderBy[0].field.isKeyField())}function ra(n){return n.collectionGroup!==null}function Ge(n){let t=L(n);if(t.Ie===null){t.Ie=[];let e=new Set;for(let o of t.explicitOrderBy)t.Ie.push(o),e.add(o.field.canonicalString());let r=t.explicitOrderBy.length>0?t.explicitOrderBy[t.explicitOrderBy.length-1].dir:"asc";(function(u){let l=new it(vt.comparator);return u.filters.forEach((h=>{h.getFlattenedFilters().forEach((f=>{f.isInequality()&&(l=l.add(f.field))}))})),l})(t).forEach((o=>{e.has(o.canonicalString())||o.isKeyField()||t.Ie.push(new ve(o,r))})),e.has(vt.keyField().canonicalString())||t.Ie.push(new ve(vt.keyField(),r))}return t.Ie}function Ot(n){let t=L(n);return t.Ee||(t.Ee=od(t,Ge(n))),t.Ee}function od(n,t){if(n.limitType==="F")return Xu(n.path,n.collectionGroup,t,n.filters,n.limit,n.startAt,n.endAt);{t=t.map((i=>{let o=i.dir==="desc"?"asc":"desc";return new ve(i.field,o)}));let e=n.endAt?new ce(n.endAt.position,n.endAt.inclusive):null,r=n.startAt?new ce(n.startAt.position,n.startAt.inclusive):null;return Xu(n.path,n.collectionGroup,t,n.filters,n.limit,e,r)}}function Vi(n,t){let e=n.filters.concat([t]);return new Lt(n.path,n.collectionGroup,n.explicitOrderBy.slice(),e,n.limit,n.limitType,n.startAt,n.endAt)}function Or(n,t,e){return new Lt(n.path,n.collectionGroup,n.explicitOrderBy.slice(),n.filters.slice(),t,e,n.startAt,n.endAt)}function gs(n,t){return na(Ot(n),Ot(t))&&n.limitType===t.limitType}function rl(n){return`${ea(Ot(n))}|lt:${n.limitType}`}function qe(n){return`Query(target=${(function(e){let r=e.path.canonicalString();return e.collectionGroup!==null&&(r+=" collectionGroup="+e.collectionGroup),e.filters.length>0&&(r+=`, filters: [${e.filters.map((i=>el(i))).join(", ")}]`),tr(e.limit)||(r+=", limit: "+e.limit),e.orderBy.length>0&&(r+=`, orderBy: [${e.orderBy.map((i=>(function(u){return`${u.field.canonicalString()} (${u.dir})`})(i))).join(", ")}]`),e.startAt&&(r+=", startAt: ",r+=e.startAt.inclusive?"b:":"a:",r+=e.startAt.position.map((i=>Je(i))).join(",")),e.endAt&&(r+=", endAt: ",r+=e.endAt.inclusive?"a:":"b:",r+=e.endAt.position.map((i=>Je(i))).join(",")),`Target(${r})`})(Ot(n))}; limitType=${n.limitType})`}function ps(n,t){return t.isFoundDocument()&&(function(r,i){let o=i.key.path;return r.collectionGroup!==null?i.key.hasCollectionId(r.collectionGroup)&&r.path.isPrefixOf(o):M.isDocumentKey(r.path)?r.path.isEqual(o):r.path.isImmediateParentOf(o)})(n,t)&&(function(r,i){for(let o of Ge(r))if(!o.field.isKeyField()&&i.data.field(o.field)===null)return!1;return!0})(n,t)&&(function(r,i){for(let o of r.filters)if(!o.matches(i))return!1;return!0})(n,t)&&(function(r,i){return!(r.startAt&&!(function(u,l,h){let f=Hu(u,l,h);return u.inclusive?f<=0:f<0})(r.startAt,Ge(r),i)||r.endAt&&!(function(u,l,h){let f=Hu(u,l,h);return u.inclusive?f>=0:f>0})(r.endAt,Ge(r),i))})(n,t)}function ad(n){return n.collectionGroup||(n.path.length%2==1?n.path.lastSegment():n.path.get(n.path.length-2))}function sl(n){return(t,e)=>{let r=!1;for(let i of Ge(n)){let o=ud(i,t,e);if(o!==0)return o;r=r||i.field.isKeyField()}return 0}}function ud(n,t,e){let r=n.field.isKeyField()?M.comparator(t.key,e.key):(function(o,u,l){let h=u.data.field(o),f=l.data.field(o);return h!==null&&f!==null?He(h,f):O(42886)})(n.field,t,e);switch(n.dir){case"asc":return r;case"desc":return-1*r;default:return O(19790,{direction:n.dir})}}var Ht=class{constructor(t,e){this.mapKeyFn=t,this.equalsFn=e,this.inner={},this.innerSize=0}get(t){let e=this.mapKeyFn(t),r=this.inner[e];if(r!==void 0){for(let[i,o]of r)if(this.equalsFn(i,t))return o}}has(t){return this.get(t)!==void 0}set(t,e){let r=this.mapKeyFn(t),i=this.inner[r];if(i===void 0)return this.inner[r]=[[t,e]],void this.innerSize++;for(let o=0;o<i.length;o++)if(this.equalsFn(i[o][0],t))return void(i[o]=[t,e]);i.push([t,e]),this.innerSize++}delete(t){let e=this.mapKeyFn(t),r=this.inner[e];if(r===void 0)return!1;for(let i=0;i<r.length;i++)if(this.equalsFn(r[i][0],t))return r.length===1?delete this.inner[e]:r.splice(i,1),this.innerSize--,!0;return!1}forEach(t){fe(this.inner,((e,r)=>{for(let[i,o]of r)t(i,o)}))}isEmpty(){return Gc(this.inner)}size(){return this.innerSize}};var cd=new Y(M.comparator);function Jt(){return cd}var il=new Y(M.comparator);function xn(...n){let t=il;for(let e of n)t=t.insert(e.key,e);return t}function ol(n){let t=il;return n.forEach(((e,r)=>t=t.insert(e,r.overlayedDocument))),t}function _e(){return Nn()}function al(){return Nn()}function Nn(){return new Ht((n=>n.toString()),((n,t)=>n.isEqual(t)))}var ld=new Y(M.comparator),hd=new it(M.comparator);function U(...n){let t=hd;for(let e of n)t=t.add(e);return t}var dd=new it(q);function fd(){return dd}function sa(n,t){if(n.useProto3Json){if(isNaN(t))return{doubleValue:"NaN"};if(t===1/0)return{doubleValue:"Infinity"};if(t===-1/0)return{doubleValue:"-Infinity"}}return{doubleValue:qn(t)?"-0":t}}function ul(n){return{integerValue:""+n}}function md(n,t){return Gh(t)?ul(t):sa(n,t)}var Xe=class{constructor(){this._=void 0}};function gd(n,t,e){return n instanceof Ae?(function(i,o){let u={fields:{[Kc]:{stringValue:zc},[Qc]:{timestampValue:{seconds:i.seconds,nanos:i.nanoseconds}}}};return o&&ds(o)&&(o=fs(o)),o&&(u.fields[$c]=o),{mapValue:u}})(e,t):n instanceof le?ll(n,t):n instanceof Se?hl(n,t):(function(i,o){let u=cl(i,o),l=Zu(u)+Zu(i.Ae);return _i(u)&&_i(i.Ae)?ul(l):sa(i.serializer,l)})(n,t)}function pd(n,t,e){return n instanceof le?ll(n,t):n instanceof Se?hl(n,t):e}function cl(n,t){return n instanceof Ye?(function(r){return _i(r)||(function(o){return!!o&&"doubleValue"in o})(r)})(t)?t:{integerValue:0}:null}var Ae=class extends Xe{},le=class extends Xe{constructor(t){super(),this.elements=t}};function ll(n,t){let e=dl(t);for(let r of n.elements)e.some((i=>Ft(i,r)))||e.push(r);return{arrayValue:{values:e}}}var Se=class extends Xe{constructor(t){super(),this.elements=t}};function hl(n,t){let e=dl(t);for(let r of n.elements)e=e.filter((i=>!Ft(i,r)));return{arrayValue:{values:e}}}var Ye=class extends Xe{constructor(t,e){super(),this.serializer=t,this.Ae=e}};function Zu(n){return J(n.integerValue||n.doubleValue)}function dl(n){return ta(n)&&n.arrayValue.values?n.arrayValue.values.slice():[]}var Fr=class{constructor(t,e){this.field=t,this.transform=e}};function yd(n,t){return n.field.isEqual(t.field)&&(function(r,i){return r instanceof le&&i instanceof le||r instanceof Se&&i instanceof Se?$e(r.elements,i.elements,Ft):r instanceof Ye&&i instanceof Ye?Ft(r.Ae,i.Ae):r instanceof Ae&&i instanceof Ae})(n.transform,t.transform)}var Ci=class{constructor(t,e){this.version=t,this.transformResults=e}},at=class n{constructor(t,e){this.updateTime=t,this.exists=e}static none(){return new n}static exists(t){return new n(void 0,t)}static updateTime(t){return new n(t)}get isNone(){return this.updateTime===void 0&&this.exists===void 0}isEqual(t){return this.exists===t.exists&&(this.updateTime?!!t.updateTime&&this.updateTime.isEqual(t.updateTime):!t.updateTime)}};function Rr(n,t){return n.updateTime!==void 0?t.isFoundDocument()&&t.version.isEqual(n.updateTime):n.exists===void 0||n.exists===t.isFoundDocument()}var Ze=class{};function fl(n,t){if(!n.hasLocalMutations||t&&t.fields.length===0)return null;if(t===null)return n.isNoDocument()?new Re(n.key,at.none()):new be(n.key,n.data,at.none());{let e=n.data,r=Tt.empty(),i=new it(vt.comparator);for(let o of t.fields)if(!i.has(o)){let u=e.field(o);u===null&&o.length>1&&(o=o.popLast(),u=e.field(o)),u===null?r.delete(o):r.set(o,u),i=i.add(o)}return new qt(n.key,r,new Rt(i.toArray()),at.none())}}function _d(n,t,e){n instanceof be?(function(i,o,u){let l=i.value.clone(),h=ec(i.fieldTransforms,o,u.transformResults);l.setAll(h),o.convertToFoundDocument(u.version,l).setHasCommittedMutations()})(n,t,e):n instanceof qt?(function(i,o,u){if(!Rr(i.precondition,o))return void o.convertToUnknownDocument(u.version);let l=ec(i.fieldTransforms,o,u.transformResults),h=o.data;h.setAll(ml(i)),h.setAll(l),o.convertToFoundDocument(u.version,h).setHasCommittedMutations()})(n,t,e):(function(i,o,u){o.convertToNoDocument(u.version).setHasCommittedMutations()})(0,t,e)}function kn(n,t,e,r){return n instanceof be?(function(o,u,l,h){if(!Rr(o.precondition,u))return l;let f=o.value.clone(),m=nc(o.fieldTransforms,h,u);return f.setAll(m),u.convertToFoundDocument(u.version,f).setHasLocalMutations(),null})(n,t,e,r):n instanceof qt?(function(o,u,l,h){if(!Rr(o.precondition,u))return l;let f=nc(o.fieldTransforms,h,u),m=u.data;return m.setAll(ml(o)),m.setAll(f),u.convertToFoundDocument(u.version,m).setHasLocalMutations(),l===null?null:l.unionWith(o.fieldMask.fields).unionWith(o.fieldTransforms.map((T=>T.field)))})(n,t,e,r):(function(o,u,l){return Rr(o.precondition,u)?(u.convertToNoDocument(u.version).setHasLocalMutations(),null):l})(n,t,e)}function wd(n,t){let e=null;for(let r of n.fieldTransforms){let i=t.data.field(r.field),o=cl(r.transform,i||null);o!=null&&(e===null&&(e=Tt.empty()),e.set(r.field,o))}return e||null}function tc(n,t){return n.type===t.type&&!!n.key.isEqual(t.key)&&!!n.precondition.isEqual(t.precondition)&&!!(function(r,i){return r===void 0&&i===void 0||!(!r||!i)&&$e(r,i,((o,u)=>yd(o,u)))})(n.fieldTransforms,t.fieldTransforms)&&(n.type===0?n.value.isEqual(t.value):n.type!==1||n.data.isEqual(t.data)&&n.fieldMask.isEqual(t.fieldMask))}var be=class extends Ze{constructor(t,e,r,i=[]){super(),this.key=t,this.value=e,this.precondition=r,this.fieldTransforms=i,this.type=0}getFieldMask(){return null}},qt=class extends Ze{constructor(t,e,r,i,o=[]){super(),this.key=t,this.data=e,this.fieldMask=r,this.precondition=i,this.fieldTransforms=o,this.type=1}getFieldMask(){return this.fieldMask}};function ml(n){let t=new Map;return n.fieldMask.fields.forEach((e=>{if(!e.isEmpty()){let r=n.data.field(e);t.set(e,r)}})),t}function ec(n,t,e){let r=new Map;j(n.length===e.length,32656,{Re:e.length,Ve:n.length});for(let i=0;i<e.length;i++){let o=n[i],u=o.transform,l=t.data.field(o.field);r.set(o.field,pd(u,l,e[i]))}return r}function nc(n,t,e){let r=new Map;for(let i of n){let o=i.transform,u=e.data.field(i.field);r.set(i.field,gd(o,u,t))}return r}var Re=class extends Ze{constructor(t,e){super(),this.key=t,this.precondition=e,this.type=2,this.fieldTransforms=[]}getFieldMask(){return null}},Lr=class extends Ze{constructor(t,e){super(),this.key=t,this.precondition=e,this.type=3,this.fieldTransforms=[]}getFieldMask(){return null}};var xi=class{constructor(t,e,r,i){this.batchId=t,this.localWriteTime=e,this.baseMutations=r,this.mutations=i}applyToRemoteDocument(t,e){let r=e.mutationResults;for(let i=0;i<this.mutations.length;i++){let o=this.mutations[i];o.key.isEqual(t.key)&&_d(o,t,r[i])}}applyToLocalView(t,e){for(let r of this.baseMutations)r.key.isEqual(t.key)&&(e=kn(r,t,e,this.localWriteTime));for(let r of this.mutations)r.key.isEqual(t.key)&&(e=kn(r,t,e,this.localWriteTime));return e}applyToLocalDocumentSet(t,e){let r=al();return this.mutations.forEach((i=>{let o=t.get(i.key),u=o.overlayedDocument,l=this.applyToLocalView(u,o.mutatedFields);l=e.has(i.key)?null:l;let h=fl(u,l);h!==null&&r.set(i.key,h),u.isValidDocument()||u.convertToNoDocument(F.min())})),r}keys(){return this.mutations.reduce(((t,e)=>t.add(e.key)),U())}isEqual(t){return this.batchId===t.batchId&&$e(this.mutations,t.mutations,((e,r)=>tc(e,r)))&&$e(this.baseMutations,t.baseMutations,((e,r)=>tc(e,r)))}},Di=class n{constructor(t,e,r,i){this.batch=t,this.commitVersion=e,this.mutationResults=r,this.docVersions=i}static from(t,e,r){j(t.mutations.length===r.length,58842,{me:t.mutations.length,fe:r.length});let i=(function(){return ld})(),o=t.mutations;for(let u=0;u<o.length;u++)i=i.insert(o[u].key,r[u].version);return new n(t,e,r,i)}};var Ni=class{constructor(t,e){this.largestBatchId=t,this.mutation=e}getKey(){return this.mutation.key}isEqual(t){return t!==null&&this.mutation===t.mutation}toString(){return`Overlay{
|
|
10
10
|
largestBatchId: ${this.largestBatchId},
|
|
11
11
|
mutation: ${this.mutation.toString()}
|
|
12
|
-
}`}};var Ni=class{constructor(t,e){this.count=t,this.unchangedNames=e}};var Z,B;function gl(n){switch(n){case b.OK:return O(64938);case b.CANCELLED:case b.UNKNOWN:case b.DEADLINE_EXCEEDED:case b.RESOURCE_EXHAUSTED:case b.INTERNAL:case b.UNAVAILABLE:case b.UNAUTHENTICATED:return!1;case b.INVALID_ARGUMENT:case b.NOT_FOUND:case b.ALREADY_EXISTS:case b.PERMISSION_DENIED:case b.FAILED_PRECONDITION:case b.ABORTED:case b.OUT_OF_RANGE:case b.UNIMPLEMENTED:case b.DATA_LOSS:return!0;default:return O(15467,{code:n})}}function pl(n){if(n===void 0)return $t("GRPC error has no .code"),b.UNKNOWN;switch(n){case Z.OK:return b.OK;case Z.CANCELLED:return b.CANCELLED;case Z.UNKNOWN:return b.UNKNOWN;case Z.DEADLINE_EXCEEDED:return b.DEADLINE_EXCEEDED;case Z.RESOURCE_EXHAUSTED:return b.RESOURCE_EXHAUSTED;case Z.INTERNAL:return b.INTERNAL;case Z.UNAVAILABLE:return b.UNAVAILABLE;case Z.UNAUTHENTICATED:return b.UNAUTHENTICATED;case Z.INVALID_ARGUMENT:return b.INVALID_ARGUMENT;case Z.NOT_FOUND:return b.NOT_FOUND;case Z.ALREADY_EXISTS:return b.ALREADY_EXISTS;case Z.PERMISSION_DENIED:return b.PERMISSION_DENIED;case Z.FAILED_PRECONDITION:return b.FAILED_PRECONDITION;case Z.ABORTED:return b.ABORTED;case Z.OUT_OF_RANGE:return b.OUT_OF_RANGE;case Z.UNIMPLEMENTED:return b.UNIMPLEMENTED;case Z.DATA_LOSS:return b.DATA_LOSS;default:return O(39323,{code:n})}}(B=Z||(Z={}))[B.OK=0]="OK",B[B.CANCELLED=1]="CANCELLED",B[B.UNKNOWN=2]="UNKNOWN",B[B.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",B[B.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",B[B.NOT_FOUND=5]="NOT_FOUND",B[B.ALREADY_EXISTS=6]="ALREADY_EXISTS",B[B.PERMISSION_DENIED=7]="PERMISSION_DENIED",B[B.UNAUTHENTICATED=16]="UNAUTHENTICATED",B[B.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",B[B.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",B[B.ABORTED=10]="ABORTED",B[B.OUT_OF_RANGE=11]="OUT_OF_RANGE",B[B.UNIMPLEMENTED=12]="UNIMPLEMENTED",B[B.INTERNAL=13]="INTERNAL",B[B.UNAVAILABLE=14]="UNAVAILABLE",B[B.DATA_LOSS=15]="DATA_LOSS";var Td=null;function Id(){return new TextEncoder}var Ed=new Gt([4294967295,4294967295],0);function rc(n){let t=Id().encode(n),e=new Hs;return e.update(t),new Uint8Array(e.digest())}function sc(n){let t=new DataView(n.buffer),e=t.getUint32(0,!0),r=t.getUint32(4,!0),i=t.getUint32(8,!0),o=t.getUint32(12,!0);return[new Gt([e,r],0),new Gt([i,o],0)]}var ki=class n{constructor(t,e,r){if(this.bitmap=t,this.padding=e,this.hashCount=r,e<0||e>=8)throw new we(`Invalid padding: ${e}`);if(r<0)throw new we(`Invalid hash count: ${r}`);if(t.length>0&&this.hashCount===0)throw new we(`Invalid hash count: ${r}`);if(t.length===0&&e!==0)throw new we(`Invalid padding when bitmap length is 0: ${e}`);this.ge=8*t.length-e,this.pe=Gt.fromNumber(this.ge)}ye(t,e,r){let i=t.add(e.multiply(Gt.fromNumber(r)));return i.compare(Ed)===1&&(i=new Gt([i.getBits(0),i.getBits(1)],0)),i.modulo(this.pe).toNumber()}we(t){return!!(this.bitmap[Math.floor(t/8)]&1<<t%8)}mightContain(t){if(this.ge===0)return!1;let e=rc(t),[r,i]=sc(e);for(let o=0;o<this.hashCount;o++){let u=this.ye(r,i,o);if(!this.we(u))return!1}return!0}static create(t,e,r){let i=t%8==0?0:8-t%8,o=new Uint8Array(Math.ceil(t/8)),u=new n(o,i,e);return r.forEach((l=>u.insert(l))),u}insert(t){if(this.ge===0)return;let e=rc(t),[r,i]=sc(e);for(let o=0;o<this.hashCount;o++){let u=this.ye(r,i,o);this.Se(u)}}Se(t){let e=Math.floor(t/8),r=t%8;this.bitmap[e]|=1<<r}},we=class extends Error{constructor(){super(...arguments),this.name="BloomFilterError"}};var qr=class n{constructor(t,e,r,i,o){this.snapshotVersion=t,this.targetChanges=e,this.targetMismatches=r,this.documentUpdates=i,this.resolvedLimboDocuments=o}static createSynthesizedRemoteEventForCurrentChange(t,e,r){let i=new Map;return i.set(t,jn.createSynthesizedTargetChangeForCurrentChange(t,e,r)),new n(F.min(),i,new Y(q),Jt(),U())}},jn=class n{constructor(t,e,r,i,o){this.resumeToken=t,this.current=e,this.addedDocuments=r,this.modifiedDocuments=i,this.removedDocuments=o}static createSynthesizedTargetChangeForCurrentChange(t,e,r){return new n(r,e,U(),U(),U())}};var Ge=class{constructor(t,e,r,i){this.be=t,this.removedTargetIds=e,this.key=r,this.De=i}},Ur=class{constructor(t,e){this.targetId=t,this.Ce=e}},Br=class{constructor(t,e,r=gt.EMPTY_BYTE_STRING,i=null){this.state=t,this.targetIds=e,this.resumeToken=r,this.cause=i}},jr=class{constructor(){this.ve=0,this.Fe=ic(),this.Me=gt.EMPTY_BYTE_STRING,this.xe=!1,this.Oe=!0}get current(){return this.xe}get resumeToken(){return this.Me}get Ne(){return this.ve!==0}get Be(){return this.Oe}Le(t){t.approximateByteSize()>0&&(this.Oe=!0,this.Me=t)}ke(){let t=U(),e=U(),r=U();return this.Fe.forEach(((i,o)=>{switch(o){case 0:t=t.add(i);break;case 2:e=e.add(i);break;case 1:r=r.add(i);break;default:O(38017,{changeType:o})}})),new jn(this.Me,this.xe,t,e,r)}qe(){this.Oe=!1,this.Fe=ic()}Qe(t,e){this.Oe=!0,this.Fe=this.Fe.insert(t,e)}$e(t){this.Oe=!0,this.Fe=this.Fe.remove(t)}Ue(){this.ve+=1}Ke(){this.ve-=1,j(this.ve>=0,3241,{ve:this.ve})}We(){this.Oe=!0,this.xe=!0}},Mi=class{constructor(t){this.Ge=t,this.ze=new Map,this.je=Jt(),this.Je=vr(),this.He=vr(),this.Ye=new Y(q)}Ze(t){for(let e of t.be)t.De&&t.De.isFoundDocument()?this.Xe(e,t.De):this.et(e,t.key,t.De);for(let e of t.removedTargetIds)this.et(e,t.key,t.De)}tt(t){this.forEachTarget(t,(e=>{let r=this.nt(e);switch(t.state){case 0:this.rt(e)&&r.Le(t.resumeToken);break;case 1:r.Ke(),r.Ne||r.qe(),r.Le(t.resumeToken);break;case 2:r.Ke(),r.Ne||this.removeTarget(e);break;case 3:this.rt(e)&&(r.We(),r.Le(t.resumeToken));break;case 4:this.rt(e)&&(this.it(e),r.Le(t.resumeToken));break;default:O(56790,{state:t.state})}}))}forEachTarget(t,e){t.targetIds.length>0?t.targetIds.forEach(e):this.ze.forEach(((r,i)=>{this.rt(i)&&e(i)}))}st(t){let e=t.targetId,r=t.Ce.count,i=this.ot(e);if(i){let o=i.target;if(Ri(o))if(r===0){let u=new M(o.path);this.et(e,u,St.newNoDocument(u,F.min()))}else j(r===1,20013,{expectedCount:r});else{let u=this._t(e);if(u!==r){let l=this.ut(t),h=l?this.ct(l,t,u):1;if(h!==0){this.it(e);let f=h===2?"TargetPurposeExistenceFilterMismatchBloom":"TargetPurposeExistenceFilterMismatch";this.Ye=this.Ye.insert(e,f)}Td?.lt((function(m,T,A,R,D){let k={localCacheCount:m,existenceFilterCount:T.count,databaseId:A.database,projectId:A.projectId},C=T.unchangedNames;return C&&(k.bloomFilter={applied:D===0,hashCount:C?.hashCount??0,bitmapLength:C?.bits?.bitmap?.length??0,padding:C?.bits?.padding??0,mightContain:G=>R?.mightContain(G)??!1}),k})(u,t.Ce,this.Ge.ht(),l,h))}}}}ut(t){let e=t.Ce.unchangedNames;if(!e||!e.bits)return null;let{bits:{bitmap:r="",padding:i=0},hashCount:o=0}=e,u,l;try{u=Wt(r).toUint8Array()}catch(h){if(h instanceof xr)return On("Decoding the base64 bloom filter in existence filter failed ("+h.message+"); ignoring the bloom filter and falling back to full re-query."),null;throw h}try{l=new ki(u,i,o)}catch(h){return On(h instanceof we?"BloomFilter error: ":"Applying bloom filter failed: ",h),null}return l.ge===0?null:l}ct(t,e,r){return e.Ce.count===r-this.Pt(t,e.targetId)?0:2}Pt(t,e){let r=this.Ge.getRemoteKeysForTarget(e),i=0;return r.forEach((o=>{let u=this.Ge.ht(),l=`projects/${u.projectId}/databases/${u.database}/documents/${o.path.canonicalString()}`;t.mightContain(l)||(this.et(e,o,null),i++)})),i}Tt(t){let e=new Map;this.ze.forEach(((o,u)=>{let l=this.ot(u);if(l){if(o.current&&Ri(l.target)){let h=new M(l.target.path);this.It(h).has(u)||this.Et(u,h)||this.et(u,h,St.newNoDocument(h,t))}o.Be&&(e.set(u,o.ke()),o.qe())}}));let r=U();this.He.forEach(((o,u)=>{let l=!0;u.forEachWhile((h=>{let f=this.ot(h);return!f||f.purpose==="TargetPurposeLimboResolution"||(l=!1,!1)})),l&&(r=r.add(o))})),this.je.forEach(((o,u)=>u.setReadTime(t)));let i=new qr(t,e,this.Ye,this.je,r);return this.je=Jt(),this.Je=vr(),this.He=vr(),this.Ye=new Y(q),i}Xe(t,e){if(!this.rt(t))return;let r=this.Et(t,e.key)?2:0;this.nt(t).Qe(e.key,r),this.je=this.je.insert(e.key,e),this.Je=this.Je.insert(e.key,this.It(e.key).add(t)),this.He=this.He.insert(e.key,this.dt(e.key).add(t))}et(t,e,r){if(!this.rt(t))return;let i=this.nt(t);this.Et(t,e)?i.Qe(e,1):i.$e(e),this.He=this.He.insert(e,this.dt(e).delete(t)),this.He=this.He.insert(e,this.dt(e).add(t)),r&&(this.je=this.je.insert(e,r))}removeTarget(t){this.ze.delete(t)}_t(t){let e=this.nt(t).ke();return this.Ge.getRemoteKeysForTarget(t).size+e.addedDocuments.size-e.removedDocuments.size}Ue(t){this.nt(t).Ue()}nt(t){let e=this.ze.get(t);return e||(e=new jr,this.ze.set(t,e)),e}dt(t){let e=this.He.get(t);return e||(e=new it(q),this.He=this.He.insert(t,e)),e}It(t){let e=this.Je.get(t);return e||(e=new it(q),this.Je=this.Je.insert(t,e)),e}rt(t){let e=this.ot(t)!==null;return e||N("WatchChangeAggregator","Detected inactive target",t),e}ot(t){let e=this.ze.get(t);return e&&e.Ne?null:this.Ge.At(t)}it(t){this.ze.set(t,new jr),this.Ge.getRemoteKeysForTarget(t).forEach((e=>{this.et(t,e,null)}))}Et(t,e){return this.Ge.getRemoteKeysForTarget(t).has(e)}};function vr(){return new Y(M.comparator)}function ic(){return new Y(M.comparator)}var vd={asc:"ASCENDING",desc:"DESCENDING"},Ad={"<":"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"},Sd={and:"AND",or:"OR"},Oi=class{constructor(t,e){this.databaseId=t,this.useProto3Json=e}};function Fi(n,t){return n.useProto3Json||tr(t)?t:{value:t}}function Gr(n,t){return n.useProto3Json?`${new Date(1e3*t.seconds).toISOString().replace(/\.\d*/,"").replace("Z","")}.${("000000000"+t.nanoseconds).slice(-9)}Z`:{seconds:""+t.seconds,nanos:t.nanoseconds}}function yl(n,t){return n.useProto3Json?t.toBase64():t.toUint8Array()}function bd(n,t){return Gr(n,t.toTimestamp())}function At(n){return j(!!n,49232),F.fromTimestamp((function(e){let r=Qt(e);return new rt(r.seconds,r.nanos)})(n))}function sa(n,t){return Li(n,t).canonicalString()}function Li(n,t){let e=(function(i){return new W(["projects",i.projectId,"databases",i.database])})(n).child("documents");return t===void 0?e:e.child(t)}function _l(n){let t=W.fromString(n);return j(Al(t),10190,{key:t.toString()}),t}function zr(n,t){return sa(n.databaseId,t.path)}function Mn(n,t){let e=_l(t);if(e.get(1)!==n.databaseId.projectId)throw new V(b.INVALID_ARGUMENT,"Tried to deserialize key from different project: "+e.get(1)+" vs "+n.databaseId.projectId);if(e.get(3)!==n.databaseId.database)throw new V(b.INVALID_ARGUMENT,"Tried to deserialize key from different database: "+e.get(3)+" vs "+n.databaseId.database);return new M(Tl(e))}function wl(n,t){return sa(n.databaseId,t)}function Rd(n){let t=_l(n);return t.length===4?W.emptyPath():Tl(t)}function qi(n){return new W(["projects",n.databaseId.projectId,"databases",n.databaseId.database]).canonicalString()}function Tl(n){return j(n.length>4&&n.get(4)==="documents",29091,{key:n.toString()}),n.popFirst(5)}function oc(n,t,e){return{name:zr(n,t),fields:e.value.mapValue.fields}}function Pd(n,t){return"found"in t?(function(r,i){j(!!i.found,43571),i.found.name,i.found.updateTime;let o=Mn(r,i.found.name),u=At(i.found.updateTime),l=i.found.createTime?At(i.found.createTime):F.min(),h=new Tt({mapValue:{fields:i.found.fields}});return St.newFoundDocument(o,u,l,h)})(n,t):"missing"in t?(function(r,i){j(!!i.missing,3894),j(!!i.readTime,22933);let o=Mn(r,i.missing),u=At(i.readTime);return St.newNoDocument(o,u)})(n,t):O(7234,{result:t})}function Vd(n,t){let e;if("targetChange"in t){t.targetChange;let r=(function(f){return f==="NO_CHANGE"?0:f==="ADD"?1:f==="REMOVE"?2:f==="CURRENT"?3:f==="RESET"?4:O(39313,{state:f})})(t.targetChange.targetChangeType||"NO_CHANGE"),i=t.targetChange.targetIds||[],o=(function(f,m){return f.useProto3Json?(j(m===void 0||typeof m=="string",58123),gt.fromBase64String(m||"")):(j(m===void 0||m instanceof Buffer||m instanceof Uint8Array,16193),gt.fromUint8Array(m||new Uint8Array))})(n,t.targetChange.resumeToken),u=t.targetChange.cause,l=u&&(function(f){let m=f.code===void 0?b.UNKNOWN:pl(f.code);return new V(m,f.message||"")})(u);e=new Br(r,i,o,l||null)}else if("documentChange"in t){t.documentChange;let r=t.documentChange;r.document,r.document.name,r.document.updateTime;let i=Mn(n,r.document.name),o=At(r.document.updateTime),u=r.document.createTime?At(r.document.createTime):F.min(),l=new Tt({mapValue:{fields:r.document.fields}}),h=St.newFoundDocument(i,o,u,l),f=r.targetIds||[],m=r.removedTargetIds||[];e=new Ge(f,m,h.key,h)}else if("documentDelete"in t){t.documentDelete;let r=t.documentDelete;r.document;let i=Mn(n,r.document),o=r.readTime?At(r.readTime):F.min(),u=St.newNoDocument(i,o),l=r.removedTargetIds||[];e=new Ge([],l,u.key,u)}else if("documentRemove"in t){t.documentRemove;let r=t.documentRemove;r.document;let i=Mn(n,r.document),o=r.removedTargetIds||[];e=new Ge([],o,i,null)}else{if(!("filter"in t))return O(11601,{Rt:t});{t.filter;let r=t.filter;r.targetId;let{count:i=0,unchangedNames:o}=r,u=new Ni(i,o),l=r.targetId;e=new Ur(l,u)}}return e}function Il(n,t){let e;if(t instanceof be)e={update:oc(n,t.key,t.value)};else if(t instanceof Ze)e={delete:zr(n,t.key)};else if(t instanceof qt)e={update:oc(n,t.key,t.data),updateMask:Ld(t.fieldMask)};else{if(!(t instanceof Lr))return O(16599,{Vt:t.type});e={verify:zr(n,t.key)}}return t.fieldTransforms.length>0&&(e.updateTransforms=t.fieldTransforms.map((r=>(function(o,u){let l=u.transform;if(l instanceof Ae)return{fieldPath:u.field.canonicalString(),setToServerValue:"REQUEST_TIME"};if(l instanceof le)return{fieldPath:u.field.canonicalString(),appendMissingElements:{values:l.elements}};if(l instanceof Se)return{fieldPath:u.field.canonicalString(),removeAllFromArray:{values:l.elements}};if(l instanceof Xe)return{fieldPath:u.field.canonicalString(),increment:l.Ae};throw O(20930,{transform:u.transform})})(0,r)))),t.precondition.isNone||(e.currentDocument=(function(i,o){return o.updateTime!==void 0?{updateTime:bd(i,o.updateTime)}:o.exists!==void 0?{exists:o.exists}:O(27497)})(n,t.precondition)),e}function Cd(n,t){return n&&n.length>0?(j(t!==void 0,14353),n.map((e=>(function(i,o){let u=i.updateTime?At(i.updateTime):At(o);return u.isEqual(F.min())&&(u=At(o)),new Vi(u,i.transformResults||[])})(e,t)))):[]}function xd(n,t){return{documents:[wl(n,t.path)]}}function Dd(n,t){let e={structuredQuery:{}},r=t.path,i;t.collectionGroup!==null?(i=r,e.structuredQuery.from=[{collectionId:t.collectionGroup,allDescendants:!0}]):(i=r.popLast(),e.structuredQuery.from=[{collectionId:r.lastSegment()}]),e.parent=wl(n,i);let o=(function(f){if(f.length!==0)return vl(Ct.create(f,"and"))})(t.filters);o&&(e.structuredQuery.where=o);let u=(function(f){if(f.length!==0)return f.map((m=>(function(A){return{field:qe(A.field),direction:Md(A.dir)}})(m)))})(t.orderBy);u&&(e.structuredQuery.orderBy=u);let l=Fi(n,t.limit);return l!==null&&(e.structuredQuery.limit=l),t.startAt&&(e.structuredQuery.startAt=(function(f){return{before:f.inclusive,values:f.position}})(t.startAt)),t.endAt&&(e.structuredQuery.endAt=(function(f){return{before:!f.inclusive,values:f.position}})(t.endAt)),{ft:e,parent:i}}function Nd(n){let t=Rd(n.parent),e=n.structuredQuery,r=e.from?e.from.length:0,i=null;if(r>0){j(r===1,65062);let m=e.from[0];m.allDescendants?i=m.collectionId:t=t.child(m.collectionId)}let o=[];e.where&&(o=(function(T){let A=El(T);return A instanceof Ct&&Zc(A)?A.getFilters():[A]})(e.where));let u=[];e.orderBy&&(u=(function(T){return T.map((A=>(function(D){return new ve(Ue(D.field),(function(C){switch(C){case"ASCENDING":return"asc";case"DESCENDING":return"desc";default:return}})(D.direction))})(A)))})(e.orderBy));let l=null;e.limit&&(l=(function(T){let A;return A=typeof T=="object"?T.value:T,tr(A)?null:A})(e.limit));let h=null;e.startAt&&(h=(function(T){let A=!!T.before,R=T.values||[];return new ce(R,A)})(e.startAt));let f=null;return e.endAt&&(f=(function(T){let A=!T.before,R=T.values||[];return new ce(R,A)})(e.endAt)),id(t,i,u,o,l,"F",h,f)}function kd(n,t){let e=(function(i){switch(i){case"TargetPurposeListen":return null;case"TargetPurposeExistenceFilterMismatch":return"existence-filter-mismatch";case"TargetPurposeExistenceFilterMismatchBloom":return"existence-filter-mismatch-bloom";case"TargetPurposeLimboResolution":return"limbo-document";default:return O(28987,{purpose:i})}})(t.purpose);return e==null?null:{"goog-listen-tags":e}}function El(n){return n.unaryFilter!==void 0?(function(e){switch(e.unaryFilter.op){case"IS_NAN":let r=Ue(e.unaryFilter.field);return et.create(r,"==",{doubleValue:NaN});case"IS_NULL":let i=Ue(e.unaryFilter.field);return et.create(i,"==",{nullValue:"NULL_VALUE"});case"IS_NOT_NAN":let o=Ue(e.unaryFilter.field);return et.create(o,"!=",{doubleValue:NaN});case"IS_NOT_NULL":let u=Ue(e.unaryFilter.field);return et.create(u,"!=",{nullValue:"NULL_VALUE"});case"OPERATOR_UNSPECIFIED":return O(61313);default:return O(60726)}})(n):n.fieldFilter!==void 0?(function(e){return et.create(Ue(e.fieldFilter.field),(function(i){switch(i){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";case"OPERATOR_UNSPECIFIED":return O(58110);default:return O(50506)}})(e.fieldFilter.op),e.fieldFilter.value)})(n):n.compositeFilter!==void 0?(function(e){return Ct.create(e.compositeFilter.filters.map((r=>El(r))),(function(i){switch(i){case"AND":return"and";case"OR":return"or";default:return O(1026)}})(e.compositeFilter.op))})(n):O(30097,{filter:n})}function Md(n){return vd[n]}function Od(n){return Ad[n]}function Fd(n){return Sd[n]}function qe(n){return{fieldPath:n.canonicalString()}}function Ue(n){return Et.fromServerFormat(n.fieldPath)}function vl(n){return n instanceof et?(function(e){if(e.op==="=="){if(Wu(e.value))return{unaryFilter:{field:qe(e.field),op:"IS_NAN"}};if(Qu(e.value))return{unaryFilter:{field:qe(e.field),op:"IS_NULL"}}}else if(e.op==="!="){if(Wu(e.value))return{unaryFilter:{field:qe(e.field),op:"IS_NOT_NAN"}};if(Qu(e.value))return{unaryFilter:{field:qe(e.field),op:"IS_NOT_NULL"}}}return{fieldFilter:{field:qe(e.field),op:Od(e.op),value:e.value}}})(n):n instanceof Ct?(function(e){let r=e.getFilters().map((i=>vl(i)));return r.length===1?r[0]:{compositeFilter:{op:Fd(e.op),filters:r}}})(n):O(54877,{filter:n})}function Ld(n){let t=[];return n.fields.forEach((e=>t.push(e.canonicalString()))),{fieldPaths:t}}function Al(n){return n.length>=4&&n.get(0)==="projects"&&n.get(2)==="databases"}var Gn=class n{constructor(t,e,r,i,o=F.min(),u=F.min(),l=gt.EMPTY_BYTE_STRING,h=null){this.target=t,this.targetId=e,this.purpose=r,this.sequenceNumber=i,this.snapshotVersion=o,this.lastLimboFreeSnapshotVersion=u,this.resumeToken=l,this.expectedCount=h}withSequenceNumber(t){return new n(this.target,this.targetId,this.purpose,t,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,this.expectedCount)}withResumeToken(t,e){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,e,this.lastLimboFreeSnapshotVersion,t,null)}withExpectedCount(t){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,t)}withLastLimboFreeSnapshotVersion(t){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,t,this.resumeToken,this.expectedCount)}};var Ui=class{constructor(t){this.yt=t}};function qd(n){let t=Nd({parent:n.parent,structuredQuery:n.structuredQuery});return n.limitType==="LAST"?Or(t,t.limit,"L"):t}var Kr=class{constructor(){}Dt(t,e){this.Ct(t,e),e.vt()}Ct(t,e){if("nullValue"in t)this.Ft(e,5);else if("booleanValue"in t)this.Ft(e,10),e.Mt(t.booleanValue?1:0);else if("integerValue"in t)this.Ft(e,15),e.Mt(J(t.integerValue));else if("doubleValue"in t){let r=J(t.doubleValue);isNaN(r)?this.Ft(e,13):(this.Ft(e,15),qn(r)?e.Mt(0):e.Mt(r))}else if("timestampValue"in t){let r=t.timestampValue;this.Ft(e,20),typeof r=="string"&&(r=Qt(r)),e.xt(`${r.seconds||""}`),e.Mt(r.nanos||0)}else if("stringValue"in t)this.Ot(t.stringValue,e),this.Nt(e);else if("bytesValue"in t)this.Ft(e,30),e.Bt(Wt(t.bytesValue)),this.Nt(e);else if("referenceValue"in t)this.Lt(t.referenceValue,e);else if("geoPointValue"in t){let r=t.geoPointValue;this.Ft(e,45),e.Mt(r.latitude||0),e.Mt(r.longitude||0)}else"mapValue"in t?Jc(t)?this.Ft(e,Number.MAX_SAFE_INTEGER):Hc(t)?this.kt(t.mapValue,e):(this.qt(t.mapValue,e),this.Nt(e)):"arrayValue"in t?(this.Qt(t.arrayValue,e),this.Nt(e)):O(19022,{$t:t})}Ot(t,e){this.Ft(e,25),this.Ut(t,e)}Ut(t,e){e.xt(t)}qt(t,e){let r=t.fields||{};this.Ft(e,55);for(let i of Object.keys(r))this.Ot(i,e),this.Ct(r[i],e)}kt(t,e){let r=t.fields||{};this.Ft(e,53);let i=Qe,o=r[i].arrayValue?.values?.length||0;this.Ft(e,15),e.Mt(J(o)),this.Ot(i,e),this.Ct(r[i],e)}Qt(t,e){let r=t.values||[];this.Ft(e,50);for(let i of r)this.Ct(i,e)}Lt(t,e){this.Ft(e,37),M.fromName(t).path.forEach((r=>{this.Ft(e,60),this.Ut(r,e)}))}Ft(t,e){t.Mt(e)}Nt(t){t.Mt(2)}};Kr.Kt=new Kr;var Bi=class{constructor(){this.Cn=new ji}addToCollectionParentIndex(t,e){return this.Cn.add(e),P.resolve()}getCollectionParents(t,e){return P.resolve(this.Cn.getEntries(e))}addFieldIndex(t,e){return P.resolve()}deleteFieldIndex(t,e){return P.resolve()}deleteAllFieldIndexes(t){return P.resolve()}createTargetIndexes(t,e){return P.resolve()}getDocumentsMatchingTarget(t,e){return P.resolve(null)}getIndexType(t,e){return P.resolve(0)}getFieldIndexes(t,e){return P.resolve([])}getNextCollectionGroupToUpdate(t){return P.resolve(null)}getMinOffset(t,e){return P.resolve(Ee.min())}getMinOffsetFromCollectionGroup(t,e){return P.resolve(Ee.min())}updateCollectionGroup(t,e,r){return P.resolve()}updateIndexEntries(t,e){return P.resolve()}},ji=class{constructor(){this.index={}}add(t){let e=t.lastSegment(),r=t.popLast(),i=this.index[e]||new it(W.comparator),o=!i.has(r);return this.index[e]=i.add(r),o}has(t){let e=t.lastSegment(),r=t.popLast(),i=this.index[e];return i&&i.has(r)}getEntries(t){return(this.index[t]||new it(W.comparator)).toArray()}};var rm=new Uint8Array(0);var ac={didRun:!1,sequenceNumbersCollected:0,targetsRemoved:0,documentsRemoved:0},Sl=41943040,bt=class n{static withCacheSize(t){return new n(t,n.DEFAULT_COLLECTION_PERCENTILE,n.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT)}constructor(t,e,r){this.cacheSizeCollectionThreshold=t,this.percentileToCollect=e,this.maximumSequenceNumbersToCollect=r}};bt.DEFAULT_COLLECTION_PERCENTILE=10,bt.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT=1e3,bt.DEFAULT=new bt(Sl,bt.DEFAULT_COLLECTION_PERCENTILE,bt.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT),bt.DISABLED=new bt(-1,0,0);var zn=class n{constructor(t){this.ar=t}next(){return this.ar+=2,this.ar}static ur(){return new n(0)}static cr(){return new n(-1)}};var uc="LruGarbageCollector",bl=1048576;function cc([n,t],[e,r]){let i=q(n,e);return i===0?q(t,r):i}var Gi=class{constructor(t){this.Ir=t,this.buffer=new it(cc),this.Er=0}dr(){return++this.Er}Ar(t){let e=[t,this.dr()];if(this.buffer.size<this.Ir)this.buffer=this.buffer.add(e);else{let r=this.buffer.last();cc(e,r)<0&&(this.buffer=this.buffer.delete(r).add(e))}}get maxValue(){return this.buffer.last()[0]}},zi=class{constructor(t,e,r){this.garbageCollector=t,this.asyncQueue=e,this.localStore=r,this.Rr=null}start(){this.garbageCollector.params.cacheSizeCollectionThreshold!==-1&&this.Vr(6e4)}stop(){this.Rr&&(this.Rr.cancel(),this.Rr=null)}get started(){return this.Rr!==null}Vr(t){N(uc,`Garbage collection scheduled in ${t}ms`),this.Rr=this.asyncQueue.enqueueAfterDelay("lru_garbage_collection",t,(async()=>{this.Rr=null;try{await this.localStore.collectGarbage(this.garbageCollector)}catch(e){on(e)?N(uc,"Ignoring IndexedDB error during garbage collection: ",e):await sn(e)}await this.Vr(3e5)}))}},Ki=class{constructor(t,e){this.mr=t,this.params=e}calculateTargetCount(t,e){return this.mr.gr(t).next((r=>Math.floor(e/100*r)))}nthSequenceNumber(t,e){if(e===0)return P.resolve($e.ce);let r=new Gi(e);return this.mr.forEachTarget(t,(i=>r.Ar(i.sequenceNumber))).next((()=>this.mr.pr(t,(i=>r.Ar(i))))).next((()=>r.maxValue))}removeTargets(t,e,r){return this.mr.removeTargets(t,e,r)}removeOrphanedDocuments(t,e){return this.mr.removeOrphanedDocuments(t,e)}collect(t,e){return this.params.cacheSizeCollectionThreshold===-1?(N("LruGarbageCollector","Garbage collection skipped; disabled"),P.resolve(ac)):this.getCacheSize(t).next((r=>r<this.params.cacheSizeCollectionThreshold?(N("LruGarbageCollector",`Garbage collection skipped; Cache size ${r} is lower than threshold ${this.params.cacheSizeCollectionThreshold}`),ac):this.yr(t,e)))}getCacheSize(t){return this.mr.getCacheSize(t)}yr(t,e){let r,i,o,u,l,h,f,m=Date.now();return this.calculateTargetCount(t,this.params.percentileToCollect).next((T=>(T>this.params.maximumSequenceNumbersToCollect?(N("LruGarbageCollector",`Capping sequence numbers to collect down to the maximum of ${this.params.maximumSequenceNumbersToCollect} from ${T}`),i=this.params.maximumSequenceNumbersToCollect):i=T,u=Date.now(),this.nthSequenceNumber(t,i)))).next((T=>(r=T,l=Date.now(),this.removeTargets(t,r,e)))).next((T=>(o=T,h=Date.now(),this.removeOrphanedDocuments(t,r)))).next((T=>(f=Date.now(),Fe()<=kt.DEBUG&&N("LruGarbageCollector",`LRU Garbage Collection
|
|
12
|
+
}`}};var ki=class{constructor(t,e){this.count=t,this.unchangedNames=e}};var Z,B;function gl(n){switch(n){case b.OK:return O(64938);case b.CANCELLED:case b.UNKNOWN:case b.DEADLINE_EXCEEDED:case b.RESOURCE_EXHAUSTED:case b.INTERNAL:case b.UNAVAILABLE:case b.UNAUTHENTICATED:return!1;case b.INVALID_ARGUMENT:case b.NOT_FOUND:case b.ALREADY_EXISTS:case b.PERMISSION_DENIED:case b.FAILED_PRECONDITION:case b.ABORTED:case b.OUT_OF_RANGE:case b.UNIMPLEMENTED:case b.DATA_LOSS:return!0;default:return O(15467,{code:n})}}function pl(n){if(n===void 0)return $t("GRPC error has no .code"),b.UNKNOWN;switch(n){case Z.OK:return b.OK;case Z.CANCELLED:return b.CANCELLED;case Z.UNKNOWN:return b.UNKNOWN;case Z.DEADLINE_EXCEEDED:return b.DEADLINE_EXCEEDED;case Z.RESOURCE_EXHAUSTED:return b.RESOURCE_EXHAUSTED;case Z.INTERNAL:return b.INTERNAL;case Z.UNAVAILABLE:return b.UNAVAILABLE;case Z.UNAUTHENTICATED:return b.UNAUTHENTICATED;case Z.INVALID_ARGUMENT:return b.INVALID_ARGUMENT;case Z.NOT_FOUND:return b.NOT_FOUND;case Z.ALREADY_EXISTS:return b.ALREADY_EXISTS;case Z.PERMISSION_DENIED:return b.PERMISSION_DENIED;case Z.FAILED_PRECONDITION:return b.FAILED_PRECONDITION;case Z.ABORTED:return b.ABORTED;case Z.OUT_OF_RANGE:return b.OUT_OF_RANGE;case Z.UNIMPLEMENTED:return b.UNIMPLEMENTED;case Z.DATA_LOSS:return b.DATA_LOSS;default:return O(39323,{code:n})}}(B=Z||(Z={}))[B.OK=0]="OK",B[B.CANCELLED=1]="CANCELLED",B[B.UNKNOWN=2]="UNKNOWN",B[B.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",B[B.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",B[B.NOT_FOUND=5]="NOT_FOUND",B[B.ALREADY_EXISTS=6]="ALREADY_EXISTS",B[B.PERMISSION_DENIED=7]="PERMISSION_DENIED",B[B.UNAUTHENTICATED=16]="UNAUTHENTICATED",B[B.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",B[B.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",B[B.ABORTED=10]="ABORTED",B[B.OUT_OF_RANGE=11]="OUT_OF_RANGE",B[B.UNIMPLEMENTED=12]="UNIMPLEMENTED",B[B.INTERNAL=13]="INTERNAL",B[B.UNAVAILABLE=14]="UNAVAILABLE",B[B.DATA_LOSS=15]="DATA_LOSS";var Td=null;function Id(){return new TextEncoder}var Ed=new Gt([4294967295,4294967295],0);function rc(n){let t=Id().encode(n),e=new Js;return e.update(t),new Uint8Array(e.digest())}function sc(n){let t=new DataView(n.buffer),e=t.getUint32(0,!0),r=t.getUint32(4,!0),i=t.getUint32(8,!0),o=t.getUint32(12,!0);return[new Gt([e,r],0),new Gt([i,o],0)]}var Mi=class n{constructor(t,e,r){if(this.bitmap=t,this.padding=e,this.hashCount=r,e<0||e>=8)throw new we(`Invalid padding: ${e}`);if(r<0)throw new we(`Invalid hash count: ${r}`);if(t.length>0&&this.hashCount===0)throw new we(`Invalid hash count: ${r}`);if(t.length===0&&e!==0)throw new we(`Invalid padding when bitmap length is 0: ${e}`);this.ge=8*t.length-e,this.pe=Gt.fromNumber(this.ge)}ye(t,e,r){let i=t.add(e.multiply(Gt.fromNumber(r)));return i.compare(Ed)===1&&(i=new Gt([i.getBits(0),i.getBits(1)],0)),i.modulo(this.pe).toNumber()}we(t){return!!(this.bitmap[Math.floor(t/8)]&1<<t%8)}mightContain(t){if(this.ge===0)return!1;let e=rc(t),[r,i]=sc(e);for(let o=0;o<this.hashCount;o++){let u=this.ye(r,i,o);if(!this.we(u))return!1}return!0}static create(t,e,r){let i=t%8==0?0:8-t%8,o=new Uint8Array(Math.ceil(t/8)),u=new n(o,i,e);return r.forEach((l=>u.insert(l))),u}insert(t){if(this.ge===0)return;let e=rc(t),[r,i]=sc(e);for(let o=0;o<this.hashCount;o++){let u=this.ye(r,i,o);this.Se(u)}}Se(t){let e=Math.floor(t/8),r=t%8;this.bitmap[e]|=1<<r}},we=class extends Error{constructor(){super(...arguments),this.name="BloomFilterError"}};var qr=class n{constructor(t,e,r,i,o){this.snapshotVersion=t,this.targetChanges=e,this.targetMismatches=r,this.documentUpdates=i,this.resolvedLimboDocuments=o}static createSynthesizedRemoteEventForCurrentChange(t,e,r){let i=new Map;return i.set(t,jn.createSynthesizedTargetChangeForCurrentChange(t,e,r)),new n(F.min(),i,new Y(q),Jt(),U())}},jn=class n{constructor(t,e,r,i,o){this.resumeToken=t,this.current=e,this.addedDocuments=r,this.modifiedDocuments=i,this.removedDocuments=o}static createSynthesizedTargetChangeForCurrentChange(t,e,r){return new n(r,e,U(),U(),U())}};var ze=class{constructor(t,e,r,i){this.be=t,this.removedTargetIds=e,this.key=r,this.De=i}},Ur=class{constructor(t,e){this.targetId=t,this.Ce=e}},Br=class{constructor(t,e,r=gt.EMPTY_BYTE_STRING,i=null){this.state=t,this.targetIds=e,this.resumeToken=r,this.cause=i}},jr=class{constructor(){this.ve=0,this.Fe=ic(),this.Me=gt.EMPTY_BYTE_STRING,this.xe=!1,this.Oe=!0}get current(){return this.xe}get resumeToken(){return this.Me}get Ne(){return this.ve!==0}get Be(){return this.Oe}Le(t){t.approximateByteSize()>0&&(this.Oe=!0,this.Me=t)}ke(){let t=U(),e=U(),r=U();return this.Fe.forEach(((i,o)=>{switch(o){case 0:t=t.add(i);break;case 2:e=e.add(i);break;case 1:r=r.add(i);break;default:O(38017,{changeType:o})}})),new jn(this.Me,this.xe,t,e,r)}qe(){this.Oe=!1,this.Fe=ic()}Qe(t,e){this.Oe=!0,this.Fe=this.Fe.insert(t,e)}$e(t){this.Oe=!0,this.Fe=this.Fe.remove(t)}Ue(){this.ve+=1}Ke(){this.ve-=1,j(this.ve>=0,3241,{ve:this.ve})}We(){this.Oe=!0,this.xe=!0}},Oi=class{constructor(t){this.Ge=t,this.ze=new Map,this.je=Jt(),this.Je=vr(),this.He=vr(),this.Ye=new Y(q)}Ze(t){for(let e of t.be)t.De&&t.De.isFoundDocument()?this.Xe(e,t.De):this.et(e,t.key,t.De);for(let e of t.removedTargetIds)this.et(e,t.key,t.De)}tt(t){this.forEachTarget(t,(e=>{let r=this.nt(e);switch(t.state){case 0:this.rt(e)&&r.Le(t.resumeToken);break;case 1:r.Ke(),r.Ne||r.qe(),r.Le(t.resumeToken);break;case 2:r.Ke(),r.Ne||this.removeTarget(e);break;case 3:this.rt(e)&&(r.We(),r.Le(t.resumeToken));break;case 4:this.rt(e)&&(this.it(e),r.Le(t.resumeToken));break;default:O(56790,{state:t.state})}}))}forEachTarget(t,e){t.targetIds.length>0?t.targetIds.forEach(e):this.ze.forEach(((r,i)=>{this.rt(i)&&e(i)}))}st(t){let e=t.targetId,r=t.Ce.count,i=this.ot(e);if(i){let o=i.target;if(Pi(o))if(r===0){let u=new M(o.path);this.et(e,u,St.newNoDocument(u,F.min()))}else j(r===1,20013,{expectedCount:r});else{let u=this._t(e);if(u!==r){let l=this.ut(t),h=l?this.ct(l,t,u):1;if(h!==0){this.it(e);let f=h===2?"TargetPurposeExistenceFilterMismatchBloom":"TargetPurposeExistenceFilterMismatch";this.Ye=this.Ye.insert(e,f)}Td?.lt((function(m,T,A,R,D){let k={localCacheCount:m,existenceFilterCount:T.count,databaseId:A.database,projectId:A.projectId},C=T.unchangedNames;return C&&(k.bloomFilter={applied:D===0,hashCount:C?.hashCount??0,bitmapLength:C?.bits?.bitmap?.length??0,padding:C?.bits?.padding??0,mightContain:G=>R?.mightContain(G)??!1}),k})(u,t.Ce,this.Ge.ht(),l,h))}}}}ut(t){let e=t.Ce.unchangedNames;if(!e||!e.bits)return null;let{bits:{bitmap:r="",padding:i=0},hashCount:o=0}=e,u,l;try{u=Wt(r).toUint8Array()}catch(h){if(h instanceof xr)return On("Decoding the base64 bloom filter in existence filter failed ("+h.message+"); ignoring the bloom filter and falling back to full re-query."),null;throw h}try{l=new Mi(u,i,o)}catch(h){return On(h instanceof we?"BloomFilter error: ":"Applying bloom filter failed: ",h),null}return l.ge===0?null:l}ct(t,e,r){return e.Ce.count===r-this.Pt(t,e.targetId)?0:2}Pt(t,e){let r=this.Ge.getRemoteKeysForTarget(e),i=0;return r.forEach((o=>{let u=this.Ge.ht(),l=`projects/${u.projectId}/databases/${u.database}/documents/${o.path.canonicalString()}`;t.mightContain(l)||(this.et(e,o,null),i++)})),i}Tt(t){let e=new Map;this.ze.forEach(((o,u)=>{let l=this.ot(u);if(l){if(o.current&&Pi(l.target)){let h=new M(l.target.path);this.It(h).has(u)||this.Et(u,h)||this.et(u,h,St.newNoDocument(h,t))}o.Be&&(e.set(u,o.ke()),o.qe())}}));let r=U();this.He.forEach(((o,u)=>{let l=!0;u.forEachWhile((h=>{let f=this.ot(h);return!f||f.purpose==="TargetPurposeLimboResolution"||(l=!1,!1)})),l&&(r=r.add(o))})),this.je.forEach(((o,u)=>u.setReadTime(t)));let i=new qr(t,e,this.Ye,this.je,r);return this.je=Jt(),this.Je=vr(),this.He=vr(),this.Ye=new Y(q),i}Xe(t,e){if(!this.rt(t))return;let r=this.Et(t,e.key)?2:0;this.nt(t).Qe(e.key,r),this.je=this.je.insert(e.key,e),this.Je=this.Je.insert(e.key,this.It(e.key).add(t)),this.He=this.He.insert(e.key,this.dt(e.key).add(t))}et(t,e,r){if(!this.rt(t))return;let i=this.nt(t);this.Et(t,e)?i.Qe(e,1):i.$e(e),this.He=this.He.insert(e,this.dt(e).delete(t)),this.He=this.He.insert(e,this.dt(e).add(t)),r&&(this.je=this.je.insert(e,r))}removeTarget(t){this.ze.delete(t)}_t(t){let e=this.nt(t).ke();return this.Ge.getRemoteKeysForTarget(t).size+e.addedDocuments.size-e.removedDocuments.size}Ue(t){this.nt(t).Ue()}nt(t){let e=this.ze.get(t);return e||(e=new jr,this.ze.set(t,e)),e}dt(t){let e=this.He.get(t);return e||(e=new it(q),this.He=this.He.insert(t,e)),e}It(t){let e=this.Je.get(t);return e||(e=new it(q),this.Je=this.Je.insert(t,e)),e}rt(t){let e=this.ot(t)!==null;return e||N("WatchChangeAggregator","Detected inactive target",t),e}ot(t){let e=this.ze.get(t);return e&&e.Ne?null:this.Ge.At(t)}it(t){this.ze.set(t,new jr),this.Ge.getRemoteKeysForTarget(t).forEach((e=>{this.et(t,e,null)}))}Et(t,e){return this.Ge.getRemoteKeysForTarget(t).has(e)}};function vr(){return new Y(M.comparator)}function ic(){return new Y(M.comparator)}var vd={asc:"ASCENDING",desc:"DESCENDING"},Ad={"<":"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"},Sd={and:"AND",or:"OR"},Fi=class{constructor(t,e){this.databaseId=t,this.useProto3Json=e}};function Li(n,t){return n.useProto3Json||tr(t)?t:{value:t}}function Gr(n,t){return n.useProto3Json?`${new Date(1e3*t.seconds).toISOString().replace(/\.\d*/,"").replace("Z","")}.${("000000000"+t.nanoseconds).slice(-9)}Z`:{seconds:""+t.seconds,nanos:t.nanoseconds}}function yl(n,t){return n.useProto3Json?t.toBase64():t.toUint8Array()}function bd(n,t){return Gr(n,t.toTimestamp())}function At(n){return j(!!n,49232),F.fromTimestamp((function(e){let r=Qt(e);return new rt(r.seconds,r.nanos)})(n))}function ia(n,t){return qi(n,t).canonicalString()}function qi(n,t){let e=(function(i){return new W(["projects",i.projectId,"databases",i.database])})(n).child("documents");return t===void 0?e:e.child(t)}function _l(n){let t=W.fromString(n);return j(Al(t),10190,{key:t.toString()}),t}function zr(n,t){return ia(n.databaseId,t.path)}function Mn(n,t){let e=_l(t);if(e.get(1)!==n.databaseId.projectId)throw new V(b.INVALID_ARGUMENT,"Tried to deserialize key from different project: "+e.get(1)+" vs "+n.databaseId.projectId);if(e.get(3)!==n.databaseId.database)throw new V(b.INVALID_ARGUMENT,"Tried to deserialize key from different database: "+e.get(3)+" vs "+n.databaseId.database);return new M(Tl(e))}function wl(n,t){return ia(n.databaseId,t)}function Rd(n){let t=_l(n);return t.length===4?W.emptyPath():Tl(t)}function Ui(n){return new W(["projects",n.databaseId.projectId,"databases",n.databaseId.database]).canonicalString()}function Tl(n){return j(n.length>4&&n.get(4)==="documents",29091,{key:n.toString()}),n.popFirst(5)}function oc(n,t,e){return{name:zr(n,t),fields:e.value.mapValue.fields}}function Pd(n,t){return"found"in t?(function(r,i){j(!!i.found,43571),i.found.name,i.found.updateTime;let o=Mn(r,i.found.name),u=At(i.found.updateTime),l=i.found.createTime?At(i.found.createTime):F.min(),h=new Tt({mapValue:{fields:i.found.fields}});return St.newFoundDocument(o,u,l,h)})(n,t):"missing"in t?(function(r,i){j(!!i.missing,3894),j(!!i.readTime,22933);let o=Mn(r,i.missing),u=At(i.readTime);return St.newNoDocument(o,u)})(n,t):O(7234,{result:t})}function Vd(n,t){let e;if("targetChange"in t){t.targetChange;let r=(function(f){return f==="NO_CHANGE"?0:f==="ADD"?1:f==="REMOVE"?2:f==="CURRENT"?3:f==="RESET"?4:O(39313,{state:f})})(t.targetChange.targetChangeType||"NO_CHANGE"),i=t.targetChange.targetIds||[],o=(function(f,m){return f.useProto3Json?(j(m===void 0||typeof m=="string",58123),gt.fromBase64String(m||"")):(j(m===void 0||m instanceof Buffer||m instanceof Uint8Array,16193),gt.fromUint8Array(m||new Uint8Array))})(n,t.targetChange.resumeToken),u=t.targetChange.cause,l=u&&(function(f){let m=f.code===void 0?b.UNKNOWN:pl(f.code);return new V(m,f.message||"")})(u);e=new Br(r,i,o,l||null)}else if("documentChange"in t){t.documentChange;let r=t.documentChange;r.document,r.document.name,r.document.updateTime;let i=Mn(n,r.document.name),o=At(r.document.updateTime),u=r.document.createTime?At(r.document.createTime):F.min(),l=new Tt({mapValue:{fields:r.document.fields}}),h=St.newFoundDocument(i,o,u,l),f=r.targetIds||[],m=r.removedTargetIds||[];e=new ze(f,m,h.key,h)}else if("documentDelete"in t){t.documentDelete;let r=t.documentDelete;r.document;let i=Mn(n,r.document),o=r.readTime?At(r.readTime):F.min(),u=St.newNoDocument(i,o),l=r.removedTargetIds||[];e=new ze([],l,u.key,u)}else if("documentRemove"in t){t.documentRemove;let r=t.documentRemove;r.document;let i=Mn(n,r.document),o=r.removedTargetIds||[];e=new ze([],o,i,null)}else{if(!("filter"in t))return O(11601,{Rt:t});{t.filter;let r=t.filter;r.targetId;let{count:i=0,unchangedNames:o}=r,u=new ki(i,o),l=r.targetId;e=new Ur(l,u)}}return e}function Il(n,t){let e;if(t instanceof be)e={update:oc(n,t.key,t.value)};else if(t instanceof Re)e={delete:zr(n,t.key)};else if(t instanceof qt)e={update:oc(n,t.key,t.data),updateMask:Ld(t.fieldMask)};else{if(!(t instanceof Lr))return O(16599,{Vt:t.type});e={verify:zr(n,t.key)}}return t.fieldTransforms.length>0&&(e.updateTransforms=t.fieldTransforms.map((r=>(function(o,u){let l=u.transform;if(l instanceof Ae)return{fieldPath:u.field.canonicalString(),setToServerValue:"REQUEST_TIME"};if(l instanceof le)return{fieldPath:u.field.canonicalString(),appendMissingElements:{values:l.elements}};if(l instanceof Se)return{fieldPath:u.field.canonicalString(),removeAllFromArray:{values:l.elements}};if(l instanceof Ye)return{fieldPath:u.field.canonicalString(),increment:l.Ae};throw O(20930,{transform:u.transform})})(0,r)))),t.precondition.isNone||(e.currentDocument=(function(i,o){return o.updateTime!==void 0?{updateTime:bd(i,o.updateTime)}:o.exists!==void 0?{exists:o.exists}:O(27497)})(n,t.precondition)),e}function Cd(n,t){return n&&n.length>0?(j(t!==void 0,14353),n.map((e=>(function(i,o){let u=i.updateTime?At(i.updateTime):At(o);return u.isEqual(F.min())&&(u=At(o)),new Ci(u,i.transformResults||[])})(e,t)))):[]}function xd(n,t){return{documents:[wl(n,t.path)]}}function Dd(n,t){let e={structuredQuery:{}},r=t.path,i;t.collectionGroup!==null?(i=r,e.structuredQuery.from=[{collectionId:t.collectionGroup,allDescendants:!0}]):(i=r.popLast(),e.structuredQuery.from=[{collectionId:r.lastSegment()}]),e.parent=wl(n,i);let o=(function(f){if(f.length!==0)return vl(xt.create(f,"and"))})(t.filters);o&&(e.structuredQuery.where=o);let u=(function(f){if(f.length!==0)return f.map((m=>(function(A){return{field:Ue(A.field),direction:Md(A.dir)}})(m)))})(t.orderBy);u&&(e.structuredQuery.orderBy=u);let l=Li(n,t.limit);return l!==null&&(e.structuredQuery.limit=l),t.startAt&&(e.structuredQuery.startAt=(function(f){return{before:f.inclusive,values:f.position}})(t.startAt)),t.endAt&&(e.structuredQuery.endAt=(function(f){return{before:!f.inclusive,values:f.position}})(t.endAt)),{ft:e,parent:i}}function Nd(n){let t=Rd(n.parent),e=n.structuredQuery,r=e.from?e.from.length:0,i=null;if(r>0){j(r===1,65062);let m=e.from[0];m.allDescendants?i=m.collectionId:t=t.child(m.collectionId)}let o=[];e.where&&(o=(function(T){let A=El(T);return A instanceof xt&&Zc(A)?A.getFilters():[A]})(e.where));let u=[];e.orderBy&&(u=(function(T){return T.map((A=>(function(D){return new ve(Be(D.field),(function(C){switch(C){case"ASCENDING":return"asc";case"DESCENDING":return"desc";default:return}})(D.direction))})(A)))})(e.orderBy));let l=null;e.limit&&(l=(function(T){let A;return A=typeof T=="object"?T.value:T,tr(A)?null:A})(e.limit));let h=null;e.startAt&&(h=(function(T){let A=!!T.before,R=T.values||[];return new ce(R,A)})(e.startAt));let f=null;return e.endAt&&(f=(function(T){let A=!T.before,R=T.values||[];return new ce(R,A)})(e.endAt)),id(t,i,u,o,l,"F",h,f)}function kd(n,t){let e=(function(i){switch(i){case"TargetPurposeListen":return null;case"TargetPurposeExistenceFilterMismatch":return"existence-filter-mismatch";case"TargetPurposeExistenceFilterMismatchBloom":return"existence-filter-mismatch-bloom";case"TargetPurposeLimboResolution":return"limbo-document";default:return O(28987,{purpose:i})}})(t.purpose);return e==null?null:{"goog-listen-tags":e}}function El(n){return n.unaryFilter!==void 0?(function(e){switch(e.unaryFilter.op){case"IS_NAN":let r=Be(e.unaryFilter.field);return et.create(r,"==",{doubleValue:NaN});case"IS_NULL":let i=Be(e.unaryFilter.field);return et.create(i,"==",{nullValue:"NULL_VALUE"});case"IS_NOT_NAN":let o=Be(e.unaryFilter.field);return et.create(o,"!=",{doubleValue:NaN});case"IS_NOT_NULL":let u=Be(e.unaryFilter.field);return et.create(u,"!=",{nullValue:"NULL_VALUE"});case"OPERATOR_UNSPECIFIED":return O(61313);default:return O(60726)}})(n):n.fieldFilter!==void 0?(function(e){return et.create(Be(e.fieldFilter.field),(function(i){switch(i){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";case"OPERATOR_UNSPECIFIED":return O(58110);default:return O(50506)}})(e.fieldFilter.op),e.fieldFilter.value)})(n):n.compositeFilter!==void 0?(function(e){return xt.create(e.compositeFilter.filters.map((r=>El(r))),(function(i){switch(i){case"AND":return"and";case"OR":return"or";default:return O(1026)}})(e.compositeFilter.op))})(n):O(30097,{filter:n})}function Md(n){return vd[n]}function Od(n){return Ad[n]}function Fd(n){return Sd[n]}function Ue(n){return{fieldPath:n.canonicalString()}}function Be(n){return vt.fromServerFormat(n.fieldPath)}function vl(n){return n instanceof et?(function(e){if(e.op==="=="){if(Wu(e.value))return{unaryFilter:{field:Ue(e.field),op:"IS_NAN"}};if(Qu(e.value))return{unaryFilter:{field:Ue(e.field),op:"IS_NULL"}}}else if(e.op==="!="){if(Wu(e.value))return{unaryFilter:{field:Ue(e.field),op:"IS_NOT_NAN"}};if(Qu(e.value))return{unaryFilter:{field:Ue(e.field),op:"IS_NOT_NULL"}}}return{fieldFilter:{field:Ue(e.field),op:Od(e.op),value:e.value}}})(n):n instanceof xt?(function(e){let r=e.getFilters().map((i=>vl(i)));return r.length===1?r[0]:{compositeFilter:{op:Fd(e.op),filters:r}}})(n):O(54877,{filter:n})}function Ld(n){let t=[];return n.fields.forEach((e=>t.push(e.canonicalString()))),{fieldPaths:t}}function Al(n){return n.length>=4&&n.get(0)==="projects"&&n.get(2)==="databases"}var Gn=class n{constructor(t,e,r,i,o=F.min(),u=F.min(),l=gt.EMPTY_BYTE_STRING,h=null){this.target=t,this.targetId=e,this.purpose=r,this.sequenceNumber=i,this.snapshotVersion=o,this.lastLimboFreeSnapshotVersion=u,this.resumeToken=l,this.expectedCount=h}withSequenceNumber(t){return new n(this.target,this.targetId,this.purpose,t,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,this.expectedCount)}withResumeToken(t,e){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,e,this.lastLimboFreeSnapshotVersion,t,null)}withExpectedCount(t){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,t)}withLastLimboFreeSnapshotVersion(t){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,t,this.resumeToken,this.expectedCount)}};var Bi=class{constructor(t){this.yt=t}};function qd(n){let t=Nd({parent:n.parent,structuredQuery:n.structuredQuery});return n.limitType==="LAST"?Or(t,t.limit,"L"):t}var Kr=class{constructor(){}Dt(t,e){this.Ct(t,e),e.vt()}Ct(t,e){if("nullValue"in t)this.Ft(e,5);else if("booleanValue"in t)this.Ft(e,10),e.Mt(t.booleanValue?1:0);else if("integerValue"in t)this.Ft(e,15),e.Mt(J(t.integerValue));else if("doubleValue"in t){let r=J(t.doubleValue);isNaN(r)?this.Ft(e,13):(this.Ft(e,15),qn(r)?e.Mt(0):e.Mt(r))}else if("timestampValue"in t){let r=t.timestampValue;this.Ft(e,20),typeof r=="string"&&(r=Qt(r)),e.xt(`${r.seconds||""}`),e.Mt(r.nanos||0)}else if("stringValue"in t)this.Ot(t.stringValue,e),this.Nt(e);else if("bytesValue"in t)this.Ft(e,30),e.Bt(Wt(t.bytesValue)),this.Nt(e);else if("referenceValue"in t)this.Lt(t.referenceValue,e);else if("geoPointValue"in t){let r=t.geoPointValue;this.Ft(e,45),e.Mt(r.latitude||0),e.Mt(r.longitude||0)}else"mapValue"in t?Jc(t)?this.Ft(e,Number.MAX_SAFE_INTEGER):Hc(t)?this.kt(t.mapValue,e):(this.qt(t.mapValue,e),this.Nt(e)):"arrayValue"in t?(this.Qt(t.arrayValue,e),this.Nt(e)):O(19022,{$t:t})}Ot(t,e){this.Ft(e,25),this.Ut(t,e)}Ut(t,e){e.xt(t)}qt(t,e){let r=t.fields||{};this.Ft(e,55);for(let i of Object.keys(r))this.Ot(i,e),this.Ct(r[i],e)}kt(t,e){let r=t.fields||{};this.Ft(e,53);let i=We,o=r[i].arrayValue?.values?.length||0;this.Ft(e,15),e.Mt(J(o)),this.Ot(i,e),this.Ct(r[i],e)}Qt(t,e){let r=t.values||[];this.Ft(e,50);for(let i of r)this.Ct(i,e)}Lt(t,e){this.Ft(e,37),M.fromName(t).path.forEach((r=>{this.Ft(e,60),this.Ut(r,e)}))}Ft(t,e){t.Mt(e)}Nt(t){t.Mt(2)}};Kr.Kt=new Kr;var ji=class{constructor(){this.Cn=new Gi}addToCollectionParentIndex(t,e){return this.Cn.add(e),P.resolve()}getCollectionParents(t,e){return P.resolve(this.Cn.getEntries(e))}addFieldIndex(t,e){return P.resolve()}deleteFieldIndex(t,e){return P.resolve()}deleteAllFieldIndexes(t){return P.resolve()}createTargetIndexes(t,e){return P.resolve()}getDocumentsMatchingTarget(t,e){return P.resolve(null)}getIndexType(t,e){return P.resolve(0)}getFieldIndexes(t,e){return P.resolve([])}getNextCollectionGroupToUpdate(t){return P.resolve(null)}getMinOffset(t,e){return P.resolve(Ee.min())}getMinOffsetFromCollectionGroup(t,e){return P.resolve(Ee.min())}updateCollectionGroup(t,e,r){return P.resolve()}updateIndexEntries(t,e){return P.resolve()}},Gi=class{constructor(){this.index={}}add(t){let e=t.lastSegment(),r=t.popLast(),i=this.index[e]||new it(W.comparator),o=!i.has(r);return this.index[e]=i.add(r),o}has(t){let e=t.lastSegment(),r=t.popLast(),i=this.index[e];return i&&i.has(r)}getEntries(t){return(this.index[t]||new it(W.comparator)).toArray()}};var rm=new Uint8Array(0);var ac={didRun:!1,sequenceNumbersCollected:0,targetsRemoved:0,documentsRemoved:0},Sl=41943040,bt=class n{static withCacheSize(t){return new n(t,n.DEFAULT_COLLECTION_PERCENTILE,n.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT)}constructor(t,e,r){this.cacheSizeCollectionThreshold=t,this.percentileToCollect=e,this.maximumSequenceNumbersToCollect=r}};bt.DEFAULT_COLLECTION_PERCENTILE=10,bt.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT=1e3,bt.DEFAULT=new bt(Sl,bt.DEFAULT_COLLECTION_PERCENTILE,bt.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT),bt.DISABLED=new bt(-1,0,0);var zn=class n{constructor(t){this.ar=t}next(){return this.ar+=2,this.ar}static ur(){return new n(0)}static cr(){return new n(-1)}};var uc="LruGarbageCollector",bl=1048576;function cc([n,t],[e,r]){let i=q(n,e);return i===0?q(t,r):i}var zi=class{constructor(t){this.Ir=t,this.buffer=new it(cc),this.Er=0}dr(){return++this.Er}Ar(t){let e=[t,this.dr()];if(this.buffer.size<this.Ir)this.buffer=this.buffer.add(e);else{let r=this.buffer.last();cc(e,r)<0&&(this.buffer=this.buffer.delete(r).add(e))}}get maxValue(){return this.buffer.last()[0]}},Ki=class{constructor(t,e,r){this.garbageCollector=t,this.asyncQueue=e,this.localStore=r,this.Rr=null}start(){this.garbageCollector.params.cacheSizeCollectionThreshold!==-1&&this.Vr(6e4)}stop(){this.Rr&&(this.Rr.cancel(),this.Rr=null)}get started(){return this.Rr!==null}Vr(t){N(uc,`Garbage collection scheduled in ${t}ms`),this.Rr=this.asyncQueue.enqueueAfterDelay("lru_garbage_collection",t,(async()=>{this.Rr=null;try{await this.localStore.collectGarbage(this.garbageCollector)}catch(e){on(e)?N(uc,"Ignoring IndexedDB error during garbage collection: ",e):await sn(e)}await this.Vr(3e5)}))}},$i=class{constructor(t,e){this.mr=t,this.params=e}calculateTargetCount(t,e){return this.mr.gr(t).next((r=>Math.floor(e/100*r)))}nthSequenceNumber(t,e){if(e===0)return P.resolve(Qe.ce);let r=new zi(e);return this.mr.forEachTarget(t,(i=>r.Ar(i.sequenceNumber))).next((()=>this.mr.pr(t,(i=>r.Ar(i))))).next((()=>r.maxValue))}removeTargets(t,e,r){return this.mr.removeTargets(t,e,r)}removeOrphanedDocuments(t,e){return this.mr.removeOrphanedDocuments(t,e)}collect(t,e){return this.params.cacheSizeCollectionThreshold===-1?(N("LruGarbageCollector","Garbage collection skipped; disabled"),P.resolve(ac)):this.getCacheSize(t).next((r=>r<this.params.cacheSizeCollectionThreshold?(N("LruGarbageCollector",`Garbage collection skipped; Cache size ${r} is lower than threshold ${this.params.cacheSizeCollectionThreshold}`),ac):this.yr(t,e)))}getCacheSize(t){return this.mr.getCacheSize(t)}yr(t,e){let r,i,o,u,l,h,f,m=Date.now();return this.calculateTargetCount(t,this.params.percentileToCollect).next((T=>(T>this.params.maximumSequenceNumbersToCollect?(N("LruGarbageCollector",`Capping sequence numbers to collect down to the maximum of ${this.params.maximumSequenceNumbersToCollect} from ${T}`),i=this.params.maximumSequenceNumbersToCollect):i=T,u=Date.now(),this.nthSequenceNumber(t,i)))).next((T=>(r=T,l=Date.now(),this.removeTargets(t,r,e)))).next((T=>(o=T,h=Date.now(),this.removeOrphanedDocuments(t,r)))).next((T=>(f=Date.now(),Le()<=kt.DEBUG&&N("LruGarbageCollector",`LRU Garbage Collection
|
|
13
13
|
Counted targets in ${u-m}ms
|
|
14
14
|
Determined least recently used ${i} in `+(l-u)+`ms
|
|
15
15
|
Removed ${o} targets in `+(h-l)+`ms
|
|
16
16
|
Removed ${T} documents in `+(f-h)+`ms
|
|
17
|
-
Total Duration: ${f-m}ms`),P.resolve({didRun:!0,sequenceNumbersCollected:i,targetsRemoved:o,documentsRemoved:T}))))}};function Ud(n,t){return new Ki(n,t)}var $i=class{constructor(){this.changes=new Ht((t=>t.toString()),((t,e)=>t.isEqual(e))),this.changesApplied=!1}addEntry(t){this.assertNotApplied(),this.changes.set(t.key,t)}removeEntry(t,e){this.assertNotApplied(),this.changes.set(t,St.newInvalidDocument(t).setReadTime(e))}getEntry(t,e){this.assertNotApplied();let r=this.changes.get(e);return r!==void 0?P.resolve(r):this.getFromCache(t,e)}getEntries(t,e){return this.getAllFromCache(t,e)}apply(t){return this.assertNotApplied(),this.changesApplied=!0,this.applyChanges(t)}assertNotApplied(){}};var Qi=class{constructor(t,e){this.overlayedDocument=t,this.mutatedFields=e}};var Wi=class{constructor(t,e,r,i){this.remoteDocumentCache=t,this.mutationQueue=e,this.documentOverlayCache=r,this.indexManager=i}getDocument(t,e){let r=null;return this.documentOverlayCache.getOverlay(t,e).next((i=>(r=i,this.remoteDocumentCache.getEntry(t,e)))).next((i=>(r!==null&&kn(r.mutation,i,Rt.empty(),rt.now()),i)))}getDocuments(t,e){return this.remoteDocumentCache.getEntries(t,e).next((r=>this.getLocalViewOfDocuments(t,r,U()).next((()=>r))))}getLocalViewOfDocuments(t,e,r=U()){let i=_e();return this.populateOverlays(t,i,e).next((()=>this.computeViews(t,e,i,r).next((o=>{let u=xn();return o.forEach(((l,h)=>{u=u.insert(l,h.overlayedDocument)})),u}))))}getOverlayedDocuments(t,e){let r=_e();return this.populateOverlays(t,r,e).next((()=>this.computeViews(t,e,r,U())))}populateOverlays(t,e,r){let i=[];return r.forEach((o=>{e.has(o)||i.push(o)})),this.documentOverlayCache.getOverlays(t,i).next((o=>{o.forEach(((u,l)=>{e.set(u,l)}))}))}computeViews(t,e,r,i){let o=Jt(),u=Nn(),l=(function(){return Nn()})();return e.forEach(((h,f)=>{let m=r.get(f.key);i.has(f.key)&&(m===void 0||m.mutation instanceof qt)?o=o.insert(f.key,f):m!==void 0?(u.set(f.key,m.mutation.getFieldMask()),kn(m.mutation,f,m.mutation.getFieldMask(),rt.now())):u.set(f.key,Rt.empty())})),this.recalculateAndSaveOverlays(t,o).next((h=>(h.forEach(((f,m)=>u.set(f,m))),e.forEach(((f,m)=>l.set(f,new Qi(m,u.get(f)??null)))),l)))}recalculateAndSaveOverlays(t,e){let r=Nn(),i=new Y(((u,l)=>u-l)),o=U();return this.mutationQueue.getAllMutationBatchesAffectingDocumentKeys(t,e).next((u=>{for(let l of u)l.keys().forEach((h=>{let f=e.get(h);if(f===null)return;let m=r.get(h)||Rt.empty();m=l.applyToLocalView(f,m),r.set(h,m);let T=(i.get(l.batchId)||U()).add(h);i=i.insert(l.batchId,T)}))})).next((()=>{let u=[],l=i.getReverseIterator();for(;l.hasNext();){let h=l.getNext(),f=h.key,m=h.value,T=al();m.forEach((A=>{if(!o.has(A)){let R=fl(e.get(A),r.get(A));R!==null&&T.set(A,R),o=o.add(A)}})),u.push(this.documentOverlayCache.saveOverlays(t,f,T))}return P.waitFor(u)})).next((()=>r))}recalculateAndSaveOverlaysForDocumentKeys(t,e){return this.remoteDocumentCache.getEntries(t,e).next((r=>this.recalculateAndSaveOverlays(t,r)))}getDocumentsMatchingQuery(t,e,r,i){return(function(u){return M.isDocumentKey(u.path)&&u.collectionGroup===null&&u.filters.length===0})(e)?this.getDocumentsMatchingDocumentQuery(t,e.path):na(e)?this.getDocumentsMatchingCollectionGroupQuery(t,e,r,i):this.getDocumentsMatchingCollectionQuery(t,e,r,i)}getNextDocuments(t,e,r,i){return this.remoteDocumentCache.getAllFromCollectionGroup(t,e,r,i).next((o=>{let u=i-o.size>0?this.documentOverlayCache.getOverlaysForCollectionGroup(t,e,r.largestBatchId,i-o.size):P.resolve(_e()),l=Ln,h=o;return u.next((f=>P.forEach(f,((m,T)=>(l<T.largestBatchId&&(l=T.largestBatchId),o.get(m)?P.resolve():this.remoteDocumentCache.getEntry(t,m).next((A=>{h=h.insert(m,A)}))))).next((()=>this.populateOverlays(t,f,o))).next((()=>this.computeViews(t,h,f,U()))).next((m=>({batchId:l,changes:ol(m)})))))}))}getDocumentsMatchingDocumentQuery(t,e){return this.getDocument(t,new M(e)).next((r=>{let i=xn();return r.isFoundDocument()&&(i=i.insert(r.key,r)),i}))}getDocumentsMatchingCollectionGroupQuery(t,e,r,i){let o=e.collectionGroup,u=xn();return this.indexManager.getCollectionParents(t,o).next((l=>P.forEach(l,(h=>{let f=(function(T,A){return new Lt(A,null,T.explicitOrderBy.slice(),T.filters.slice(),T.limit,T.limitType,T.startAt,T.endAt)})(e,h.child(o));return this.getDocumentsMatchingCollectionQuery(t,f,r,i).next((m=>{m.forEach(((T,A)=>{u=u.insert(T,A)}))}))})).next((()=>u))))}getDocumentsMatchingCollectionQuery(t,e,r,i){let o;return this.documentOverlayCache.getOverlaysForCollection(t,e.path,r.largestBatchId).next((u=>(o=u,this.remoteDocumentCache.getDocumentsMatchingQuery(t,e,r,o,i)))).next((u=>{o.forEach(((h,f)=>{let m=f.getKey();u.get(m)===null&&(u=u.insert(m,St.newInvalidDocument(m)))}));let l=xn();return u.forEach(((h,f)=>{let m=o.get(h);m!==void 0&&kn(m.mutation,f,Rt.empty(),rt.now()),ps(e,f)&&(l=l.insert(h,f))})),l}))}};var Hi=class{constructor(t){this.serializer=t,this.Lr=new Map,this.kr=new Map}getBundleMetadata(t,e){return P.resolve(this.Lr.get(e))}saveBundleMetadata(t,e){return this.Lr.set(e.id,(function(i){return{id:i.id,version:i.version,createTime:At(i.createTime)}})(e)),P.resolve()}getNamedQuery(t,e){return P.resolve(this.kr.get(e))}saveNamedQuery(t,e){return this.kr.set(e.name,(function(i){return{name:i.name,query:qd(i.bundledQuery),readTime:At(i.readTime)}})(e)),P.resolve()}};var Ji=class{constructor(){this.overlays=new Y(M.comparator),this.qr=new Map}getOverlay(t,e){return P.resolve(this.overlays.get(e))}getOverlays(t,e){let r=_e();return P.forEach(e,(i=>this.getOverlay(t,i).next((o=>{o!==null&&r.set(i,o)})))).next((()=>r))}saveOverlays(t,e,r){return r.forEach(((i,o)=>{this.St(t,e,o)})),P.resolve()}removeOverlaysForBatchId(t,e,r){let i=this.qr.get(r);return i!==void 0&&(i.forEach((o=>this.overlays=this.overlays.remove(o))),this.qr.delete(r)),P.resolve()}getOverlaysForCollection(t,e,r){let i=_e(),o=e.length+1,u=new M(e.child("")),l=this.overlays.getIteratorFrom(u);for(;l.hasNext();){let h=l.getNext().value,f=h.getKey();if(!e.isPrefixOf(f.path))break;f.path.length===o&&h.largestBatchId>r&&i.set(h.getKey(),h)}return P.resolve(i)}getOverlaysForCollectionGroup(t,e,r,i){let o=new Y(((f,m)=>f-m)),u=this.overlays.getIterator();for(;u.hasNext();){let f=u.getNext().value;if(f.getKey().getCollectionGroup()===e&&f.largestBatchId>r){let m=o.get(f.largestBatchId);m===null&&(m=_e(),o=o.insert(f.largestBatchId,m)),m.set(f.getKey(),f)}}let l=_e(),h=o.getIterator();for(;h.hasNext()&&(h.getNext().value.forEach(((f,m)=>l.set(f,m))),!(l.size()>=i)););return P.resolve(l)}St(t,e,r){let i=this.overlays.get(r.key);if(i!==null){let u=this.qr.get(i.largestBatchId).delete(r.key);this.qr.set(i.largestBatchId,u)}this.overlays=this.overlays.insert(r.key,new Di(e,r));let o=this.qr.get(e);o===void 0&&(o=U(),this.qr.set(e,o)),this.qr.set(e,o.add(r.key))}};var Xi=class{constructor(){this.sessionToken=gt.EMPTY_BYTE_STRING}getSessionToken(t){return P.resolve(this.sessionToken)}setSessionToken(t,e){return this.sessionToken=e,P.resolve()}};var Kn=class{constructor(){this.Qr=new it(tt.$r),this.Ur=new it(tt.Kr)}isEmpty(){return this.Qr.isEmpty()}addReference(t,e){let r=new tt(t,e);this.Qr=this.Qr.add(r),this.Ur=this.Ur.add(r)}Wr(t,e){t.forEach((r=>this.addReference(r,e)))}removeReference(t,e){this.Gr(new tt(t,e))}zr(t,e){t.forEach((r=>this.removeReference(r,e)))}jr(t){let e=new M(new W([])),r=new tt(e,t),i=new tt(e,t+1),o=[];return this.Ur.forEachInRange([r,i],(u=>{this.Gr(u),o.push(u.key)})),o}Jr(){this.Qr.forEach((t=>this.Gr(t)))}Gr(t){this.Qr=this.Qr.delete(t),this.Ur=this.Ur.delete(t)}Hr(t){let e=new M(new W([])),r=new tt(e,t),i=new tt(e,t+1),o=U();return this.Ur.forEachInRange([r,i],(u=>{o=o.add(u.key)})),o}containsKey(t){let e=new tt(t,0),r=this.Qr.firstAfterOrEqual(e);return r!==null&&t.isEqual(r.key)}},tt=class{constructor(t,e){this.key=t,this.Yr=e}static $r(t,e){return M.comparator(t.key,e.key)||q(t.Yr,e.Yr)}static Kr(t,e){return q(t.Yr,e.Yr)||M.comparator(t.key,e.key)}};var Yi=class{constructor(t,e){this.indexManager=t,this.referenceDelegate=e,this.mutationQueue=[],this.tr=1,this.Zr=new it(tt.$r)}checkEmpty(t){return P.resolve(this.mutationQueue.length===0)}addMutationBatch(t,e,r,i){let o=this.tr;this.tr++,this.mutationQueue.length>0&&this.mutationQueue[this.mutationQueue.length-1];let u=new Ci(o,e,r,i);this.mutationQueue.push(u);for(let l of i)this.Zr=this.Zr.add(new tt(l.key,o)),this.indexManager.addToCollectionParentIndex(t,l.key.path.popLast());return P.resolve(u)}lookupMutationBatch(t,e){return P.resolve(this.Xr(e))}getNextMutationBatchAfterBatchId(t,e){let r=e+1,i=this.ei(r),o=i<0?0:i;return P.resolve(this.mutationQueue.length>o?this.mutationQueue[o]:null)}getHighestUnacknowledgedBatchId(){return P.resolve(this.mutationQueue.length===0?Jo:this.tr-1)}getAllMutationBatches(t){return P.resolve(this.mutationQueue.slice())}getAllMutationBatchesAffectingDocumentKey(t,e){let r=new tt(e,0),i=new tt(e,Number.POSITIVE_INFINITY),o=[];return this.Zr.forEachInRange([r,i],(u=>{let l=this.Xr(u.Yr);o.push(l)})),P.resolve(o)}getAllMutationBatchesAffectingDocumentKeys(t,e){let r=new it(q);return e.forEach((i=>{let o=new tt(i,0),u=new tt(i,Number.POSITIVE_INFINITY);this.Zr.forEachInRange([o,u],(l=>{r=r.add(l.Yr)}))})),P.resolve(this.ti(r))}getAllMutationBatchesAffectingQuery(t,e){let r=e.path,i=r.length+1,o=r;M.isDocumentKey(o)||(o=o.child(""));let u=new tt(new M(o),0),l=new it(q);return this.Zr.forEachWhile((h=>{let f=h.key.path;return!!r.isPrefixOf(f)&&(f.length===i&&(l=l.add(h.Yr)),!0)}),u),P.resolve(this.ti(l))}ti(t){let e=[];return t.forEach((r=>{let i=this.Xr(r);i!==null&&e.push(i)})),e}removeMutationBatch(t,e){j(this.ni(e.batchId,"removed")===0,55003),this.mutationQueue.shift();let r=this.Zr;return P.forEach(e.mutations,(i=>{let o=new tt(i.key,e.batchId);return r=r.delete(o),this.referenceDelegate.markPotentiallyOrphaned(t,i.key)})).next((()=>{this.Zr=r}))}ir(t){}containsKey(t,e){let r=new tt(e,0),i=this.Zr.firstAfterOrEqual(r);return P.resolve(e.isEqual(i&&i.key))}performConsistencyCheck(t){return this.mutationQueue.length,P.resolve()}ni(t,e){return this.ei(t)}ei(t){return this.mutationQueue.length===0?0:t-this.mutationQueue[0].batchId}Xr(t){let e=this.ei(t);return e<0||e>=this.mutationQueue.length?null:this.mutationQueue[e]}};var Zi=class{constructor(t){this.ri=t,this.docs=(function(){return new Y(M.comparator)})(),this.size=0}setIndexManager(t){this.indexManager=t}addEntry(t,e){let r=e.key,i=this.docs.get(r),o=i?i.size:0,u=this.ri(e);return this.docs=this.docs.insert(r,{document:e.mutableCopy(),size:u}),this.size+=u-o,this.indexManager.addToCollectionParentIndex(t,r.path.popLast())}removeEntry(t){let e=this.docs.get(t);e&&(this.docs=this.docs.remove(t),this.size-=e.size)}getEntry(t,e){let r=this.docs.get(e);return P.resolve(r?r.document.mutableCopy():St.newInvalidDocument(e))}getEntries(t,e){let r=Jt();return e.forEach((i=>{let o=this.docs.get(i);r=r.insert(i,o?o.document.mutableCopy():St.newInvalidDocument(i))})),P.resolve(r)}getDocumentsMatchingQuery(t,e,r,i){let o=Jt(),u=e.path,l=new M(u.child("__id-9223372036854775808__")),h=this.docs.getIteratorFrom(l);for(;h.hasNext();){let{key:f,value:{document:m}}=h.getNext();if(!u.isPrefixOf(f.path))break;f.path.length>u.length+1||Uh(qh(m),r)<=0||(i.has(m.key)||ps(e,m))&&(o=o.insert(m.key,m.mutableCopy()))}return P.resolve(o)}getAllFromCollectionGroup(t,e,r,i){O(9500)}ii(t,e){return P.forEach(this.docs,(r=>e(r)))}newChangeBuffer(t){return new to(this)}getSize(t){return P.resolve(this.size)}},to=class extends $i{constructor(t){super(),this.Nr=t}applyChanges(t){let e=[];return this.changes.forEach(((r,i)=>{i.isValidDocument()?e.push(this.Nr.addEntry(t,i)):this.Nr.removeEntry(r)})),P.waitFor(e)}getFromCache(t,e){return this.Nr.getEntry(t,e)}getAllFromCache(t,e){return this.Nr.getEntries(t,e)}};var eo=class{constructor(t){this.persistence=t,this.si=new Ht((e=>ta(e)),ea),this.lastRemoteSnapshotVersion=F.min(),this.highestTargetId=0,this.oi=0,this._i=new Kn,this.targetCount=0,this.ai=zn.ur()}forEachTarget(t,e){return this.si.forEach(((r,i)=>e(i))),P.resolve()}getLastRemoteSnapshotVersion(t){return P.resolve(this.lastRemoteSnapshotVersion)}getHighestSequenceNumber(t){return P.resolve(this.oi)}allocateTargetId(t){return this.highestTargetId=this.ai.next(),P.resolve(this.highestTargetId)}setTargetsMetadata(t,e,r){return r&&(this.lastRemoteSnapshotVersion=r),e>this.oi&&(this.oi=e),P.resolve()}Pr(t){this.si.set(t.target,t);let e=t.targetId;e>this.highestTargetId&&(this.ai=new zn(e),this.highestTargetId=e),t.sequenceNumber>this.oi&&(this.oi=t.sequenceNumber)}addTargetData(t,e){return this.Pr(e),this.targetCount+=1,P.resolve()}updateTargetData(t,e){return this.Pr(e),P.resolve()}removeTargetData(t,e){return this.si.delete(e.target),this._i.jr(e.targetId),this.targetCount-=1,P.resolve()}removeTargets(t,e,r){let i=0,o=[];return this.si.forEach(((u,l)=>{l.sequenceNumber<=e&&r.get(l.targetId)===null&&(this.si.delete(u),o.push(this.removeMatchingKeysForTargetId(t,l.targetId)),i++)})),P.waitFor(o).next((()=>i))}getTargetCount(t){return P.resolve(this.targetCount)}getTargetData(t,e){let r=this.si.get(e)||null;return P.resolve(r)}addMatchingKeys(t,e,r){return this._i.Wr(e,r),P.resolve()}removeMatchingKeys(t,e,r){this._i.zr(e,r);let i=this.persistence.referenceDelegate,o=[];return i&&e.forEach((u=>{o.push(i.markPotentiallyOrphaned(t,u))})),P.waitFor(o)}removeMatchingKeysForTargetId(t,e){return this._i.jr(e),P.resolve()}getMatchingKeysForTargetId(t,e){let r=this._i.Hr(e);return P.resolve(r)}containsKey(t,e){return P.resolve(this._i.containsKey(e))}};var $r=class{constructor(t,e){this.ui={},this.overlays={},this.ci=new $e(0),this.li=!1,this.li=!0,this.hi=new Xi,this.referenceDelegate=t(this),this.Pi=new eo(this),this.indexManager=new Bi,this.remoteDocumentCache=(function(i){return new Zi(i)})((r=>this.referenceDelegate.Ti(r))),this.serializer=new Ui(e),this.Ii=new Hi(this.serializer)}start(){return Promise.resolve()}shutdown(){return this.li=!1,Promise.resolve()}get started(){return this.li}setDatabaseDeletedListener(){}setNetworkEnabled(){}getIndexManager(t){return this.indexManager}getDocumentOverlayCache(t){let e=this.overlays[t.toKey()];return e||(e=new Ji,this.overlays[t.toKey()]=e),e}getMutationQueue(t,e){let r=this.ui[t.toKey()];return r||(r=new Yi(e,this.referenceDelegate),this.ui[t.toKey()]=r),r}getGlobalsCache(){return this.hi}getTargetCache(){return this.Pi}getRemoteDocumentCache(){return this.remoteDocumentCache}getBundleCache(){return this.Ii}runTransaction(t,e,r){N("MemoryPersistence","Starting transaction:",t);let i=new no(this.ci.next());return this.referenceDelegate.Ei(),r(i).next((o=>this.referenceDelegate.di(i).next((()=>o)))).toPromise().then((o=>(i.raiseOnCommittedEvent(),o)))}Ai(t,e){return P.or(Object.values(this.ui).map((r=>()=>r.containsKey(t,e))))}},no=class extends mi{constructor(t){super(),this.currentSequenceNumber=t}},ro=class n{constructor(t){this.persistence=t,this.Ri=new Kn,this.Vi=null}static mi(t){return new n(t)}get fi(){if(this.Vi)return this.Vi;throw O(60996)}addReference(t,e,r){return this.Ri.addReference(r,e),this.fi.delete(r.toString()),P.resolve()}removeReference(t,e,r){return this.Ri.removeReference(r,e),this.fi.add(r.toString()),P.resolve()}markPotentiallyOrphaned(t,e){return this.fi.add(e.toString()),P.resolve()}removeTarget(t,e){this.Ri.jr(e.targetId).forEach((i=>this.fi.add(i.toString())));let r=this.persistence.getTargetCache();return r.getMatchingKeysForTargetId(t,e.targetId).next((i=>{i.forEach((o=>this.fi.add(o.toString())))})).next((()=>r.removeTargetData(t,e)))}Ei(){this.Vi=new Set}di(t){let e=this.persistence.getRemoteDocumentCache().newChangeBuffer();return P.forEach(this.fi,(r=>{let i=M.fromPath(r);return this.gi(t,i).next((o=>{o||e.removeEntry(i,F.min())}))})).next((()=>(this.Vi=null,e.apply(t))))}updateLimboDocument(t,e){return this.gi(t,e).next((r=>{r?this.fi.delete(e.toString()):this.fi.add(e.toString())}))}Ti(t){return 0}gi(t,e){return P.or([()=>P.resolve(this.Ri.containsKey(e)),()=>this.persistence.getTargetCache().containsKey(t,e),()=>this.persistence.Ai(t,e)])}},Qr=class n{constructor(t,e){this.persistence=t,this.pi=new Ht((r=>zh(r.path)),((r,i)=>r.isEqual(i))),this.garbageCollector=Ud(this,e)}static mi(t,e){return new n(t,e)}Ei(){}di(t){return P.resolve()}forEachTarget(t,e){return this.persistence.getTargetCache().forEachTarget(t,e)}gr(t){let e=this.wr(t);return this.persistence.getTargetCache().getTargetCount(t).next((r=>e.next((i=>r+i))))}wr(t){let e=0;return this.pr(t,(r=>{e++})).next((()=>e))}pr(t,e){return P.forEach(this.pi,((r,i)=>this.br(t,r,i).next((o=>o?P.resolve():e(i)))))}removeTargets(t,e,r){return this.persistence.getTargetCache().removeTargets(t,e,r)}removeOrphanedDocuments(t,e){let r=0,i=this.persistence.getRemoteDocumentCache(),o=i.newChangeBuffer();return i.ii(t,(u=>this.br(t,u,e).next((l=>{l||(r++,o.removeEntry(u,F.min()))})))).next((()=>o.apply(t))).next((()=>r))}markPotentiallyOrphaned(t,e){return this.pi.set(e,t.currentSequenceNumber),P.resolve()}removeTarget(t,e){let r=e.withSequenceNumber(t.currentSequenceNumber);return this.persistence.getTargetCache().updateTargetData(t,r)}addReference(t,e,r){return this.pi.set(r,t.currentSequenceNumber),P.resolve()}removeReference(t,e,r){return this.pi.set(r,t.currentSequenceNumber),P.resolve()}updateLimboDocument(t,e){return this.pi.set(e,t.currentSequenceNumber),P.resolve()}Ti(t){let e=t.key.toString().length;return t.isFoundDocument()&&(e+=Sr(t.data.value)),e}br(t,e,r){return P.or([()=>this.persistence.Ai(t,e),()=>this.persistence.getTargetCache().containsKey(t,e),()=>{let i=this.pi.get(e);return P.resolve(i!==void 0&&i>r)}])}getCacheSize(t){return this.persistence.getRemoteDocumentCache().getSize(t)}};var so=class n{constructor(t,e,r,i){this.targetId=t,this.fromCache=e,this.Es=r,this.ds=i}static As(t,e){let r=U(),i=U();for(let o of e.docChanges)switch(o.type){case 0:r=r.add(o.doc.key);break;case 1:i=i.add(o.doc.key)}return new n(t,e.fromCache,r,i)}};var io=class{constructor(){this._documentReadCount=0}get documentReadCount(){return this._documentReadCount}incrementDocumentReadCount(t){this._documentReadCount+=t}};var oo=class{constructor(){this.Rs=!1,this.Vs=!1,this.fs=100,this.gs=(function(){return Ru()?8:jh(bu())>0?6:4})()}initialize(t,e){this.ps=t,this.indexManager=e,this.Rs=!0}getDocumentsMatchingQuery(t,e,r,i){let o={result:null};return this.ys(t,e).next((u=>{o.result=u})).next((()=>{if(!o.result)return this.ws(t,e,i,r).next((u=>{o.result=u}))})).next((()=>{if(o.result)return;let u=new io;return this.Ss(t,e,u).next((l=>{if(o.result=l,this.Vs)return this.bs(t,e,u,l.size)}))})).next((()=>o.result))}bs(t,e,r,i){return r.documentReadCount<this.fs?(Fe()<=kt.DEBUG&&N("QueryEngine","SDK will not create cache indexes for query:",Le(e),"since it only creates cache indexes for collection contains","more than or equal to",this.fs,"documents"),P.resolve()):(Fe()<=kt.DEBUG&&N("QueryEngine","Query:",Le(e),"scans",r.documentReadCount,"local documents and returns",i,"documents as results."),r.documentReadCount>this.gs*i?(Fe()<=kt.DEBUG&&N("QueryEngine","The SDK decides to create cache indexes for query:",Le(e),"as using cache indexes may help improve performance."),this.indexManager.createTargetIndexes(t,Ot(e))):P.resolve())}ys(t,e){if(Yu(e))return P.resolve(null);let r=Ot(e);return this.indexManager.getIndexType(t,r).next((i=>i===0?null:(e.limit!==null&&i===1&&(e=Or(e,null,"F"),r=Ot(e)),this.indexManager.getDocumentsMatchingTarget(t,r).next((o=>{let u=U(...o);return this.ps.getDocuments(t,u).next((l=>this.indexManager.getMinOffset(t,r).next((h=>{let f=this.Ds(e,l);return this.Cs(e,f,u,h.readTime)?this.ys(t,Or(e,null,"F")):this.vs(t,f,e,h)}))))})))))}ws(t,e,r,i){return Yu(e)||i.isEqual(F.min())?P.resolve(null):this.ps.getDocuments(t,r).next((o=>{let u=this.Ds(e,o);return this.Cs(e,u,r,i)?P.resolve(null):(Fe()<=kt.DEBUG&&N("QueryEngine","Re-using previous result from %s to execute query: %s",i.toString(),Le(e)),this.vs(t,u,e,Lh(i,Ln)).next((l=>l)))}))}Ds(t,e){let r=new it(sl(t));return e.forEach(((i,o)=>{ps(t,o)&&(r=r.add(o))})),r}Cs(t,e,r,i){if(t.limit===null)return!1;if(r.size!==e.size)return!0;let o=t.limitType==="F"?e.last():e.first();return!!o&&(o.hasPendingWrites||o.version.compareTo(i)>0)}Ss(t,e,r){return Fe()<=kt.DEBUG&&N("QueryEngine","Using full collection scan to execute query:",Le(e)),this.ps.getDocumentsMatchingQuery(t,e,Ee.min(),r)}vs(t,e,r,i){return this.ps.getDocumentsMatchingQuery(t,r,i).next((o=>(e.forEach((u=>{o=o.insert(u.key,u)})),o)))}};var ia="LocalStore",Bd=3e8,ao=class{constructor(t,e,r,i){this.persistence=t,this.Fs=e,this.serializer=i,this.Ms=new Y(q),this.xs=new Ht((o=>ta(o)),ea),this.Os=new Map,this.Ns=t.getRemoteDocumentCache(),this.Pi=t.getTargetCache(),this.Ii=t.getBundleCache(),this.Bs(r)}Bs(t){this.documentOverlayCache=this.persistence.getDocumentOverlayCache(t),this.indexManager=this.persistence.getIndexManager(t),this.mutationQueue=this.persistence.getMutationQueue(t,this.indexManager),this.localDocuments=new Wi(this.Ns,this.mutationQueue,this.documentOverlayCache,this.indexManager),this.Ns.setIndexManager(this.indexManager),this.Fs.initialize(this.localDocuments,this.indexManager)}collectGarbage(t){return this.persistence.runTransaction("Collect garbage","readwrite-primary",(e=>t.collect(e,this.Ms)))}};function jd(n,t,e,r){return new ao(n,t,e,r)}async function Rl(n,t){let e=L(n);return await e.persistence.runTransaction("Handle user change","readonly",(r=>{let i;return e.mutationQueue.getAllMutationBatches(r).next((o=>(i=o,e.Bs(t),e.mutationQueue.getAllMutationBatches(r)))).next((o=>{let u=[],l=[],h=U();for(let f of i){u.push(f.batchId);for(let m of f.mutations)h=h.add(m.key)}for(let f of o){l.push(f.batchId);for(let m of f.mutations)h=h.add(m.key)}return e.localDocuments.getDocuments(r,h).next((f=>({Ls:f,removedBatchIds:u,addedBatchIds:l})))}))}))}function Gd(n,t){let e=L(n);return e.persistence.runTransaction("Acknowledge batch","readwrite-primary",(r=>{let i=t.batch.keys(),o=e.Ns.newChangeBuffer({trackRemovals:!0});return(function(l,h,f,m){let T=f.batch,A=T.keys(),R=P.resolve();return A.forEach((D=>{R=R.next((()=>m.getEntry(h,D))).next((k=>{let C=f.docVersions.get(D);j(C!==null,48541),k.version.compareTo(C)<0&&(T.applyToRemoteDocument(k,f),k.isValidDocument()&&(k.setReadTime(f.commitVersion),m.addEntry(k)))}))})),R.next((()=>l.mutationQueue.removeMutationBatch(h,T)))})(e,r,t,o).next((()=>o.apply(r))).next((()=>e.mutationQueue.performConsistencyCheck(r))).next((()=>e.documentOverlayCache.removeOverlaysForBatchId(r,i,t.batch.batchId))).next((()=>e.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(r,(function(l){let h=U();for(let f=0;f<l.mutationResults.length;++f)l.mutationResults[f].transformResults.length>0&&(h=h.add(l.batch.mutations[f].key));return h})(t)))).next((()=>e.localDocuments.getDocuments(r,i)))}))}function Pl(n){let t=L(n);return t.persistence.runTransaction("Get last remote snapshot version","readonly",(e=>t.Pi.getLastRemoteSnapshotVersion(e)))}function zd(n,t){let e=L(n),r=t.snapshotVersion,i=e.Ms;return e.persistence.runTransaction("Apply remote event","readwrite-primary",(o=>{let u=e.Ns.newChangeBuffer({trackRemovals:!0});i=e.Ms;let l=[];t.targetChanges.forEach(((m,T)=>{let A=i.get(T);if(!A)return;l.push(e.Pi.removeMatchingKeys(o,m.removedDocuments,T).next((()=>e.Pi.addMatchingKeys(o,m.addedDocuments,T))));let R=A.withSequenceNumber(o.currentSequenceNumber);t.targetMismatches.get(T)!==null?R=R.withResumeToken(gt.EMPTY_BYTE_STRING,F.min()).withLastLimboFreeSnapshotVersion(F.min()):m.resumeToken.approximateByteSize()>0&&(R=R.withResumeToken(m.resumeToken,r)),i=i.insert(T,R),(function(k,C,G){return k.resumeToken.approximateByteSize()===0||C.snapshotVersion.toMicroseconds()-k.snapshotVersion.toMicroseconds()>=Bd?!0:G.addedDocuments.size+G.modifiedDocuments.size+G.removedDocuments.size>0})(A,R,m)&&l.push(e.Pi.updateTargetData(o,R))}));let h=Jt(),f=U();if(t.documentUpdates.forEach((m=>{t.resolvedLimboDocuments.has(m)&&l.push(e.persistence.referenceDelegate.updateLimboDocument(o,m))})),l.push(Kd(o,u,t.documentUpdates).next((m=>{h=m.ks,f=m.qs}))),!r.isEqual(F.min())){let m=e.Pi.getLastRemoteSnapshotVersion(o).next((T=>e.Pi.setTargetsMetadata(o,o.currentSequenceNumber,r)));l.push(m)}return P.waitFor(l).next((()=>u.apply(o))).next((()=>e.localDocuments.getLocalViewOfDocuments(o,h,f))).next((()=>h))})).then((o=>(e.Ms=i,o)))}function Kd(n,t,e){let r=U(),i=U();return e.forEach((o=>r=r.add(o))),t.getEntries(n,r).next((o=>{let u=Jt();return e.forEach(((l,h)=>{let f=o.get(l);h.isFoundDocument()!==f.isFoundDocument()&&(i=i.add(l)),h.isNoDocument()&&h.version.isEqual(F.min())?(t.removeEntry(l,h.readTime),u=u.insert(l,h)):!f.isValidDocument()||h.version.compareTo(f.version)>0||h.version.compareTo(f.version)===0&&f.hasPendingWrites?(t.addEntry(h),u=u.insert(l,h)):N(ia,"Ignoring outdated watch update for ",l,". Current version:",f.version," Watch version:",h.version)})),{ks:u,qs:i}}))}function $d(n,t){let e=L(n);return e.persistence.runTransaction("Get next mutation batch","readonly",(r=>(t===void 0&&(t=Jo),e.mutationQueue.getNextMutationBatchAfterBatchId(r,t))))}function Qd(n,t){let e=L(n);return e.persistence.runTransaction("Allocate target","readwrite",(r=>{let i;return e.Pi.getTargetData(r,t).next((o=>o?(i=o,P.resolve(i)):e.Pi.allocateTargetId(r).next((u=>(i=new Gn(t,u,"TargetPurposeListen",r.currentSequenceNumber),e.Pi.addTargetData(r,i).next((()=>i)))))))})).then((r=>{let i=e.Ms.get(r.targetId);return(i===null||r.snapshotVersion.compareTo(i.snapshotVersion)>0)&&(e.Ms=e.Ms.insert(r.targetId,r),e.xs.set(t,r.targetId)),r}))}async function uo(n,t,e){let r=L(n),i=r.Ms.get(t),o=e?"readwrite":"readwrite-primary";try{e||await r.persistence.runTransaction("Release target",o,(u=>r.persistence.referenceDelegate.removeTarget(u,i)))}catch(u){if(!on(u))throw u;N(ia,`Failed to update sequence numbers for target ${t}: ${u}`)}r.Ms=r.Ms.remove(t),r.xs.delete(i.target)}function lc(n,t,e){let r=L(n),i=F.min(),o=U();return r.persistence.runTransaction("Execute query","readwrite",(u=>(function(h,f,m){let T=L(h),A=T.xs.get(m);return A!==void 0?P.resolve(T.Ms.get(A)):T.Pi.getTargetData(f,m)})(r,u,Ot(t)).next((l=>{if(l)return i=l.lastLimboFreeSnapshotVersion,r.Pi.getMatchingKeysForTargetId(u,l.targetId).next((h=>{o=h}))})).next((()=>r.Fs.getDocumentsMatchingQuery(u,t,e?i:F.min(),e?o:U()))).next((l=>(Wd(r,ad(t),l),{documents:l,Qs:o})))))}function Wd(n,t,e){let r=n.Os.get(t)||F.min();e.forEach(((i,o)=>{o.readTime.compareTo(r)>0&&(r=o.readTime)})),n.Os.set(t,r)}var Wr=class{constructor(){this.activeTargetIds=fd()}zs(t){this.activeTargetIds=this.activeTargetIds.add(t)}js(t){this.activeTargetIds=this.activeTargetIds.delete(t)}Gs(){let t={activeTargetIds:this.activeTargetIds.toArray(),updateTimeMs:Date.now()};return JSON.stringify(t)}};var co=class{constructor(){this.Mo=new Wr,this.xo={},this.onlineStateHandler=null,this.sequenceNumberHandler=null}addPendingMutation(t){}updateMutationState(t,e,r){}addLocalQueryTarget(t,e=!0){return e&&this.Mo.zs(t),this.xo[t]||"not-current"}updateQueryState(t,e,r){this.xo[t]=e}removeLocalQueryTarget(t){this.Mo.js(t)}isLocalQueryTarget(t){return this.Mo.activeTargetIds.has(t)}clearQueryState(t){delete this.xo[t]}getAllActiveQueryTargets(){return this.Mo.activeTargetIds}isActiveQueryTarget(t){return this.Mo.activeTargetIds.has(t)}start(){return this.Mo=new Wr,Promise.resolve()}handleUserChange(t,e,r){}setOnlineState(t){}shutdown(){}writeSequenceNumber(t){}notifyBundleLoaded(t){}};var lo=class{Oo(t){}shutdown(){}};var hc="ConnectivityMonitor",Hr=class{constructor(){this.No=()=>this.Bo(),this.Lo=()=>this.ko(),this.qo=[],this.Qo()}Oo(t){this.qo.push(t)}shutdown(){window.removeEventListener("online",this.No),window.removeEventListener("offline",this.Lo)}Qo(){window.addEventListener("online",this.No),window.addEventListener("offline",this.Lo)}Bo(){N(hc,"Network connectivity changed: AVAILABLE");for(let t of this.qo)t(0)}ko(){N(hc,"Network connectivity changed: UNAVAILABLE");for(let t of this.qo)t(1)}static v(){return typeof window<"u"&&window.addEventListener!==void 0&&window.removeEventListener!==void 0}};var Ar=null;function ho(){return Ar===null?Ar=(function(){return 268435456+Math.round(2147483648*Math.random())})():Ar++,"0x"+Ar.toString(16)}var ni="RestConnection",Hd={BatchGetDocuments:"batchGet",Commit:"commit",RunQuery:"runQuery",RunAggregationQuery:"runAggregationQuery"},fo=class{get $o(){return!1}constructor(t){this.databaseInfo=t,this.databaseId=t.databaseId;let e=t.ssl?"https":"http",r=encodeURIComponent(this.databaseId.projectId),i=encodeURIComponent(this.databaseId.database);this.Uo=e+"://"+t.host,this.Ko=`projects/${r}/databases/${i}`,this.Wo=this.databaseId.database===Dr?`project_id=${r}`:`project_id=${r}&database_id=${i}`}Go(t,e,r,i,o){let u=ho(),l=this.zo(t,e.toUriEncodedString());N(ni,`Sending RPC '${t}' ${u}:`,l,r);let h={"google-cloud-resource-prefix":this.Ko,"x-goog-request-params":this.Wo};this.jo(h,i,o);let{host:f}=new URL(l),m=$s(f);return this.Jo(t,l,h,r,m).then((T=>(N(ni,`Received RPC '${t}' ${u}: `,T),T)),(T=>{throw On(ni,`RPC '${t}' ${u} failed with error: `,T,"url: ",l,"request:",r),T}))}Ho(t,e,r,i,o,u){return this.Go(t,e,r,i,o)}jo(t,e,r){t["X-Goog-Api-Client"]=(function(){return"gl-js/ fire/"+rn})(),t["Content-Type"]="text/plain",this.databaseInfo.appId&&(t["X-Firebase-GMPID"]=this.databaseInfo.appId),e&&e.headers.forEach(((i,o)=>t[o]=i)),r&&r.headers.forEach(((i,o)=>t[o]=i))}zo(t,e){let r=Hd[t];return`${this.Uo}/v1/${e}:${r}`}terminate(){}};var mo=class{constructor(t){this.Yo=t.Yo,this.Zo=t.Zo}Xo(t){this.e_=t}t_(t){this.n_=t}r_(t){this.i_=t}onMessage(t){this.s_=t}close(){this.Zo()}send(t){this.Yo(t)}o_(){this.e_()}__(){this.n_()}a_(t){this.i_(t)}u_(t){this.s_(t)}};var dt="WebChannelConnection",go=class extends fo{constructor(t){super(t),this.c_=[],this.forceLongPolling=t.forceLongPolling,this.autoDetectLongPolling=t.autoDetectLongPolling,this.useFetchStreams=t.useFetchStreams,this.longPollingOptions=t.longPollingOptions}Jo(t,e,r,i,o){let u=ho();return new Promise(((l,h)=>{let f=new Js;f.setWithCredentials(!0),f.listenOnce(Xs.COMPLETE,(()=>{try{switch(f.getLastErrorCode()){case Cn.NO_ERROR:let T=f.getResponseJson();N(dt,`XHR for RPC '${t}' ${u} received:`,JSON.stringify(T)),l(T);break;case Cn.TIMEOUT:N(dt,`RPC '${t}' ${u} timed out`),h(new V(b.DEADLINE_EXCEEDED,"Request time out"));break;case Cn.HTTP_ERROR:let A=f.getStatus();if(N(dt,`RPC '${t}' ${u} failed with status:`,A,"response text:",f.getResponseText()),A>0){let R=f.getResponseJson();Array.isArray(R)&&(R=R[0]);let D=R?.error;if(D&&D.status&&D.message){let k=(function(G){let K=G.toLowerCase().replace(/_/g,"-");return Object.values(b).indexOf(K)>=0?K:b.UNKNOWN})(D.status);h(new V(k,D.message))}else h(new V(b.UNKNOWN,"Server responded with status "+f.getStatus()))}else h(new V(b.UNAVAILABLE,"Connection failed."));break;default:O(9055,{l_:t,streamId:u,h_:f.getLastErrorCode(),P_:f.getLastError()})}}finally{N(dt,`RPC '${t}' ${u} completed.`)}}));let m=JSON.stringify(i);N(dt,`RPC '${t}' ${u} sending request:`,i),f.send(e,"POST",m,r,15)}))}T_(t,e,r){let i=ho(),o=[this.Uo,"/","google.firestore.v1.Firestore","/",t,"/channel"],u=ti(),l=Zs(),h={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},f=this.longPollingOptions.timeoutSeconds;f!==void 0&&(h.longPollingTimeout=Math.round(1e3*f)),this.useFetchStreams&&(h.useFetchStreams=!0),this.jo(h.initMessageHeaders,e,r),h.encodeInitMessageHeaders=!0;let m=o.join("");N(dt,`Creating RPC '${t}' stream ${i}: ${m}`,h);let T=u.createWebChannel(m,h);this.I_(T);let A=!1,R=!1,D=new mo({Yo:C=>{R?N(dt,`Not sending because RPC '${t}' stream ${i} is closed:`,C):(A||(N(dt,`Opening RPC '${t}' stream ${i} transport.`),T.open(),A=!0),N(dt,`RPC '${t}' stream ${i} sending:`,C),T.send(C))},Zo:()=>T.close()}),k=(C,G,K)=>{C.listen(G,($=>{try{K($)}catch(pt){setTimeout((()=>{throw pt}),0)}}))};return k(T,Oe.EventType.OPEN,(()=>{R||(N(dt,`RPC '${t}' stream ${i} transport opened.`),D.o_())})),k(T,Oe.EventType.CLOSE,(()=>{R||(R=!0,N(dt,`RPC '${t}' stream ${i} transport closed`),D.a_(),this.E_(T))})),k(T,Oe.EventType.ERROR,(C=>{R||(R=!0,On(dt,`RPC '${t}' stream ${i} transport errored. Name:`,C.name,"Message:",C.message),D.a_(new V(b.UNAVAILABLE,"The operation could not be completed")))})),k(T,Oe.EventType.MESSAGE,(C=>{if(!R){let G=C.data[0];j(!!G,16349);let K=G,$=K?.error||K[0]?.error;if($){N(dt,`RPC '${t}' stream ${i} received error:`,$);let pt=$.status,Nt=(function(g){let y=Z[g];if(y!==void 0)return pl(y)})(pt),at=$.message;Nt===void 0&&(Nt=b.INTERNAL,at="Unknown error status: "+pt+" with message "+$.message),R=!0,D.a_(new V(Nt,at)),T.close()}else N(dt,`RPC '${t}' stream ${i} received:`,G),D.u_(G)}})),k(l,Ys.STAT_EVENT,(C=>{C.stat===Ir.PROXY?N(dt,`RPC '${t}' stream ${i} detected buffering proxy`):C.stat===Ir.NOPROXY&&N(dt,`RPC '${t}' stream ${i} detected no buffering proxy`)})),setTimeout((()=>{D.__()}),0),D}terminate(){this.c_.forEach((t=>t.close())),this.c_=[]}I_(t){this.c_.push(t)}E_(t){this.c_=this.c_.filter((e=>e===t))}};function ri(){return typeof document<"u"?document:null}function ys(n){return new Oi(n,!0)}var $n=class{constructor(t,e,r=1e3,i=1.5,o=6e4){this.Mi=t,this.timerId=e,this.d_=r,this.A_=i,this.R_=o,this.V_=0,this.m_=null,this.f_=Date.now(),this.reset()}reset(){this.V_=0}g_(){this.V_=this.R_}p_(t){this.cancel();let e=Math.floor(this.V_+this.y_()),r=Math.max(0,Date.now()-this.f_),i=Math.max(0,e-r);i>0&&N("ExponentialBackoff",`Backing off for ${i} ms (base delay: ${this.V_} ms, delay with jitter: ${e} ms, last attempt: ${r} ms ago)`),this.m_=this.Mi.enqueueAfterDelay(this.timerId,i,(()=>(this.f_=Date.now(),t()))),this.V_*=this.A_,this.V_<this.d_&&(this.V_=this.d_),this.V_>this.R_&&(this.V_=this.R_)}w_(){this.m_!==null&&(this.m_.skipDelay(),this.m_=null)}cancel(){this.m_!==null&&(this.m_.cancel(),this.m_=null)}y_(){return(Math.random()-.5)*this.V_}};var dc="PersistentStream",Jr=class{constructor(t,e,r,i,o,u,l,h){this.Mi=t,this.S_=r,this.b_=i,this.connection=o,this.authCredentialsProvider=u,this.appCheckCredentialsProvider=l,this.listener=h,this.state=0,this.D_=0,this.C_=null,this.v_=null,this.stream=null,this.F_=0,this.M_=new $n(t,e)}x_(){return this.state===1||this.state===5||this.O_()}O_(){return this.state===2||this.state===3}start(){this.F_=0,this.state!==4?this.auth():this.N_()}async stop(){this.x_()&&await this.close(0)}B_(){this.state=0,this.M_.reset()}L_(){this.O_()&&this.C_===null&&(this.C_=this.Mi.enqueueAfterDelay(this.S_,6e4,(()=>this.k_())))}q_(t){this.Q_(),this.stream.send(t)}async k_(){if(this.O_())return this.close(0)}Q_(){this.C_&&(this.C_.cancel(),this.C_=null)}U_(){this.v_&&(this.v_.cancel(),this.v_=null)}async close(t,e){this.Q_(),this.U_(),this.M_.cancel(),this.D_++,t!==4?this.M_.reset():e&&e.code===b.RESOURCE_EXHAUSTED?($t(e.toString()),$t("Using maximum backoff delay to prevent overloading the backend."),this.M_.g_()):e&&e.code===b.UNAUTHENTICATED&&this.state!==3&&(this.authCredentialsProvider.invalidateToken(),this.appCheckCredentialsProvider.invalidateToken()),this.stream!==null&&(this.K_(),this.stream.close(),this.stream=null),this.state=t,await this.listener.r_(e)}K_(){}auth(){this.state=1;let t=this.W_(this.D_),e=this.D_;Promise.all([this.authCredentialsProvider.getToken(),this.appCheckCredentialsProvider.getToken()]).then((([r,i])=>{this.D_===e&&this.G_(r,i)}),(r=>{t((()=>{let i=new V(b.UNKNOWN,"Fetching auth token failed: "+r.message);return this.z_(i)}))}))}G_(t,e){let r=this.W_(this.D_);this.stream=this.j_(t,e),this.stream.Xo((()=>{r((()=>this.listener.Xo()))})),this.stream.t_((()=>{r((()=>(this.state=2,this.v_=this.Mi.enqueueAfterDelay(this.b_,1e4,(()=>(this.O_()&&(this.state=3),Promise.resolve()))),this.listener.t_())))})),this.stream.r_((i=>{r((()=>this.z_(i)))})),this.stream.onMessage((i=>{r((()=>++this.F_==1?this.J_(i):this.onNext(i)))}))}N_(){this.state=5,this.M_.p_((async()=>{this.state=0,this.start()}))}z_(t){return N(dc,`close with error: ${t}`),this.stream=null,this.close(4,t)}W_(t){return e=>{this.Mi.enqueueAndForget((()=>this.D_===t?e():(N(dc,"stream callback skipped by getCloseGuardedDispatcher."),Promise.resolve())))}}},po=class extends Jr{constructor(t,e,r,i,o,u){super(t,"listen_stream_connection_backoff","listen_stream_idle","health_check_timeout",e,r,i,u),this.serializer=o}j_(t,e){return this.connection.T_("Listen",t,e)}J_(t){return this.onNext(t)}onNext(t){this.M_.reset();let e=Vd(this.serializer,t),r=(function(o){if(!("targetChange"in o))return F.min();let u=o.targetChange;return u.targetIds&&u.targetIds.length?F.min():u.readTime?At(u.readTime):F.min()})(t);return this.listener.H_(e,r)}Y_(t){let e={};e.database=qi(this.serializer),e.addTarget=(function(o,u){let l,h=u.target;if(l=Ri(h)?{documents:xd(o,h)}:{query:Dd(o,h).ft},l.targetId=u.targetId,u.resumeToken.approximateByteSize()>0){l.resumeToken=yl(o,u.resumeToken);let f=Fi(o,u.expectedCount);f!==null&&(l.expectedCount=f)}else if(u.snapshotVersion.compareTo(F.min())>0){l.readTime=Gr(o,u.snapshotVersion.toTimestamp());let f=Fi(o,u.expectedCount);f!==null&&(l.expectedCount=f)}return l})(this.serializer,t);let r=kd(this.serializer,t);r&&(e.labels=r),this.q_(e)}Z_(t){let e={};e.database=qi(this.serializer),e.removeTarget=t,this.q_(e)}},yo=class extends Jr{constructor(t,e,r,i,o,u){super(t,"write_stream_connection_backoff","write_stream_idle","health_check_timeout",e,r,i,u),this.serializer=o}get X_(){return this.F_>0}start(){this.lastStreamToken=void 0,super.start()}K_(){this.X_&&this.ea([])}j_(t,e){return this.connection.T_("Write",t,e)}J_(t){return j(!!t.streamToken,31322),this.lastStreamToken=t.streamToken,j(!t.writeResults||t.writeResults.length===0,55816),this.listener.ta()}onNext(t){j(!!t.streamToken,12678),this.lastStreamToken=t.streamToken,this.M_.reset();let e=Cd(t.writeResults,t.commitTime),r=At(t.commitTime);return this.listener.na(r,e)}ra(){let t={};t.database=qi(this.serializer),this.q_(t)}ea(t){let e={streamToken:this.lastStreamToken,writes:t.map((r=>Il(this.serializer,r)))};this.q_(e)}};var _o=class{},wo=class extends _o{constructor(t,e,r,i){super(),this.authCredentials=t,this.appCheckCredentials=e,this.connection=r,this.serializer=i,this.ia=!1}sa(){if(this.ia)throw new V(b.FAILED_PRECONDITION,"The client has already been terminated.")}Go(t,e,r,i){return this.sa(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then((([o,u])=>this.connection.Go(t,Li(e,r),i,o,u))).catch((o=>{throw o.name==="FirebaseError"?(o.code===b.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),o):new V(b.UNKNOWN,o.toString())}))}Ho(t,e,r,i,o){return this.sa(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then((([u,l])=>this.connection.Ho(t,Li(e,r),i,u,l,o))).catch((u=>{throw u.name==="FirebaseError"?(u.code===b.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),u):new V(b.UNKNOWN,u.toString())}))}terminate(){this.ia=!0,this.connection.terminate()}},To=class{constructor(t,e){this.asyncQueue=t,this.onlineStateHandler=e,this.state="Unknown",this.oa=0,this._a=null,this.aa=!0}ua(){this.oa===0&&(this.ca("Unknown"),this._a=this.asyncQueue.enqueueAfterDelay("online_state_timeout",1e4,(()=>(this._a=null,this.la("Backend didn't respond within 10 seconds."),this.ca("Offline"),Promise.resolve()))))}ha(t){this.state==="Online"?this.ca("Unknown"):(this.oa++,this.oa>=1&&(this.Pa(),this.la(`Connection failed 1 times. Most recent error: ${t.toString()}`),this.ca("Offline")))}set(t){this.Pa(),this.oa=0,t==="Online"&&(this.aa=!1),this.ca(t)}ca(t){t!==this.state&&(this.state=t,this.onlineStateHandler(t))}la(t){let e=`Could not reach Cloud Firestore backend. ${t}
|
|
18
|
-
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.aa?($t(e),this.aa=!1):N("OnlineStateTracker",e)}Pa(){this._a!==null&&(this._a.cancel(),this._a=null)}};var
|
|
17
|
+
Total Duration: ${f-m}ms`),P.resolve({didRun:!0,sequenceNumbersCollected:i,targetsRemoved:o,documentsRemoved:T}))))}};function Ud(n,t){return new $i(n,t)}var Qi=class{constructor(){this.changes=new Ht((t=>t.toString()),((t,e)=>t.isEqual(e))),this.changesApplied=!1}addEntry(t){this.assertNotApplied(),this.changes.set(t.key,t)}removeEntry(t,e){this.assertNotApplied(),this.changes.set(t,St.newInvalidDocument(t).setReadTime(e))}getEntry(t,e){this.assertNotApplied();let r=this.changes.get(e);return r!==void 0?P.resolve(r):this.getFromCache(t,e)}getEntries(t,e){return this.getAllFromCache(t,e)}apply(t){return this.assertNotApplied(),this.changesApplied=!0,this.applyChanges(t)}assertNotApplied(){}};var Wi=class{constructor(t,e){this.overlayedDocument=t,this.mutatedFields=e}};var Hi=class{constructor(t,e,r,i){this.remoteDocumentCache=t,this.mutationQueue=e,this.documentOverlayCache=r,this.indexManager=i}getDocument(t,e){let r=null;return this.documentOverlayCache.getOverlay(t,e).next((i=>(r=i,this.remoteDocumentCache.getEntry(t,e)))).next((i=>(r!==null&&kn(r.mutation,i,Rt.empty(),rt.now()),i)))}getDocuments(t,e){return this.remoteDocumentCache.getEntries(t,e).next((r=>this.getLocalViewOfDocuments(t,r,U()).next((()=>r))))}getLocalViewOfDocuments(t,e,r=U()){let i=_e();return this.populateOverlays(t,i,e).next((()=>this.computeViews(t,e,i,r).next((o=>{let u=xn();return o.forEach(((l,h)=>{u=u.insert(l,h.overlayedDocument)})),u}))))}getOverlayedDocuments(t,e){let r=_e();return this.populateOverlays(t,r,e).next((()=>this.computeViews(t,e,r,U())))}populateOverlays(t,e,r){let i=[];return r.forEach((o=>{e.has(o)||i.push(o)})),this.documentOverlayCache.getOverlays(t,i).next((o=>{o.forEach(((u,l)=>{e.set(u,l)}))}))}computeViews(t,e,r,i){let o=Jt(),u=Nn(),l=(function(){return Nn()})();return e.forEach(((h,f)=>{let m=r.get(f.key);i.has(f.key)&&(m===void 0||m.mutation instanceof qt)?o=o.insert(f.key,f):m!==void 0?(u.set(f.key,m.mutation.getFieldMask()),kn(m.mutation,f,m.mutation.getFieldMask(),rt.now())):u.set(f.key,Rt.empty())})),this.recalculateAndSaveOverlays(t,o).next((h=>(h.forEach(((f,m)=>u.set(f,m))),e.forEach(((f,m)=>l.set(f,new Wi(m,u.get(f)??null)))),l)))}recalculateAndSaveOverlays(t,e){let r=Nn(),i=new Y(((u,l)=>u-l)),o=U();return this.mutationQueue.getAllMutationBatchesAffectingDocumentKeys(t,e).next((u=>{for(let l of u)l.keys().forEach((h=>{let f=e.get(h);if(f===null)return;let m=r.get(h)||Rt.empty();m=l.applyToLocalView(f,m),r.set(h,m);let T=(i.get(l.batchId)||U()).add(h);i=i.insert(l.batchId,T)}))})).next((()=>{let u=[],l=i.getReverseIterator();for(;l.hasNext();){let h=l.getNext(),f=h.key,m=h.value,T=al();m.forEach((A=>{if(!o.has(A)){let R=fl(e.get(A),r.get(A));R!==null&&T.set(A,R),o=o.add(A)}})),u.push(this.documentOverlayCache.saveOverlays(t,f,T))}return P.waitFor(u)})).next((()=>r))}recalculateAndSaveOverlaysForDocumentKeys(t,e){return this.remoteDocumentCache.getEntries(t,e).next((r=>this.recalculateAndSaveOverlays(t,r)))}getDocumentsMatchingQuery(t,e,r,i){return(function(u){return M.isDocumentKey(u.path)&&u.collectionGroup===null&&u.filters.length===0})(e)?this.getDocumentsMatchingDocumentQuery(t,e.path):ra(e)?this.getDocumentsMatchingCollectionGroupQuery(t,e,r,i):this.getDocumentsMatchingCollectionQuery(t,e,r,i)}getNextDocuments(t,e,r,i){return this.remoteDocumentCache.getAllFromCollectionGroup(t,e,r,i).next((o=>{let u=i-o.size>0?this.documentOverlayCache.getOverlaysForCollectionGroup(t,e,r.largestBatchId,i-o.size):P.resolve(_e()),l=Ln,h=o;return u.next((f=>P.forEach(f,((m,T)=>(l<T.largestBatchId&&(l=T.largestBatchId),o.get(m)?P.resolve():this.remoteDocumentCache.getEntry(t,m).next((A=>{h=h.insert(m,A)}))))).next((()=>this.populateOverlays(t,f,o))).next((()=>this.computeViews(t,h,f,U()))).next((m=>({batchId:l,changes:ol(m)})))))}))}getDocumentsMatchingDocumentQuery(t,e){return this.getDocument(t,new M(e)).next((r=>{let i=xn();return r.isFoundDocument()&&(i=i.insert(r.key,r)),i}))}getDocumentsMatchingCollectionGroupQuery(t,e,r,i){let o=e.collectionGroup,u=xn();return this.indexManager.getCollectionParents(t,o).next((l=>P.forEach(l,(h=>{let f=(function(T,A){return new Lt(A,null,T.explicitOrderBy.slice(),T.filters.slice(),T.limit,T.limitType,T.startAt,T.endAt)})(e,h.child(o));return this.getDocumentsMatchingCollectionQuery(t,f,r,i).next((m=>{m.forEach(((T,A)=>{u=u.insert(T,A)}))}))})).next((()=>u))))}getDocumentsMatchingCollectionQuery(t,e,r,i){let o;return this.documentOverlayCache.getOverlaysForCollection(t,e.path,r.largestBatchId).next((u=>(o=u,this.remoteDocumentCache.getDocumentsMatchingQuery(t,e,r,o,i)))).next((u=>{o.forEach(((h,f)=>{let m=f.getKey();u.get(m)===null&&(u=u.insert(m,St.newInvalidDocument(m)))}));let l=xn();return u.forEach(((h,f)=>{let m=o.get(h);m!==void 0&&kn(m.mutation,f,Rt.empty(),rt.now()),ps(e,f)&&(l=l.insert(h,f))})),l}))}};var Ji=class{constructor(t){this.serializer=t,this.Lr=new Map,this.kr=new Map}getBundleMetadata(t,e){return P.resolve(this.Lr.get(e))}saveBundleMetadata(t,e){return this.Lr.set(e.id,(function(i){return{id:i.id,version:i.version,createTime:At(i.createTime)}})(e)),P.resolve()}getNamedQuery(t,e){return P.resolve(this.kr.get(e))}saveNamedQuery(t,e){return this.kr.set(e.name,(function(i){return{name:i.name,query:qd(i.bundledQuery),readTime:At(i.readTime)}})(e)),P.resolve()}};var Xi=class{constructor(){this.overlays=new Y(M.comparator),this.qr=new Map}getOverlay(t,e){return P.resolve(this.overlays.get(e))}getOverlays(t,e){let r=_e();return P.forEach(e,(i=>this.getOverlay(t,i).next((o=>{o!==null&&r.set(i,o)})))).next((()=>r))}saveOverlays(t,e,r){return r.forEach(((i,o)=>{this.St(t,e,o)})),P.resolve()}removeOverlaysForBatchId(t,e,r){let i=this.qr.get(r);return i!==void 0&&(i.forEach((o=>this.overlays=this.overlays.remove(o))),this.qr.delete(r)),P.resolve()}getOverlaysForCollection(t,e,r){let i=_e(),o=e.length+1,u=new M(e.child("")),l=this.overlays.getIteratorFrom(u);for(;l.hasNext();){let h=l.getNext().value,f=h.getKey();if(!e.isPrefixOf(f.path))break;f.path.length===o&&h.largestBatchId>r&&i.set(h.getKey(),h)}return P.resolve(i)}getOverlaysForCollectionGroup(t,e,r,i){let o=new Y(((f,m)=>f-m)),u=this.overlays.getIterator();for(;u.hasNext();){let f=u.getNext().value;if(f.getKey().getCollectionGroup()===e&&f.largestBatchId>r){let m=o.get(f.largestBatchId);m===null&&(m=_e(),o=o.insert(f.largestBatchId,m)),m.set(f.getKey(),f)}}let l=_e(),h=o.getIterator();for(;h.hasNext()&&(h.getNext().value.forEach(((f,m)=>l.set(f,m))),!(l.size()>=i)););return P.resolve(l)}St(t,e,r){let i=this.overlays.get(r.key);if(i!==null){let u=this.qr.get(i.largestBatchId).delete(r.key);this.qr.set(i.largestBatchId,u)}this.overlays=this.overlays.insert(r.key,new Ni(e,r));let o=this.qr.get(e);o===void 0&&(o=U(),this.qr.set(e,o)),this.qr.set(e,o.add(r.key))}};var Yi=class{constructor(){this.sessionToken=gt.EMPTY_BYTE_STRING}getSessionToken(t){return P.resolve(this.sessionToken)}setSessionToken(t,e){return this.sessionToken=e,P.resolve()}};var Kn=class{constructor(){this.Qr=new it(tt.$r),this.Ur=new it(tt.Kr)}isEmpty(){return this.Qr.isEmpty()}addReference(t,e){let r=new tt(t,e);this.Qr=this.Qr.add(r),this.Ur=this.Ur.add(r)}Wr(t,e){t.forEach((r=>this.addReference(r,e)))}removeReference(t,e){this.Gr(new tt(t,e))}zr(t,e){t.forEach((r=>this.removeReference(r,e)))}jr(t){let e=new M(new W([])),r=new tt(e,t),i=new tt(e,t+1),o=[];return this.Ur.forEachInRange([r,i],(u=>{this.Gr(u),o.push(u.key)})),o}Jr(){this.Qr.forEach((t=>this.Gr(t)))}Gr(t){this.Qr=this.Qr.delete(t),this.Ur=this.Ur.delete(t)}Hr(t){let e=new M(new W([])),r=new tt(e,t),i=new tt(e,t+1),o=U();return this.Ur.forEachInRange([r,i],(u=>{o=o.add(u.key)})),o}containsKey(t){let e=new tt(t,0),r=this.Qr.firstAfterOrEqual(e);return r!==null&&t.isEqual(r.key)}},tt=class{constructor(t,e){this.key=t,this.Yr=e}static $r(t,e){return M.comparator(t.key,e.key)||q(t.Yr,e.Yr)}static Kr(t,e){return q(t.Yr,e.Yr)||M.comparator(t.key,e.key)}};var Zi=class{constructor(t,e){this.indexManager=t,this.referenceDelegate=e,this.mutationQueue=[],this.tr=1,this.Zr=new it(tt.$r)}checkEmpty(t){return P.resolve(this.mutationQueue.length===0)}addMutationBatch(t,e,r,i){let o=this.tr;this.tr++,this.mutationQueue.length>0&&this.mutationQueue[this.mutationQueue.length-1];let u=new xi(o,e,r,i);this.mutationQueue.push(u);for(let l of i)this.Zr=this.Zr.add(new tt(l.key,o)),this.indexManager.addToCollectionParentIndex(t,l.key.path.popLast());return P.resolve(u)}lookupMutationBatch(t,e){return P.resolve(this.Xr(e))}getNextMutationBatchAfterBatchId(t,e){let r=e+1,i=this.ei(r),o=i<0?0:i;return P.resolve(this.mutationQueue.length>o?this.mutationQueue[o]:null)}getHighestUnacknowledgedBatchId(){return P.resolve(this.mutationQueue.length===0?Xo:this.tr-1)}getAllMutationBatches(t){return P.resolve(this.mutationQueue.slice())}getAllMutationBatchesAffectingDocumentKey(t,e){let r=new tt(e,0),i=new tt(e,Number.POSITIVE_INFINITY),o=[];return this.Zr.forEachInRange([r,i],(u=>{let l=this.Xr(u.Yr);o.push(l)})),P.resolve(o)}getAllMutationBatchesAffectingDocumentKeys(t,e){let r=new it(q);return e.forEach((i=>{let o=new tt(i,0),u=new tt(i,Number.POSITIVE_INFINITY);this.Zr.forEachInRange([o,u],(l=>{r=r.add(l.Yr)}))})),P.resolve(this.ti(r))}getAllMutationBatchesAffectingQuery(t,e){let r=e.path,i=r.length+1,o=r;M.isDocumentKey(o)||(o=o.child(""));let u=new tt(new M(o),0),l=new it(q);return this.Zr.forEachWhile((h=>{let f=h.key.path;return!!r.isPrefixOf(f)&&(f.length===i&&(l=l.add(h.Yr)),!0)}),u),P.resolve(this.ti(l))}ti(t){let e=[];return t.forEach((r=>{let i=this.Xr(r);i!==null&&e.push(i)})),e}removeMutationBatch(t,e){j(this.ni(e.batchId,"removed")===0,55003),this.mutationQueue.shift();let r=this.Zr;return P.forEach(e.mutations,(i=>{let o=new tt(i.key,e.batchId);return r=r.delete(o),this.referenceDelegate.markPotentiallyOrphaned(t,i.key)})).next((()=>{this.Zr=r}))}ir(t){}containsKey(t,e){let r=new tt(e,0),i=this.Zr.firstAfterOrEqual(r);return P.resolve(e.isEqual(i&&i.key))}performConsistencyCheck(t){return this.mutationQueue.length,P.resolve()}ni(t,e){return this.ei(t)}ei(t){return this.mutationQueue.length===0?0:t-this.mutationQueue[0].batchId}Xr(t){let e=this.ei(t);return e<0||e>=this.mutationQueue.length?null:this.mutationQueue[e]}};var to=class{constructor(t){this.ri=t,this.docs=(function(){return new Y(M.comparator)})(),this.size=0}setIndexManager(t){this.indexManager=t}addEntry(t,e){let r=e.key,i=this.docs.get(r),o=i?i.size:0,u=this.ri(e);return this.docs=this.docs.insert(r,{document:e.mutableCopy(),size:u}),this.size+=u-o,this.indexManager.addToCollectionParentIndex(t,r.path.popLast())}removeEntry(t){let e=this.docs.get(t);e&&(this.docs=this.docs.remove(t),this.size-=e.size)}getEntry(t,e){let r=this.docs.get(e);return P.resolve(r?r.document.mutableCopy():St.newInvalidDocument(e))}getEntries(t,e){let r=Jt();return e.forEach((i=>{let o=this.docs.get(i);r=r.insert(i,o?o.document.mutableCopy():St.newInvalidDocument(i))})),P.resolve(r)}getDocumentsMatchingQuery(t,e,r,i){let o=Jt(),u=e.path,l=new M(u.child("__id-9223372036854775808__")),h=this.docs.getIteratorFrom(l);for(;h.hasNext();){let{key:f,value:{document:m}}=h.getNext();if(!u.isPrefixOf(f.path))break;f.path.length>u.length+1||Uh(qh(m),r)<=0||(i.has(m.key)||ps(e,m))&&(o=o.insert(m.key,m.mutableCopy()))}return P.resolve(o)}getAllFromCollectionGroup(t,e,r,i){O(9500)}ii(t,e){return P.forEach(this.docs,(r=>e(r)))}newChangeBuffer(t){return new eo(this)}getSize(t){return P.resolve(this.size)}},eo=class extends Qi{constructor(t){super(),this.Nr=t}applyChanges(t){let e=[];return this.changes.forEach(((r,i)=>{i.isValidDocument()?e.push(this.Nr.addEntry(t,i)):this.Nr.removeEntry(r)})),P.waitFor(e)}getFromCache(t,e){return this.Nr.getEntry(t,e)}getAllFromCache(t,e){return this.Nr.getEntries(t,e)}};var no=class{constructor(t){this.persistence=t,this.si=new Ht((e=>ea(e)),na),this.lastRemoteSnapshotVersion=F.min(),this.highestTargetId=0,this.oi=0,this._i=new Kn,this.targetCount=0,this.ai=zn.ur()}forEachTarget(t,e){return this.si.forEach(((r,i)=>e(i))),P.resolve()}getLastRemoteSnapshotVersion(t){return P.resolve(this.lastRemoteSnapshotVersion)}getHighestSequenceNumber(t){return P.resolve(this.oi)}allocateTargetId(t){return this.highestTargetId=this.ai.next(),P.resolve(this.highestTargetId)}setTargetsMetadata(t,e,r){return r&&(this.lastRemoteSnapshotVersion=r),e>this.oi&&(this.oi=e),P.resolve()}Pr(t){this.si.set(t.target,t);let e=t.targetId;e>this.highestTargetId&&(this.ai=new zn(e),this.highestTargetId=e),t.sequenceNumber>this.oi&&(this.oi=t.sequenceNumber)}addTargetData(t,e){return this.Pr(e),this.targetCount+=1,P.resolve()}updateTargetData(t,e){return this.Pr(e),P.resolve()}removeTargetData(t,e){return this.si.delete(e.target),this._i.jr(e.targetId),this.targetCount-=1,P.resolve()}removeTargets(t,e,r){let i=0,o=[];return this.si.forEach(((u,l)=>{l.sequenceNumber<=e&&r.get(l.targetId)===null&&(this.si.delete(u),o.push(this.removeMatchingKeysForTargetId(t,l.targetId)),i++)})),P.waitFor(o).next((()=>i))}getTargetCount(t){return P.resolve(this.targetCount)}getTargetData(t,e){let r=this.si.get(e)||null;return P.resolve(r)}addMatchingKeys(t,e,r){return this._i.Wr(e,r),P.resolve()}removeMatchingKeys(t,e,r){this._i.zr(e,r);let i=this.persistence.referenceDelegate,o=[];return i&&e.forEach((u=>{o.push(i.markPotentiallyOrphaned(t,u))})),P.waitFor(o)}removeMatchingKeysForTargetId(t,e){return this._i.jr(e),P.resolve()}getMatchingKeysForTargetId(t,e){let r=this._i.Hr(e);return P.resolve(r)}containsKey(t,e){return P.resolve(this._i.containsKey(e))}};var $r=class{constructor(t,e){this.ui={},this.overlays={},this.ci=new Qe(0),this.li=!1,this.li=!0,this.hi=new Yi,this.referenceDelegate=t(this),this.Pi=new no(this),this.indexManager=new ji,this.remoteDocumentCache=(function(i){return new to(i)})((r=>this.referenceDelegate.Ti(r))),this.serializer=new Bi(e),this.Ii=new Ji(this.serializer)}start(){return Promise.resolve()}shutdown(){return this.li=!1,Promise.resolve()}get started(){return this.li}setDatabaseDeletedListener(){}setNetworkEnabled(){}getIndexManager(t){return this.indexManager}getDocumentOverlayCache(t){let e=this.overlays[t.toKey()];return e||(e=new Xi,this.overlays[t.toKey()]=e),e}getMutationQueue(t,e){let r=this.ui[t.toKey()];return r||(r=new Zi(e,this.referenceDelegate),this.ui[t.toKey()]=r),r}getGlobalsCache(){return this.hi}getTargetCache(){return this.Pi}getRemoteDocumentCache(){return this.remoteDocumentCache}getBundleCache(){return this.Ii}runTransaction(t,e,r){N("MemoryPersistence","Starting transaction:",t);let i=new ro(this.ci.next());return this.referenceDelegate.Ei(),r(i).next((o=>this.referenceDelegate.di(i).next((()=>o)))).toPromise().then((o=>(i.raiseOnCommittedEvent(),o)))}Ai(t,e){return P.or(Object.values(this.ui).map((r=>()=>r.containsKey(t,e))))}},ro=class extends gi{constructor(t){super(),this.currentSequenceNumber=t}},so=class n{constructor(t){this.persistence=t,this.Ri=new Kn,this.Vi=null}static mi(t){return new n(t)}get fi(){if(this.Vi)return this.Vi;throw O(60996)}addReference(t,e,r){return this.Ri.addReference(r,e),this.fi.delete(r.toString()),P.resolve()}removeReference(t,e,r){return this.Ri.removeReference(r,e),this.fi.add(r.toString()),P.resolve()}markPotentiallyOrphaned(t,e){return this.fi.add(e.toString()),P.resolve()}removeTarget(t,e){this.Ri.jr(e.targetId).forEach((i=>this.fi.add(i.toString())));let r=this.persistence.getTargetCache();return r.getMatchingKeysForTargetId(t,e.targetId).next((i=>{i.forEach((o=>this.fi.add(o.toString())))})).next((()=>r.removeTargetData(t,e)))}Ei(){this.Vi=new Set}di(t){let e=this.persistence.getRemoteDocumentCache().newChangeBuffer();return P.forEach(this.fi,(r=>{let i=M.fromPath(r);return this.gi(t,i).next((o=>{o||e.removeEntry(i,F.min())}))})).next((()=>(this.Vi=null,e.apply(t))))}updateLimboDocument(t,e){return this.gi(t,e).next((r=>{r?this.fi.delete(e.toString()):this.fi.add(e.toString())}))}Ti(t){return 0}gi(t,e){return P.or([()=>P.resolve(this.Ri.containsKey(e)),()=>this.persistence.getTargetCache().containsKey(t,e),()=>this.persistence.Ai(t,e)])}},Qr=class n{constructor(t,e){this.persistence=t,this.pi=new Ht((r=>zh(r.path)),((r,i)=>r.isEqual(i))),this.garbageCollector=Ud(this,e)}static mi(t,e){return new n(t,e)}Ei(){}di(t){return P.resolve()}forEachTarget(t,e){return this.persistence.getTargetCache().forEachTarget(t,e)}gr(t){let e=this.wr(t);return this.persistence.getTargetCache().getTargetCount(t).next((r=>e.next((i=>r+i))))}wr(t){let e=0;return this.pr(t,(r=>{e++})).next((()=>e))}pr(t,e){return P.forEach(this.pi,((r,i)=>this.br(t,r,i).next((o=>o?P.resolve():e(i)))))}removeTargets(t,e,r){return this.persistence.getTargetCache().removeTargets(t,e,r)}removeOrphanedDocuments(t,e){let r=0,i=this.persistence.getRemoteDocumentCache(),o=i.newChangeBuffer();return i.ii(t,(u=>this.br(t,u,e).next((l=>{l||(r++,o.removeEntry(u,F.min()))})))).next((()=>o.apply(t))).next((()=>r))}markPotentiallyOrphaned(t,e){return this.pi.set(e,t.currentSequenceNumber),P.resolve()}removeTarget(t,e){let r=e.withSequenceNumber(t.currentSequenceNumber);return this.persistence.getTargetCache().updateTargetData(t,r)}addReference(t,e,r){return this.pi.set(r,t.currentSequenceNumber),P.resolve()}removeReference(t,e,r){return this.pi.set(r,t.currentSequenceNumber),P.resolve()}updateLimboDocument(t,e){return this.pi.set(e,t.currentSequenceNumber),P.resolve()}Ti(t){let e=t.key.toString().length;return t.isFoundDocument()&&(e+=Sr(t.data.value)),e}br(t,e,r){return P.or([()=>this.persistence.Ai(t,e),()=>this.persistence.getTargetCache().containsKey(t,e),()=>{let i=this.pi.get(e);return P.resolve(i!==void 0&&i>r)}])}getCacheSize(t){return this.persistence.getRemoteDocumentCache().getSize(t)}};var io=class n{constructor(t,e,r,i){this.targetId=t,this.fromCache=e,this.Es=r,this.ds=i}static As(t,e){let r=U(),i=U();for(let o of e.docChanges)switch(o.type){case 0:r=r.add(o.doc.key);break;case 1:i=i.add(o.doc.key)}return new n(t,e.fromCache,r,i)}};var oo=class{constructor(){this._documentReadCount=0}get documentReadCount(){return this._documentReadCount}incrementDocumentReadCount(t){this._documentReadCount+=t}};var ao=class{constructor(){this.Rs=!1,this.Vs=!1,this.fs=100,this.gs=(function(){return Ru()?8:jh(bu())>0?6:4})()}initialize(t,e){this.ps=t,this.indexManager=e,this.Rs=!0}getDocumentsMatchingQuery(t,e,r,i){let o={result:null};return this.ys(t,e).next((u=>{o.result=u})).next((()=>{if(!o.result)return this.ws(t,e,i,r).next((u=>{o.result=u}))})).next((()=>{if(o.result)return;let u=new oo;return this.Ss(t,e,u).next((l=>{if(o.result=l,this.Vs)return this.bs(t,e,u,l.size)}))})).next((()=>o.result))}bs(t,e,r,i){return r.documentReadCount<this.fs?(Le()<=kt.DEBUG&&N("QueryEngine","SDK will not create cache indexes for query:",qe(e),"since it only creates cache indexes for collection contains","more than or equal to",this.fs,"documents"),P.resolve()):(Le()<=kt.DEBUG&&N("QueryEngine","Query:",qe(e),"scans",r.documentReadCount,"local documents and returns",i,"documents as results."),r.documentReadCount>this.gs*i?(Le()<=kt.DEBUG&&N("QueryEngine","The SDK decides to create cache indexes for query:",qe(e),"as using cache indexes may help improve performance."),this.indexManager.createTargetIndexes(t,Ot(e))):P.resolve())}ys(t,e){if(Yu(e))return P.resolve(null);let r=Ot(e);return this.indexManager.getIndexType(t,r).next((i=>i===0?null:(e.limit!==null&&i===1&&(e=Or(e,null,"F"),r=Ot(e)),this.indexManager.getDocumentsMatchingTarget(t,r).next((o=>{let u=U(...o);return this.ps.getDocuments(t,u).next((l=>this.indexManager.getMinOffset(t,r).next((h=>{let f=this.Ds(e,l);return this.Cs(e,f,u,h.readTime)?this.ys(t,Or(e,null,"F")):this.vs(t,f,e,h)}))))})))))}ws(t,e,r,i){return Yu(e)||i.isEqual(F.min())?P.resolve(null):this.ps.getDocuments(t,r).next((o=>{let u=this.Ds(e,o);return this.Cs(e,u,r,i)?P.resolve(null):(Le()<=kt.DEBUG&&N("QueryEngine","Re-using previous result from %s to execute query: %s",i.toString(),qe(e)),this.vs(t,u,e,Lh(i,Ln)).next((l=>l)))}))}Ds(t,e){let r=new it(sl(t));return e.forEach(((i,o)=>{ps(t,o)&&(r=r.add(o))})),r}Cs(t,e,r,i){if(t.limit===null)return!1;if(r.size!==e.size)return!0;let o=t.limitType==="F"?e.last():e.first();return!!o&&(o.hasPendingWrites||o.version.compareTo(i)>0)}Ss(t,e,r){return Le()<=kt.DEBUG&&N("QueryEngine","Using full collection scan to execute query:",qe(e)),this.ps.getDocumentsMatchingQuery(t,e,Ee.min(),r)}vs(t,e,r,i){return this.ps.getDocumentsMatchingQuery(t,r,i).next((o=>(e.forEach((u=>{o=o.insert(u.key,u)})),o)))}};var oa="LocalStore",Bd=3e8,uo=class{constructor(t,e,r,i){this.persistence=t,this.Fs=e,this.serializer=i,this.Ms=new Y(q),this.xs=new Ht((o=>ea(o)),na),this.Os=new Map,this.Ns=t.getRemoteDocumentCache(),this.Pi=t.getTargetCache(),this.Ii=t.getBundleCache(),this.Bs(r)}Bs(t){this.documentOverlayCache=this.persistence.getDocumentOverlayCache(t),this.indexManager=this.persistence.getIndexManager(t),this.mutationQueue=this.persistence.getMutationQueue(t,this.indexManager),this.localDocuments=new Hi(this.Ns,this.mutationQueue,this.documentOverlayCache,this.indexManager),this.Ns.setIndexManager(this.indexManager),this.Fs.initialize(this.localDocuments,this.indexManager)}collectGarbage(t){return this.persistence.runTransaction("Collect garbage","readwrite-primary",(e=>t.collect(e,this.Ms)))}};function jd(n,t,e,r){return new uo(n,t,e,r)}async function Rl(n,t){let e=L(n);return await e.persistence.runTransaction("Handle user change","readonly",(r=>{let i;return e.mutationQueue.getAllMutationBatches(r).next((o=>(i=o,e.Bs(t),e.mutationQueue.getAllMutationBatches(r)))).next((o=>{let u=[],l=[],h=U();for(let f of i){u.push(f.batchId);for(let m of f.mutations)h=h.add(m.key)}for(let f of o){l.push(f.batchId);for(let m of f.mutations)h=h.add(m.key)}return e.localDocuments.getDocuments(r,h).next((f=>({Ls:f,removedBatchIds:u,addedBatchIds:l})))}))}))}function Gd(n,t){let e=L(n);return e.persistence.runTransaction("Acknowledge batch","readwrite-primary",(r=>{let i=t.batch.keys(),o=e.Ns.newChangeBuffer({trackRemovals:!0});return(function(l,h,f,m){let T=f.batch,A=T.keys(),R=P.resolve();return A.forEach((D=>{R=R.next((()=>m.getEntry(h,D))).next((k=>{let C=f.docVersions.get(D);j(C!==null,48541),k.version.compareTo(C)<0&&(T.applyToRemoteDocument(k,f),k.isValidDocument()&&(k.setReadTime(f.commitVersion),m.addEntry(k)))}))})),R.next((()=>l.mutationQueue.removeMutationBatch(h,T)))})(e,r,t,o).next((()=>o.apply(r))).next((()=>e.mutationQueue.performConsistencyCheck(r))).next((()=>e.documentOverlayCache.removeOverlaysForBatchId(r,i,t.batch.batchId))).next((()=>e.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(r,(function(l){let h=U();for(let f=0;f<l.mutationResults.length;++f)l.mutationResults[f].transformResults.length>0&&(h=h.add(l.batch.mutations[f].key));return h})(t)))).next((()=>e.localDocuments.getDocuments(r,i)))}))}function Pl(n){let t=L(n);return t.persistence.runTransaction("Get last remote snapshot version","readonly",(e=>t.Pi.getLastRemoteSnapshotVersion(e)))}function zd(n,t){let e=L(n),r=t.snapshotVersion,i=e.Ms;return e.persistence.runTransaction("Apply remote event","readwrite-primary",(o=>{let u=e.Ns.newChangeBuffer({trackRemovals:!0});i=e.Ms;let l=[];t.targetChanges.forEach(((m,T)=>{let A=i.get(T);if(!A)return;l.push(e.Pi.removeMatchingKeys(o,m.removedDocuments,T).next((()=>e.Pi.addMatchingKeys(o,m.addedDocuments,T))));let R=A.withSequenceNumber(o.currentSequenceNumber);t.targetMismatches.get(T)!==null?R=R.withResumeToken(gt.EMPTY_BYTE_STRING,F.min()).withLastLimboFreeSnapshotVersion(F.min()):m.resumeToken.approximateByteSize()>0&&(R=R.withResumeToken(m.resumeToken,r)),i=i.insert(T,R),(function(k,C,G){return k.resumeToken.approximateByteSize()===0||C.snapshotVersion.toMicroseconds()-k.snapshotVersion.toMicroseconds()>=Bd?!0:G.addedDocuments.size+G.modifiedDocuments.size+G.removedDocuments.size>0})(A,R,m)&&l.push(e.Pi.updateTargetData(o,R))}));let h=Jt(),f=U();if(t.documentUpdates.forEach((m=>{t.resolvedLimboDocuments.has(m)&&l.push(e.persistence.referenceDelegate.updateLimboDocument(o,m))})),l.push(Kd(o,u,t.documentUpdates).next((m=>{h=m.ks,f=m.qs}))),!r.isEqual(F.min())){let m=e.Pi.getLastRemoteSnapshotVersion(o).next((T=>e.Pi.setTargetsMetadata(o,o.currentSequenceNumber,r)));l.push(m)}return P.waitFor(l).next((()=>u.apply(o))).next((()=>e.localDocuments.getLocalViewOfDocuments(o,h,f))).next((()=>h))})).then((o=>(e.Ms=i,o)))}function Kd(n,t,e){let r=U(),i=U();return e.forEach((o=>r=r.add(o))),t.getEntries(n,r).next((o=>{let u=Jt();return e.forEach(((l,h)=>{let f=o.get(l);h.isFoundDocument()!==f.isFoundDocument()&&(i=i.add(l)),h.isNoDocument()&&h.version.isEqual(F.min())?(t.removeEntry(l,h.readTime),u=u.insert(l,h)):!f.isValidDocument()||h.version.compareTo(f.version)>0||h.version.compareTo(f.version)===0&&f.hasPendingWrites?(t.addEntry(h),u=u.insert(l,h)):N(oa,"Ignoring outdated watch update for ",l,". Current version:",f.version," Watch version:",h.version)})),{ks:u,qs:i}}))}function $d(n,t){let e=L(n);return e.persistence.runTransaction("Get next mutation batch","readonly",(r=>(t===void 0&&(t=Xo),e.mutationQueue.getNextMutationBatchAfterBatchId(r,t))))}function Qd(n,t){let e=L(n);return e.persistence.runTransaction("Allocate target","readwrite",(r=>{let i;return e.Pi.getTargetData(r,t).next((o=>o?(i=o,P.resolve(i)):e.Pi.allocateTargetId(r).next((u=>(i=new Gn(t,u,"TargetPurposeListen",r.currentSequenceNumber),e.Pi.addTargetData(r,i).next((()=>i)))))))})).then((r=>{let i=e.Ms.get(r.targetId);return(i===null||r.snapshotVersion.compareTo(i.snapshotVersion)>0)&&(e.Ms=e.Ms.insert(r.targetId,r),e.xs.set(t,r.targetId)),r}))}async function co(n,t,e){let r=L(n),i=r.Ms.get(t),o=e?"readwrite":"readwrite-primary";try{e||await r.persistence.runTransaction("Release target",o,(u=>r.persistence.referenceDelegate.removeTarget(u,i)))}catch(u){if(!on(u))throw u;N(oa,`Failed to update sequence numbers for target ${t}: ${u}`)}r.Ms=r.Ms.remove(t),r.xs.delete(i.target)}function lc(n,t,e){let r=L(n),i=F.min(),o=U();return r.persistence.runTransaction("Execute query","readwrite",(u=>(function(h,f,m){let T=L(h),A=T.xs.get(m);return A!==void 0?P.resolve(T.Ms.get(A)):T.Pi.getTargetData(f,m)})(r,u,Ot(t)).next((l=>{if(l)return i=l.lastLimboFreeSnapshotVersion,r.Pi.getMatchingKeysForTargetId(u,l.targetId).next((h=>{o=h}))})).next((()=>r.Fs.getDocumentsMatchingQuery(u,t,e?i:F.min(),e?o:U()))).next((l=>(Wd(r,ad(t),l),{documents:l,Qs:o})))))}function Wd(n,t,e){let r=n.Os.get(t)||F.min();e.forEach(((i,o)=>{o.readTime.compareTo(r)>0&&(r=o.readTime)})),n.Os.set(t,r)}var Wr=class{constructor(){this.activeTargetIds=fd()}zs(t){this.activeTargetIds=this.activeTargetIds.add(t)}js(t){this.activeTargetIds=this.activeTargetIds.delete(t)}Gs(){let t={activeTargetIds:this.activeTargetIds.toArray(),updateTimeMs:Date.now()};return JSON.stringify(t)}};var lo=class{constructor(){this.Mo=new Wr,this.xo={},this.onlineStateHandler=null,this.sequenceNumberHandler=null}addPendingMutation(t){}updateMutationState(t,e,r){}addLocalQueryTarget(t,e=!0){return e&&this.Mo.zs(t),this.xo[t]||"not-current"}updateQueryState(t,e,r){this.xo[t]=e}removeLocalQueryTarget(t){this.Mo.js(t)}isLocalQueryTarget(t){return this.Mo.activeTargetIds.has(t)}clearQueryState(t){delete this.xo[t]}getAllActiveQueryTargets(){return this.Mo.activeTargetIds}isActiveQueryTarget(t){return this.Mo.activeTargetIds.has(t)}start(){return this.Mo=new Wr,Promise.resolve()}handleUserChange(t,e,r){}setOnlineState(t){}shutdown(){}writeSequenceNumber(t){}notifyBundleLoaded(t){}};var ho=class{Oo(t){}shutdown(){}};var hc="ConnectivityMonitor",Hr=class{constructor(){this.No=()=>this.Bo(),this.Lo=()=>this.ko(),this.qo=[],this.Qo()}Oo(t){this.qo.push(t)}shutdown(){window.removeEventListener("online",this.No),window.removeEventListener("offline",this.Lo)}Qo(){window.addEventListener("online",this.No),window.addEventListener("offline",this.Lo)}Bo(){N(hc,"Network connectivity changed: AVAILABLE");for(let t of this.qo)t(0)}ko(){N(hc,"Network connectivity changed: UNAVAILABLE");for(let t of this.qo)t(1)}static v(){return typeof window<"u"&&window.addEventListener!==void 0&&window.removeEventListener!==void 0}};var Ar=null;function fo(){return Ar===null?Ar=(function(){return 268435456+Math.round(2147483648*Math.random())})():Ar++,"0x"+Ar.toString(16)}var ri="RestConnection",Hd={BatchGetDocuments:"batchGet",Commit:"commit",RunQuery:"runQuery",RunAggregationQuery:"runAggregationQuery"},mo=class{get $o(){return!1}constructor(t){this.databaseInfo=t,this.databaseId=t.databaseId;let e=t.ssl?"https":"http",r=encodeURIComponent(this.databaseId.projectId),i=encodeURIComponent(this.databaseId.database);this.Uo=e+"://"+t.host,this.Ko=`projects/${r}/databases/${i}`,this.Wo=this.databaseId.database===Dr?`project_id=${r}`:`project_id=${r}&database_id=${i}`}Go(t,e,r,i,o){let u=fo(),l=this.zo(t,e.toUriEncodedString());N(ri,`Sending RPC '${t}' ${u}:`,l,r);let h={"google-cloud-resource-prefix":this.Ko,"x-goog-request-params":this.Wo};this.jo(h,i,o);let{host:f}=new URL(l),m=Qs(f);return this.Jo(t,l,h,r,m).then((T=>(N(ri,`Received RPC '${t}' ${u}: `,T),T)),(T=>{throw On(ri,`RPC '${t}' ${u} failed with error: `,T,"url: ",l,"request:",r),T}))}Ho(t,e,r,i,o,u){return this.Go(t,e,r,i,o)}jo(t,e,r){t["X-Goog-Api-Client"]=(function(){return"gl-js/ fire/"+rn})(),t["Content-Type"]="text/plain",this.databaseInfo.appId&&(t["X-Firebase-GMPID"]=this.databaseInfo.appId),e&&e.headers.forEach(((i,o)=>t[o]=i)),r&&r.headers.forEach(((i,o)=>t[o]=i))}zo(t,e){let r=Hd[t];return`${this.Uo}/v1/${e}:${r}`}terminate(){}};var go=class{constructor(t){this.Yo=t.Yo,this.Zo=t.Zo}Xo(t){this.e_=t}t_(t){this.n_=t}r_(t){this.i_=t}onMessage(t){this.s_=t}close(){this.Zo()}send(t){this.Yo(t)}o_(){this.e_()}__(){this.n_()}a_(t){this.i_(t)}u_(t){this.s_(t)}};var ft="WebChannelConnection",po=class extends mo{constructor(t){super(t),this.c_=[],this.forceLongPolling=t.forceLongPolling,this.autoDetectLongPolling=t.autoDetectLongPolling,this.useFetchStreams=t.useFetchStreams,this.longPollingOptions=t.longPollingOptions}Jo(t,e,r,i,o){let u=fo();return new Promise(((l,h)=>{let f=new Xs;f.setWithCredentials(!0),f.listenOnce(Ys.COMPLETE,(()=>{try{switch(f.getLastErrorCode()){case Cn.NO_ERROR:let T=f.getResponseJson();N(ft,`XHR for RPC '${t}' ${u} received:`,JSON.stringify(T)),l(T);break;case Cn.TIMEOUT:N(ft,`RPC '${t}' ${u} timed out`),h(new V(b.DEADLINE_EXCEEDED,"Request time out"));break;case Cn.HTTP_ERROR:let A=f.getStatus();if(N(ft,`RPC '${t}' ${u} failed with status:`,A,"response text:",f.getResponseText()),A>0){let R=f.getResponseJson();Array.isArray(R)&&(R=R[0]);let D=R?.error;if(D&&D.status&&D.message){let k=(function(G){let K=G.toLowerCase().replace(/_/g,"-");return Object.values(b).indexOf(K)>=0?K:b.UNKNOWN})(D.status);h(new V(k,D.message))}else h(new V(b.UNKNOWN,"Server responded with status "+f.getStatus()))}else h(new V(b.UNAVAILABLE,"Connection failed."));break;default:O(9055,{l_:t,streamId:u,h_:f.getLastErrorCode(),P_:f.getLastError()})}}finally{N(ft,`RPC '${t}' ${u} completed.`)}}));let m=JSON.stringify(i);N(ft,`RPC '${t}' ${u} sending request:`,i),f.send(e,"POST",m,r,15)}))}T_(t,e,r){let i=fo(),o=[this.Uo,"/","google.firestore.v1.Firestore","/",t,"/channel"],u=ei(),l=ti(),h={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},f=this.longPollingOptions.timeoutSeconds;f!==void 0&&(h.longPollingTimeout=Math.round(1e3*f)),this.useFetchStreams&&(h.useFetchStreams=!0),this.jo(h.initMessageHeaders,e,r),h.encodeInitMessageHeaders=!0;let m=o.join("");N(ft,`Creating RPC '${t}' stream ${i}: ${m}`,h);let T=u.createWebChannel(m,h);this.I_(T);let A=!1,R=!1,D=new go({Yo:C=>{R?N(ft,`Not sending because RPC '${t}' stream ${i} is closed:`,C):(A||(N(ft,`Opening RPC '${t}' stream ${i} transport.`),T.open(),A=!0),N(ft,`RPC '${t}' stream ${i} sending:`,C),T.send(C))},Zo:()=>T.close()}),k=(C,G,K)=>{C.listen(G,($=>{try{K($)}catch(pt){setTimeout((()=>{throw pt}),0)}}))};return k(T,Fe.EventType.OPEN,(()=>{R||(N(ft,`RPC '${t}' stream ${i} transport opened.`),D.o_())})),k(T,Fe.EventType.CLOSE,(()=>{R||(R=!0,N(ft,`RPC '${t}' stream ${i} transport closed`),D.a_(),this.E_(T))})),k(T,Fe.EventType.ERROR,(C=>{R||(R=!0,On(ft,`RPC '${t}' stream ${i} transport errored. Name:`,C.name,"Message:",C.message),D.a_(new V(b.UNAVAILABLE,"The operation could not be completed")))})),k(T,Fe.EventType.MESSAGE,(C=>{if(!R){let G=C.data[0];j(!!G,16349);let K=G,$=K?.error||K[0]?.error;if($){N(ft,`RPC '${t}' stream ${i} received error:`,$);let pt=$.status,Nt=(function(g){let y=Z[g];if(y!==void 0)return pl(y)})(pt),ut=$.message;Nt===void 0&&(Nt=b.INTERNAL,ut="Unknown error status: "+pt+" with message "+$.message),R=!0,D.a_(new V(Nt,ut)),T.close()}else N(ft,`RPC '${t}' stream ${i} received:`,G),D.u_(G)}})),k(l,Zs.STAT_EVENT,(C=>{C.stat===Ir.PROXY?N(ft,`RPC '${t}' stream ${i} detected buffering proxy`):C.stat===Ir.NOPROXY&&N(ft,`RPC '${t}' stream ${i} detected no buffering proxy`)})),setTimeout((()=>{D.__()}),0),D}terminate(){this.c_.forEach((t=>t.close())),this.c_=[]}I_(t){this.c_.push(t)}E_(t){this.c_=this.c_.filter((e=>e===t))}};function si(){return typeof document<"u"?document:null}function ys(n){return new Fi(n,!0)}var $n=class{constructor(t,e,r=1e3,i=1.5,o=6e4){this.Mi=t,this.timerId=e,this.d_=r,this.A_=i,this.R_=o,this.V_=0,this.m_=null,this.f_=Date.now(),this.reset()}reset(){this.V_=0}g_(){this.V_=this.R_}p_(t){this.cancel();let e=Math.floor(this.V_+this.y_()),r=Math.max(0,Date.now()-this.f_),i=Math.max(0,e-r);i>0&&N("ExponentialBackoff",`Backing off for ${i} ms (base delay: ${this.V_} ms, delay with jitter: ${e} ms, last attempt: ${r} ms ago)`),this.m_=this.Mi.enqueueAfterDelay(this.timerId,i,(()=>(this.f_=Date.now(),t()))),this.V_*=this.A_,this.V_<this.d_&&(this.V_=this.d_),this.V_>this.R_&&(this.V_=this.R_)}w_(){this.m_!==null&&(this.m_.skipDelay(),this.m_=null)}cancel(){this.m_!==null&&(this.m_.cancel(),this.m_=null)}y_(){return(Math.random()-.5)*this.V_}};var dc="PersistentStream",Jr=class{constructor(t,e,r,i,o,u,l,h){this.Mi=t,this.S_=r,this.b_=i,this.connection=o,this.authCredentialsProvider=u,this.appCheckCredentialsProvider=l,this.listener=h,this.state=0,this.D_=0,this.C_=null,this.v_=null,this.stream=null,this.F_=0,this.M_=new $n(t,e)}x_(){return this.state===1||this.state===5||this.O_()}O_(){return this.state===2||this.state===3}start(){this.F_=0,this.state!==4?this.auth():this.N_()}async stop(){this.x_()&&await this.close(0)}B_(){this.state=0,this.M_.reset()}L_(){this.O_()&&this.C_===null&&(this.C_=this.Mi.enqueueAfterDelay(this.S_,6e4,(()=>this.k_())))}q_(t){this.Q_(),this.stream.send(t)}async k_(){if(this.O_())return this.close(0)}Q_(){this.C_&&(this.C_.cancel(),this.C_=null)}U_(){this.v_&&(this.v_.cancel(),this.v_=null)}async close(t,e){this.Q_(),this.U_(),this.M_.cancel(),this.D_++,t!==4?this.M_.reset():e&&e.code===b.RESOURCE_EXHAUSTED?($t(e.toString()),$t("Using maximum backoff delay to prevent overloading the backend."),this.M_.g_()):e&&e.code===b.UNAUTHENTICATED&&this.state!==3&&(this.authCredentialsProvider.invalidateToken(),this.appCheckCredentialsProvider.invalidateToken()),this.stream!==null&&(this.K_(),this.stream.close(),this.stream=null),this.state=t,await this.listener.r_(e)}K_(){}auth(){this.state=1;let t=this.W_(this.D_),e=this.D_;Promise.all([this.authCredentialsProvider.getToken(),this.appCheckCredentialsProvider.getToken()]).then((([r,i])=>{this.D_===e&&this.G_(r,i)}),(r=>{t((()=>{let i=new V(b.UNKNOWN,"Fetching auth token failed: "+r.message);return this.z_(i)}))}))}G_(t,e){let r=this.W_(this.D_);this.stream=this.j_(t,e),this.stream.Xo((()=>{r((()=>this.listener.Xo()))})),this.stream.t_((()=>{r((()=>(this.state=2,this.v_=this.Mi.enqueueAfterDelay(this.b_,1e4,(()=>(this.O_()&&(this.state=3),Promise.resolve()))),this.listener.t_())))})),this.stream.r_((i=>{r((()=>this.z_(i)))})),this.stream.onMessage((i=>{r((()=>++this.F_==1?this.J_(i):this.onNext(i)))}))}N_(){this.state=5,this.M_.p_((async()=>{this.state=0,this.start()}))}z_(t){return N(dc,`close with error: ${t}`),this.stream=null,this.close(4,t)}W_(t){return e=>{this.Mi.enqueueAndForget((()=>this.D_===t?e():(N(dc,"stream callback skipped by getCloseGuardedDispatcher."),Promise.resolve())))}}},yo=class extends Jr{constructor(t,e,r,i,o,u){super(t,"listen_stream_connection_backoff","listen_stream_idle","health_check_timeout",e,r,i,u),this.serializer=o}j_(t,e){return this.connection.T_("Listen",t,e)}J_(t){return this.onNext(t)}onNext(t){this.M_.reset();let e=Vd(this.serializer,t),r=(function(o){if(!("targetChange"in o))return F.min();let u=o.targetChange;return u.targetIds&&u.targetIds.length?F.min():u.readTime?At(u.readTime):F.min()})(t);return this.listener.H_(e,r)}Y_(t){let e={};e.database=Ui(this.serializer),e.addTarget=(function(o,u){let l,h=u.target;if(l=Pi(h)?{documents:xd(o,h)}:{query:Dd(o,h).ft},l.targetId=u.targetId,u.resumeToken.approximateByteSize()>0){l.resumeToken=yl(o,u.resumeToken);let f=Li(o,u.expectedCount);f!==null&&(l.expectedCount=f)}else if(u.snapshotVersion.compareTo(F.min())>0){l.readTime=Gr(o,u.snapshotVersion.toTimestamp());let f=Li(o,u.expectedCount);f!==null&&(l.expectedCount=f)}return l})(this.serializer,t);let r=kd(this.serializer,t);r&&(e.labels=r),this.q_(e)}Z_(t){let e={};e.database=Ui(this.serializer),e.removeTarget=t,this.q_(e)}},_o=class extends Jr{constructor(t,e,r,i,o,u){super(t,"write_stream_connection_backoff","write_stream_idle","health_check_timeout",e,r,i,u),this.serializer=o}get X_(){return this.F_>0}start(){this.lastStreamToken=void 0,super.start()}K_(){this.X_&&this.ea([])}j_(t,e){return this.connection.T_("Write",t,e)}J_(t){return j(!!t.streamToken,31322),this.lastStreamToken=t.streamToken,j(!t.writeResults||t.writeResults.length===0,55816),this.listener.ta()}onNext(t){j(!!t.streamToken,12678),this.lastStreamToken=t.streamToken,this.M_.reset();let e=Cd(t.writeResults,t.commitTime),r=At(t.commitTime);return this.listener.na(r,e)}ra(){let t={};t.database=Ui(this.serializer),this.q_(t)}ea(t){let e={streamToken:this.lastStreamToken,writes:t.map((r=>Il(this.serializer,r)))};this.q_(e)}};var wo=class{},To=class extends wo{constructor(t,e,r,i){super(),this.authCredentials=t,this.appCheckCredentials=e,this.connection=r,this.serializer=i,this.ia=!1}sa(){if(this.ia)throw new V(b.FAILED_PRECONDITION,"The client has already been terminated.")}Go(t,e,r,i){return this.sa(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then((([o,u])=>this.connection.Go(t,qi(e,r),i,o,u))).catch((o=>{throw o.name==="FirebaseError"?(o.code===b.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),o):new V(b.UNKNOWN,o.toString())}))}Ho(t,e,r,i,o){return this.sa(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then((([u,l])=>this.connection.Ho(t,qi(e,r),i,u,l,o))).catch((u=>{throw u.name==="FirebaseError"?(u.code===b.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),u):new V(b.UNKNOWN,u.toString())}))}terminate(){this.ia=!0,this.connection.terminate()}},Io=class{constructor(t,e){this.asyncQueue=t,this.onlineStateHandler=e,this.state="Unknown",this.oa=0,this._a=null,this.aa=!0}ua(){this.oa===0&&(this.ca("Unknown"),this._a=this.asyncQueue.enqueueAfterDelay("online_state_timeout",1e4,(()=>(this._a=null,this.la("Backend didn't respond within 10 seconds."),this.ca("Offline"),Promise.resolve()))))}ha(t){this.state==="Online"?this.ca("Unknown"):(this.oa++,this.oa>=1&&(this.Pa(),this.la(`Connection failed 1 times. Most recent error: ${t.toString()}`),this.ca("Offline")))}set(t){this.Pa(),this.oa=0,t==="Online"&&(this.aa=!1),this.ca(t)}ca(t){t!==this.state&&(this.state=t,this.onlineStateHandler(t))}la(t){let e=`Could not reach Cloud Firestore backend. ${t}
|
|
18
|
+
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.aa?($t(e),this.aa=!1):N("OnlineStateTracker",e)}Pa(){this._a!==null&&(this._a.cancel(),this._a=null)}};var Pe="RemoteStore",Eo=class{constructor(t,e,r,i,o){this.localStore=t,this.datastore=e,this.asyncQueue=r,this.remoteSyncer={},this.Ta=[],this.Ia=new Map,this.Ea=new Set,this.da=[],this.Aa=o,this.Aa.Oo((u=>{r.enqueueAndForget((async()=>{De(this)&&(N(Pe,"Restarting streams for network reachability change."),await(async function(h){let f=L(h);f.Ea.add(4),await er(f),f.Ra.set("Unknown"),f.Ea.delete(4),await _s(f)})(this))}))})),this.Ra=new Io(r,i)}};async function _s(n){if(De(n))for(let t of n.da)await t(!0)}async function er(n){for(let t of n.da)await t(!1)}function Vl(n,t){let e=L(n);e.Ia.has(t.targetId)||(e.Ia.set(t.targetId,t),la(e)?ca(e):an(e).O_()&&ua(e,t))}function aa(n,t){let e=L(n),r=an(e);e.Ia.delete(t),r.O_()&&Cl(e,t),e.Ia.size===0&&(r.O_()?r.L_():De(e)&&e.Ra.set("Unknown"))}function ua(n,t){if(n.Va.Ue(t.targetId),t.resumeToken.approximateByteSize()>0||t.snapshotVersion.compareTo(F.min())>0){let e=n.remoteSyncer.getRemoteKeysForTarget(t.targetId).size;t=t.withExpectedCount(e)}an(n).Y_(t)}function Cl(n,t){n.Va.Ue(t),an(n).Z_(t)}function ca(n){n.Va=new Oi({getRemoteKeysForTarget:t=>n.remoteSyncer.getRemoteKeysForTarget(t),At:t=>n.Ia.get(t)||null,ht:()=>n.datastore.serializer.databaseId}),an(n).start(),n.Ra.ua()}function la(n){return De(n)&&!an(n).x_()&&n.Ia.size>0}function De(n){return L(n).Ea.size===0}function xl(n){n.Va=void 0}async function Jd(n){n.Ra.set("Online")}async function Xd(n){n.Ia.forEach(((t,e)=>{ua(n,t)}))}async function Yd(n,t){xl(n),la(n)?(n.Ra.ha(t),ca(n)):n.Ra.set("Unknown")}async function Zd(n,t,e){if(n.Ra.set("Online"),t instanceof Br&&t.state===2&&t.cause)try{await(async function(i,o){let u=o.cause;for(let l of o.targetIds)i.Ia.has(l)&&(await i.remoteSyncer.rejectListen(l,u),i.Ia.delete(l),i.Va.removeTarget(l))})(n,t)}catch(r){N(Pe,"Failed to remove targets %s: %s ",t.targetIds.join(","),r),await Xr(n,r)}else if(t instanceof ze?n.Va.Ze(t):t instanceof Ur?n.Va.st(t):n.Va.tt(t),!e.isEqual(F.min()))try{let r=await Pl(n.localStore);e.compareTo(r)>=0&&await(function(o,u){let l=o.Va.Tt(u);return l.targetChanges.forEach(((h,f)=>{if(h.resumeToken.approximateByteSize()>0){let m=o.Ia.get(f);m&&o.Ia.set(f,m.withResumeToken(h.resumeToken,u))}})),l.targetMismatches.forEach(((h,f)=>{let m=o.Ia.get(h);if(!m)return;o.Ia.set(h,m.withResumeToken(gt.EMPTY_BYTE_STRING,m.snapshotVersion)),Cl(o,h);let T=new Gn(m.target,h,f,m.sequenceNumber);ua(o,T)})),o.remoteSyncer.applyRemoteEvent(l)})(n,e)}catch(r){N(Pe,"Failed to raise snapshot:",r),await Xr(n,r)}}async function Xr(n,t,e){if(!on(t))throw t;n.Ea.add(1),await er(n),n.Ra.set("Offline"),e||(e=()=>Pl(n.localStore)),n.asyncQueue.enqueueRetryable((async()=>{N(Pe,"Retrying IndexedDB access"),await e(),n.Ea.delete(1),await _s(n)}))}function Dl(n,t){return t().catch((e=>Xr(n,e,t)))}async function ws(n){let t=L(n),e=he(t),r=t.Ta.length>0?t.Ta[t.Ta.length-1].batchId:Xo;for(;tf(t);)try{let i=await $d(t.localStore,r);if(i===null){t.Ta.length===0&&e.L_();break}r=i.batchId,ef(t,i)}catch(i){await Xr(t,i)}Nl(t)&&kl(t)}function tf(n){return De(n)&&n.Ta.length<10}function ef(n,t){n.Ta.push(t);let e=he(n);e.O_()&&e.X_&&e.ea(t.mutations)}function Nl(n){return De(n)&&!he(n).x_()&&n.Ta.length>0}function kl(n){he(n).start()}async function nf(n){he(n).ra()}async function rf(n){let t=he(n);for(let e of n.Ta)t.ea(e.mutations)}async function sf(n,t,e){let r=n.Ta.shift(),i=Di.from(r,t,e);await Dl(n,(()=>n.remoteSyncer.applySuccessfulWrite(i))),await ws(n)}async function of(n,t){t&&he(n).X_&&await(async function(r,i){if((function(u){return gl(u)&&u!==b.ABORTED})(i.code)){let o=r.Ta.shift();he(r).B_(),await Dl(r,(()=>r.remoteSyncer.rejectFailedWrite(o.batchId,i))),await ws(r)}})(n,t),Nl(n)&&kl(n)}async function fc(n,t){let e=L(n);e.asyncQueue.verifyOperationInProgress(),N(Pe,"RemoteStore received new credentials");let r=De(e);e.Ea.add(3),await er(e),r&&e.Ra.set("Unknown"),await e.remoteSyncer.handleCredentialChange(t),e.Ea.delete(3),await _s(e)}async function af(n,t){let e=L(n);t?(e.Ea.delete(2),await _s(e)):t||(e.Ea.add(2),await er(e),e.Ra.set("Unknown"))}function an(n){return n.ma||(n.ma=(function(e,r,i){let o=L(e);return o.sa(),new yo(r,o.connection,o.authCredentials,o.appCheckCredentials,o.serializer,i)})(n.datastore,n.asyncQueue,{Xo:Jd.bind(null,n),t_:Xd.bind(null,n),r_:Yd.bind(null,n),H_:Zd.bind(null,n)}),n.da.push((async t=>{t?(n.ma.B_(),la(n)?ca(n):n.Ra.set("Unknown")):(await n.ma.stop(),xl(n))}))),n.ma}function he(n){return n.fa||(n.fa=(function(e,r,i){let o=L(e);return o.sa(),new _o(r,o.connection,o.authCredentials,o.appCheckCredentials,o.serializer,i)})(n.datastore,n.asyncQueue,{Xo:()=>Promise.resolve(),t_:nf.bind(null,n),r_:of.bind(null,n),ta:rf.bind(null,n),na:sf.bind(null,n)}),n.da.push((async t=>{t?(n.fa.B_(),await ws(n)):(await n.fa.stop(),n.Ta.length>0&&(N(Pe,`Stopping write stream with ${n.Ta.length} pending writes`),n.Ta=[]))}))),n.fa}var vo=class n{constructor(t,e,r,i,o){this.asyncQueue=t,this.timerId=e,this.targetTimeMs=r,this.op=i,this.removalCallback=o,this.deferred=new Pt,this.then=this.deferred.promise.then.bind(this.deferred.promise),this.deferred.promise.catch((u=>{}))}get promise(){return this.deferred.promise}static createAndSchedule(t,e,r,i,o){let u=Date.now()+r,l=new n(t,e,u,i,o);return l.start(r),l}start(t){this.timerHandle=setTimeout((()=>this.handleDelayElapsed()),t)}skipDelay(){return this.handleDelayElapsed()}cancel(t){this.timerHandle!==null&&(this.clearTimeout(),this.deferred.reject(new V(b.CANCELLED,"Operation cancelled"+(t?": "+t:""))))}handleDelayElapsed(){this.asyncQueue.enqueueAndForget((()=>this.timerHandle!==null?(this.clearTimeout(),this.op().then((t=>this.deferred.resolve(t)))):Promise.resolve()))}clearTimeout(){this.timerHandle!==null&&(this.removalCallback(this),clearTimeout(this.timerHandle),this.timerHandle=null)}};function ha(n,t){if($t("AsyncQueue",`${t}: ${n}`),on(n))return new V(b.UNAVAILABLE,`${t}: ${n}`);throw n}var Yr=class n{static emptySet(t){return new n(t.comparator)}constructor(t){this.comparator=t?(e,r)=>t(e,r)||M.comparator(e.key,r.key):(e,r)=>M.comparator(e.key,r.key),this.keyedMap=xn(),this.sortedSet=new Y(this.comparator)}has(t){return this.keyedMap.get(t)!=null}get(t){return this.keyedMap.get(t)}first(){return this.sortedSet.minKey()}last(){return this.sortedSet.maxKey()}isEmpty(){return this.sortedSet.isEmpty()}indexOf(t){let e=this.keyedMap.get(t);return e?this.sortedSet.indexOf(e):-1}get size(){return this.sortedSet.size}forEach(t){this.sortedSet.inorderTraversal(((e,r)=>(t(e),!1)))}add(t){let e=this.delete(t.key);return e.copy(e.keyedMap.insert(t.key,t),e.sortedSet.insert(t,null))}delete(t){let e=this.get(t);return e?this.copy(this.keyedMap.remove(t),this.sortedSet.remove(e)):this}isEqual(t){if(!(t instanceof n)||this.size!==t.size)return!1;let e=this.sortedSet.getIterator(),r=t.sortedSet.getIterator();for(;e.hasNext();){let i=e.getNext().key,o=r.getNext().key;if(!i.isEqual(o))return!1}return!0}toString(){let t=[];return this.forEach((e=>{t.push(e.toString())})),t.length===0?"DocumentSet ()":`DocumentSet (
|
|
19
19
|
`+t.join(`
|
|
20
20
|
`)+`
|
|
21
|
-
)`}copy(t,e){let r=new n;return r.comparator=this.comparator,r.keyedMap=t,r.sortedSet=e,r}};var Zr=class{constructor(){this.ga=new Y(M.comparator)}track(t){let e=t.doc.key,r=this.ga.get(e);r?t.type!==0&&r.type===3?this.ga=this.ga.insert(e,t):t.type===3&&r.type!==1?this.ga=this.ga.insert(e,{type:r.type,doc:t.doc}):t.type===2&&r.type===2?this.ga=this.ga.insert(e,{type:2,doc:t.doc}):t.type===2&&r.type===0?this.ga=this.ga.insert(e,{type:0,doc:t.doc}):t.type===1&&r.type===0?this.ga=this.ga.remove(e):t.type===1&&r.type===2?this.ga=this.ga.insert(e,{type:1,doc:r.doc}):t.type===0&&r.type===1?this.ga=this.ga.insert(e,{type:2,doc:t.doc}):O(63341,{Rt:t,pa:r}):this.ga=this.ga.insert(e,t)}ya(){let t=[];return this.ga.inorderTraversal(((e,r)=>{t.push(r)})),t}},tn=class n{constructor(t,e,r,i,o,u,l,h,f){this.query=t,this.docs=e,this.oldDocs=r,this.docChanges=i,this.mutatedKeys=o,this.fromCache=u,this.syncStateChanged=l,this.excludesMetadataChanges=h,this.hasCachedResults=f}static fromInitialDocuments(t,e,r,i,o){let u=[];return e.forEach((l=>{u.push({type:0,doc:l})})),new n(t,e,Yr.emptySet(e),u,r,i,!0,!1,o)}get hasPendingWrites(){return!this.mutatedKeys.isEmpty()}isEqual(t){if(!(this.fromCache===t.fromCache&&this.hasCachedResults===t.hasCachedResults&&this.syncStateChanged===t.syncStateChanged&&this.mutatedKeys.isEqual(t.mutatedKeys)&&gs(this.query,t.query)&&this.docs.isEqual(t.docs)&&this.oldDocs.isEqual(t.oldDocs)))return!1;let e=this.docChanges,r=t.docChanges;if(e.length!==r.length)return!1;for(let i=0;i<e.length;i++)if(e[i].type!==r[i].type||!e[i].doc.isEqual(r[i].doc))return!1;return!0}};var vo=class{constructor(){this.wa=void 0,this.Sa=[]}ba(){return this.Sa.some((t=>t.Da()))}},Ao=class{constructor(){this.queries=mc(),this.onlineState="Unknown",this.Ca=new Set}terminate(){(function(e,r){let i=L(e),o=i.queries;i.queries=mc(),o.forEach(((u,l)=>{for(let h of l.Sa)h.onError(r)}))})(this,new V(b.ABORTED,"Firestore shutting down"))}};function mc(){return new Ht((n=>rl(n)),gs)}async function ha(n,t){let e=L(n),r=3,i=t.query,o=e.queries.get(i);o?!o.ba()&&t.Da()&&(r=2):(o=new vo,r=t.Da()?0:1);try{switch(r){case 0:o.wa=await e.onListen(i,!0);break;case 1:o.wa=await e.onListen(i,!1);break;case 2:await e.onFirstRemoteStoreListen(i)}}catch(u){let l=la(u,`Initialization of query '${Le(t.query)}' failed`);return void t.onError(l)}e.queries.set(i,o),o.Sa.push(t),t.va(e.onlineState),o.wa&&t.Fa(o.wa)&&fa(e)}async function da(n,t){let e=L(n),r=t.query,i=3,o=e.queries.get(r);if(o){let u=o.Sa.indexOf(t);u>=0&&(o.Sa.splice(u,1),o.Sa.length===0?i=t.Da()?0:1:!o.ba()&&t.Da()&&(i=2))}switch(i){case 0:return e.queries.delete(r),e.onUnlisten(r,!0);case 1:return e.queries.delete(r),e.onUnlisten(r,!1);case 2:return e.onLastRemoteStoreUnlisten(r);default:return}}function uf(n,t){let e=L(n),r=!1;for(let i of t){let o=i.query,u=e.queries.get(o);if(u){for(let l of u.Sa)l.Fa(i)&&(r=!0);u.wa=i}}r&&fa(e)}function cf(n,t,e){let r=L(n),i=r.queries.get(t);if(i)for(let o of i.Sa)o.onError(e);r.queries.delete(t)}function fa(n){n.Ca.forEach((t=>{t.next()}))}var So,gc;(gc=So||(So={})).Ma="default",gc.Cache="cache";var Qn=class{constructor(t,e,r){this.query=t,this.xa=e,this.Oa=!1,this.Na=null,this.onlineState="Unknown",this.options=r||{}}Fa(t){if(!this.options.includeMetadataChanges){let r=[];for(let i of t.docChanges)i.type!==3&&r.push(i);t=new tn(t.query,t.docs,t.oldDocs,r,t.mutatedKeys,t.fromCache,t.syncStateChanged,!0,t.hasCachedResults)}let e=!1;return this.Oa?this.Ba(t)&&(this.xa.next(t),e=!0):this.La(t,this.onlineState)&&(this.ka(t),e=!0),this.Na=t,e}onError(t){this.xa.error(t)}va(t){this.onlineState=t;let e=!1;return this.Na&&!this.Oa&&this.La(this.Na,t)&&(this.ka(this.Na),e=!0),e}La(t,e){if(!t.fromCache||!this.Da())return!0;let r=e!=="Offline";return(!this.options.qa||!r)&&(!t.docs.isEmpty()||t.hasCachedResults||e==="Offline")}Ba(t){if(t.docChanges.length>0)return!0;let e=this.Na&&this.Na.hasPendingWrites!==t.hasPendingWrites;return!(!t.syncStateChanged&&!e)&&this.options.includeMetadataChanges===!0}ka(t){t=tn.fromInitialDocuments(t.query,t.docs,t.mutatedKeys,t.fromCache,t.hasCachedResults),this.Oa=!0,this.xa.next(t)}Da(){return this.options.source!==So.Cache}};var ts=class{constructor(t){this.key=t}},es=class{constructor(t){this.key=t}},bo=class{constructor(t,e){this.query=t,this.Ya=e,this.Za=null,this.hasCachedResults=!1,this.current=!1,this.Xa=U(),this.mutatedKeys=U(),this.eu=sl(t),this.tu=new Yr(this.eu)}get nu(){return this.Ya}ru(t,e){let r=e?e.iu:new Zr,i=e?e.tu:this.tu,o=e?e.mutatedKeys:this.mutatedKeys,u=i,l=!1,h=this.query.limitType==="F"&&i.size===this.query.limit?i.last():null,f=this.query.limitType==="L"&&i.size===this.query.limit?i.first():null;if(t.inorderTraversal(((m,T)=>{let A=i.get(m),R=ps(this.query,T)?T:null,D=!!A&&this.mutatedKeys.has(A.key),k=!!R&&(R.hasLocalMutations||this.mutatedKeys.has(R.key)&&R.hasCommittedMutations),C=!1;A&&R?A.data.isEqual(R.data)?D!==k&&(r.track({type:3,doc:R}),C=!0):this.su(A,R)||(r.track({type:2,doc:R}),C=!0,(h&&this.eu(R,h)>0||f&&this.eu(R,f)<0)&&(l=!0)):!A&&R?(r.track({type:0,doc:R}),C=!0):A&&!R&&(r.track({type:1,doc:A}),C=!0,(h||f)&&(l=!0)),C&&(R?(u=u.add(R),o=k?o.add(m):o.delete(m)):(u=u.delete(m),o=o.delete(m)))})),this.query.limit!==null)for(;u.size>this.query.limit;){let m=this.query.limitType==="F"?u.last():u.first();u=u.delete(m.key),o=o.delete(m.key),r.track({type:1,doc:m})}return{tu:u,iu:r,Cs:l,mutatedKeys:o}}su(t,e){return t.hasLocalMutations&&e.hasCommittedMutations&&!e.hasLocalMutations}applyChanges(t,e,r,i){let o=this.tu;this.tu=t.tu,this.mutatedKeys=t.mutatedKeys;let u=t.iu.ya();u.sort(((m,T)=>(function(R,D){let k=C=>{switch(C){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return O(20277,{Rt:C})}};return k(R)-k(D)})(m.type,T.type)||this.eu(m.doc,T.doc))),this.ou(r),i=i??!1;let l=e&&!i?this._u():[],h=this.Xa.size===0&&this.current&&!i?1:0,f=h!==this.Za;return this.Za=h,u.length!==0||f?{snapshot:new tn(this.query,t.tu,o,u,t.mutatedKeys,h===0,f,!1,!!r&&r.resumeToken.approximateByteSize()>0),au:l}:{au:l}}va(t){return this.current&&t==="Offline"?(this.current=!1,this.applyChanges({tu:this.tu,iu:new Zr,mutatedKeys:this.mutatedKeys,Cs:!1},!1)):{au:[]}}uu(t){return!this.Ya.has(t)&&!!this.tu.has(t)&&!this.tu.get(t).hasLocalMutations}ou(t){t&&(t.addedDocuments.forEach((e=>this.Ya=this.Ya.add(e))),t.modifiedDocuments.forEach((e=>{})),t.removedDocuments.forEach((e=>this.Ya=this.Ya.delete(e))),this.current=t.current)}_u(){if(!this.current)return[];let t=this.Xa;this.Xa=U(),this.tu.forEach((r=>{this.uu(r.key)&&(this.Xa=this.Xa.add(r.key))}));let e=[];return t.forEach((r=>{this.Xa.has(r)||e.push(new es(r))})),this.Xa.forEach((r=>{t.has(r)||e.push(new ts(r))})),e}cu(t){this.Ya=t.Qs,this.Xa=U();let e=this.ru(t.documents);return this.applyChanges(e,!0)}lu(){return tn.fromInitialDocuments(this.query,this.tu,this.mutatedKeys,this.Za===0,this.hasCachedResults)}},ma="SyncEngine",Ro=class{constructor(t,e,r){this.query=t,this.targetId=e,this.view=r}},Po=class{constructor(t){this.key=t,this.hu=!1}},Vo=class{constructor(t,e,r,i,o,u){this.localStore=t,this.remoteStore=e,this.eventManager=r,this.sharedClientState=i,this.currentUser=o,this.maxConcurrentLimboResolutions=u,this.Pu={},this.Tu=new Ht((l=>rl(l)),gs),this.Iu=new Map,this.Eu=new Set,this.du=new Y(M.comparator),this.Au=new Map,this.Ru=new Kn,this.Vu={},this.mu=new Map,this.fu=zn.cr(),this.onlineState="Unknown",this.gu=void 0}get isPrimaryClient(){return this.gu===!0}};async function lf(n,t,e=!0){let r=Ul(n),i,o=r.Tu.get(t);return o?(r.sharedClientState.addLocalQueryTarget(o.targetId),i=o.view.lu()):i=await Ml(r,t,e,!0),i}async function hf(n,t){let e=Ul(n);await Ml(e,t,!0,!1)}async function Ml(n,t,e,r){let i=await Qd(n.localStore,Ot(t)),o=i.targetId,u=n.sharedClientState.addLocalQueryTarget(o,e),l;return r&&(l=await df(n,t,o,u==="current",i.resumeToken)),n.isPrimaryClient&&e&&Vl(n.remoteStore,i),l}async function df(n,t,e,r,i){n.pu=(T,A,R)=>(async function(k,C,G,K){let $=C.view.ru(G);$.Cs&&($=await lc(k.localStore,C.query,!1).then((({documents:E})=>C.view.ru(E,$))));let pt=K&&K.targetChanges.get(C.targetId),Nt=K&&K.targetMismatches.get(C.targetId)!=null,at=C.view.applyChanges($,k.isPrimaryClient,pt,Nt);return yc(k,C.targetId,at.au),at.snapshot})(n,T,A,R);let o=await lc(n.localStore,t,!0),u=new bo(t,o.Qs),l=u.ru(o.documents),h=jn.createSynthesizedTargetChangeForCurrentChange(e,r&&n.onlineState!=="Offline",i),f=u.applyChanges(l,n.isPrimaryClient,h);yc(n,e,f.au);let m=new Ro(t,e,u);return n.Tu.set(t,m),n.Iu.has(e)?n.Iu.get(e).push(t):n.Iu.set(e,[t]),f.snapshot}async function ff(n,t,e){let r=L(n),i=r.Tu.get(t),o=r.Iu.get(i.targetId);if(o.length>1)return r.Iu.set(i.targetId,o.filter((u=>!gs(u,t)))),void r.Tu.delete(t);r.isPrimaryClient?(r.sharedClientState.removeLocalQueryTarget(i.targetId),r.sharedClientState.isActiveQueryTarget(i.targetId)||await uo(r.localStore,i.targetId,!1).then((()=>{r.sharedClientState.clearQueryState(i.targetId),e&&oa(r.remoteStore,i.targetId),Co(r,i.targetId)})).catch(sn)):(Co(r,i.targetId),await uo(r.localStore,i.targetId,!0))}async function mf(n,t){let e=L(n),r=e.Tu.get(t),i=e.Iu.get(r.targetId);e.isPrimaryClient&&i.length===1&&(e.sharedClientState.removeLocalQueryTarget(r.targetId),oa(e.remoteStore,r.targetId))}async function gf(n,t,e){let r=Ef(n);try{let i=await(function(u,l){let h=L(u),f=rt.now(),m=l.reduce(((R,D)=>R.add(D.key)),U()),T,A;return h.persistence.runTransaction("Locally write mutations","readwrite",(R=>{let D=Jt(),k=U();return h.Ns.getEntries(R,m).next((C=>{D=C,D.forEach(((G,K)=>{K.isValidDocument()||(k=k.add(G))}))})).next((()=>h.localDocuments.getOverlayedDocuments(R,D))).next((C=>{T=C;let G=[];for(let K of l){let $=wd(K,T.get(K.key).overlayedDocument);$!=null&&G.push(new qt(K.key,$,Xc($.value.mapValue),mt.exists(!0)))}return h.mutationQueue.addMutationBatch(R,f,G,l)})).next((C=>{A=C;let G=C.applyToLocalDocumentSet(T,k);return h.documentOverlayCache.saveOverlays(R,C.batchId,G)}))})).then((()=>({batchId:A.batchId,changes:ol(T)})))})(r.localStore,t);r.sharedClientState.addPendingMutation(i.batchId),(function(u,l,h){let f=u.Vu[u.currentUser.toKey()];f||(f=new Y(q)),f=f.insert(l,h),u.Vu[u.currentUser.toKey()]=f})(r,i.batchId,e),await nr(r,i.changes),await ws(r.remoteStore)}catch(i){let o=la(i,"Failed to persist write");e.reject(o)}}async function Ol(n,t){let e=L(n);try{let r=await zd(e.localStore,t);t.targetChanges.forEach(((i,o)=>{let u=e.Au.get(o);u&&(j(i.addedDocuments.size+i.modifiedDocuments.size+i.removedDocuments.size<=1,22616),i.addedDocuments.size>0?u.hu=!0:i.modifiedDocuments.size>0?j(u.hu,14607):i.removedDocuments.size>0&&(j(u.hu,42227),u.hu=!1))})),await nr(e,r,t)}catch(r){await sn(r)}}function pc(n,t,e){let r=L(n);if(r.isPrimaryClient&&e===0||!r.isPrimaryClient&&e===1){let i=[];r.Tu.forEach(((o,u)=>{let l=u.view.va(t);l.snapshot&&i.push(l.snapshot)})),(function(u,l){let h=L(u);h.onlineState=l;let f=!1;h.queries.forEach(((m,T)=>{for(let A of T.Sa)A.va(l)&&(f=!0)})),f&&fa(h)})(r.eventManager,t),i.length&&r.Pu.H_(i),r.onlineState=t,r.isPrimaryClient&&r.sharedClientState.setOnlineState(t)}}async function pf(n,t,e){let r=L(n);r.sharedClientState.updateQueryState(t,"rejected",e);let i=r.Au.get(t),o=i&&i.key;if(o){let u=new Y(M.comparator);u=u.insert(o,St.newNoDocument(o,F.min()));let l=U().add(o),h=new qr(F.min(),new Map,new Y(q),u,l);await Ol(r,h),r.du=r.du.remove(o),r.Au.delete(t),ga(r)}else await uo(r.localStore,t,!1).then((()=>Co(r,t,e))).catch(sn)}async function yf(n,t){let e=L(n),r=t.batch.batchId;try{let i=await Gd(e.localStore,t);Ll(e,r,null),Fl(e,r),e.sharedClientState.updateMutationState(r,"acknowledged"),await nr(e,i)}catch(i){await sn(i)}}async function _f(n,t,e){let r=L(n);try{let i=await(function(u,l){let h=L(u);return h.persistence.runTransaction("Reject batch","readwrite-primary",(f=>{let m;return h.mutationQueue.lookupMutationBatch(f,l).next((T=>(j(T!==null,37113),m=T.keys(),h.mutationQueue.removeMutationBatch(f,T)))).next((()=>h.mutationQueue.performConsistencyCheck(f))).next((()=>h.documentOverlayCache.removeOverlaysForBatchId(f,m,l))).next((()=>h.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(f,m))).next((()=>h.localDocuments.getDocuments(f,m)))}))})(r.localStore,t);Ll(r,t,e),Fl(r,t),r.sharedClientState.updateMutationState(t,"rejected",e),await nr(r,i)}catch(i){await sn(i)}}function Fl(n,t){(n.mu.get(t)||[]).forEach((e=>{e.resolve()})),n.mu.delete(t)}function Ll(n,t,e){let r=L(n),i=r.Vu[r.currentUser.toKey()];if(i){let o=i.get(t);o&&(e?o.reject(e):o.resolve(),i=i.remove(t)),r.Vu[r.currentUser.toKey()]=i}}function Co(n,t,e=null){n.sharedClientState.removeLocalQueryTarget(t);for(let r of n.Iu.get(t))n.Tu.delete(r),e&&n.Pu.yu(r,e);n.Iu.delete(t),n.isPrimaryClient&&n.Ru.jr(t).forEach((r=>{n.Ru.containsKey(r)||ql(n,r)}))}function ql(n,t){n.Eu.delete(t.path.canonicalString());let e=n.du.get(t);e!==null&&(oa(n.remoteStore,e),n.du=n.du.remove(t),n.Au.delete(e),ga(n))}function yc(n,t,e){for(let r of e)r instanceof ts?(n.Ru.addReference(r.key,t),wf(n,r)):r instanceof es?(N(ma,"Document no longer in limbo: "+r.key),n.Ru.removeReference(r.key,t),n.Ru.containsKey(r.key)||ql(n,r.key)):O(19791,{wu:r})}function wf(n,t){let e=t.key,r=e.path.canonicalString();n.du.get(e)||n.Eu.has(r)||(N(ma,"New document in limbo: "+e),n.Eu.add(r),ga(n))}function ga(n){for(;n.Eu.size>0&&n.du.size<n.maxConcurrentLimboResolutions;){let t=n.Eu.values().next().value;n.Eu.delete(t);let e=new M(W.fromString(t)),r=n.fu.next();n.Au.set(r,new Po(e)),n.du=n.du.insert(e,r),Vl(n.remoteStore,new Gn(Ot(ms(e.path)),r,"TargetPurposeLimboResolution",$e.ce))}}async function nr(n,t,e){let r=L(n),i=[],o=[],u=[];r.Tu.isEmpty()||(r.Tu.forEach(((l,h)=>{u.push(r.pu(h,t,e).then((f=>{if((f||e)&&r.isPrimaryClient){let m=f?!f.fromCache:e?.targetChanges.get(h.targetId)?.current;r.sharedClientState.updateQueryState(h.targetId,m?"current":"not-current")}if(f){i.push(f);let m=so.As(h.targetId,f);o.push(m)}})))})),await Promise.all(u),r.Pu.H_(i),await(async function(h,f){let m=L(h);try{await m.persistence.runTransaction("notifyLocalViewChanges","readwrite",(T=>P.forEach(f,(A=>P.forEach(A.Es,(R=>m.persistence.referenceDelegate.addReference(T,A.targetId,R))).next((()=>P.forEach(A.ds,(R=>m.persistence.referenceDelegate.removeReference(T,A.targetId,R)))))))))}catch(T){if(!on(T))throw T;N(ia,"Failed to update sequence numbers: "+T)}for(let T of f){let A=T.targetId;if(!T.fromCache){let R=m.Ms.get(A),D=R.snapshotVersion,k=R.withLastLimboFreeSnapshotVersion(D);m.Ms=m.Ms.insert(A,k)}}})(r.localStore,o))}async function Tf(n,t){let e=L(n);if(!e.currentUser.isEqual(t)){N(ma,"User change. New user:",t.toKey());let r=await Rl(e.localStore,t);e.currentUser=t,(function(o,u){o.mu.forEach((l=>{l.forEach((h=>{h.reject(new V(b.CANCELLED,u))}))})),o.mu.clear()})(e,"'waitForPendingWrites' promise is rejected due to a user change."),e.sharedClientState.handleUserChange(t,r.removedBatchIds,r.addedBatchIds),await nr(e,r.Ls)}}function If(n,t){let e=L(n),r=e.Au.get(t);if(r&&r.hu)return U().add(r.key);{let i=U(),o=e.Iu.get(t);if(!o)return i;for(let u of o){let l=e.Tu.get(u);i=i.unionWith(l.view.nu)}return i}}function Ul(n){let t=L(n);return t.remoteStore.remoteSyncer.applyRemoteEvent=Ol.bind(null,t),t.remoteStore.remoteSyncer.getRemoteKeysForTarget=If.bind(null,t),t.remoteStore.remoteSyncer.rejectListen=pf.bind(null,t),t.Pu.H_=uf.bind(null,t.eventManager),t.Pu.yu=cf.bind(null,t.eventManager),t}function Ef(n){let t=L(n);return t.remoteStore.remoteSyncer.applySuccessfulWrite=yf.bind(null,t),t.remoteStore.remoteSyncer.rejectFailedWrite=_f.bind(null,t),t}var en=class{constructor(){this.kind="memory",this.synchronizeTabs=!1}async initialize(t){this.serializer=ys(t.databaseInfo.databaseId),this.sharedClientState=this.Du(t),this.persistence=this.Cu(t),await this.persistence.start(),this.localStore=this.vu(t),this.gcScheduler=this.Fu(t,this.localStore),this.indexBackfillerScheduler=this.Mu(t,this.localStore)}Fu(t,e){return null}Mu(t,e){return null}vu(t){return jd(this.persistence,new oo,t.initialUser,this.serializer)}Cu(t){return new $r(ro.mi,this.serializer)}Du(t){return new co}async terminate(){this.gcScheduler?.stop(),this.indexBackfillerScheduler?.stop(),this.sharedClientState.shutdown(),await this.persistence.shutdown()}};en.provider={build:()=>new en};var xo=class extends en{constructor(t){super(),this.cacheSizeBytes=t}Fu(t,e){j(this.persistence.referenceDelegate instanceof Qr,46915);let r=this.persistence.referenceDelegate.garbageCollector;return new zi(r,t.asyncQueue,e)}Cu(t){let e=this.cacheSizeBytes!==void 0?bt.withCacheSize(this.cacheSizeBytes):bt.DEFAULT;return new $r((r=>Qr.mi(r,e)),this.serializer)}};var Wn=class{async initialize(t,e){this.localStore||(this.localStore=t.localStore,this.sharedClientState=t.sharedClientState,this.datastore=this.createDatastore(e),this.remoteStore=this.createRemoteStore(e),this.eventManager=this.createEventManager(e),this.syncEngine=this.createSyncEngine(e,!t.synchronizeTabs),this.sharedClientState.onlineStateHandler=r=>pc(this.syncEngine,r,1),this.remoteStore.remoteSyncer.handleCredentialChange=Tf.bind(null,this.syncEngine),await af(this.remoteStore,this.syncEngine.isPrimaryClient))}createEventManager(t){return(function(){return new Ao})()}createDatastore(t){let e=ys(t.databaseInfo.databaseId),r=(function(o){return new go(o)})(t.databaseInfo);return(function(o,u,l,h){return new wo(o,u,l,h)})(t.authCredentials,t.appCheckCredentials,r,e)}createRemoteStore(t){return(function(r,i,o,u,l){return new Io(r,i,o,u,l)})(this.localStore,this.datastore,t.asyncQueue,(e=>pc(this.syncEngine,e,0)),(function(){return Hr.v()?new Hr:new lo})())}createSyncEngine(t,e){return(function(i,o,u,l,h,f,m){let T=new Vo(i,o,u,l,h,f);return m&&(T.gu=!0),T})(this.localStore,this.remoteStore,this.eventManager,this.sharedClientState,t.initialUser,t.maxConcurrentLimboResolutions,e)}async terminate(){await(async function(e){let r=L(e);N(Re,"RemoteStore shutting down."),r.Ea.add(5),await er(r),r.Aa.shutdown(),r.Ra.set("Unknown")})(this.remoteStore),this.datastore?.terminate(),this.eventManager?.terminate()}};Wn.provider={build:()=>new Wn};var Hn=class{constructor(t){this.observer=t,this.muted=!1}next(t){this.muted||this.observer.next&&this.Ou(this.observer.next,t)}error(t){this.muted||(this.observer.error?this.Ou(this.observer.error,t):$t("Uncaught Error in snapshot listener:",t.toString()))}Nu(){this.muted=!0}Ou(t,e){setTimeout((()=>{this.muted||t(e)}),0)}};var Do=class{constructor(t){this.datastore=t,this.readVersions=new Map,this.mutations=[],this.committed=!1,this.lastTransactionError=null,this.writtenDocs=new Set}async lookup(t){if(this.ensureCommitNotCalled(),this.mutations.length>0)throw this.lastTransactionError=new V(b.INVALID_ARGUMENT,"Firestore transactions require all reads to be executed before all writes."),this.lastTransactionError;let e=await(async function(i,o){let u=L(i),l={documents:o.map((T=>zr(u.serializer,T)))},h=await u.Ho("BatchGetDocuments",u.serializer.databaseId,W.emptyPath(),l,o.length),f=new Map;h.forEach((T=>{let A=Pd(u.serializer,T);f.set(A.key.toString(),A)}));let m=[];return o.forEach((T=>{let A=f.get(T.toString());j(!!A,55234,{key:T}),m.push(A)})),m})(this.datastore,t);return e.forEach((r=>this.recordVersion(r))),e}set(t,e){this.write(e.toMutation(t,this.precondition(t))),this.writtenDocs.add(t.toString())}update(t,e){try{this.write(e.toMutation(t,this.preconditionForUpdate(t)))}catch(r){this.lastTransactionError=r}this.writtenDocs.add(t.toString())}delete(t){this.write(new Ze(t,this.precondition(t))),this.writtenDocs.add(t.toString())}async commit(){if(this.ensureCommitNotCalled(),this.lastTransactionError)throw this.lastTransactionError;let t=this.readVersions;this.mutations.forEach((e=>{t.delete(e.key.toString())})),t.forEach(((e,r)=>{let i=M.fromPath(r);this.mutations.push(new Lr(i,this.precondition(i)))})),await(async function(r,i){let o=L(r),u={writes:i.map((l=>Il(o.serializer,l)))};await o.Go("Commit",o.serializer.databaseId,W.emptyPath(),u)})(this.datastore,this.mutations),this.committed=!0}recordVersion(t){let e;if(t.isFoundDocument())e=t.version;else{if(!t.isNoDocument())throw O(50498,{Gu:t.constructor.name});e=F.min()}let r=this.readVersions.get(t.key.toString());if(r){if(!e.isEqual(r))throw new V(b.ABORTED,"Document version changed between two reads.")}else this.readVersions.set(t.key.toString(),e)}precondition(t){let e=this.readVersions.get(t.toString());return!this.writtenDocs.has(t.toString())&&e?e.isEqual(F.min())?mt.exists(!1):mt.updateTime(e):mt.none()}preconditionForUpdate(t){let e=this.readVersions.get(t.toString());if(!this.writtenDocs.has(t.toString())&&e){if(e.isEqual(F.min()))throw new V(b.INVALID_ARGUMENT,"Can't update a document that doesn't exist.");return mt.updateTime(e)}return mt.exists(!0)}write(t){this.ensureCommitNotCalled(),this.mutations.push(t)}ensureCommitNotCalled(){}};var No=class{constructor(t,e,r,i,o){this.asyncQueue=t,this.datastore=e,this.options=r,this.updateFunction=i,this.deferred=o,this.zu=r.maxAttempts,this.M_=new $n(this.asyncQueue,"transaction_retry")}ju(){this.zu-=1,this.Ju()}Ju(){this.M_.p_((async()=>{let t=new Do(this.datastore),e=this.Hu(t);e&&e.then((r=>{this.asyncQueue.enqueueAndForget((()=>t.commit().then((()=>{this.deferred.resolve(r)})).catch((i=>{this.Yu(i)}))))})).catch((r=>{this.Yu(r)}))}))}Hu(t){try{let e=this.updateFunction(t);return!tr(e)&&e.catch&&e.then?e:(this.deferred.reject(Error("Transaction callback must return a Promise")),null)}catch(e){return this.deferred.reject(e),null}}Yu(t){this.zu>0&&this.Zu(t)?(this.zu-=1,this.asyncQueue.enqueueAndForget((()=>(this.Ju(),Promise.resolve())))):this.deferred.reject(t)}Zu(t){if(t?.name==="FirebaseError"){let e=t.code;return e==="aborted"||e==="failed-precondition"||e==="already-exists"||!gl(e)}return!1}};var de="FirestoreClient",ko=class{constructor(t,e,r,i,o){this.authCredentials=t,this.appCheckCredentials=e,this.asyncQueue=r,this.databaseInfo=i,this.user=ft.UNAUTHENTICATED,this.clientId=Fn.newId(),this.authCredentialListener=()=>Promise.resolve(),this.appCheckCredentialListener=()=>Promise.resolve(),this._uninitializedComponentsProvider=o,this.authCredentials.start(r,(async u=>{N(de,"Received user=",u.uid),await this.authCredentialListener(u),this.user=u})),this.appCheckCredentials.start(r,(u=>(N(de,"Received new app check token=",u),this.appCheckCredentialListener(u,this.user))))}get configuration(){return{asyncQueue:this.asyncQueue,databaseInfo:this.databaseInfo,clientId:this.clientId,authCredentials:this.authCredentials,appCheckCredentials:this.appCheckCredentials,initialUser:this.user,maxConcurrentLimboResolutions:100}}setCredentialChangeListener(t){this.authCredentialListener=t}setAppCheckTokenChangeListener(t){this.appCheckCredentialListener=t}terminate(){this.asyncQueue.enterRestrictedMode();let t=new Pt;return this.asyncQueue.enqueueAndForgetEvenWhileRestricted((async()=>{try{this._onlineComponents&&await this._onlineComponents.terminate(),this._offlineComponents&&await this._offlineComponents.terminate(),this.authCredentials.shutdown(),this.appCheckCredentials.shutdown(),t.resolve()}catch(e){let r=la(e,"Failed to shutdown persistence");t.reject(r)}})),t.promise}};async function si(n,t){n.asyncQueue.verifyOperationInProgress(),N(de,"Initializing OfflineComponentProvider");let e=n.configuration;await t.initialize(e);let r=e.initialUser;n.setCredentialChangeListener((async i=>{r.isEqual(i)||(await Rl(t.localStore,i),r=i)})),t.persistence.setDatabaseDeletedListener((()=>n.terminate())),n._offlineComponents=t}async function _c(n,t){n.asyncQueue.verifyOperationInProgress();let e=await vf(n);N(de,"Initializing OnlineComponentProvider"),await t.initialize(e,n.configuration),n.setCredentialChangeListener((r=>fc(t.remoteStore,r))),n.setAppCheckTokenChangeListener(((r,i)=>fc(t.remoteStore,i))),n._onlineComponents=t}async function vf(n){if(!n._offlineComponents)if(n._uninitializedComponentsProvider){N(de,"Using user provided OfflineComponentProvider");try{await si(n,n._uninitializedComponentsProvider._offline)}catch(t){let e=t;if(!(function(i){return i.name==="FirebaseError"?i.code===b.FAILED_PRECONDITION||i.code===b.UNIMPLEMENTED:!(typeof DOMException<"u"&&i instanceof DOMException)||i.code===22||i.code===20||i.code===11})(e))throw e;On("Error using user provided cache. Falling back to memory cache: "+e),await si(n,new en)}}else N(de,"Using default OfflineComponentProvider"),await si(n,new xo(void 0));return n._offlineComponents}async function pa(n){return n._onlineComponents||(n._uninitializedComponentsProvider?(N(de,"Using user provided OnlineComponentProvider"),await _c(n,n._uninitializedComponentsProvider._online)):(N(de,"Using default OnlineComponentProvider"),await _c(n,new Wn))),n._onlineComponents}function Af(n){return pa(n).then((t=>t.syncEngine))}function Sf(n){return pa(n).then((t=>t.datastore))}async function ns(n){let t=await pa(n),e=t.eventManager;return e.onListen=lf.bind(null,t.syncEngine),e.onUnlisten=ff.bind(null,t.syncEngine),e.onFirstRemoteStoreListen=hf.bind(null,t.syncEngine),e.onLastRemoteStoreUnlisten=mf.bind(null,t.syncEngine),e}function bf(n,t,e={}){let r=new Pt;return n.asyncQueue.enqueueAndForget((async()=>(function(o,u,l,h,f){let m=new Hn({next:A=>{m.Nu(),u.enqueueAndForget((()=>da(o,T)));let R=A.docs.has(l);!R&&A.fromCache?f.reject(new V(b.UNAVAILABLE,"Failed to get document because the client is offline.")):R&&A.fromCache&&h&&h.source==="server"?f.reject(new V(b.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.)')):f.resolve(A)},error:A=>f.reject(A)}),T=new Qn(ms(l.path),m,{includeMetadataChanges:!0,qa:!0});return ha(o,T)})(await ns(n),n.asyncQueue,t,e,r))),r.promise}function Rf(n,t,e={}){let r=new Pt;return n.asyncQueue.enqueueAndForget((async()=>(function(o,u,l,h,f){let m=new Hn({next:A=>{m.Nu(),u.enqueueAndForget((()=>da(o,T))),A.fromCache&&h.source==="server"?f.reject(new V(b.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.)')):f.resolve(A)},error:A=>f.reject(A)}),T=new Qn(l,m,{includeMetadataChanges:!0,qa:!0});return ha(o,T)})(await ns(n),n.asyncQueue,t,e,r))),r.promise}function Bl(n){let t={};return n.timeoutSeconds!==void 0&&(t.timeoutSeconds=n.timeoutSeconds),t}var wc=new Map;var Pf="firestore.googleapis.com",Tc=!0,rs=class{constructor(t){if(t.host===void 0){if(t.ssl!==void 0)throw new V(b.INVALID_ARGUMENT,"Can't provide ssl option if host option is not set");this.host=Pf,this.ssl=Tc}else this.host=t.host,this.ssl=t.ssl??Tc;if(this.isUsingEmulator=t.emulatorOptions!==void 0,this.credentials=t.credentials,this.ignoreUndefinedProperties=!!t.ignoreUndefinedProperties,this.localCache=t.localCache,t.cacheSizeBytes===void 0)this.cacheSizeBytes=Sl;else{if(t.cacheSizeBytes!==-1&&t.cacheSizeBytes<bl)throw new V(b.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");this.cacheSizeBytes=t.cacheSizeBytes}Oh("experimentalForceLongPolling",t.experimentalForceLongPolling,"experimentalAutoDetectLongPolling",t.experimentalAutoDetectLongPolling),this.experimentalForceLongPolling=!!t.experimentalForceLongPolling,this.experimentalForceLongPolling?this.experimentalAutoDetectLongPolling=!1:t.experimentalAutoDetectLongPolling===void 0?this.experimentalAutoDetectLongPolling=!0:this.experimentalAutoDetectLongPolling=!!t.experimentalAutoDetectLongPolling,this.experimentalLongPollingOptions=Bl(t.experimentalLongPollingOptions??{}),(function(r){if(r.timeoutSeconds!==void 0){if(isNaN(r.timeoutSeconds))throw new V(b.INVALID_ARGUMENT,`invalid long polling timeout: ${r.timeoutSeconds} (must not be NaN)`);if(r.timeoutSeconds<5)throw new V(b.INVALID_ARGUMENT,`invalid long polling timeout: ${r.timeoutSeconds} (minimum allowed value is 5)`);if(r.timeoutSeconds>30)throw new V(b.INVALID_ARGUMENT,`invalid long polling timeout: ${r.timeoutSeconds} (maximum allowed value is 30)`)}})(this.experimentalLongPollingOptions),this.useFetchStreams=!!t.useFetchStreams}isEqual(t){return this.host===t.host&&this.ssl===t.ssl&&this.credentials===t.credentials&&this.cacheSizeBytes===t.cacheSizeBytes&&this.experimentalForceLongPolling===t.experimentalForceLongPolling&&this.experimentalAutoDetectLongPolling===t.experimentalAutoDetectLongPolling&&(function(r,i){return r.timeoutSeconds===i.timeoutSeconds})(this.experimentalLongPollingOptions,t.experimentalLongPollingOptions)&&this.ignoreUndefinedProperties===t.ignoreUndefinedProperties&&this.useFetchStreams===t.useFetchStreams}},Jn=class{constructor(t,e,r,i){this._authCredentials=t,this._appCheckCredentials=e,this._databaseId=r,this._app=i,this.type="firestore-lite",this._persistenceKey="(lite)",this._settings=new rs({}),this._settingsFrozen=!1,this._emulatorOptions={},this._terminateTask="notTerminated"}get app(){if(!this._app)throw new V(b.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!=="notTerminated"}_setSettings(t){if(this._settingsFrozen)throw new V(b.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 rs(t),this._emulatorOptions=t.emulatorOptions||{},t.credentials!==void 0&&(this._authCredentials=(function(r){if(!r)return new oi;switch(r.type){case"firstParty":return new ci(r.sessionIndex||"0",r.iamToken||null,r.authTokenFactory||null);case"provider":return r.client;default:throw new V(b.INVALID_ARGUMENT,"makeAuthCredentialsProvider failed due to invalid credential type")}})(t.credentials))}_getSettings(){return this._settings}_getEmulatorOptions(){return this._emulatorOptions}_freezeSettings(){return this._settingsFrozen=!0,this._settings}_delete(){return this._terminateTask==="notTerminated"&&(this._terminateTask=this._terminate()),this._terminateTask}async _restart(){this._terminateTask==="notTerminated"?await this._terminate():this._terminateTask="notTerminated"}toJSON(){return{app:this._app,databaseId:this._databaseId,settings:this._settings}}_terminate(){return(function(e){let r=wc.get(e);r&&(N("ComponentProvider","Removing Datastore"),wc.delete(e),r.terminate())})(this),Promise.resolve()}};var xt=class n{constructor(t,e,r){this.converter=e,this._query=r,this.type="query",this.firestore=t}withConverter(t){return new n(this.firestore,t,this._query)}},st=class n{constructor(t,e,r){this.converter=e,this._key=r,this.type="document",this.firestore=t}get _path(){return this._key.path}get id(){return this._key.path.lastSegment()}get path(){return this._key.path.canonicalString()}get parent(){return new se(this.firestore,this.converter,this._key.path.popLast())}withConverter(t){return new n(this.firestore,t,this._key)}toJSON(){return{type:n._jsonSchemaVersion,referencePath:this._key.toString()}}static fromJSON(t,e,r){if(Zn(e,n._jsonSchema))return new n(t,r||null,new M(W.fromString(e.referencePath)))}};st._jsonSchemaVersion="firestore/documentReference/1.0",st._jsonSchema={type:nt("string",st._jsonSchemaVersion),referencePath:nt("string")};var se=class n extends xt{constructor(t,e,r){super(t,e,ms(r)),this._path=r,this.type="collection"}get id(){return this._query.path.lastSegment()}get path(){return this._query.path.canonicalString()}get parent(){let t=this._path.popLast();return t.isEmpty()?null:new st(this.firestore,null,new M(t))}withConverter(t){return new n(this.firestore,t,this._path)}};function sm(n,t,...e){if(n=wt(n),Rc("collection","path",t),n instanceof Jn){let r=W.fromString(t,...e);return Uu(r),new se(n,null,r)}{if(!(n instanceof st||n instanceof se))throw new V(b.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");let r=n._path.child(W.fromString(t,...e));return Uu(r),new se(n.firestore,null,r)}}function im(n,t,...e){if(n=wt(n),arguments.length===1&&(t=Fn.newId()),Rc("doc","path",t),n instanceof Jn){let r=W.fromString(t,...e);return qu(r),new st(n,null,new M(r))}{if(!(n instanceof st||n instanceof se))throw new V(b.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");let r=n._path.child(W.fromString(t,...e));return qu(r),new st(n.firestore,n instanceof se?n.converter:null,new M(r))}}var Ic="AsyncQueue",ss=class{constructor(t=Promise.resolve()){this.Xu=[],this.ec=!1,this.tc=[],this.nc=null,this.rc=!1,this.sc=!1,this.oc=[],this.M_=new $n(this,"async_queue_retry"),this._c=()=>{let r=ri();r&&N(Ic,"Visibility state changed to "+r.visibilityState),this.M_.w_()},this.ac=t;let e=ri();e&&typeof e.addEventListener=="function"&&e.addEventListener("visibilitychange",this._c)}get isShuttingDown(){return this.ec}enqueueAndForget(t){this.enqueue(t)}enqueueAndForgetEvenWhileRestricted(t){this.uc(),this.cc(t)}enterRestrictedMode(t){if(!this.ec){this.ec=!0,this.sc=t||!1;let e=ri();e&&typeof e.removeEventListener=="function"&&e.removeEventListener("visibilitychange",this._c)}}enqueue(t){if(this.uc(),this.ec)return new Promise((()=>{}));let e=new Pt;return this.cc((()=>this.ec&&this.sc?Promise.resolve():(t().then(e.resolve,e.reject),e.promise))).then((()=>e.promise))}enqueueRetryable(t){this.enqueueAndForget((()=>(this.Xu.push(t),this.lc())))}async lc(){if(this.Xu.length!==0){try{await this.Xu[0](),this.Xu.shift(),this.M_.reset()}catch(t){if(!on(t))throw t;N(Ic,"Operation failed with retryable error: "+t)}this.Xu.length>0&&this.M_.p_((()=>this.lc()))}}cc(t){let e=this.ac.then((()=>(this.rc=!0,t().catch((r=>{throw this.nc=r,this.rc=!1,$t("INTERNAL UNHANDLED ERROR: ",Ec(r)),r})).then((r=>(this.rc=!1,r))))));return this.ac=e,e}enqueueAfterDelay(t,e,r){this.uc(),this.oc.indexOf(t)>-1&&(e=0);let i=Eo.createAndSchedule(this,t,e,r,(o=>this.hc(o)));return this.tc.push(i),i}uc(){this.nc&&O(47125,{Pc:Ec(this.nc)})}verifyOperationInProgress(){}async Tc(){let t;do t=this.ac,await t;while(t!==this.ac)}Ic(t){for(let e of this.tc)if(e.timerId===t)return!0;return!1}Ec(t){return this.Tc().then((()=>{this.tc.sort(((e,r)=>e.targetTimeMs-r.targetTimeMs));for(let e of this.tc)if(e.skipDelay(),t!=="all"&&e.timerId===t)break;return this.Tc()}))}dc(t){this.oc.push(t)}hc(t){let e=this.tc.indexOf(t);this.tc.splice(e,1)}};function Ec(n){let t=n.message||"";return n.stack&&(t=n.stack.includes(n.message)?n.stack:n.message+`
|
|
22
|
-
`+n.stack),t}function vc(n){return(function(e,r){if(typeof e!="object"||e===null)return!1;let i=e;for(let o of r)if(o in i&&typeof i[o]=="function")return!0;return!1})(n,["next","error","complete"])}var Dt=class extends Jn{constructor(t,e,r,i){super(t,e,r,i),this.type="firestore",this._queue=new ss,this._persistenceKey=i?.name||"[DEFAULT]"}async _terminate(){if(this._firestoreClient){let t=this._firestoreClient.terminate();this._queue=new ss(t),this._firestoreClient=void 0,await t}}};function om(n,t,e){e||(e=Dr);let r=Du(n,"firestore");if(r.isInitialized(e)){let i=r.getImmediate({identifier:e}),o=r.getOptions(e);if(Qs(o,t))return i;throw new V(b.FAILED_PRECONDITION,"initializeFirestore() has already been called with different options. To avoid this error, call initializeFirestore() with the same options as when it was originally called, or call getFirestore() to return the already initialized instance.")}if(t.cacheSizeBytes!==void 0&&t.localCache!==void 0)throw new V(b.INVALID_ARGUMENT,"cache and cacheSizeBytes cannot be specified at the same time as cacheSizeBytes willbe deprecated. Instead, specify the cache size in the cache object");if(t.cacheSizeBytes!==void 0&&t.cacheSizeBytes!==-1&&t.cacheSizeBytes<bl)throw new V(b.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");return t.host&&$s(t.host)&&Su(t.host),r.initialize({options:t,instanceIdentifier:e})}function un(n){if(n._terminated)throw new V(b.FAILED_PRECONDITION,"The client has already been terminated.");return n._firestoreClient||Vf(n),n._firestoreClient}function Vf(n){let t=n._freezeSettings(),e=(function(i,o,u,l){return new gi(i,o,u,l.host,l.ssl,l.experimentalForceLongPolling,l.experimentalAutoDetectLongPolling,Bl(l.experimentalLongPollingOptions),l.useFetchStreams,l.isUsingEmulator)})(n._databaseId,n._app?.options.appId||"",n._persistenceKey,t);n._componentsProvider||t.localCache?._offlineComponentProvider&&t.localCache?._onlineComponentProvider&&(n._componentsProvider={_offline:t.localCache._offlineComponentProvider,_online:t.localCache._onlineComponentProvider}),n._firestoreClient=new ko(n._authCredentials,n._appCheckCredentials,n._queue,e,n._componentsProvider&&(function(i){let o=i?._online.build();return{_offline:i?._offline.build(o),_online:o}})(n._componentsProvider))}var Kt=class n{constructor(t){this._byteString=t}static fromBase64String(t){try{return new n(gt.fromBase64String(t))}catch(e){throw new V(b.INVALID_ARGUMENT,"Failed to construct data from Base64 string: "+e)}}static fromUint8Array(t){return new n(gt.fromUint8Array(t))}toBase64(){return this._byteString.toBase64()}toUint8Array(){return this._byteString.toUint8Array()}toString(){return"Bytes(base64: "+this.toBase64()+")"}isEqual(t){return this._byteString.isEqual(t._byteString)}toJSON(){return{type:n._jsonSchemaVersion,bytes:this.toBase64()}}static fromJSON(t){if(Zn(t,n._jsonSchema))return n.fromBase64String(t.bytes)}};Kt._jsonSchemaVersion="firestore/bytes/1.0",Kt._jsonSchema={type:nt("string",Kt._jsonSchemaVersion),bytes:nt("string")};var Xt=class{constructor(...t){for(let e=0;e<t.length;++e)if(t[e].length===0)throw new V(b.INVALID_ARGUMENT,"Invalid field name at argument $(i + 1). Field names must not be empty.");this._internalPath=new Et(t)}isEqual(t){return this._internalPath.isEqual(t._internalPath)}};function am(){return new Xt(di)}var Pe=class{constructor(t){this._methodName=t}};var ie=class n{constructor(t,e){if(!isFinite(t)||t<-90||t>90)throw new V(b.INVALID_ARGUMENT,"Latitude must be a number between -90 and 90, but was: "+t);if(!isFinite(e)||e<-180||e>180)throw new V(b.INVALID_ARGUMENT,"Longitude must be a number between -180 and 180, but was: "+e);this._lat=t,this._long=e}get latitude(){return this._lat}get longitude(){return this._long}isEqual(t){return this._lat===t._lat&&this._long===t._long}_compareTo(t){return q(this._lat,t._lat)||q(this._long,t._long)}toJSON(){return{latitude:this._lat,longitude:this._long,type:n._jsonSchemaVersion}}static fromJSON(t){if(Zn(t,n._jsonSchema))return new n(t.latitude,t.longitude)}};ie._jsonSchemaVersion="firestore/geoPoint/1.0",ie._jsonSchema={type:nt("string",ie._jsonSchemaVersion),latitude:nt("number"),longitude:nt("number")};var oe=class n{constructor(t){this._values=(t||[]).map((e=>e))}toArray(){return this._values.map((t=>t))}isEqual(t){return(function(r,i){if(r.length!==i.length)return!1;for(let o=0;o<r.length;++o)if(r[o]!==i[o])return!1;return!0})(this._values,t._values)}toJSON(){return{type:n._jsonSchemaVersion,vectorValues:this._values}}static fromJSON(t){if(Zn(t,n._jsonSchema)){if(Array.isArray(t.vectorValues)&&t.vectorValues.every((e=>typeof e=="number")))return new n(t.vectorValues);throw new V(b.INVALID_ARGUMENT,"Expected 'vectorValues' field to be a number array")}}};oe._jsonSchemaVersion="firestore/vectorValue/1.0",oe._jsonSchema={type:nt("string",oe._jsonSchemaVersion),vectorValues:nt("object")};var Cf=/^__.*__$/,Mo=class{constructor(t,e,r){this.data=t,this.fieldMask=e,this.fieldTransforms=r}toMutation(t,e){return this.fieldMask!==null?new qt(t,this.data,this.fieldMask,e,this.fieldTransforms):new be(t,this.data,e,this.fieldTransforms)}},is=class{constructor(t,e,r){this.data=t,this.fieldMask=e,this.fieldTransforms=r}toMutation(t,e){return new qt(t,this.data,this.fieldMask,e,this.fieldTransforms)}};function jl(n){switch(n){case 0:case 2:case 1:return!0;case 3:case 4:return!1;default:throw O(40011,{Ac:n})}}var os=class n{constructor(t,e,r,i,o,u){this.settings=t,this.databaseId=e,this.serializer=r,this.ignoreUndefinedProperties=i,o===void 0&&this.Rc(),this.fieldTransforms=o||[],this.fieldMask=u||[]}get path(){return this.settings.path}get Ac(){return this.settings.Ac}Vc(t){return new n({...this.settings,...t},this.databaseId,this.serializer,this.ignoreUndefinedProperties,this.fieldTransforms,this.fieldMask)}mc(t){let e=this.path?.child(t),r=this.Vc({path:e,fc:!1});return r.gc(t),r}yc(t){let e=this.path?.child(t),r=this.Vc({path:e,fc:!1});return r.Rc(),r}wc(t){return this.Vc({path:void 0,fc:!0})}Sc(t){return as(t,this.settings.methodName,this.settings.bc||!1,this.path,this.settings.Dc)}contains(t){return this.fieldMask.find((e=>t.isPrefixOf(e)))!==void 0||this.fieldTransforms.find((e=>t.isPrefixOf(e.field)))!==void 0}Rc(){if(this.path)for(let t=0;t<this.path.length;t++)this.gc(this.path.get(t))}gc(t){if(t.length===0)throw this.Sc("Document fields must not be empty");if(jl(this.Ac)&&Cf.test(t))throw this.Sc('Document fields cannot begin and end with "__"')}},Oo=class{constructor(t,e,r){this.databaseId=t,this.ignoreUndefinedProperties=e,this.serializer=r||ys(t)}Cc(t,e,r,i=!1){return new os({Ac:t,methodName:e,Dc:r,path:Et.emptyPath(),fc:!1,bc:i},this.databaseId,this.serializer,this.ignoreUndefinedProperties)}};function cn(n){let t=n._freezeSettings(),e=ys(n._databaseId);return new Oo(n._databaseId,!!t.ignoreUndefinedProperties,e)}function ya(n,t,e,r,i,o={}){let u=n.Cc(o.merge||o.mergeFields?2:0,t,e,i);Ta("Data must be an object, but it was:",u,r);let l=zl(r,u),h,f;if(o.merge)h=new Rt(u.fieldMask),f=u.fieldTransforms;else if(o.mergeFields){let m=[];for(let T of o.mergeFields){let A=qo(t,T,e);if(!u.contains(A))throw new V(b.INVALID_ARGUMENT,`Field '${A}' is specified in your field mask but missing from your input data.`);$l(m,A)||m.push(A)}h=new Rt(m),f=u.fieldTransforms.filter((T=>h.covers(T.field)))}else h=null,f=u.fieldTransforms;return new Mo(new Tt(l),h,f)}var Xn=class n extends Pe{_toFieldTransform(t){if(t.Ac!==2)throw t.Ac===1?t.Sc(`${this._methodName}() can only appear at the top level of your update data`):t.Sc(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);return t.fieldMask.push(t.path),null}isEqual(t){return t instanceof n}};function xf(n,t,e){return new os({Ac:3,Dc:t.settings.Dc,methodName:n._methodName,fc:e},t.databaseId,t.serializer,t.ignoreUndefinedProperties)}var Fo=class n extends Pe{_toFieldTransform(t){return new Fr(t.path,new Ae)}isEqual(t){return t instanceof n}},Lo=class n extends Pe{constructor(t,e){super(t),this.vc=e}_toFieldTransform(t){let e=xf(this,t,!0),r=this.vc.map((o=>ln(o,e))),i=new le(r);return new Fr(t.path,i)}isEqual(t){return t instanceof n&&Qs(this.vc,t.vc)}};function _a(n,t,e,r){let i=n.Cc(1,t,e);Ta("Data must be an object, but it was:",i,r);let o=[],u=Tt.empty();fe(r,((h,f)=>{let m=Ia(t,h,e);f=wt(f);let T=i.yc(m);if(f instanceof Xn)o.push(m);else{let A=ln(f,T);A!=null&&(o.push(m),u.set(m,A))}}));let l=new Rt(o);return new is(u,l,i.fieldTransforms)}function wa(n,t,e,r,i,o){let u=n.Cc(1,t,e),l=[qo(t,r,e)],h=[i];if(o.length%2!=0)throw new V(b.INVALID_ARGUMENT,`Function ${t}() needs to be called with an even number of arguments that alternate between field names and values.`);for(let A=0;A<o.length;A+=2)l.push(qo(t,o[A])),h.push(o[A+1]);let f=[],m=Tt.empty();for(let A=l.length-1;A>=0;--A)if(!$l(f,l[A])){let R=l[A],D=h[A];D=wt(D);let k=u.yc(R);if(D instanceof Xn)f.push(R);else{let C=ln(D,k);C!=null&&(f.push(R),m.set(R,C))}}let T=new Rt(f);return new is(m,T,u.fieldTransforms)}function Gl(n,t,e,r=!1){return ln(e,n.Cc(r?4:3,t))}function ln(n,t){if(Kl(n=wt(n)))return Ta("Unsupported field value:",t,n),zl(n,t);if(n instanceof Pe)return(function(r,i){if(!jl(i.Ac))throw i.Sc(`${r._methodName}() can only be used with update() and set()`);if(!i.path)throw i.Sc(`${r._methodName}() is not currently supported inside arrays`);let o=r._toFieldTransform(i);o&&i.fieldTransforms.push(o)})(n,t),null;if(n===void 0&&t.ignoreUndefinedProperties)return null;if(t.path&&t.fieldMask.push(t.path),n instanceof Array){if(t.settings.fc&&t.Ac!==4)throw t.Sc("Nested arrays are not supported");return(function(r,i){let o=[],u=0;for(let l of r){let h=ln(l,i.wc(u));h==null&&(h={nullValue:"NULL_VALUE"}),o.push(h),u++}return{arrayValue:{values:o}}})(n,t)}return(function(r,i){if((r=wt(r))===null)return{nullValue:"NULL_VALUE"};if(typeof r=="number")return md(i.serializer,r);if(typeof r=="boolean")return{booleanValue:r};if(typeof r=="string")return{stringValue:r};if(r instanceof Date){let o=rt.fromDate(r);return{timestampValue:Gr(i.serializer,o)}}if(r instanceof rt){let o=new rt(r.seconds,1e3*Math.floor(r.nanoseconds/1e3));return{timestampValue:Gr(i.serializer,o)}}if(r instanceof ie)return{geoPointValue:{latitude:r.latitude,longitude:r.longitude}};if(r instanceof Kt)return{bytesValue:yl(i.serializer,r._byteString)};if(r instanceof st){let o=i.databaseId,u=r.firestore._databaseId;if(!u.isEqual(o))throw i.Sc(`Document reference is for database ${u.projectId}/${u.database} but should be for database ${o.projectId}/${o.database}`);return{referenceValue:sa(r.firestore._databaseId||i.databaseId,r._key.path)}}if(r instanceof oe)return(function(u,l){return{mapValue:{fields:{[Xo]:{stringValue:Yo},[Qe]:{arrayValue:{values:u.toArray().map((f=>{if(typeof f!="number")throw l.Sc("VectorValues must only contain numeric values.");return ra(l.serializer,f)}))}}}}}})(r,i);throw i.Sc(`Unsupported field value: ${hs(r)}`)})(n,t)}function zl(n,t){let e={};return Gc(n)?t.path&&t.path.length>0&&t.fieldMask.push(t.path):fe(n,((r,i)=>{let o=ln(i,t.mc(r));o!=null&&(e[r]=o)})),{mapValue:{fields:e}}}function Kl(n){return!(typeof n!="object"||n===null||n instanceof Array||n instanceof Date||n instanceof rt||n instanceof ie||n instanceof Kt||n instanceof st||n instanceof Pe||n instanceof oe)}function Ta(n,t,e){if(!Kl(e)||!Pc(e)){let r=hs(e);throw r==="an object"?t.Sc(n+" a custom object"):t.Sc(n+" "+r)}}function qo(n,t,e){if((t=wt(t))instanceof Xt)return t._internalPath;if(typeof t=="string")return Ia(n,t);throw as("Field path arguments must be of type string or ",n,!1,void 0,e)}var Df=new RegExp("[~\\*/\\[\\]]");function Ia(n,t,e){if(t.search(Df)>=0)throw as(`Invalid field path (${t}). Paths must not contain '~', '*', '/', '[', or ']'`,n,!1,void 0,e);try{return new Xt(...t.split("."))._internalPath}catch{throw as(`Invalid field path (${t}). Paths must not be empty, begin with '.', end with '.', or contain '..'`,n,!1,void 0,e)}}function as(n,t,e,r,i){let o=r&&!r.isEmpty(),u=i!==void 0,l=`Function ${t}() called with invalid data`;e&&(l+=" (via `toFirestore()`)"),l+=". ";let h="";return(o||u)&&(h+=" (found",o&&(h+=` in field ${r}`),u&&(h+=` in document ${i}`),h+=")"),new V(b.INVALID_ARGUMENT,l+n+h)}function $l(n,t){return n.some((e=>e.isEqual(t)))}var Ve=class{constructor(t,e,r,i,o){this._firestore=t,this._userDataWriter=e,this._key=r,this._document=i,this._converter=o}get id(){return this._key.path.lastSegment()}get ref(){return new st(this._firestore,this._converter,this._key)}exists(){return this._document!==null}data(){if(this._document){if(this._converter){let t=new Uo(this._firestore,this._userDataWriter,this._key,this._document,null);return this._converter.fromFirestore(t)}return this._userDataWriter.convertValue(this._document.data.value)}}get(t){if(this._document){let e=this._document.data.field(Ts("DocumentSnapshot.get",t));if(e!==null)return this._userDataWriter.convertValue(e)}}},Uo=class extends Ve{data(){return super.data()}};function Ts(n,t){return typeof t=="string"?Ia(n,t):t instanceof Xt?t._internalPath:t._delegate._internalPath}function Ql(n){if(n.limitType==="L"&&n.explicitOrderBy.length===0)throw new V(b.UNIMPLEMENTED,"limitToLast() queries require specifying at least one orderBy() clause")}var Yn=class{},Ce=class extends Yn{};function um(n,t,...e){let r=[];t instanceof Yn&&r.push(t),r=r.concat(e),(function(o){let u=o.filter((h=>h instanceof Bo)).length,l=o.filter((h=>h instanceof us)).length;if(u>1||u>0&&l>0)throw new V(b.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(let i of r)n=i._apply(n);return n}var us=class n extends Ce{constructor(t,e,r){super(),this._field=t,this._op=e,this._value=r,this.type="where"}static _create(t,e,r){return new n(t,e,r)}_apply(t){let e=this._parse(t);return Hl(t._query,e),new xt(t.firestore,t.converter,Pi(t._query,e))}_parse(t){let e=cn(t.firestore);return(function(o,u,l,h,f,m,T){let A;if(f.isKeyField()){if(m==="array-contains"||m==="array-contains-any")throw new V(b.INVALID_ARGUMENT,`Invalid Query. You can't perform '${m}' queries on documentId().`);if(m==="in"||m==="not-in"){Sc(T,m);let D=[];for(let k of T)D.push(Ac(h,o,k));A={arrayValue:{values:D}}}else A=Ac(h,o,T)}else m!=="in"&&m!=="not-in"&&m!=="array-contains-any"||Sc(T,m),A=Gl(l,u,T,m==="in"||m==="not-in");return et.create(f,m,A)})(t._query,"where",e,t.firestore._databaseId,this._field,this._op,this._value)}};function cm(n,t,e){let r=t,i=Ts("where",n);return us._create(i,r,e)}var Bo=class n extends Yn{constructor(t,e){super(),this.type=t,this._queryConstraints=e}static _create(t,e){return new n(t,e)}_parse(t){let e=this._queryConstraints.map((r=>r._parse(t))).filter((r=>r.getFilters().length>0));return e.length===1?e[0]:Ct.create(e,this._getOperator())}_apply(t){let e=this._parse(t);return e.getFilters().length===0?t:((function(i,o){let u=i,l=o.getFlattenedFilters();for(let h of l)Hl(u,h),u=Pi(u,h)})(t._query,e),new xt(t.firestore,t.converter,Pi(t._query,e)))}_getQueryConstraints(){return this._queryConstraints}_getOperator(){return this.type==="and"?"and":"or"}};var jo=class n extends Ce{constructor(t,e){super(),this._field=t,this._direction=e,this.type="orderBy"}static _create(t,e){return new n(t,e)}_apply(t){let e=(function(i,o,u){if(i.startAt!==null)throw new V(b.INVALID_ARGUMENT,"Invalid query. You must not call startAt() or startAfter() before calling orderBy().");if(i.endAt!==null)throw new V(b.INVALID_ARGUMENT,"Invalid query. You must not call endAt() or endBefore() before calling orderBy().");return new ve(o,u)})(t._query,this._field,this._direction);return new xt(t.firestore,t.converter,(function(i,o){let u=i.explicitOrderBy.concat([o]);return new Lt(i.path,i.collectionGroup,u,i.filters.slice(),i.limit,i.limitType,i.startAt,i.endAt)})(t._query,e))}};function lm(n,t="asc"){let e=t,r=Ts("orderBy",n);return jo._create(r,e)}var Go=class n extends Ce{constructor(t,e,r){super(),this.type=t,this._limit=e,this._limitType=r}static _create(t,e,r){return new n(t,e,r)}_apply(t){return new xt(t.firestore,t.converter,Or(t._query,this._limit,this._limitType))}};function hm(n){return Fh("limit",n),Go._create("limit",n,"F")}var cs=class n extends Ce{constructor(t,e,r){super(),this.type=t,this._docOrFields=e,this._inclusive=r}static _create(t,e,r){return new n(t,e,r)}_apply(t){let e=Wl(t,this.type,this._docOrFields,this._inclusive);return new xt(t.firestore,t.converter,(function(i,o){return new Lt(i.path,i.collectionGroup,i.explicitOrderBy.slice(),i.filters.slice(),i.limit,i.limitType,o,i.endAt)})(t._query,e))}};function dm(...n){return cs._create("startAt",n,!0)}function fm(...n){return cs._create("startAfter",n,!1)}var zo=class n extends Ce{constructor(t,e,r){super(),this.type=t,this._docOrFields=e,this._inclusive=r}static _create(t,e,r){return new n(t,e,r)}_apply(t){let e=Wl(t,this.type,this._docOrFields,this._inclusive);return new xt(t.firestore,t.converter,(function(i,o){return new Lt(i.path,i.collectionGroup,i.explicitOrderBy.slice(),i.filters.slice(),i.limit,i.limitType,i.startAt,o)})(t._query,e))}};function mm(...n){return zo._create("endAt",n,!0)}function Wl(n,t,e,r){if(e[0]=wt(e[0]),e[0]instanceof Ve)return(function(o,u,l,h,f){if(!h)throw new V(b.NOT_FOUND,`Can't use a DocumentSnapshot that doesn't exist for ${l}().`);let m=[];for(let T of je(o))if(T.field.isKeyField())m.push(kr(u,h.key));else{let A=h.data.field(T.field);if(ds(A))throw new V(b.INVALID_ARGUMENT,'Invalid query. You are trying to start or end a query using a document for which the field "'+T.field+'" is an uncommitted server timestamp. (Since the value of this field is unknown, you cannot start/end a query with it.)');if(A===null){let R=T.field.canonicalString();throw new V(b.INVALID_ARGUMENT,`Invalid query. You are trying to start or end a query using a document for which the field '${R}' (used as the orderBy) does not exist.`)}m.push(A)}return new ce(m,f)})(n._query,n.firestore._databaseId,t,e[0]._document,r);{let i=cn(n.firestore);return(function(u,l,h,f,m,T){let A=u.explicitOrderBy;if(m.length>A.length)throw new V(b.INVALID_ARGUMENT,`Too many arguments provided to ${f}(). The number of arguments must be less than or equal to the number of orderBy() clauses`);let R=[];for(let D=0;D<m.length;D++){let k=m[D];if(A[D].field.isKeyField()){if(typeof k!="string")throw new V(b.INVALID_ARGUMENT,`Invalid query. Expected a string for document ID in ${f}(), but got a ${typeof k}`);if(!na(u)&&k.indexOf("/")!==-1)throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying a collection and ordering by documentId(), the value passed to ${f}() must be a plain document ID, but '${k}' contains a slash.`);let C=u.path.child(W.fromString(k));if(!M.isDocumentKey(C))throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying a collection group and ordering by documentId(), the value passed to ${f}() must result in a valid document path, but '${C}' is not because it contains an odd number of segments.`);let G=new M(C);R.push(kr(l,G))}else{let C=Gl(h,f,k);R.push(C)}}return new ce(R,T)})(n._query,n.firestore._databaseId,i,t,e,r)}}function Ac(n,t,e){if(typeof(e=wt(e))=="string"){if(e==="")throw new V(b.INVALID_ARGUMENT,"Invalid query. When querying with documentId(), you must provide a valid document ID, but it was an empty string.");if(!na(t)&&e.indexOf("/")!==-1)throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying a collection by documentId(), you must provide a plain document ID, but '${e}' contains a '/' character.`);let r=t.path.child(W.fromString(e));if(!M.isDocumentKey(r))throw new V(b.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 kr(n,new M(r))}if(e instanceof st)return kr(n,e._key);throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying with documentId(), you must provide a valid string or a DocumentReference, but it was: ${hs(e)}.`)}function Sc(n,t){if(!Array.isArray(n)||n.length===0)throw new V(b.INVALID_ARGUMENT,`Invalid Query. A non-empty array is required for '${t.toString()}' filters.`)}function Hl(n,t){let e=(function(i,o){for(let u of i)for(let l of u.getFlattenedFilters())if(o.indexOf(l.op)>=0)return l.op;return null})(n.filters,(function(i){switch(i){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[]}})(t.op));if(e!==null)throw e===t.op?new V(b.INVALID_ARGUMENT,`Invalid query. You cannot use more than one '${t.op.toString()}' filter.`):new V(b.INVALID_ARGUMENT,`Invalid query. You cannot use '${t.op.toString()}' filters with '${e.toString()}' filters.`)}var ls=class{convertValue(t,e="none"){switch(ue(t)){case 0:return null;case 1:return t.booleanValue;case 2:return J(t.integerValue||t.doubleValue);case 3:return this.convertTimestamp(t.timestampValue);case 4:return this.convertServerTimestamp(t,e);case 5:return t.stringValue;case 6:return this.convertBytes(Wt(t.bytesValue));case 7:return this.convertReference(t.referenceValue);case 8:return this.convertGeoPoint(t.geoPointValue);case 9:return this.convertArray(t.arrayValue,e);case 11:return this.convertObject(t.mapValue,e);case 10:return this.convertVectorValue(t.mapValue);default:throw O(62114,{value:t})}}convertObject(t,e){return this.convertObjectMap(t.fields,e)}convertObjectMap(t,e="none"){let r={};return fe(t,((i,o)=>{r[i]=this.convertValue(o,e)})),r}convertVectorValue(t){let e=t.fields?.[Qe].arrayValue?.values?.map((r=>J(r.doubleValue)));return new oe(e)}convertGeoPoint(t){return new ie(J(t.latitude),J(t.longitude))}convertArray(t,e){return(t.values||[]).map((r=>this.convertValue(r,e)))}convertServerTimestamp(t,e){switch(e){case"previous":let r=fs(t);return r==null?null:this.convertValue(r,e);case"estimate":return this.convertTimestamp(Un(t));default:return null}}convertTimestamp(t){let e=Qt(t);return new rt(e.seconds,e.nanos)}convertDocumentKey(t,e){let r=W.fromString(t);j(Al(r),9688,{name:t});let i=new Nr(r.get(1),r.get(3)),o=new M(r.popFirst(5));return i.isEqual(e)||$t(`Document ${o} contains a document reference within a different database (${i.projectId}/${i.database}) which is not supported. It will be treated as a reference in the current database (${e.projectId}/${e.database}) instead.`),o}};function Ea(n,t,e){let r;return r=n?e&&(e.merge||e.mergeFields)?n.toFirestore(t,e):n.toFirestore(t):t,r}var Ko=class extends ls{constructor(t){super(),this.firestore=t}convertBytes(t){return new Kt(t)}convertReference(t){let e=this.convertDocumentKey(t,this.firestore._databaseId);return new st(this.firestore,null,e)}};var ne=class{constructor(t,e){this.hasPendingWrites=t,this.fromCache=e}isEqual(t){return this.hasPendingWrites===t.hasPendingWrites&&this.fromCache===t.fromCache}},ae=class n extends Ve{constructor(t,e,r,i,o,u){super(t,e,r,i,u),this._firestore=t,this._firestoreImpl=t,this.metadata=o}exists(){return super.exists()}data(t={}){if(this._document){if(this._converter){let e=new ze(this._firestore,this._userDataWriter,this._key,this._document,this.metadata,null);return this._converter.fromFirestore(e,t)}return this._userDataWriter.convertValue(this._document.data.value,t.serverTimestamps)}}get(t,e={}){if(this._document){let r=this._document.data.field(Ts("DocumentSnapshot.get",t));if(r!==null)return this._userDataWriter.convertValue(r,e.serverTimestamps)}}toJSON(){if(this.metadata.hasPendingWrites)throw new V(b.FAILED_PRECONDITION,"DocumentSnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().");let t=this._document,e={};return e.type=n._jsonSchemaVersion,e.bundle="",e.bundleSource="DocumentSnapshot",e.bundleName=this._key.toString(),!t||!t.isValidDocument()||!t.isFoundDocument()?e:(this._userDataWriter.convertObjectMap(t.data.value.mapValue.fields,"previous"),e.bundle=(this._firestore,this.ref.path,"NOT SUPPORTED"),e)}};ae._jsonSchemaVersion="firestore/documentSnapshot/1.0",ae._jsonSchema={type:nt("string",ae._jsonSchemaVersion),bundleSource:nt("string","DocumentSnapshot"),bundleName:nt("string"),bundle:nt("string")};var ze=class extends ae{data(t={}){return super.data(t)}},Te=class n{constructor(t,e,r,i){this._firestore=t,this._userDataWriter=e,this._snapshot=i,this.metadata=new ne(i.hasPendingWrites,i.fromCache),this.query=r}get docs(){let t=[];return this.forEach((e=>t.push(e))),t}get size(){return this._snapshot.docs.size}get empty(){return this.size===0}forEach(t,e){this._snapshot.docs.forEach((r=>{t.call(e,new ze(this._firestore,this._userDataWriter,r.key,r,new ne(this._snapshot.mutatedKeys.has(r.key),this._snapshot.fromCache),this.query.converter))}))}docChanges(t={}){let e=!!t.includeMetadataChanges;if(e&&this._snapshot.excludesMetadataChanges)throw new V(b.INVALID_ARGUMENT,"To include metadata changes with your document changes, you must also pass { includeMetadataChanges:true } to onSnapshot().");return this._cachedChanges&&this._cachedChangesIncludeMetadataChanges===e||(this._cachedChanges=(function(i,o){if(i._snapshot.oldDocs.isEmpty()){let u=0;return i._snapshot.docChanges.map((l=>{let h=new ze(i._firestore,i._userDataWriter,l.doc.key,l.doc,new ne(i._snapshot.mutatedKeys.has(l.doc.key),i._snapshot.fromCache),i.query.converter);return l.doc,{type:"added",doc:h,oldIndex:-1,newIndex:u++}}))}{let u=i._snapshot.oldDocs;return i._snapshot.docChanges.filter((l=>o||l.type!==3)).map((l=>{let h=new ze(i._firestore,i._userDataWriter,l.doc.key,l.doc,new ne(i._snapshot.mutatedKeys.has(l.doc.key),i._snapshot.fromCache),i.query.converter),f=-1,m=-1;return l.type!==0&&(f=u.indexOf(l.doc.key),u=u.delete(l.doc.key)),l.type!==1&&(u=u.add(l.doc),m=u.indexOf(l.doc.key)),{type:Nf(l.type),doc:h,oldIndex:f,newIndex:m}}))}})(this,e),this._cachedChangesIncludeMetadataChanges=e),this._cachedChanges}toJSON(){if(this.metadata.hasPendingWrites)throw new V(b.FAILED_PRECONDITION,"QuerySnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().");let t={};t.type=n._jsonSchemaVersion,t.bundleSource="QuerySnapshot",t.bundleName=Fn.newId(),this._firestore._databaseId.database,this._firestore._databaseId.projectId;let e=[],r=[],i=[];return this.docs.forEach((o=>{o._document!==null&&(e.push(o._document),r.push(this._userDataWriter.convertObjectMap(o._document.data.value.mapValue.fields,"previous")),i.push(o.ref.path))})),t.bundle=(this._firestore,this.query._query,t.bundleName,"NOT SUPPORTED"),t}};function Nf(n){switch(n){case 0:return"added";case 2:case 3:return"modified";case 1:return"removed";default:return O(61501,{type:n})}}function gm(n){n=vt(n,st);let t=vt(n.firestore,Dt);return bf(un(t),n._key).then((e=>Jl(t,n,e)))}Te._jsonSchemaVersion="firestore/querySnapshot/1.0",Te._jsonSchema={type:nt("string",Te._jsonSchemaVersion),bundleSource:nt("string","QuerySnapshot"),bundleName:nt("string"),bundle:nt("string")};var nn=class extends ls{constructor(t){super(),this.firestore=t}convertBytes(t){return new Kt(t)}convertReference(t){let e=this.convertDocumentKey(t,this.firestore._databaseId);return new st(this.firestore,null,e)}};function pm(n){n=vt(n,xt);let t=vt(n.firestore,Dt),e=un(t),r=new nn(t);return Ql(n._query),Rf(e,n._query).then((i=>new Te(t,r,n,i)))}function ym(n,t,e){n=vt(n,st);let r=vt(n.firestore,Dt),i=Ea(n.converter,t,e);return va(r,[ya(cn(r),"setDoc",n._key,i,n.converter!==null,e).toMutation(n._key,mt.none())])}function _m(n,t,e,...r){n=vt(n,st);let i=vt(n.firestore,Dt),o=cn(i),u;return u=typeof(t=wt(t))=="string"||t instanceof Xt?wa(o,"updateDoc",n._key,t,e,r):_a(o,"updateDoc",n._key,t),va(i,[u.toMutation(n._key,mt.exists(!0))])}function wm(n,...t){n=wt(n);let e={includeMetadataChanges:!1,source:"default"},r=0;typeof t[r]!="object"||vc(t[r])||(e=t[r++]);let i={includeMetadataChanges:e.includeMetadataChanges,source:e.source};if(vc(t[r])){let h=t[r];t[r]=h.next?.bind(h),t[r+1]=h.error?.bind(h),t[r+2]=h.complete?.bind(h)}let o,u,l;if(n instanceof st)u=vt(n.firestore,Dt),l=ms(n._key.path),o={next:h=>{t[r]&&t[r](Jl(u,n,h))},error:t[r+1],complete:t[r+2]};else{let h=vt(n,xt);u=vt(h.firestore,Dt),l=h._query;let f=new nn(u);o={next:m=>{t[r]&&t[r](new Te(u,f,h,m))},error:t[r+1],complete:t[r+2]},Ql(n._query)}return(function(f,m,T,A){let R=new Hn(A),D=new Qn(m,R,T);return f.asyncQueue.enqueueAndForget((async()=>ha(await ns(f),D))),()=>{R.Nu(),f.asyncQueue.enqueueAndForget((async()=>da(await ns(f),D)))}})(un(u),l,i,o)}function va(n,t){return(function(r,i){let o=new Pt;return r.asyncQueue.enqueueAndForget((async()=>gf(await Af(r),i,o))),o.promise})(un(n),t)}function Jl(n,t,e){let r=e.docs.get(t._key),i=new nn(n);return new ae(n,i,t._key,r,new ne(e.hasPendingWrites,e.fromCache),t.converter)}var kf={maxAttempts:5};var $o=class{constructor(t,e){this._firestore=t,this._commitHandler=e,this._mutations=[],this._committed=!1,this._dataReader=cn(t)}set(t,e,r){this._verifyNotCommitted();let i=re(t,this._firestore),o=Ea(i.converter,e,r),u=ya(this._dataReader,"WriteBatch.set",i._key,o,i.converter!==null,r);return this._mutations.push(u.toMutation(i._key,mt.none())),this}update(t,e,r,...i){this._verifyNotCommitted();let o=re(t,this._firestore),u;return u=typeof(e=wt(e))=="string"||e instanceof Xt?wa(this._dataReader,"WriteBatch.update",o._key,e,r,i):_a(this._dataReader,"WriteBatch.update",o._key,e),this._mutations.push(u.toMutation(o._key,mt.exists(!0))),this}delete(t){this._verifyNotCommitted();let e=re(t,this._firestore);return this._mutations=this._mutations.concat(new Ze(e._key,mt.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 V(b.FAILED_PRECONDITION,"A write batch can no longer be used after commit() has been called.")}};function re(n,t){if((n=wt(n)).firestore!==t)throw new V(b.INVALID_ARGUMENT,"Provided document reference is from a different Firestore instance.");return n}var Qo=class{constructor(t,e){this._firestore=t,this._transaction=e,this._dataReader=cn(t)}get(t){let e=re(t,this._firestore),r=new Ko(this._firestore);return this._transaction.lookup([e._key]).then((i=>{if(!i||i.length!==1)return O(24041);let o=i[0];if(o.isFoundDocument())return new Ve(this._firestore,r,o.key,o,e.converter);if(o.isNoDocument())return new Ve(this._firestore,r,e._key,null,e.converter);throw O(18433,{doc:o})}))}set(t,e,r){let i=re(t,this._firestore),o=Ea(i.converter,e,r),u=ya(this._dataReader,"Transaction.set",i._key,o,i.converter!==null,r);return this._transaction.set(i._key,u),this}update(t,e,r,...i){let o=re(t,this._firestore),u;return u=typeof(e=wt(e))=="string"||e instanceof Xt?wa(this._dataReader,"Transaction.update",o._key,e,r,i):_a(this._dataReader,"Transaction.update",o._key,e),this._transaction.update(o._key,u),this}delete(t){let e=re(t,this._firestore);return this._transaction.delete(e._key),this}};var Wo=class extends Qo{constructor(t,e){super(t,e),this._firestore=t}get(t){let e=re(t,this._firestore),r=new nn(this._firestore);return super.get(t).then((i=>new ae(this._firestore,r,e._key,i._document,new ne(!1,!1),e.converter)))}};function Tm(n,t,e){n=vt(n,Dt);let r={...kf,...e};return(function(o){if(o.maxAttempts<1)throw new V(b.INVALID_ARGUMENT,"Max attempts must be at least 1")})(r),(function(o,u,l){let h=new Pt;return o.asyncQueue.enqueueAndForget((async()=>{let f=await Sf(o);new No(o.asyncQueue,f,l,u,h).ju()})),h.promise})(un(n),(i=>t(new Wo(n,i))),r)}function Im(){return new Xn("deleteField")}function Em(){return new Fo("serverTimestamp")}function vm(...n){return new Lo("arrayUnion",n)}function Am(n){return un(n=vt(n,Dt)),new $o(n,(t=>va(n,t)))}(function(t,e=!0){(function(i){rn=i})(ku),xu(new Vu("firestore",((r,{instanceIdentifier:i,options:o})=>{let u=r.getProvider("app").getImmediate(),l=new Dt(new ai(r.getProvider("auth-internal")),new li(u,r.getProvider("app-check-internal")),(function(f,m){if(!Object.prototype.hasOwnProperty.apply(f.options,["projectId"]))throw new V(b.INVALID_ARGUMENT,'"projectId" not provided in firebase.initializeApp.');return new Nr(f.options.projectId,m)})(u,i),u);return o={useFetchStreams:e,...o},l._setSettings(o),l}),"PUBLIC").setMultipleInstances(!0)),Ws(Fu,Lu,t),Ws(Fu,Lu,"esm2020")})();export{rt as a,sm as b,im as c,om as d,Xt as e,am as f,um as g,cm as h,lm as i,hm as j,dm as k,fm as l,mm as m,gm as n,pm as o,ym as p,_m as q,wm as r,Tm as s,Im as t,Em as u,vm as v,Am as w};
|
|
21
|
+
)`}copy(t,e){let r=new n;return r.comparator=this.comparator,r.keyedMap=t,r.sortedSet=e,r}};var Zr=class{constructor(){this.ga=new Y(M.comparator)}track(t){let e=t.doc.key,r=this.ga.get(e);r?t.type!==0&&r.type===3?this.ga=this.ga.insert(e,t):t.type===3&&r.type!==1?this.ga=this.ga.insert(e,{type:r.type,doc:t.doc}):t.type===2&&r.type===2?this.ga=this.ga.insert(e,{type:2,doc:t.doc}):t.type===2&&r.type===0?this.ga=this.ga.insert(e,{type:0,doc:t.doc}):t.type===1&&r.type===0?this.ga=this.ga.remove(e):t.type===1&&r.type===2?this.ga=this.ga.insert(e,{type:1,doc:r.doc}):t.type===0&&r.type===1?this.ga=this.ga.insert(e,{type:2,doc:t.doc}):O(63341,{Rt:t,pa:r}):this.ga=this.ga.insert(e,t)}ya(){let t=[];return this.ga.inorderTraversal(((e,r)=>{t.push(r)})),t}},tn=class n{constructor(t,e,r,i,o,u,l,h,f){this.query=t,this.docs=e,this.oldDocs=r,this.docChanges=i,this.mutatedKeys=o,this.fromCache=u,this.syncStateChanged=l,this.excludesMetadataChanges=h,this.hasCachedResults=f}static fromInitialDocuments(t,e,r,i,o){let u=[];return e.forEach((l=>{u.push({type:0,doc:l})})),new n(t,e,Yr.emptySet(e),u,r,i,!0,!1,o)}get hasPendingWrites(){return!this.mutatedKeys.isEmpty()}isEqual(t){if(!(this.fromCache===t.fromCache&&this.hasCachedResults===t.hasCachedResults&&this.syncStateChanged===t.syncStateChanged&&this.mutatedKeys.isEqual(t.mutatedKeys)&&gs(this.query,t.query)&&this.docs.isEqual(t.docs)&&this.oldDocs.isEqual(t.oldDocs)))return!1;let e=this.docChanges,r=t.docChanges;if(e.length!==r.length)return!1;for(let i=0;i<e.length;i++)if(e[i].type!==r[i].type||!e[i].doc.isEqual(r[i].doc))return!1;return!0}};var Ao=class{constructor(){this.wa=void 0,this.Sa=[]}ba(){return this.Sa.some((t=>t.Da()))}},So=class{constructor(){this.queries=mc(),this.onlineState="Unknown",this.Ca=new Set}terminate(){(function(e,r){let i=L(e),o=i.queries;i.queries=mc(),o.forEach(((u,l)=>{for(let h of l.Sa)h.onError(r)}))})(this,new V(b.ABORTED,"Firestore shutting down"))}};function mc(){return new Ht((n=>rl(n)),gs)}async function da(n,t){let e=L(n),r=3,i=t.query,o=e.queries.get(i);o?!o.ba()&&t.Da()&&(r=2):(o=new Ao,r=t.Da()?0:1);try{switch(r){case 0:o.wa=await e.onListen(i,!0);break;case 1:o.wa=await e.onListen(i,!1);break;case 2:await e.onFirstRemoteStoreListen(i)}}catch(u){let l=ha(u,`Initialization of query '${qe(t.query)}' failed`);return void t.onError(l)}e.queries.set(i,o),o.Sa.push(t),t.va(e.onlineState),o.wa&&t.Fa(o.wa)&&ma(e)}async function fa(n,t){let e=L(n),r=t.query,i=3,o=e.queries.get(r);if(o){let u=o.Sa.indexOf(t);u>=0&&(o.Sa.splice(u,1),o.Sa.length===0?i=t.Da()?0:1:!o.ba()&&t.Da()&&(i=2))}switch(i){case 0:return e.queries.delete(r),e.onUnlisten(r,!0);case 1:return e.queries.delete(r),e.onUnlisten(r,!1);case 2:return e.onLastRemoteStoreUnlisten(r);default:return}}function uf(n,t){let e=L(n),r=!1;for(let i of t){let o=i.query,u=e.queries.get(o);if(u){for(let l of u.Sa)l.Fa(i)&&(r=!0);u.wa=i}}r&&ma(e)}function cf(n,t,e){let r=L(n),i=r.queries.get(t);if(i)for(let o of i.Sa)o.onError(e);r.queries.delete(t)}function ma(n){n.Ca.forEach((t=>{t.next()}))}var bo,gc;(gc=bo||(bo={})).Ma="default",gc.Cache="cache";var Qn=class{constructor(t,e,r){this.query=t,this.xa=e,this.Oa=!1,this.Na=null,this.onlineState="Unknown",this.options=r||{}}Fa(t){if(!this.options.includeMetadataChanges){let r=[];for(let i of t.docChanges)i.type!==3&&r.push(i);t=new tn(t.query,t.docs,t.oldDocs,r,t.mutatedKeys,t.fromCache,t.syncStateChanged,!0,t.hasCachedResults)}let e=!1;return this.Oa?this.Ba(t)&&(this.xa.next(t),e=!0):this.La(t,this.onlineState)&&(this.ka(t),e=!0),this.Na=t,e}onError(t){this.xa.error(t)}va(t){this.onlineState=t;let e=!1;return this.Na&&!this.Oa&&this.La(this.Na,t)&&(this.ka(this.Na),e=!0),e}La(t,e){if(!t.fromCache||!this.Da())return!0;let r=e!=="Offline";return(!this.options.qa||!r)&&(!t.docs.isEmpty()||t.hasCachedResults||e==="Offline")}Ba(t){if(t.docChanges.length>0)return!0;let e=this.Na&&this.Na.hasPendingWrites!==t.hasPendingWrites;return!(!t.syncStateChanged&&!e)&&this.options.includeMetadataChanges===!0}ka(t){t=tn.fromInitialDocuments(t.query,t.docs,t.mutatedKeys,t.fromCache,t.hasCachedResults),this.Oa=!0,this.xa.next(t)}Da(){return this.options.source!==bo.Cache}};var ts=class{constructor(t){this.key=t}},es=class{constructor(t){this.key=t}},Ro=class{constructor(t,e){this.query=t,this.Ya=e,this.Za=null,this.hasCachedResults=!1,this.current=!1,this.Xa=U(),this.mutatedKeys=U(),this.eu=sl(t),this.tu=new Yr(this.eu)}get nu(){return this.Ya}ru(t,e){let r=e?e.iu:new Zr,i=e?e.tu:this.tu,o=e?e.mutatedKeys:this.mutatedKeys,u=i,l=!1,h=this.query.limitType==="F"&&i.size===this.query.limit?i.last():null,f=this.query.limitType==="L"&&i.size===this.query.limit?i.first():null;if(t.inorderTraversal(((m,T)=>{let A=i.get(m),R=ps(this.query,T)?T:null,D=!!A&&this.mutatedKeys.has(A.key),k=!!R&&(R.hasLocalMutations||this.mutatedKeys.has(R.key)&&R.hasCommittedMutations),C=!1;A&&R?A.data.isEqual(R.data)?D!==k&&(r.track({type:3,doc:R}),C=!0):this.su(A,R)||(r.track({type:2,doc:R}),C=!0,(h&&this.eu(R,h)>0||f&&this.eu(R,f)<0)&&(l=!0)):!A&&R?(r.track({type:0,doc:R}),C=!0):A&&!R&&(r.track({type:1,doc:A}),C=!0,(h||f)&&(l=!0)),C&&(R?(u=u.add(R),o=k?o.add(m):o.delete(m)):(u=u.delete(m),o=o.delete(m)))})),this.query.limit!==null)for(;u.size>this.query.limit;){let m=this.query.limitType==="F"?u.last():u.first();u=u.delete(m.key),o=o.delete(m.key),r.track({type:1,doc:m})}return{tu:u,iu:r,Cs:l,mutatedKeys:o}}su(t,e){return t.hasLocalMutations&&e.hasCommittedMutations&&!e.hasLocalMutations}applyChanges(t,e,r,i){let o=this.tu;this.tu=t.tu,this.mutatedKeys=t.mutatedKeys;let u=t.iu.ya();u.sort(((m,T)=>(function(R,D){let k=C=>{switch(C){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return O(20277,{Rt:C})}};return k(R)-k(D)})(m.type,T.type)||this.eu(m.doc,T.doc))),this.ou(r),i=i??!1;let l=e&&!i?this._u():[],h=this.Xa.size===0&&this.current&&!i?1:0,f=h!==this.Za;return this.Za=h,u.length!==0||f?{snapshot:new tn(this.query,t.tu,o,u,t.mutatedKeys,h===0,f,!1,!!r&&r.resumeToken.approximateByteSize()>0),au:l}:{au:l}}va(t){return this.current&&t==="Offline"?(this.current=!1,this.applyChanges({tu:this.tu,iu:new Zr,mutatedKeys:this.mutatedKeys,Cs:!1},!1)):{au:[]}}uu(t){return!this.Ya.has(t)&&!!this.tu.has(t)&&!this.tu.get(t).hasLocalMutations}ou(t){t&&(t.addedDocuments.forEach((e=>this.Ya=this.Ya.add(e))),t.modifiedDocuments.forEach((e=>{})),t.removedDocuments.forEach((e=>this.Ya=this.Ya.delete(e))),this.current=t.current)}_u(){if(!this.current)return[];let t=this.Xa;this.Xa=U(),this.tu.forEach((r=>{this.uu(r.key)&&(this.Xa=this.Xa.add(r.key))}));let e=[];return t.forEach((r=>{this.Xa.has(r)||e.push(new es(r))})),this.Xa.forEach((r=>{t.has(r)||e.push(new ts(r))})),e}cu(t){this.Ya=t.Qs,this.Xa=U();let e=this.ru(t.documents);return this.applyChanges(e,!0)}lu(){return tn.fromInitialDocuments(this.query,this.tu,this.mutatedKeys,this.Za===0,this.hasCachedResults)}},ga="SyncEngine",Po=class{constructor(t,e,r){this.query=t,this.targetId=e,this.view=r}},Vo=class{constructor(t){this.key=t,this.hu=!1}},Co=class{constructor(t,e,r,i,o,u){this.localStore=t,this.remoteStore=e,this.eventManager=r,this.sharedClientState=i,this.currentUser=o,this.maxConcurrentLimboResolutions=u,this.Pu={},this.Tu=new Ht((l=>rl(l)),gs),this.Iu=new Map,this.Eu=new Set,this.du=new Y(M.comparator),this.Au=new Map,this.Ru=new Kn,this.Vu={},this.mu=new Map,this.fu=zn.cr(),this.onlineState="Unknown",this.gu=void 0}get isPrimaryClient(){return this.gu===!0}};async function lf(n,t,e=!0){let r=Ul(n),i,o=r.Tu.get(t);return o?(r.sharedClientState.addLocalQueryTarget(o.targetId),i=o.view.lu()):i=await Ml(r,t,e,!0),i}async function hf(n,t){let e=Ul(n);await Ml(e,t,!0,!1)}async function Ml(n,t,e,r){let i=await Qd(n.localStore,Ot(t)),o=i.targetId,u=n.sharedClientState.addLocalQueryTarget(o,e),l;return r&&(l=await df(n,t,o,u==="current",i.resumeToken)),n.isPrimaryClient&&e&&Vl(n.remoteStore,i),l}async function df(n,t,e,r,i){n.pu=(T,A,R)=>(async function(k,C,G,K){let $=C.view.ru(G);$.Cs&&($=await lc(k.localStore,C.query,!1).then((({documents:E})=>C.view.ru(E,$))));let pt=K&&K.targetChanges.get(C.targetId),Nt=K&&K.targetMismatches.get(C.targetId)!=null,ut=C.view.applyChanges($,k.isPrimaryClient,pt,Nt);return yc(k,C.targetId,ut.au),ut.snapshot})(n,T,A,R);let o=await lc(n.localStore,t,!0),u=new Ro(t,o.Qs),l=u.ru(o.documents),h=jn.createSynthesizedTargetChangeForCurrentChange(e,r&&n.onlineState!=="Offline",i),f=u.applyChanges(l,n.isPrimaryClient,h);yc(n,e,f.au);let m=new Po(t,e,u);return n.Tu.set(t,m),n.Iu.has(e)?n.Iu.get(e).push(t):n.Iu.set(e,[t]),f.snapshot}async function ff(n,t,e){let r=L(n),i=r.Tu.get(t),o=r.Iu.get(i.targetId);if(o.length>1)return r.Iu.set(i.targetId,o.filter((u=>!gs(u,t)))),void r.Tu.delete(t);r.isPrimaryClient?(r.sharedClientState.removeLocalQueryTarget(i.targetId),r.sharedClientState.isActiveQueryTarget(i.targetId)||await co(r.localStore,i.targetId,!1).then((()=>{r.sharedClientState.clearQueryState(i.targetId),e&&aa(r.remoteStore,i.targetId),xo(r,i.targetId)})).catch(sn)):(xo(r,i.targetId),await co(r.localStore,i.targetId,!0))}async function mf(n,t){let e=L(n),r=e.Tu.get(t),i=e.Iu.get(r.targetId);e.isPrimaryClient&&i.length===1&&(e.sharedClientState.removeLocalQueryTarget(r.targetId),aa(e.remoteStore,r.targetId))}async function gf(n,t,e){let r=Ef(n);try{let i=await(function(u,l){let h=L(u),f=rt.now(),m=l.reduce(((R,D)=>R.add(D.key)),U()),T,A;return h.persistence.runTransaction("Locally write mutations","readwrite",(R=>{let D=Jt(),k=U();return h.Ns.getEntries(R,m).next((C=>{D=C,D.forEach(((G,K)=>{K.isValidDocument()||(k=k.add(G))}))})).next((()=>h.localDocuments.getOverlayedDocuments(R,D))).next((C=>{T=C;let G=[];for(let K of l){let $=wd(K,T.get(K.key).overlayedDocument);$!=null&&G.push(new qt(K.key,$,Xc($.value.mapValue),at.exists(!0)))}return h.mutationQueue.addMutationBatch(R,f,G,l)})).next((C=>{A=C;let G=C.applyToLocalDocumentSet(T,k);return h.documentOverlayCache.saveOverlays(R,C.batchId,G)}))})).then((()=>({batchId:A.batchId,changes:ol(T)})))})(r.localStore,t);r.sharedClientState.addPendingMutation(i.batchId),(function(u,l,h){let f=u.Vu[u.currentUser.toKey()];f||(f=new Y(q)),f=f.insert(l,h),u.Vu[u.currentUser.toKey()]=f})(r,i.batchId,e),await nr(r,i.changes),await ws(r.remoteStore)}catch(i){let o=ha(i,"Failed to persist write");e.reject(o)}}async function Ol(n,t){let e=L(n);try{let r=await zd(e.localStore,t);t.targetChanges.forEach(((i,o)=>{let u=e.Au.get(o);u&&(j(i.addedDocuments.size+i.modifiedDocuments.size+i.removedDocuments.size<=1,22616),i.addedDocuments.size>0?u.hu=!0:i.modifiedDocuments.size>0?j(u.hu,14607):i.removedDocuments.size>0&&(j(u.hu,42227),u.hu=!1))})),await nr(e,r,t)}catch(r){await sn(r)}}function pc(n,t,e){let r=L(n);if(r.isPrimaryClient&&e===0||!r.isPrimaryClient&&e===1){let i=[];r.Tu.forEach(((o,u)=>{let l=u.view.va(t);l.snapshot&&i.push(l.snapshot)})),(function(u,l){let h=L(u);h.onlineState=l;let f=!1;h.queries.forEach(((m,T)=>{for(let A of T.Sa)A.va(l)&&(f=!0)})),f&&ma(h)})(r.eventManager,t),i.length&&r.Pu.H_(i),r.onlineState=t,r.isPrimaryClient&&r.sharedClientState.setOnlineState(t)}}async function pf(n,t,e){let r=L(n);r.sharedClientState.updateQueryState(t,"rejected",e);let i=r.Au.get(t),o=i&&i.key;if(o){let u=new Y(M.comparator);u=u.insert(o,St.newNoDocument(o,F.min()));let l=U().add(o),h=new qr(F.min(),new Map,new Y(q),u,l);await Ol(r,h),r.du=r.du.remove(o),r.Au.delete(t),pa(r)}else await co(r.localStore,t,!1).then((()=>xo(r,t,e))).catch(sn)}async function yf(n,t){let e=L(n),r=t.batch.batchId;try{let i=await Gd(e.localStore,t);Ll(e,r,null),Fl(e,r),e.sharedClientState.updateMutationState(r,"acknowledged"),await nr(e,i)}catch(i){await sn(i)}}async function _f(n,t,e){let r=L(n);try{let i=await(function(u,l){let h=L(u);return h.persistence.runTransaction("Reject batch","readwrite-primary",(f=>{let m;return h.mutationQueue.lookupMutationBatch(f,l).next((T=>(j(T!==null,37113),m=T.keys(),h.mutationQueue.removeMutationBatch(f,T)))).next((()=>h.mutationQueue.performConsistencyCheck(f))).next((()=>h.documentOverlayCache.removeOverlaysForBatchId(f,m,l))).next((()=>h.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(f,m))).next((()=>h.localDocuments.getDocuments(f,m)))}))})(r.localStore,t);Ll(r,t,e),Fl(r,t),r.sharedClientState.updateMutationState(t,"rejected",e),await nr(r,i)}catch(i){await sn(i)}}function Fl(n,t){(n.mu.get(t)||[]).forEach((e=>{e.resolve()})),n.mu.delete(t)}function Ll(n,t,e){let r=L(n),i=r.Vu[r.currentUser.toKey()];if(i){let o=i.get(t);o&&(e?o.reject(e):o.resolve(),i=i.remove(t)),r.Vu[r.currentUser.toKey()]=i}}function xo(n,t,e=null){n.sharedClientState.removeLocalQueryTarget(t);for(let r of n.Iu.get(t))n.Tu.delete(r),e&&n.Pu.yu(r,e);n.Iu.delete(t),n.isPrimaryClient&&n.Ru.jr(t).forEach((r=>{n.Ru.containsKey(r)||ql(n,r)}))}function ql(n,t){n.Eu.delete(t.path.canonicalString());let e=n.du.get(t);e!==null&&(aa(n.remoteStore,e),n.du=n.du.remove(t),n.Au.delete(e),pa(n))}function yc(n,t,e){for(let r of e)r instanceof ts?(n.Ru.addReference(r.key,t),wf(n,r)):r instanceof es?(N(ga,"Document no longer in limbo: "+r.key),n.Ru.removeReference(r.key,t),n.Ru.containsKey(r.key)||ql(n,r.key)):O(19791,{wu:r})}function wf(n,t){let e=t.key,r=e.path.canonicalString();n.du.get(e)||n.Eu.has(r)||(N(ga,"New document in limbo: "+e),n.Eu.add(r),pa(n))}function pa(n){for(;n.Eu.size>0&&n.du.size<n.maxConcurrentLimboResolutions;){let t=n.Eu.values().next().value;n.Eu.delete(t);let e=new M(W.fromString(t)),r=n.fu.next();n.Au.set(r,new Vo(e)),n.du=n.du.insert(e,r),Vl(n.remoteStore,new Gn(Ot(ms(e.path)),r,"TargetPurposeLimboResolution",Qe.ce))}}async function nr(n,t,e){let r=L(n),i=[],o=[],u=[];r.Tu.isEmpty()||(r.Tu.forEach(((l,h)=>{u.push(r.pu(h,t,e).then((f=>{if((f||e)&&r.isPrimaryClient){let m=f?!f.fromCache:e?.targetChanges.get(h.targetId)?.current;r.sharedClientState.updateQueryState(h.targetId,m?"current":"not-current")}if(f){i.push(f);let m=io.As(h.targetId,f);o.push(m)}})))})),await Promise.all(u),r.Pu.H_(i),await(async function(h,f){let m=L(h);try{await m.persistence.runTransaction("notifyLocalViewChanges","readwrite",(T=>P.forEach(f,(A=>P.forEach(A.Es,(R=>m.persistence.referenceDelegate.addReference(T,A.targetId,R))).next((()=>P.forEach(A.ds,(R=>m.persistence.referenceDelegate.removeReference(T,A.targetId,R)))))))))}catch(T){if(!on(T))throw T;N(oa,"Failed to update sequence numbers: "+T)}for(let T of f){let A=T.targetId;if(!T.fromCache){let R=m.Ms.get(A),D=R.snapshotVersion,k=R.withLastLimboFreeSnapshotVersion(D);m.Ms=m.Ms.insert(A,k)}}})(r.localStore,o))}async function Tf(n,t){let e=L(n);if(!e.currentUser.isEqual(t)){N(ga,"User change. New user:",t.toKey());let r=await Rl(e.localStore,t);e.currentUser=t,(function(o,u){o.mu.forEach((l=>{l.forEach((h=>{h.reject(new V(b.CANCELLED,u))}))})),o.mu.clear()})(e,"'waitForPendingWrites' promise is rejected due to a user change."),e.sharedClientState.handleUserChange(t,r.removedBatchIds,r.addedBatchIds),await nr(e,r.Ls)}}function If(n,t){let e=L(n),r=e.Au.get(t);if(r&&r.hu)return U().add(r.key);{let i=U(),o=e.Iu.get(t);if(!o)return i;for(let u of o){let l=e.Tu.get(u);i=i.unionWith(l.view.nu)}return i}}function Ul(n){let t=L(n);return t.remoteStore.remoteSyncer.applyRemoteEvent=Ol.bind(null,t),t.remoteStore.remoteSyncer.getRemoteKeysForTarget=If.bind(null,t),t.remoteStore.remoteSyncer.rejectListen=pf.bind(null,t),t.Pu.H_=uf.bind(null,t.eventManager),t.Pu.yu=cf.bind(null,t.eventManager),t}function Ef(n){let t=L(n);return t.remoteStore.remoteSyncer.applySuccessfulWrite=yf.bind(null,t),t.remoteStore.remoteSyncer.rejectFailedWrite=_f.bind(null,t),t}var en=class{constructor(){this.kind="memory",this.synchronizeTabs=!1}async initialize(t){this.serializer=ys(t.databaseInfo.databaseId),this.sharedClientState=this.Du(t),this.persistence=this.Cu(t),await this.persistence.start(),this.localStore=this.vu(t),this.gcScheduler=this.Fu(t,this.localStore),this.indexBackfillerScheduler=this.Mu(t,this.localStore)}Fu(t,e){return null}Mu(t,e){return null}vu(t){return jd(this.persistence,new ao,t.initialUser,this.serializer)}Cu(t){return new $r(so.mi,this.serializer)}Du(t){return new lo}async terminate(){this.gcScheduler?.stop(),this.indexBackfillerScheduler?.stop(),this.sharedClientState.shutdown(),await this.persistence.shutdown()}};en.provider={build:()=>new en};var Do=class extends en{constructor(t){super(),this.cacheSizeBytes=t}Fu(t,e){j(this.persistence.referenceDelegate instanceof Qr,46915);let r=this.persistence.referenceDelegate.garbageCollector;return new Ki(r,t.asyncQueue,e)}Cu(t){let e=this.cacheSizeBytes!==void 0?bt.withCacheSize(this.cacheSizeBytes):bt.DEFAULT;return new $r((r=>Qr.mi(r,e)),this.serializer)}};var Wn=class{async initialize(t,e){this.localStore||(this.localStore=t.localStore,this.sharedClientState=t.sharedClientState,this.datastore=this.createDatastore(e),this.remoteStore=this.createRemoteStore(e),this.eventManager=this.createEventManager(e),this.syncEngine=this.createSyncEngine(e,!t.synchronizeTabs),this.sharedClientState.onlineStateHandler=r=>pc(this.syncEngine,r,1),this.remoteStore.remoteSyncer.handleCredentialChange=Tf.bind(null,this.syncEngine),await af(this.remoteStore,this.syncEngine.isPrimaryClient))}createEventManager(t){return(function(){return new So})()}createDatastore(t){let e=ys(t.databaseInfo.databaseId),r=(function(o){return new po(o)})(t.databaseInfo);return(function(o,u,l,h){return new To(o,u,l,h)})(t.authCredentials,t.appCheckCredentials,r,e)}createRemoteStore(t){return(function(r,i,o,u,l){return new Eo(r,i,o,u,l)})(this.localStore,this.datastore,t.asyncQueue,(e=>pc(this.syncEngine,e,0)),(function(){return Hr.v()?new Hr:new ho})())}createSyncEngine(t,e){return(function(i,o,u,l,h,f,m){let T=new Co(i,o,u,l,h,f);return m&&(T.gu=!0),T})(this.localStore,this.remoteStore,this.eventManager,this.sharedClientState,t.initialUser,t.maxConcurrentLimboResolutions,e)}async terminate(){await(async function(e){let r=L(e);N(Pe,"RemoteStore shutting down."),r.Ea.add(5),await er(r),r.Aa.shutdown(),r.Ra.set("Unknown")})(this.remoteStore),this.datastore?.terminate(),this.eventManager?.terminate()}};Wn.provider={build:()=>new Wn};var Hn=class{constructor(t){this.observer=t,this.muted=!1}next(t){this.muted||this.observer.next&&this.Ou(this.observer.next,t)}error(t){this.muted||(this.observer.error?this.Ou(this.observer.error,t):$t("Uncaught Error in snapshot listener:",t.toString()))}Nu(){this.muted=!0}Ou(t,e){setTimeout((()=>{this.muted||t(e)}),0)}};var No=class{constructor(t){this.datastore=t,this.readVersions=new Map,this.mutations=[],this.committed=!1,this.lastTransactionError=null,this.writtenDocs=new Set}async lookup(t){if(this.ensureCommitNotCalled(),this.mutations.length>0)throw this.lastTransactionError=new V(b.INVALID_ARGUMENT,"Firestore transactions require all reads to be executed before all writes."),this.lastTransactionError;let e=await(async function(i,o){let u=L(i),l={documents:o.map((T=>zr(u.serializer,T)))},h=await u.Ho("BatchGetDocuments",u.serializer.databaseId,W.emptyPath(),l,o.length),f=new Map;h.forEach((T=>{let A=Pd(u.serializer,T);f.set(A.key.toString(),A)}));let m=[];return o.forEach((T=>{let A=f.get(T.toString());j(!!A,55234,{key:T}),m.push(A)})),m})(this.datastore,t);return e.forEach((r=>this.recordVersion(r))),e}set(t,e){this.write(e.toMutation(t,this.precondition(t))),this.writtenDocs.add(t.toString())}update(t,e){try{this.write(e.toMutation(t,this.preconditionForUpdate(t)))}catch(r){this.lastTransactionError=r}this.writtenDocs.add(t.toString())}delete(t){this.write(new Re(t,this.precondition(t))),this.writtenDocs.add(t.toString())}async commit(){if(this.ensureCommitNotCalled(),this.lastTransactionError)throw this.lastTransactionError;let t=this.readVersions;this.mutations.forEach((e=>{t.delete(e.key.toString())})),t.forEach(((e,r)=>{let i=M.fromPath(r);this.mutations.push(new Lr(i,this.precondition(i)))})),await(async function(r,i){let o=L(r),u={writes:i.map((l=>Il(o.serializer,l)))};await o.Go("Commit",o.serializer.databaseId,W.emptyPath(),u)})(this.datastore,this.mutations),this.committed=!0}recordVersion(t){let e;if(t.isFoundDocument())e=t.version;else{if(!t.isNoDocument())throw O(50498,{Gu:t.constructor.name});e=F.min()}let r=this.readVersions.get(t.key.toString());if(r){if(!e.isEqual(r))throw new V(b.ABORTED,"Document version changed between two reads.")}else this.readVersions.set(t.key.toString(),e)}precondition(t){let e=this.readVersions.get(t.toString());return!this.writtenDocs.has(t.toString())&&e?e.isEqual(F.min())?at.exists(!1):at.updateTime(e):at.none()}preconditionForUpdate(t){let e=this.readVersions.get(t.toString());if(!this.writtenDocs.has(t.toString())&&e){if(e.isEqual(F.min()))throw new V(b.INVALID_ARGUMENT,"Can't update a document that doesn't exist.");return at.updateTime(e)}return at.exists(!0)}write(t){this.ensureCommitNotCalled(),this.mutations.push(t)}ensureCommitNotCalled(){}};var ko=class{constructor(t,e,r,i,o){this.asyncQueue=t,this.datastore=e,this.options=r,this.updateFunction=i,this.deferred=o,this.zu=r.maxAttempts,this.M_=new $n(this.asyncQueue,"transaction_retry")}ju(){this.zu-=1,this.Ju()}Ju(){this.M_.p_((async()=>{let t=new No(this.datastore),e=this.Hu(t);e&&e.then((r=>{this.asyncQueue.enqueueAndForget((()=>t.commit().then((()=>{this.deferred.resolve(r)})).catch((i=>{this.Yu(i)}))))})).catch((r=>{this.Yu(r)}))}))}Hu(t){try{let e=this.updateFunction(t);return!tr(e)&&e.catch&&e.then?e:(this.deferred.reject(Error("Transaction callback must return a Promise")),null)}catch(e){return this.deferred.reject(e),null}}Yu(t){this.zu>0&&this.Zu(t)?(this.zu-=1,this.asyncQueue.enqueueAndForget((()=>(this.Ju(),Promise.resolve())))):this.deferred.reject(t)}Zu(t){if(t?.name==="FirebaseError"){let e=t.code;return e==="aborted"||e==="failed-precondition"||e==="already-exists"||!gl(e)}return!1}};var de="FirestoreClient",Mo=class{constructor(t,e,r,i,o){this.authCredentials=t,this.appCheckCredentials=e,this.asyncQueue=r,this.databaseInfo=i,this.user=mt.UNAUTHENTICATED,this.clientId=Fn.newId(),this.authCredentialListener=()=>Promise.resolve(),this.appCheckCredentialListener=()=>Promise.resolve(),this._uninitializedComponentsProvider=o,this.authCredentials.start(r,(async u=>{N(de,"Received user=",u.uid),await this.authCredentialListener(u),this.user=u})),this.appCheckCredentials.start(r,(u=>(N(de,"Received new app check token=",u),this.appCheckCredentialListener(u,this.user))))}get configuration(){return{asyncQueue:this.asyncQueue,databaseInfo:this.databaseInfo,clientId:this.clientId,authCredentials:this.authCredentials,appCheckCredentials:this.appCheckCredentials,initialUser:this.user,maxConcurrentLimboResolutions:100}}setCredentialChangeListener(t){this.authCredentialListener=t}setAppCheckTokenChangeListener(t){this.appCheckCredentialListener=t}terminate(){this.asyncQueue.enterRestrictedMode();let t=new Pt;return this.asyncQueue.enqueueAndForgetEvenWhileRestricted((async()=>{try{this._onlineComponents&&await this._onlineComponents.terminate(),this._offlineComponents&&await this._offlineComponents.terminate(),this.authCredentials.shutdown(),this.appCheckCredentials.shutdown(),t.resolve()}catch(e){let r=ha(e,"Failed to shutdown persistence");t.reject(r)}})),t.promise}};async function ii(n,t){n.asyncQueue.verifyOperationInProgress(),N(de,"Initializing OfflineComponentProvider");let e=n.configuration;await t.initialize(e);let r=e.initialUser;n.setCredentialChangeListener((async i=>{r.isEqual(i)||(await Rl(t.localStore,i),r=i)})),t.persistence.setDatabaseDeletedListener((()=>n.terminate())),n._offlineComponents=t}async function _c(n,t){n.asyncQueue.verifyOperationInProgress();let e=await vf(n);N(de,"Initializing OnlineComponentProvider"),await t.initialize(e,n.configuration),n.setCredentialChangeListener((r=>fc(t.remoteStore,r))),n.setAppCheckTokenChangeListener(((r,i)=>fc(t.remoteStore,i))),n._onlineComponents=t}async function vf(n){if(!n._offlineComponents)if(n._uninitializedComponentsProvider){N(de,"Using user provided OfflineComponentProvider");try{await ii(n,n._uninitializedComponentsProvider._offline)}catch(t){let e=t;if(!(function(i){return i.name==="FirebaseError"?i.code===b.FAILED_PRECONDITION||i.code===b.UNIMPLEMENTED:!(typeof DOMException<"u"&&i instanceof DOMException)||i.code===22||i.code===20||i.code===11})(e))throw e;On("Error using user provided cache. Falling back to memory cache: "+e),await ii(n,new en)}}else N(de,"Using default OfflineComponentProvider"),await ii(n,new Do(void 0));return n._offlineComponents}async function ya(n){return n._onlineComponents||(n._uninitializedComponentsProvider?(N(de,"Using user provided OnlineComponentProvider"),await _c(n,n._uninitializedComponentsProvider._online)):(N(de,"Using default OnlineComponentProvider"),await _c(n,new Wn))),n._onlineComponents}function Af(n){return ya(n).then((t=>t.syncEngine))}function Sf(n){return ya(n).then((t=>t.datastore))}async function ns(n){let t=await ya(n),e=t.eventManager;return e.onListen=lf.bind(null,t.syncEngine),e.onUnlisten=ff.bind(null,t.syncEngine),e.onFirstRemoteStoreListen=hf.bind(null,t.syncEngine),e.onLastRemoteStoreUnlisten=mf.bind(null,t.syncEngine),e}function bf(n,t,e={}){let r=new Pt;return n.asyncQueue.enqueueAndForget((async()=>(function(o,u,l,h,f){let m=new Hn({next:A=>{m.Nu(),u.enqueueAndForget((()=>fa(o,T)));let R=A.docs.has(l);!R&&A.fromCache?f.reject(new V(b.UNAVAILABLE,"Failed to get document because the client is offline.")):R&&A.fromCache&&h&&h.source==="server"?f.reject(new V(b.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.)')):f.resolve(A)},error:A=>f.reject(A)}),T=new Qn(ms(l.path),m,{includeMetadataChanges:!0,qa:!0});return da(o,T)})(await ns(n),n.asyncQueue,t,e,r))),r.promise}function Rf(n,t,e={}){let r=new Pt;return n.asyncQueue.enqueueAndForget((async()=>(function(o,u,l,h,f){let m=new Hn({next:A=>{m.Nu(),u.enqueueAndForget((()=>fa(o,T))),A.fromCache&&h.source==="server"?f.reject(new V(b.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.)')):f.resolve(A)},error:A=>f.reject(A)}),T=new Qn(l,m,{includeMetadataChanges:!0,qa:!0});return da(o,T)})(await ns(n),n.asyncQueue,t,e,r))),r.promise}function Bl(n){let t={};return n.timeoutSeconds!==void 0&&(t.timeoutSeconds=n.timeoutSeconds),t}var wc=new Map;var Pf="firestore.googleapis.com",Tc=!0,rs=class{constructor(t){if(t.host===void 0){if(t.ssl!==void 0)throw new V(b.INVALID_ARGUMENT,"Can't provide ssl option if host option is not set");this.host=Pf,this.ssl=Tc}else this.host=t.host,this.ssl=t.ssl??Tc;if(this.isUsingEmulator=t.emulatorOptions!==void 0,this.credentials=t.credentials,this.ignoreUndefinedProperties=!!t.ignoreUndefinedProperties,this.localCache=t.localCache,t.cacheSizeBytes===void 0)this.cacheSizeBytes=Sl;else{if(t.cacheSizeBytes!==-1&&t.cacheSizeBytes<bl)throw new V(b.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");this.cacheSizeBytes=t.cacheSizeBytes}Oh("experimentalForceLongPolling",t.experimentalForceLongPolling,"experimentalAutoDetectLongPolling",t.experimentalAutoDetectLongPolling),this.experimentalForceLongPolling=!!t.experimentalForceLongPolling,this.experimentalForceLongPolling?this.experimentalAutoDetectLongPolling=!1:t.experimentalAutoDetectLongPolling===void 0?this.experimentalAutoDetectLongPolling=!0:this.experimentalAutoDetectLongPolling=!!t.experimentalAutoDetectLongPolling,this.experimentalLongPollingOptions=Bl(t.experimentalLongPollingOptions??{}),(function(r){if(r.timeoutSeconds!==void 0){if(isNaN(r.timeoutSeconds))throw new V(b.INVALID_ARGUMENT,`invalid long polling timeout: ${r.timeoutSeconds} (must not be NaN)`);if(r.timeoutSeconds<5)throw new V(b.INVALID_ARGUMENT,`invalid long polling timeout: ${r.timeoutSeconds} (minimum allowed value is 5)`);if(r.timeoutSeconds>30)throw new V(b.INVALID_ARGUMENT,`invalid long polling timeout: ${r.timeoutSeconds} (maximum allowed value is 30)`)}})(this.experimentalLongPollingOptions),this.useFetchStreams=!!t.useFetchStreams}isEqual(t){return this.host===t.host&&this.ssl===t.ssl&&this.credentials===t.credentials&&this.cacheSizeBytes===t.cacheSizeBytes&&this.experimentalForceLongPolling===t.experimentalForceLongPolling&&this.experimentalAutoDetectLongPolling===t.experimentalAutoDetectLongPolling&&(function(r,i){return r.timeoutSeconds===i.timeoutSeconds})(this.experimentalLongPollingOptions,t.experimentalLongPollingOptions)&&this.ignoreUndefinedProperties===t.ignoreUndefinedProperties&&this.useFetchStreams===t.useFetchStreams}},Jn=class{constructor(t,e,r,i){this._authCredentials=t,this._appCheckCredentials=e,this._databaseId=r,this._app=i,this.type="firestore-lite",this._persistenceKey="(lite)",this._settings=new rs({}),this._settingsFrozen=!1,this._emulatorOptions={},this._terminateTask="notTerminated"}get app(){if(!this._app)throw new V(b.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!=="notTerminated"}_setSettings(t){if(this._settingsFrozen)throw new V(b.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 rs(t),this._emulatorOptions=t.emulatorOptions||{},t.credentials!==void 0&&(this._authCredentials=(function(r){if(!r)return new ai;switch(r.type){case"firstParty":return new li(r.sessionIndex||"0",r.iamToken||null,r.authTokenFactory||null);case"provider":return r.client;default:throw new V(b.INVALID_ARGUMENT,"makeAuthCredentialsProvider failed due to invalid credential type")}})(t.credentials))}_getSettings(){return this._settings}_getEmulatorOptions(){return this._emulatorOptions}_freezeSettings(){return this._settingsFrozen=!0,this._settings}_delete(){return this._terminateTask==="notTerminated"&&(this._terminateTask=this._terminate()),this._terminateTask}async _restart(){this._terminateTask==="notTerminated"?await this._terminate():this._terminateTask="notTerminated"}toJSON(){return{app:this._app,databaseId:this._databaseId,settings:this._settings}}_terminate(){return(function(e){let r=wc.get(e);r&&(N("ComponentProvider","Removing Datastore"),wc.delete(e),r.terminate())})(this),Promise.resolve()}};var Dt=class n{constructor(t,e,r){this.converter=e,this._query=r,this.type="query",this.firestore=t}withConverter(t){return new n(this.firestore,t,this._query)}},st=class n{constructor(t,e,r){this.converter=e,this._key=r,this.type="document",this.firestore=t}get _path(){return this._key.path}get id(){return this._key.path.lastSegment()}get path(){return this._key.path.canonicalString()}get parent(){return new se(this.firestore,this.converter,this._key.path.popLast())}withConverter(t){return new n(this.firestore,t,this._key)}toJSON(){return{type:n._jsonSchemaVersion,referencePath:this._key.toString()}}static fromJSON(t,e,r){if(Zn(e,n._jsonSchema))return new n(t,r||null,new M(W.fromString(e.referencePath)))}};st._jsonSchemaVersion="firestore/documentReference/1.0",st._jsonSchema={type:nt("string",st._jsonSchemaVersion),referencePath:nt("string")};var se=class n extends Dt{constructor(t,e,r){super(t,e,ms(r)),this._path=r,this.type="collection"}get id(){return this._query.path.lastSegment()}get path(){return this._query.path.canonicalString()}get parent(){let t=this._path.popLast();return t.isEmpty()?null:new st(this.firestore,null,new M(t))}withConverter(t){return new n(this.firestore,t,this._path)}};function sm(n,t,...e){if(n=wt(n),Rc("collection","path",t),n instanceof Jn){let r=W.fromString(t,...e);return Uu(r),new se(n,null,r)}{if(!(n instanceof st||n instanceof se))throw new V(b.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");let r=n._path.child(W.fromString(t,...e));return Uu(r),new se(n.firestore,null,r)}}function im(n,t,...e){if(n=wt(n),arguments.length===1&&(t=Fn.newId()),Rc("doc","path",t),n instanceof Jn){let r=W.fromString(t,...e);return qu(r),new st(n,null,new M(r))}{if(!(n instanceof st||n instanceof se))throw new V(b.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");let r=n._path.child(W.fromString(t,...e));return qu(r),new st(n.firestore,n instanceof se?n.converter:null,new M(r))}}var Ic="AsyncQueue",ss=class{constructor(t=Promise.resolve()){this.Xu=[],this.ec=!1,this.tc=[],this.nc=null,this.rc=!1,this.sc=!1,this.oc=[],this.M_=new $n(this,"async_queue_retry"),this._c=()=>{let r=si();r&&N(Ic,"Visibility state changed to "+r.visibilityState),this.M_.w_()},this.ac=t;let e=si();e&&typeof e.addEventListener=="function"&&e.addEventListener("visibilitychange",this._c)}get isShuttingDown(){return this.ec}enqueueAndForget(t){this.enqueue(t)}enqueueAndForgetEvenWhileRestricted(t){this.uc(),this.cc(t)}enterRestrictedMode(t){if(!this.ec){this.ec=!0,this.sc=t||!1;let e=si();e&&typeof e.removeEventListener=="function"&&e.removeEventListener("visibilitychange",this._c)}}enqueue(t){if(this.uc(),this.ec)return new Promise((()=>{}));let e=new Pt;return this.cc((()=>this.ec&&this.sc?Promise.resolve():(t().then(e.resolve,e.reject),e.promise))).then((()=>e.promise))}enqueueRetryable(t){this.enqueueAndForget((()=>(this.Xu.push(t),this.lc())))}async lc(){if(this.Xu.length!==0){try{await this.Xu[0](),this.Xu.shift(),this.M_.reset()}catch(t){if(!on(t))throw t;N(Ic,"Operation failed with retryable error: "+t)}this.Xu.length>0&&this.M_.p_((()=>this.lc()))}}cc(t){let e=this.ac.then((()=>(this.rc=!0,t().catch((r=>{throw this.nc=r,this.rc=!1,$t("INTERNAL UNHANDLED ERROR: ",Ec(r)),r})).then((r=>(this.rc=!1,r))))));return this.ac=e,e}enqueueAfterDelay(t,e,r){this.uc(),this.oc.indexOf(t)>-1&&(e=0);let i=vo.createAndSchedule(this,t,e,r,(o=>this.hc(o)));return this.tc.push(i),i}uc(){this.nc&&O(47125,{Pc:Ec(this.nc)})}verifyOperationInProgress(){}async Tc(){let t;do t=this.ac,await t;while(t!==this.ac)}Ic(t){for(let e of this.tc)if(e.timerId===t)return!0;return!1}Ec(t){return this.Tc().then((()=>{this.tc.sort(((e,r)=>e.targetTimeMs-r.targetTimeMs));for(let e of this.tc)if(e.skipDelay(),t!=="all"&&e.timerId===t)break;return this.Tc()}))}dc(t){this.oc.push(t)}hc(t){let e=this.tc.indexOf(t);this.tc.splice(e,1)}};function Ec(n){let t=n.message||"";return n.stack&&(t=n.stack.includes(n.message)?n.stack:n.message+`
|
|
22
|
+
`+n.stack),t}function vc(n){return(function(e,r){if(typeof e!="object"||e===null)return!1;let i=e;for(let o of r)if(o in i&&typeof i[o]=="function")return!0;return!1})(n,["next","error","complete"])}var Vt=class extends Jn{constructor(t,e,r,i){super(t,e,r,i),this.type="firestore",this._queue=new ss,this._persistenceKey=i?.name||"[DEFAULT]"}async _terminate(){if(this._firestoreClient){let t=this._firestoreClient.terminate();this._queue=new ss(t),this._firestoreClient=void 0,await t}}};function om(n,t,e){e||(e=Dr);let r=Du(n,"firestore");if(r.isInitialized(e)){let i=r.getImmediate({identifier:e}),o=r.getOptions(e);if(Ws(o,t))return i;throw new V(b.FAILED_PRECONDITION,"initializeFirestore() has already been called with different options. To avoid this error, call initializeFirestore() with the same options as when it was originally called, or call getFirestore() to return the already initialized instance.")}if(t.cacheSizeBytes!==void 0&&t.localCache!==void 0)throw new V(b.INVALID_ARGUMENT,"cache and cacheSizeBytes cannot be specified at the same time as cacheSizeBytes willbe deprecated. Instead, specify the cache size in the cache object");if(t.cacheSizeBytes!==void 0&&t.cacheSizeBytes!==-1&&t.cacheSizeBytes<bl)throw new V(b.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");return t.host&&Qs(t.host)&&Su(t.host),r.initialize({options:t,instanceIdentifier:e})}function un(n){if(n._terminated)throw new V(b.FAILED_PRECONDITION,"The client has already been terminated.");return n._firestoreClient||Vf(n),n._firestoreClient}function Vf(n){let t=n._freezeSettings(),e=(function(i,o,u,l){return new pi(i,o,u,l.host,l.ssl,l.experimentalForceLongPolling,l.experimentalAutoDetectLongPolling,Bl(l.experimentalLongPollingOptions),l.useFetchStreams,l.isUsingEmulator)})(n._databaseId,n._app?.options.appId||"",n._persistenceKey,t);n._componentsProvider||t.localCache?._offlineComponentProvider&&t.localCache?._onlineComponentProvider&&(n._componentsProvider={_offline:t.localCache._offlineComponentProvider,_online:t.localCache._onlineComponentProvider}),n._firestoreClient=new Mo(n._authCredentials,n._appCheckCredentials,n._queue,e,n._componentsProvider&&(function(i){let o=i?._online.build();return{_offline:i?._offline.build(o),_online:o}})(n._componentsProvider))}var Kt=class n{constructor(t){this._byteString=t}static fromBase64String(t){try{return new n(gt.fromBase64String(t))}catch(e){throw new V(b.INVALID_ARGUMENT,"Failed to construct data from Base64 string: "+e)}}static fromUint8Array(t){return new n(gt.fromUint8Array(t))}toBase64(){return this._byteString.toBase64()}toUint8Array(){return this._byteString.toUint8Array()}toString(){return"Bytes(base64: "+this.toBase64()+")"}isEqual(t){return this._byteString.isEqual(t._byteString)}toJSON(){return{type:n._jsonSchemaVersion,bytes:this.toBase64()}}static fromJSON(t){if(Zn(t,n._jsonSchema))return n.fromBase64String(t.bytes)}};Kt._jsonSchemaVersion="firestore/bytes/1.0",Kt._jsonSchema={type:nt("string",Kt._jsonSchemaVersion),bytes:nt("string")};var Xt=class{constructor(...t){for(let e=0;e<t.length;++e)if(t[e].length===0)throw new V(b.INVALID_ARGUMENT,"Invalid field name at argument $(i + 1). Field names must not be empty.");this._internalPath=new vt(t)}isEqual(t){return this._internalPath.isEqual(t._internalPath)}};function am(){return new Xt(fi)}var Ve=class{constructor(t){this._methodName=t}};var ie=class n{constructor(t,e){if(!isFinite(t)||t<-90||t>90)throw new V(b.INVALID_ARGUMENT,"Latitude must be a number between -90 and 90, but was: "+t);if(!isFinite(e)||e<-180||e>180)throw new V(b.INVALID_ARGUMENT,"Longitude must be a number between -180 and 180, but was: "+e);this._lat=t,this._long=e}get latitude(){return this._lat}get longitude(){return this._long}isEqual(t){return this._lat===t._lat&&this._long===t._long}_compareTo(t){return q(this._lat,t._lat)||q(this._long,t._long)}toJSON(){return{latitude:this._lat,longitude:this._long,type:n._jsonSchemaVersion}}static fromJSON(t){if(Zn(t,n._jsonSchema))return new n(t.latitude,t.longitude)}};ie._jsonSchemaVersion="firestore/geoPoint/1.0",ie._jsonSchema={type:nt("string",ie._jsonSchemaVersion),latitude:nt("number"),longitude:nt("number")};var oe=class n{constructor(t){this._values=(t||[]).map((e=>e))}toArray(){return this._values.map((t=>t))}isEqual(t){return(function(r,i){if(r.length!==i.length)return!1;for(let o=0;o<r.length;++o)if(r[o]!==i[o])return!1;return!0})(this._values,t._values)}toJSON(){return{type:n._jsonSchemaVersion,vectorValues:this._values}}static fromJSON(t){if(Zn(t,n._jsonSchema)){if(Array.isArray(t.vectorValues)&&t.vectorValues.every((e=>typeof e=="number")))return new n(t.vectorValues);throw new V(b.INVALID_ARGUMENT,"Expected 'vectorValues' field to be a number array")}}};oe._jsonSchemaVersion="firestore/vectorValue/1.0",oe._jsonSchema={type:nt("string",oe._jsonSchemaVersion),vectorValues:nt("object")};var Cf=/^__.*__$/,Oo=class{constructor(t,e,r){this.data=t,this.fieldMask=e,this.fieldTransforms=r}toMutation(t,e){return this.fieldMask!==null?new qt(t,this.data,this.fieldMask,e,this.fieldTransforms):new be(t,this.data,e,this.fieldTransforms)}},is=class{constructor(t,e,r){this.data=t,this.fieldMask=e,this.fieldTransforms=r}toMutation(t,e){return new qt(t,this.data,this.fieldMask,e,this.fieldTransforms)}};function jl(n){switch(n){case 0:case 2:case 1:return!0;case 3:case 4:return!1;default:throw O(40011,{Ac:n})}}var os=class n{constructor(t,e,r,i,o,u){this.settings=t,this.databaseId=e,this.serializer=r,this.ignoreUndefinedProperties=i,o===void 0&&this.Rc(),this.fieldTransforms=o||[],this.fieldMask=u||[]}get path(){return this.settings.path}get Ac(){return this.settings.Ac}Vc(t){return new n({...this.settings,...t},this.databaseId,this.serializer,this.ignoreUndefinedProperties,this.fieldTransforms,this.fieldMask)}mc(t){let e=this.path?.child(t),r=this.Vc({path:e,fc:!1});return r.gc(t),r}yc(t){let e=this.path?.child(t),r=this.Vc({path:e,fc:!1});return r.Rc(),r}wc(t){return this.Vc({path:void 0,fc:!0})}Sc(t){return as(t,this.settings.methodName,this.settings.bc||!1,this.path,this.settings.Dc)}contains(t){return this.fieldMask.find((e=>t.isPrefixOf(e)))!==void 0||this.fieldTransforms.find((e=>t.isPrefixOf(e.field)))!==void 0}Rc(){if(this.path)for(let t=0;t<this.path.length;t++)this.gc(this.path.get(t))}gc(t){if(t.length===0)throw this.Sc("Document fields must not be empty");if(jl(this.Ac)&&Cf.test(t))throw this.Sc('Document fields cannot begin and end with "__"')}},Fo=class{constructor(t,e,r){this.databaseId=t,this.ignoreUndefinedProperties=e,this.serializer=r||ys(t)}Cc(t,e,r,i=!1){return new os({Ac:t,methodName:e,Dc:r,path:vt.emptyPath(),fc:!1,bc:i},this.databaseId,this.serializer,this.ignoreUndefinedProperties)}};function cn(n){let t=n._freezeSettings(),e=ys(n._databaseId);return new Fo(n._databaseId,!!t.ignoreUndefinedProperties,e)}function _a(n,t,e,r,i,o={}){let u=n.Cc(o.merge||o.mergeFields?2:0,t,e,i);Ia("Data must be an object, but it was:",u,r);let l=zl(r,u),h,f;if(o.merge)h=new Rt(u.fieldMask),f=u.fieldTransforms;else if(o.mergeFields){let m=[];for(let T of o.mergeFields){let A=Uo(t,T,e);if(!u.contains(A))throw new V(b.INVALID_ARGUMENT,`Field '${A}' is specified in your field mask but missing from your input data.`);$l(m,A)||m.push(A)}h=new Rt(m),f=u.fieldTransforms.filter((T=>h.covers(T.field)))}else h=null,f=u.fieldTransforms;return new Oo(new Tt(l),h,f)}var Xn=class n extends Ve{_toFieldTransform(t){if(t.Ac!==2)throw t.Ac===1?t.Sc(`${this._methodName}() can only appear at the top level of your update data`):t.Sc(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);return t.fieldMask.push(t.path),null}isEqual(t){return t instanceof n}};function xf(n,t,e){return new os({Ac:3,Dc:t.settings.Dc,methodName:n._methodName,fc:e},t.databaseId,t.serializer,t.ignoreUndefinedProperties)}var Lo=class n extends Ve{_toFieldTransform(t){return new Fr(t.path,new Ae)}isEqual(t){return t instanceof n}},qo=class n extends Ve{constructor(t,e){super(t),this.vc=e}_toFieldTransform(t){let e=xf(this,t,!0),r=this.vc.map((o=>ln(o,e))),i=new le(r);return new Fr(t.path,i)}isEqual(t){return t instanceof n&&Ws(this.vc,t.vc)}};function wa(n,t,e,r){let i=n.Cc(1,t,e);Ia("Data must be an object, but it was:",i,r);let o=[],u=Tt.empty();fe(r,((h,f)=>{let m=Ea(t,h,e);f=wt(f);let T=i.yc(m);if(f instanceof Xn)o.push(m);else{let A=ln(f,T);A!=null&&(o.push(m),u.set(m,A))}}));let l=new Rt(o);return new is(u,l,i.fieldTransforms)}function Ta(n,t,e,r,i,o){let u=n.Cc(1,t,e),l=[Uo(t,r,e)],h=[i];if(o.length%2!=0)throw new V(b.INVALID_ARGUMENT,`Function ${t}() needs to be called with an even number of arguments that alternate between field names and values.`);for(let A=0;A<o.length;A+=2)l.push(Uo(t,o[A])),h.push(o[A+1]);let f=[],m=Tt.empty();for(let A=l.length-1;A>=0;--A)if(!$l(f,l[A])){let R=l[A],D=h[A];D=wt(D);let k=u.yc(R);if(D instanceof Xn)f.push(R);else{let C=ln(D,k);C!=null&&(f.push(R),m.set(R,C))}}let T=new Rt(f);return new is(m,T,u.fieldTransforms)}function Gl(n,t,e,r=!1){return ln(e,n.Cc(r?4:3,t))}function ln(n,t){if(Kl(n=wt(n)))return Ia("Unsupported field value:",t,n),zl(n,t);if(n instanceof Ve)return(function(r,i){if(!jl(i.Ac))throw i.Sc(`${r._methodName}() can only be used with update() and set()`);if(!i.path)throw i.Sc(`${r._methodName}() is not currently supported inside arrays`);let o=r._toFieldTransform(i);o&&i.fieldTransforms.push(o)})(n,t),null;if(n===void 0&&t.ignoreUndefinedProperties)return null;if(t.path&&t.fieldMask.push(t.path),n instanceof Array){if(t.settings.fc&&t.Ac!==4)throw t.Sc("Nested arrays are not supported");return(function(r,i){let o=[],u=0;for(let l of r){let h=ln(l,i.wc(u));h==null&&(h={nullValue:"NULL_VALUE"}),o.push(h),u++}return{arrayValue:{values:o}}})(n,t)}return(function(r,i){if((r=wt(r))===null)return{nullValue:"NULL_VALUE"};if(typeof r=="number")return md(i.serializer,r);if(typeof r=="boolean")return{booleanValue:r};if(typeof r=="string")return{stringValue:r};if(r instanceof Date){let o=rt.fromDate(r);return{timestampValue:Gr(i.serializer,o)}}if(r instanceof rt){let o=new rt(r.seconds,1e3*Math.floor(r.nanoseconds/1e3));return{timestampValue:Gr(i.serializer,o)}}if(r instanceof ie)return{geoPointValue:{latitude:r.latitude,longitude:r.longitude}};if(r instanceof Kt)return{bytesValue:yl(i.serializer,r._byteString)};if(r instanceof st){let o=i.databaseId,u=r.firestore._databaseId;if(!u.isEqual(o))throw i.Sc(`Document reference is for database ${u.projectId}/${u.database} but should be for database ${o.projectId}/${o.database}`);return{referenceValue:ia(r.firestore._databaseId||i.databaseId,r._key.path)}}if(r instanceof oe)return(function(u,l){return{mapValue:{fields:{[Yo]:{stringValue:Zo},[We]:{arrayValue:{values:u.toArray().map((f=>{if(typeof f!="number")throw l.Sc("VectorValues must only contain numeric values.");return sa(l.serializer,f)}))}}}}}})(r,i);throw i.Sc(`Unsupported field value: ${hs(r)}`)})(n,t)}function zl(n,t){let e={};return Gc(n)?t.path&&t.path.length>0&&t.fieldMask.push(t.path):fe(n,((r,i)=>{let o=ln(i,t.mc(r));o!=null&&(e[r]=o)})),{mapValue:{fields:e}}}function Kl(n){return!(typeof n!="object"||n===null||n instanceof Array||n instanceof Date||n instanceof rt||n instanceof ie||n instanceof Kt||n instanceof st||n instanceof Ve||n instanceof oe)}function Ia(n,t,e){if(!Kl(e)||!Pc(e)){let r=hs(e);throw r==="an object"?t.Sc(n+" a custom object"):t.Sc(n+" "+r)}}function Uo(n,t,e){if((t=wt(t))instanceof Xt)return t._internalPath;if(typeof t=="string")return Ea(n,t);throw as("Field path arguments must be of type string or ",n,!1,void 0,e)}var Df=new RegExp("[~\\*/\\[\\]]");function Ea(n,t,e){if(t.search(Df)>=0)throw as(`Invalid field path (${t}). Paths must not contain '~', '*', '/', '[', or ']'`,n,!1,void 0,e);try{return new Xt(...t.split("."))._internalPath}catch{throw as(`Invalid field path (${t}). Paths must not be empty, begin with '.', end with '.', or contain '..'`,n,!1,void 0,e)}}function as(n,t,e,r,i){let o=r&&!r.isEmpty(),u=i!==void 0,l=`Function ${t}() called with invalid data`;e&&(l+=" (via `toFirestore()`)"),l+=". ";let h="";return(o||u)&&(h+=" (found",o&&(h+=` in field ${r}`),u&&(h+=` in document ${i}`),h+=")"),new V(b.INVALID_ARGUMENT,l+n+h)}function $l(n,t){return n.some((e=>e.isEqual(t)))}var Ce=class{constructor(t,e,r,i,o){this._firestore=t,this._userDataWriter=e,this._key=r,this._document=i,this._converter=o}get id(){return this._key.path.lastSegment()}get ref(){return new st(this._firestore,this._converter,this._key)}exists(){return this._document!==null}data(){if(this._document){if(this._converter){let t=new Bo(this._firestore,this._userDataWriter,this._key,this._document,null);return this._converter.fromFirestore(t)}return this._userDataWriter.convertValue(this._document.data.value)}}get(t){if(this._document){let e=this._document.data.field(Ts("DocumentSnapshot.get",t));if(e!==null)return this._userDataWriter.convertValue(e)}}},Bo=class extends Ce{data(){return super.data()}};function Ts(n,t){return typeof t=="string"?Ea(n,t):t instanceof Xt?t._internalPath:t._delegate._internalPath}function Ql(n){if(n.limitType==="L"&&n.explicitOrderBy.length===0)throw new V(b.UNIMPLEMENTED,"limitToLast() queries require specifying at least one orderBy() clause")}var Yn=class{},xe=class extends Yn{};function um(n,t,...e){let r=[];t instanceof Yn&&r.push(t),r=r.concat(e),(function(o){let u=o.filter((h=>h instanceof jo)).length,l=o.filter((h=>h instanceof us)).length;if(u>1||u>0&&l>0)throw new V(b.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(let i of r)n=i._apply(n);return n}var us=class n extends xe{constructor(t,e,r){super(),this._field=t,this._op=e,this._value=r,this.type="where"}static _create(t,e,r){return new n(t,e,r)}_apply(t){let e=this._parse(t);return Hl(t._query,e),new Dt(t.firestore,t.converter,Vi(t._query,e))}_parse(t){let e=cn(t.firestore);return(function(o,u,l,h,f,m,T){let A;if(f.isKeyField()){if(m==="array-contains"||m==="array-contains-any")throw new V(b.INVALID_ARGUMENT,`Invalid Query. You can't perform '${m}' queries on documentId().`);if(m==="in"||m==="not-in"){Sc(T,m);let D=[];for(let k of T)D.push(Ac(h,o,k));A={arrayValue:{values:D}}}else A=Ac(h,o,T)}else m!=="in"&&m!=="not-in"&&m!=="array-contains-any"||Sc(T,m),A=Gl(l,u,T,m==="in"||m==="not-in");return et.create(f,m,A)})(t._query,"where",e,t.firestore._databaseId,this._field,this._op,this._value)}};function cm(n,t,e){let r=t,i=Ts("where",n);return us._create(i,r,e)}var jo=class n extends Yn{constructor(t,e){super(),this.type=t,this._queryConstraints=e}static _create(t,e){return new n(t,e)}_parse(t){let e=this._queryConstraints.map((r=>r._parse(t))).filter((r=>r.getFilters().length>0));return e.length===1?e[0]:xt.create(e,this._getOperator())}_apply(t){let e=this._parse(t);return e.getFilters().length===0?t:((function(i,o){let u=i,l=o.getFlattenedFilters();for(let h of l)Hl(u,h),u=Vi(u,h)})(t._query,e),new Dt(t.firestore,t.converter,Vi(t._query,e)))}_getQueryConstraints(){return this._queryConstraints}_getOperator(){return this.type==="and"?"and":"or"}};var Go=class n extends xe{constructor(t,e){super(),this._field=t,this._direction=e,this.type="orderBy"}static _create(t,e){return new n(t,e)}_apply(t){let e=(function(i,o,u){if(i.startAt!==null)throw new V(b.INVALID_ARGUMENT,"Invalid query. You must not call startAt() or startAfter() before calling orderBy().");if(i.endAt!==null)throw new V(b.INVALID_ARGUMENT,"Invalid query. You must not call endAt() or endBefore() before calling orderBy().");return new ve(o,u)})(t._query,this._field,this._direction);return new Dt(t.firestore,t.converter,(function(i,o){let u=i.explicitOrderBy.concat([o]);return new Lt(i.path,i.collectionGroup,u,i.filters.slice(),i.limit,i.limitType,i.startAt,i.endAt)})(t._query,e))}};function lm(n,t="asc"){let e=t,r=Ts("orderBy",n);return Go._create(r,e)}var zo=class n extends xe{constructor(t,e,r){super(),this.type=t,this._limit=e,this._limitType=r}static _create(t,e,r){return new n(t,e,r)}_apply(t){return new Dt(t.firestore,t.converter,Or(t._query,this._limit,this._limitType))}};function hm(n){return Fh("limit",n),zo._create("limit",n,"F")}var cs=class n extends xe{constructor(t,e,r){super(),this.type=t,this._docOrFields=e,this._inclusive=r}static _create(t,e,r){return new n(t,e,r)}_apply(t){let e=Wl(t,this.type,this._docOrFields,this._inclusive);return new Dt(t.firestore,t.converter,(function(i,o){return new Lt(i.path,i.collectionGroup,i.explicitOrderBy.slice(),i.filters.slice(),i.limit,i.limitType,o,i.endAt)})(t._query,e))}};function dm(...n){return cs._create("startAt",n,!0)}function fm(...n){return cs._create("startAfter",n,!1)}var Ko=class n extends xe{constructor(t,e,r){super(),this.type=t,this._docOrFields=e,this._inclusive=r}static _create(t,e,r){return new n(t,e,r)}_apply(t){let e=Wl(t,this.type,this._docOrFields,this._inclusive);return new Dt(t.firestore,t.converter,(function(i,o){return new Lt(i.path,i.collectionGroup,i.explicitOrderBy.slice(),i.filters.slice(),i.limit,i.limitType,i.startAt,o)})(t._query,e))}};function mm(...n){return Ko._create("endAt",n,!0)}function Wl(n,t,e,r){if(e[0]=wt(e[0]),e[0]instanceof Ce)return(function(o,u,l,h,f){if(!h)throw new V(b.NOT_FOUND,`Can't use a DocumentSnapshot that doesn't exist for ${l}().`);let m=[];for(let T of Ge(o))if(T.field.isKeyField())m.push(kr(u,h.key));else{let A=h.data.field(T.field);if(ds(A))throw new V(b.INVALID_ARGUMENT,'Invalid query. You are trying to start or end a query using a document for which the field "'+T.field+'" is an uncommitted server timestamp. (Since the value of this field is unknown, you cannot start/end a query with it.)');if(A===null){let R=T.field.canonicalString();throw new V(b.INVALID_ARGUMENT,`Invalid query. You are trying to start or end a query using a document for which the field '${R}' (used as the orderBy) does not exist.`)}m.push(A)}return new ce(m,f)})(n._query,n.firestore._databaseId,t,e[0]._document,r);{let i=cn(n.firestore);return(function(u,l,h,f,m,T){let A=u.explicitOrderBy;if(m.length>A.length)throw new V(b.INVALID_ARGUMENT,`Too many arguments provided to ${f}(). The number of arguments must be less than or equal to the number of orderBy() clauses`);let R=[];for(let D=0;D<m.length;D++){let k=m[D];if(A[D].field.isKeyField()){if(typeof k!="string")throw new V(b.INVALID_ARGUMENT,`Invalid query. Expected a string for document ID in ${f}(), but got a ${typeof k}`);if(!ra(u)&&k.indexOf("/")!==-1)throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying a collection and ordering by documentId(), the value passed to ${f}() must be a plain document ID, but '${k}' contains a slash.`);let C=u.path.child(W.fromString(k));if(!M.isDocumentKey(C))throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying a collection group and ordering by documentId(), the value passed to ${f}() must result in a valid document path, but '${C}' is not because it contains an odd number of segments.`);let G=new M(C);R.push(kr(l,G))}else{let C=Gl(h,f,k);R.push(C)}}return new ce(R,T)})(n._query,n.firestore._databaseId,i,t,e,r)}}function Ac(n,t,e){if(typeof(e=wt(e))=="string"){if(e==="")throw new V(b.INVALID_ARGUMENT,"Invalid query. When querying with documentId(), you must provide a valid document ID, but it was an empty string.");if(!ra(t)&&e.indexOf("/")!==-1)throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying a collection by documentId(), you must provide a plain document ID, but '${e}' contains a '/' character.`);let r=t.path.child(W.fromString(e));if(!M.isDocumentKey(r))throw new V(b.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 kr(n,new M(r))}if(e instanceof st)return kr(n,e._key);throw new V(b.INVALID_ARGUMENT,`Invalid query. When querying with documentId(), you must provide a valid string or a DocumentReference, but it was: ${hs(e)}.`)}function Sc(n,t){if(!Array.isArray(n)||n.length===0)throw new V(b.INVALID_ARGUMENT,`Invalid Query. A non-empty array is required for '${t.toString()}' filters.`)}function Hl(n,t){let e=(function(i,o){for(let u of i)for(let l of u.getFlattenedFilters())if(o.indexOf(l.op)>=0)return l.op;return null})(n.filters,(function(i){switch(i){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[]}})(t.op));if(e!==null)throw e===t.op?new V(b.INVALID_ARGUMENT,`Invalid query. You cannot use more than one '${t.op.toString()}' filter.`):new V(b.INVALID_ARGUMENT,`Invalid query. You cannot use '${t.op.toString()}' filters with '${e.toString()}' filters.`)}var ls=class{convertValue(t,e="none"){switch(ue(t)){case 0:return null;case 1:return t.booleanValue;case 2:return J(t.integerValue||t.doubleValue);case 3:return this.convertTimestamp(t.timestampValue);case 4:return this.convertServerTimestamp(t,e);case 5:return t.stringValue;case 6:return this.convertBytes(Wt(t.bytesValue));case 7:return this.convertReference(t.referenceValue);case 8:return this.convertGeoPoint(t.geoPointValue);case 9:return this.convertArray(t.arrayValue,e);case 11:return this.convertObject(t.mapValue,e);case 10:return this.convertVectorValue(t.mapValue);default:throw O(62114,{value:t})}}convertObject(t,e){return this.convertObjectMap(t.fields,e)}convertObjectMap(t,e="none"){let r={};return fe(t,((i,o)=>{r[i]=this.convertValue(o,e)})),r}convertVectorValue(t){let e=t.fields?.[We].arrayValue?.values?.map((r=>J(r.doubleValue)));return new oe(e)}convertGeoPoint(t){return new ie(J(t.latitude),J(t.longitude))}convertArray(t,e){return(t.values||[]).map((r=>this.convertValue(r,e)))}convertServerTimestamp(t,e){switch(e){case"previous":let r=fs(t);return r==null?null:this.convertValue(r,e);case"estimate":return this.convertTimestamp(Un(t));default:return null}}convertTimestamp(t){let e=Qt(t);return new rt(e.seconds,e.nanos)}convertDocumentKey(t,e){let r=W.fromString(t);j(Al(r),9688,{name:t});let i=new Nr(r.get(1),r.get(3)),o=new M(r.popFirst(5));return i.isEqual(e)||$t(`Document ${o} contains a document reference within a different database (${i.projectId}/${i.database}) which is not supported. It will be treated as a reference in the current database (${e.projectId}/${e.database}) instead.`),o}};function va(n,t,e){let r;return r=n?e&&(e.merge||e.mergeFields)?n.toFirestore(t,e):n.toFirestore(t):t,r}var $o=class extends ls{constructor(t){super(),this.firestore=t}convertBytes(t){return new Kt(t)}convertReference(t){let e=this.convertDocumentKey(t,this.firestore._databaseId);return new st(this.firestore,null,e)}};var ne=class{constructor(t,e){this.hasPendingWrites=t,this.fromCache=e}isEqual(t){return this.hasPendingWrites===t.hasPendingWrites&&this.fromCache===t.fromCache}},ae=class n extends Ce{constructor(t,e,r,i,o,u){super(t,e,r,i,u),this._firestore=t,this._firestoreImpl=t,this.metadata=o}exists(){return super.exists()}data(t={}){if(this._document){if(this._converter){let e=new Ke(this._firestore,this._userDataWriter,this._key,this._document,this.metadata,null);return this._converter.fromFirestore(e,t)}return this._userDataWriter.convertValue(this._document.data.value,t.serverTimestamps)}}get(t,e={}){if(this._document){let r=this._document.data.field(Ts("DocumentSnapshot.get",t));if(r!==null)return this._userDataWriter.convertValue(r,e.serverTimestamps)}}toJSON(){if(this.metadata.hasPendingWrites)throw new V(b.FAILED_PRECONDITION,"DocumentSnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().");let t=this._document,e={};return e.type=n._jsonSchemaVersion,e.bundle="",e.bundleSource="DocumentSnapshot",e.bundleName=this._key.toString(),!t||!t.isValidDocument()||!t.isFoundDocument()?e:(this._userDataWriter.convertObjectMap(t.data.value.mapValue.fields,"previous"),e.bundle=(this._firestore,this.ref.path,"NOT SUPPORTED"),e)}};ae._jsonSchemaVersion="firestore/documentSnapshot/1.0",ae._jsonSchema={type:nt("string",ae._jsonSchemaVersion),bundleSource:nt("string","DocumentSnapshot"),bundleName:nt("string"),bundle:nt("string")};var Ke=class extends ae{data(t={}){return super.data(t)}},Te=class n{constructor(t,e,r,i){this._firestore=t,this._userDataWriter=e,this._snapshot=i,this.metadata=new ne(i.hasPendingWrites,i.fromCache),this.query=r}get docs(){let t=[];return this.forEach((e=>t.push(e))),t}get size(){return this._snapshot.docs.size}get empty(){return this.size===0}forEach(t,e){this._snapshot.docs.forEach((r=>{t.call(e,new Ke(this._firestore,this._userDataWriter,r.key,r,new ne(this._snapshot.mutatedKeys.has(r.key),this._snapshot.fromCache),this.query.converter))}))}docChanges(t={}){let e=!!t.includeMetadataChanges;if(e&&this._snapshot.excludesMetadataChanges)throw new V(b.INVALID_ARGUMENT,"To include metadata changes with your document changes, you must also pass { includeMetadataChanges:true } to onSnapshot().");return this._cachedChanges&&this._cachedChangesIncludeMetadataChanges===e||(this._cachedChanges=(function(i,o){if(i._snapshot.oldDocs.isEmpty()){let u=0;return i._snapshot.docChanges.map((l=>{let h=new Ke(i._firestore,i._userDataWriter,l.doc.key,l.doc,new ne(i._snapshot.mutatedKeys.has(l.doc.key),i._snapshot.fromCache),i.query.converter);return l.doc,{type:"added",doc:h,oldIndex:-1,newIndex:u++}}))}{let u=i._snapshot.oldDocs;return i._snapshot.docChanges.filter((l=>o||l.type!==3)).map((l=>{let h=new Ke(i._firestore,i._userDataWriter,l.doc.key,l.doc,new ne(i._snapshot.mutatedKeys.has(l.doc.key),i._snapshot.fromCache),i.query.converter),f=-1,m=-1;return l.type!==0&&(f=u.indexOf(l.doc.key),u=u.delete(l.doc.key)),l.type!==1&&(u=u.add(l.doc),m=u.indexOf(l.doc.key)),{type:Nf(l.type),doc:h,oldIndex:f,newIndex:m}}))}})(this,e),this._cachedChangesIncludeMetadataChanges=e),this._cachedChanges}toJSON(){if(this.metadata.hasPendingWrites)throw new V(b.FAILED_PRECONDITION,"QuerySnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().");let t={};t.type=n._jsonSchemaVersion,t.bundleSource="QuerySnapshot",t.bundleName=Fn.newId(),this._firestore._databaseId.database,this._firestore._databaseId.projectId;let e=[],r=[],i=[];return this.docs.forEach((o=>{o._document!==null&&(e.push(o._document),r.push(this._userDataWriter.convertObjectMap(o._document.data.value.mapValue.fields,"previous")),i.push(o.ref.path))})),t.bundle=(this._firestore,this.query._query,t.bundleName,"NOT SUPPORTED"),t}};function Nf(n){switch(n){case 0:return"added";case 2:case 3:return"modified";case 1:return"removed";default:return O(61501,{type:n})}}function gm(n){n=It(n,st);let t=It(n.firestore,Vt);return bf(un(t),n._key).then((e=>Jl(t,n,e)))}Te._jsonSchemaVersion="firestore/querySnapshot/1.0",Te._jsonSchema={type:nt("string",Te._jsonSchemaVersion),bundleSource:nt("string","QuerySnapshot"),bundleName:nt("string"),bundle:nt("string")};var nn=class extends ls{constructor(t){super(),this.firestore=t}convertBytes(t){return new Kt(t)}convertReference(t){let e=this.convertDocumentKey(t,this.firestore._databaseId);return new st(this.firestore,null,e)}};function pm(n){n=It(n,Dt);let t=It(n.firestore,Vt),e=un(t),r=new nn(t);return Ql(n._query),Rf(e,n._query).then((i=>new Te(t,r,n,i)))}function ym(n,t,e){n=It(n,st);let r=It(n.firestore,Vt),i=va(n.converter,t,e);return Is(r,[_a(cn(r),"setDoc",n._key,i,n.converter!==null,e).toMutation(n._key,at.none())])}function _m(n,t,e,...r){n=It(n,st);let i=It(n.firestore,Vt),o=cn(i),u;return u=typeof(t=wt(t))=="string"||t instanceof Xt?Ta(o,"updateDoc",n._key,t,e,r):wa(o,"updateDoc",n._key,t),Is(i,[u.toMutation(n._key,at.exists(!0))])}function wm(n){return Is(It(n.firestore,Vt),[new Re(n._key,at.none())])}function Tm(n,...t){n=wt(n);let e={includeMetadataChanges:!1,source:"default"},r=0;typeof t[r]!="object"||vc(t[r])||(e=t[r++]);let i={includeMetadataChanges:e.includeMetadataChanges,source:e.source};if(vc(t[r])){let h=t[r];t[r]=h.next?.bind(h),t[r+1]=h.error?.bind(h),t[r+2]=h.complete?.bind(h)}let o,u,l;if(n instanceof st)u=It(n.firestore,Vt),l=ms(n._key.path),o={next:h=>{t[r]&&t[r](Jl(u,n,h))},error:t[r+1],complete:t[r+2]};else{let h=It(n,Dt);u=It(h.firestore,Vt),l=h._query;let f=new nn(u);o={next:m=>{t[r]&&t[r](new Te(u,f,h,m))},error:t[r+1],complete:t[r+2]},Ql(n._query)}return(function(f,m,T,A){let R=new Hn(A),D=new Qn(m,R,T);return f.asyncQueue.enqueueAndForget((async()=>da(await ns(f),D))),()=>{R.Nu(),f.asyncQueue.enqueueAndForget((async()=>fa(await ns(f),D)))}})(un(u),l,i,o)}function Is(n,t){return(function(r,i){let o=new Pt;return r.asyncQueue.enqueueAndForget((async()=>gf(await Af(r),i,o))),o.promise})(un(n),t)}function Jl(n,t,e){let r=e.docs.get(t._key),i=new nn(n);return new ae(n,i,t._key,r,new ne(e.hasPendingWrites,e.fromCache),t.converter)}var kf={maxAttempts:5};var Qo=class{constructor(t,e){this._firestore=t,this._commitHandler=e,this._mutations=[],this._committed=!1,this._dataReader=cn(t)}set(t,e,r){this._verifyNotCommitted();let i=re(t,this._firestore),o=va(i.converter,e,r),u=_a(this._dataReader,"WriteBatch.set",i._key,o,i.converter!==null,r);return this._mutations.push(u.toMutation(i._key,at.none())),this}update(t,e,r,...i){this._verifyNotCommitted();let o=re(t,this._firestore),u;return u=typeof(e=wt(e))=="string"||e instanceof Xt?Ta(this._dataReader,"WriteBatch.update",o._key,e,r,i):wa(this._dataReader,"WriteBatch.update",o._key,e),this._mutations.push(u.toMutation(o._key,at.exists(!0))),this}delete(t){this._verifyNotCommitted();let e=re(t,this._firestore);return this._mutations=this._mutations.concat(new Re(e._key,at.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 V(b.FAILED_PRECONDITION,"A write batch can no longer be used after commit() has been called.")}};function re(n,t){if((n=wt(n)).firestore!==t)throw new V(b.INVALID_ARGUMENT,"Provided document reference is from a different Firestore instance.");return n}var Wo=class{constructor(t,e){this._firestore=t,this._transaction=e,this._dataReader=cn(t)}get(t){let e=re(t,this._firestore),r=new $o(this._firestore);return this._transaction.lookup([e._key]).then((i=>{if(!i||i.length!==1)return O(24041);let o=i[0];if(o.isFoundDocument())return new Ce(this._firestore,r,o.key,o,e.converter);if(o.isNoDocument())return new Ce(this._firestore,r,e._key,null,e.converter);throw O(18433,{doc:o})}))}set(t,e,r){let i=re(t,this._firestore),o=va(i.converter,e,r),u=_a(this._dataReader,"Transaction.set",i._key,o,i.converter!==null,r);return this._transaction.set(i._key,u),this}update(t,e,r,...i){let o=re(t,this._firestore),u;return u=typeof(e=wt(e))=="string"||e instanceof Xt?Ta(this._dataReader,"Transaction.update",o._key,e,r,i):wa(this._dataReader,"Transaction.update",o._key,e),this._transaction.update(o._key,u),this}delete(t){let e=re(t,this._firestore);return this._transaction.delete(e._key),this}};var Ho=class extends Wo{constructor(t,e){super(t,e),this._firestore=t}get(t){let e=re(t,this._firestore),r=new nn(this._firestore);return super.get(t).then((i=>new ae(this._firestore,r,e._key,i._document,new ne(!1,!1),e.converter)))}};function Im(n,t,e){n=It(n,Vt);let r={...kf,...e};return(function(o){if(o.maxAttempts<1)throw new V(b.INVALID_ARGUMENT,"Max attempts must be at least 1")})(r),(function(o,u,l){let h=new Pt;return o.asyncQueue.enqueueAndForget((async()=>{let f=await Sf(o);new ko(o.asyncQueue,f,l,u,h).ju()})),h.promise})(un(n),(i=>t(new Ho(n,i))),r)}function Em(){return new Xn("deleteField")}function vm(){return new Lo("serverTimestamp")}function Am(...n){return new qo("arrayUnion",n)}function Sm(n){return un(n=It(n,Vt)),new Qo(n,(t=>Is(n,t)))}(function(t,e=!0){(function(i){rn=i})(ku),xu(new Vu("firestore",((r,{instanceIdentifier:i,options:o})=>{let u=r.getProvider("app").getImmediate(),l=new Vt(new ui(r.getProvider("auth-internal")),new hi(u,r.getProvider("app-check-internal")),(function(f,m){if(!Object.prototype.hasOwnProperty.apply(f.options,["projectId"]))throw new V(b.INVALID_ARGUMENT,'"projectId" not provided in firebase.initializeApp.');return new Nr(f.options.projectId,m)})(u,i),u);return o={useFetchStreams:e,...o},l._setSettings(o),l}),"PUBLIC").setMultipleInstances(!0)),Hs(Fu,Lu,t),Hs(Fu,Lu,"esm2020")})();export{rt as a,sm as b,im as c,om as d,Xt as e,am as f,um as g,cm as h,lm as i,hm as j,dm as k,fm as l,mm as m,gm as n,pm as o,ym as p,_m as q,wm as r,Tm as s,Im as t,Em as u,vm as v,Am as w,Sm as x};
|