@veltdev/sdk-staging 6.0.0-beta.2 → 6.0.0-beta.20

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.
Files changed (89) hide show
  1. package/app/client/snippyly.model.d.ts +12 -3
  2. package/app/models/data/comment-events.data.model.d.ts +39 -0
  3. package/app/models/data/config.data.model.d.ts +154 -0
  4. package/app/models/data/reaction-resolver.data.model.d.ts +1 -0
  5. package/app/models/data/selection.model.d.ts +10 -8
  6. package/app/models/data/user-resolver.data.model.d.ts +11 -9
  7. package/app/models/data/user.data.model.d.ts +21 -18
  8. package/app/models/element/activity-element.model.d.ts +0 -1
  9. package/app/models/element/area-element.model.d.ts +0 -1
  10. package/app/models/element/arrow-element.model.d.ts +1 -2
  11. package/app/models/element/autocomplete-element.model.d.ts +0 -1
  12. package/app/models/element/comment-element.model.d.ts +103 -77
  13. package/app/models/element/contact-element.model.d.ts +1 -2
  14. package/app/models/element/crdt-element.model.d.ts +1 -1
  15. package/app/models/element/cursor-element.model.d.ts +1 -2
  16. package/app/models/element/huddle-element.model.d.ts +1 -2
  17. package/app/models/element/live-state-sync-element.model.d.ts +1 -1
  18. package/app/models/element/notification-element.model.d.ts +33 -2
  19. package/app/models/element/presence-element.model.d.ts +32 -11
  20. package/app/models/element/reaction-element.model.d.ts +1 -1
  21. package/app/models/element/recorder-element.model.d.ts +21 -2
  22. package/app/models/element/rewriter-element.model.d.ts +43 -1
  23. package/app/models/element/selection-element.model.d.ts +1 -1
  24. package/app/models/element/suggestion-element.model.d.ts +0 -1
  25. package/app/models/element/tag-element.model.d.ts +7 -8
  26. package/app/models/element/views-element.model.d.ts +1 -1
  27. package/app/utils/enums.d.ts +97 -83
  28. package/{chunk-6SOP2T3L.js → chunk-2XFMMSIA.js} +1 -1
  29. package/{chunk-USRSVPHC.js → chunk-35J3HFXX.js} +1 -1
  30. package/{chunk-Y6QKEGWK.js → chunk-7KKEGN3R.js} +1 -1
  31. package/{chunk-WANCOUQO.js → chunk-7USARX44.js} +1 -1
  32. package/{chunk-Q7BPHHBS.js → chunk-7YVQR4BL.js} +1 -1
  33. package/{chunk-5FKOPJVO.js → chunk-AAZAJXGE.js} +7 -7
  34. package/{chunk-N4SGYLNB.js → chunk-B4IA4XDT.js} +1 -1
  35. package/{chunk-2HGBJS2C.js → chunk-BYJ7FNFA.js} +1 -1
  36. package/{chunk-7W553TUZ.js → chunk-DJYRZD7H.js} +1 -1
  37. package/chunk-FXUDI3M6.js +167 -0
  38. package/{chunk-YBQBSGLX.js → chunk-G35OSTOG.js} +1 -1
  39. package/{chunk-SALUJBOS.js → chunk-GBHISGGX.js} +1 -1
  40. package/{chunk-JFRM6MNS.js → chunk-GGPJ6IKC.js} +1 -1
  41. package/chunk-GRHEZULW.js +1 -0
  42. package/{chunk-XMYVEF74.js → chunk-HCYE7VHY.js} +1 -1
  43. package/chunk-KVEOD4IE.js +13 -0
  44. package/{chunk-SKP3Z3DQ.js → chunk-L6U6GS3W.js} +1 -1
  45. package/{chunk-2KJNXU43.js → chunk-MMLFNU6G.js} +1 -1
  46. package/{chunk-J6J7I3SW.js → chunk-MNSD5X74.js} +1 -1
  47. package/{chunk-BG6MNCDK.js → chunk-MWSODQ6X.js} +1 -1
  48. package/{chunk-7ZOGXD6Z.js → chunk-NTNPNLFT.js} +1 -1
  49. package/{chunk-DX4SZFHQ.js → chunk-O7ZAC2ZS.js} +1 -1
  50. package/{chunk-447SWJD2.js → chunk-PFRELWAV.js} +1 -1
  51. package/{chunk-TXOYHDVN.js → chunk-RFCFKIUM.js} +1 -1
  52. package/{chunk-AOHSD4YE.js → chunk-RU3S5WM7.js} +2 -2
  53. package/{chunk-UJMFCXYS.js → chunk-SJ45VMIG.js} +1 -1
  54. package/{chunk-ZVY2YW2G.js → chunk-SZKZ3DG3.js} +1 -1
  55. package/{chunk-QE2MK6NF.js → chunk-TH6YKCXO.js} +1 -1
  56. package/chunk-TYMRWTZD.js +1 -0
  57. package/chunk-WD2ZEHH2.js +1 -0
  58. package/{chunk-25GEE4UD.js → chunk-WDA4SVMN.js} +1 -1
  59. package/{chunk-IXZIBE27.js → chunk-XA2U66CN.js} +1 -1
  60. package/chunk-XK65RTYQ.js +1 -0
  61. package/package.json +1 -1
  62. package/types.d.ts +22 -22
  63. package/velt-activity-log.js +1 -1
  64. package/velt-area.js +1 -1
  65. package/velt-arrow.js +2 -2
  66. package/velt-comment.js +8 -8
  67. package/velt-crdt.js +1 -1
  68. package/velt-cursor.js +2 -2
  69. package/velt-huddle.js +3 -3
  70. package/velt-live-state-sync.js +2 -2
  71. package/velt-notification.js +1 -1
  72. package/velt-presence.js +1 -1
  73. package/velt-reaction.js +1 -1
  74. package/velt-recorder.js +1 -1
  75. package/velt-rewriter.js +2 -2
  76. package/velt-selection.js +1 -1
  77. package/velt-tag.js +1 -1
  78. package/velt-user-invite.js +1 -1
  79. package/velt-user-request.js +1 -1
  80. package/velt-video-player.js +1 -1
  81. package/velt-views.js +3 -3
  82. package/velt.d.ts +1 -2
  83. package/velt.js +264 -20
  84. package/chunk-5B5CQEDX.js +0 -1
  85. package/chunk-APIRNTKO.js +0 -1
  86. package/chunk-AVMLJMVU.js +0 -1
  87. package/chunk-BLIJMW4Z.js +0 -13
  88. package/chunk-BY627CV6.js +0 -1
  89. package/chunk-JWLHBAMV.js +0 -167
package/chunk-JWLHBAMV.js DELETED
@@ -1,167 +0,0 @@
1
- var mz=Object.create;var jp=Object.defineProperty,pz=Object.defineProperties,Ez=Object.getOwnPropertyDescriptor,_z=Object.getOwnPropertyDescriptors,Tz=Object.getOwnPropertyNames,$p=Object.getOwnPropertySymbols,fP=Object.getPrototypeOf,uS=Object.prototype.hasOwnProperty,gP=Object.prototype.propertyIsEnumerable,Iz=Reflect.get;var hP=(n,e,r)=>e in n?jp(n,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):n[e]=r,x=(n,e)=>{for(var r in e||={})uS.call(e,r)&&hP(n,r,e[r]);if($p)for(var r of $p(e))gP.call(e,r)&&hP(n,r,e[r]);return n},le=(n,e)=>pz(n,_z(e));var dS=(n,e)=>{var r={};for(var t in n)uS.call(n,t)&&e.indexOf(t)<0&&(r[t]=n[t]);if(n!=null&&$p)for(var t of $p(n))e.indexOf(t)<0&&gP.call(n,t)&&(r[t]=n[t]);return r};var pse=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),Ese=(n,e)=>{for(var r in e)jp(n,r,{get:e[r],enumerable:!0})},vz=(n,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Tz(e))!uS.call(n,i)&&i!==r&&jp(n,i,{get:()=>e[i],enumerable:!(t=Ez(e,i))||t.enumerable});return n};var _se=(n,e,r)=>(r=n!=null?mz(fP(n)):{},vz(e||!n||!n.__esModule?jp(r,"default",{value:n,enumerable:!0}):r,n));var pc=(n,e,r)=>Iz(fP(n),r,e);var I=(n,e,r)=>new Promise((t,i)=>{var o=c=>{try{a(r.next(c))}catch(l){i(l)}},s=c=>{try{a(r.throw(c))}catch(l){i(l)}},a=c=>c.done?t(c.value):Promise.resolve(c.value).then(o,s);a((r=r.apply(n,e)).next())});function Se(n){return typeof n=="function"}function hS(n){return Se(n?.lift)}function ye(n){return e=>{if(hS(e))return e.lift(function(r){try{return n(r,this)}catch(t){this.error(t)}});throw new TypeError("Unable to lift unknown Observable type")}}function js(n){let r=n(t=>{Error.call(t),t.stack=new Error().stack});return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Hp=js(n=>function(r){n(this),this.message=r?`${r.length} errors occurred during unsubscription:
2
- ${r.map((t,i)=>`${i+1}) ${t.toString()}`).join(`
3
- `)}`:"",this.name="UnsubscriptionError",this.errors=r});function Ec(n,e){if(n){let r=n.indexOf(e);0<=r&&n.splice(r,1)}}var gt=class n{constructor(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let e;if(!this.closed){this.closed=!0;let{_parentage:r}=this;if(r)if(this._parentage=null,Array.isArray(r))for(let o of r)o.remove(this);else r.remove(this);let{initialTeardown:t}=this;if(Se(t))try{t()}catch(o){e=o instanceof Hp?o.errors:[o]}let{_finalizers:i}=this;if(i){this._finalizers=null;for(let o of i)try{mP(o)}catch(s){e=e??[],s instanceof Hp?e=[...e,...s.errors]:e.push(s)}}if(e)throw new Hp(e)}}add(e){var r;if(e&&e!==this)if(this.closed)mP(e);else{if(e instanceof n){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(e)}}_hasParent(e){let{_parentage:r}=this;return r===e||Array.isArray(r)&&r.includes(e)}_addParent(e){let{_parentage:r}=this;this._parentage=Array.isArray(r)?(r.push(e),r):r?[r,e]:e}_removeParent(e){let{_parentage:r}=this;r===e?this._parentage=null:Array.isArray(r)&&Ec(r,e)}remove(e){let{_finalizers:r}=this;r&&Ec(r,e),e instanceof n&&e._removeParent(this)}};gt.EMPTY=(()=>{let n=new gt;return n.closed=!0,n})();var fS=gt.EMPTY;function Wp(n){return n instanceof gt||n&&"closed"in n&&Se(n.remove)&&Se(n.add)&&Se(n.unsubscribe)}function mP(n){Se(n)?n():n.unsubscribe()}var Si={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var _u={setTimeout(n,e,...r){let{delegate:t}=_u;return t?.setTimeout?t.setTimeout(n,e,...r):setTimeout(n,e,...r)},clearTimeout(n){let{delegate:e}=_u;return(e?.clearTimeout||clearTimeout)(n)},delegate:void 0};function zp(n){_u.setTimeout(()=>{let{onUnhandledError:e}=Si;if(e)e(n);else throw n})}function Ai(){}var pP=gS("C",void 0,void 0);function EP(n){return gS("E",void 0,n)}function _P(n){return gS("N",n,void 0)}function gS(n,e,r){return{kind:n,value:e,error:r}}var _c=null;function Tu(n){if(Si.useDeprecatedSynchronousErrorHandling){let e=!_c;if(e&&(_c={errorThrown:!1,error:null}),n(),e){let{errorThrown:r,error:t}=_c;if(_c=null,r)throw t}}else n()}function TP(n){Si.useDeprecatedSynchronousErrorHandling&&_c&&(_c.errorThrown=!0,_c.error=n)}var Tc=class extends gt{constructor(e){super(),this.isStopped=!1,e?(this.destination=e,Wp(e)&&e.add(this)):this.destination=Az}static create(e,r,t){return new Di(e,r,t)}next(e){this.isStopped?pS(_P(e),this):this._next(e)}error(e){this.isStopped?pS(EP(e),this):(this.isStopped=!0,this._error(e))}complete(){this.isStopped?pS(pP,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(e){this.destination.next(e)}_error(e){try{this.destination.error(e)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},yz=Function.prototype.bind;function mS(n,e){return yz.call(n,e)}var ES=class{constructor(e){this.partialObserver=e}next(e){let{partialObserver:r}=this;if(r.next)try{r.next(e)}catch(t){qp(t)}}error(e){let{partialObserver:r}=this;if(r.error)try{r.error(e)}catch(t){qp(t)}else qp(e)}complete(){let{partialObserver:e}=this;if(e.complete)try{e.complete()}catch(r){qp(r)}}},Di=class extends Tc{constructor(e,r,t){super();let i;if(Se(e)||!e)i={next:e??void 0,error:r??void 0,complete:t??void 0};else{let o;this&&Si.useDeprecatedNextContext?(o=Object.create(e),o.unsubscribe=()=>this.unsubscribe(),i={next:e.next&&mS(e.next,o),error:e.error&&mS(e.error,o),complete:e.complete&&mS(e.complete,o)}):i=e}this.destination=new ES(i)}};function qp(n){Si.useDeprecatedSynchronousErrorHandling?TP(n):zp(n)}function Sz(n){throw n}function pS(n,e){let{onStoppedNotification:r}=Si;r&&_u.setTimeout(()=>r(n,e))}var Az={closed:!0,next:Ai,error:Sz,complete:Ai};function Ee(n,e,r,t,i){return new _S(n,e,r,t,i)}var _S=class extends Tc{constructor(e,r,t,i,o,s){super(e),this.onFinalize=o,this.shouldUnsubscribe=s,this._next=r?function(a){try{r(a)}catch(c){e.error(c)}}:super._next,this._error=i?function(a){try{i(a)}catch(c){e.error(c)}finally{this.unsubscribe()}}:super._error,this._complete=t?function(){try{t()}catch(a){e.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var e;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:r}=this;super.unsubscribe(),!r&&((e=this.onFinalize)===null||e===void 0||e.call(this))}}};function Ct(n,e){return ye((r,t)=>{let i=0;r.subscribe(Ee(t,o=>n.call(e,o,i++)&&t.next(o)))})}var Iu=typeof Symbol=="function"&&Symbol.observable||"@@observable";function Ri(n){return n}function IP(n){return n.length===0?Ri:n.length===1?n[0]:function(r){return n.reduce((t,i)=>i(t),r)}}var ge=(()=>{class n{constructor(r){r&&(this._subscribe=r)}lift(r){let t=new n;return t.source=this,t.operator=r,t}subscribe(r,t,i){let o=Rz(r)?r:new Di(r,t,i);return Tu(()=>{let{operator:s,source:a}=this;o.add(s?s.call(o,a):a?this._subscribe(o):this._trySubscribe(o))}),o}_trySubscribe(r){try{return this._subscribe(r)}catch(t){r.error(t)}}forEach(r,t){return t=vP(t),new t((i,o)=>{let s=new Di({next:a=>{try{r(a)}catch(c){o(c),s.unsubscribe()}},error:o,complete:i});this.subscribe(s)})}_subscribe(r){var t;return(t=this.source)===null||t===void 0?void 0:t.subscribe(r)}[Iu](){return this}pipe(...r){return IP(r)(this)}toPromise(r){return r=vP(r),new r((t,i)=>{let o;this.subscribe(s=>o=s,s=>i(s),()=>t(o))})}}return n.create=e=>new n(e),n})();function vP(n){var e;return(e=n??Si.Promise)!==null&&e!==void 0?e:Promise}function Dz(n){return n&&Se(n.next)&&Se(n.error)&&Se(n.complete)}function Rz(n){return n&&n instanceof Tc||Dz(n)&&Wp(n)}var Ic=new ge(n=>n.complete());function Nt(n){return n<=0?()=>Ic:ye((e,r)=>{let t=0;e.subscribe(Ee(r,i=>{++t<=n&&(r.next(i),n<=t&&r.complete())}))})}function TS(n,e){var r={};for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&e.indexOf(t)<0&&(r[t]=n[t]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,t=Object.getOwnPropertySymbols(n);i<t.length;i++)e.indexOf(t[i])<0&&Object.prototype.propertyIsEnumerable.call(n,t[i])&&(r[t[i]]=n[t[i]]);return r}function SP(n,e,r,t){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function a(u){try{l(t.next(u))}catch(d){s(d)}}function c(u){try{l(t.throw(u))}catch(d){s(d)}}function l(u){u.done?o(u.value):i(u.value).then(a,c)}l((t=t.apply(n,e||[])).next())})}function yP(n){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&n[e],t=0;if(r)return r.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&t>=n.length&&(n=void 0),{value:n&&n[t++],done:!n}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function vc(n){return this instanceof vc?(this.v=n,this):new vc(n)}function AP(n,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=r.apply(n,e||[]),i,o=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),i[Symbol.asyncIterator]=function(){return this},i;function s(g){return function(p){return Promise.resolve(p).then(g,d)}}function a(g,p){t[g]&&(i[g]=function(_){return new Promise(function(T,D){o.push([g,_,T,D])>1||c(g,_)})},p&&(i[g]=p(i[g])))}function c(g,p){try{l(t[g](p))}catch(_){f(o[0][3],_)}}function l(g){g.value instanceof vc?Promise.resolve(g.value.v).then(u,d):f(o[0][2],g)}function u(g){c("next",g)}function d(g){c("throw",g)}function f(g,p){g(p),o.shift(),o.length&&c(o[0][0],o[0][1])}}function DP(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],r;return e?e.call(n):(n=typeof yP=="function"?yP(n):n[Symbol.iterator](),r={},t("next"),t("throw"),t("return"),r[Symbol.asyncIterator]=function(){return this},r);function t(o){r[o]=n[o]&&function(s){return new Promise(function(a,c){s=n[o](s),i(a,c,s.done,s.value)})}}function i(o,s,a,c){Promise.resolve(c).then(function(l){o({value:l,done:a})},s)}}var vu=n=>n&&typeof n.length=="number"&&typeof n!="function";function Kp(n){return Se(n?.then)}function Yp(n){return Se(n[Iu])}function Qp(n){return Symbol.asyncIterator&&Se(n?.[Symbol.asyncIterator])}function Xp(n){return new TypeError(`You provided ${n!==null&&typeof n=="object"?"an invalid object":`'${n}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function Cz(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Jp=Cz();function Zp(n){return Se(n?.[Jp])}function eE(n){return AP(this,arguments,function*(){let r=n.getReader();try{for(;;){let{value:t,done:i}=yield vc(r.read());if(i)return yield vc(void 0);yield yield vc(t)}}finally{r.releaseLock()}})}function tE(n){return Se(n?.getReader)}function Me(n){if(n instanceof ge)return n;if(n!=null){if(Yp(n))return Nz(n);if(vu(n))return Oz(n);if(Kp(n))return wz(n);if(Qp(n))return RP(n);if(Zp(n))return bz(n);if(tE(n))return Lz(n)}throw Xp(n)}function Nz(n){return new ge(e=>{let r=n[Iu]();if(Se(r.subscribe))return r.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Oz(n){return new ge(e=>{for(let r=0;r<n.length&&!e.closed;r++)e.next(n[r]);e.complete()})}function wz(n){return new ge(e=>{n.then(r=>{e.closed||(e.next(r),e.complete())},r=>e.error(r)).then(null,zp)})}function bz(n){return new ge(e=>{for(let r of n)if(e.next(r),e.closed)return;e.complete()})}function RP(n){return new ge(e=>{Mz(n,e).catch(r=>e.error(r))})}function Lz(n){return RP(eE(n))}function Mz(n,e){var r,t,i,o;return SP(this,void 0,void 0,function*(){try{for(r=DP(n);t=yield r.next(),!t.done;){let s=t.value;if(e.next(s),e.closed)return}}catch(s){i={error:s}}finally{try{t&&!t.done&&(o=r.return)&&(yield o.call(r))}finally{if(i)throw i.error}}e.complete()})}function CP(n){return ye((e,r)=>{let t=!1,i=null,o=null,s=!1,a=()=>{if(o?.unsubscribe(),o=null,t){t=!1;let l=i;i=null,r.next(l)}s&&r.complete()},c=()=>{o=null,s&&r.complete()};e.subscribe(Ee(r,l=>{t=!0,i=l,o||Me(n(l)).subscribe(o=Ee(r,a,c))},()=>{s=!0,(!t||!o||o.closed)&&r.complete()}))})}var nE=class extends gt{constructor(e,r){super()}schedule(e,r=0){return this}};var Tf={setInterval(n,e,...r){let{delegate:t}=Tf;return t?.setInterval?t.setInterval(n,e,...r):setInterval(n,e,...r)},clearInterval(n){let{delegate:e}=Tf;return(e?.clearInterval||clearInterval)(n)},delegate:void 0};var so=class extends nE{constructor(e,r){super(e,r),this.scheduler=e,this.work=r,this.pending=!1}schedule(e,r=0){var t;if(this.closed)return this;this.state=e;let i=this.id,o=this.scheduler;return i!=null&&(this.id=this.recycleAsyncId(o,i,r)),this.pending=!0,this.delay=r,this.id=(t=this.id)!==null&&t!==void 0?t:this.requestAsyncId(o,this.id,r),this}requestAsyncId(e,r,t=0){return Tf.setInterval(e.flush.bind(e,this),t)}recycleAsyncId(e,r,t=0){if(t!=null&&this.delay===t&&this.pending===!1)return r;r!=null&&Tf.clearInterval(r)}execute(e,r){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let t=this._execute(e,r);if(t)return t;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(e,r){let t=!1,i;try{this.work(e)}catch(o){t=!0,i=o||new Error("Scheduled action threw falsy error")}if(t)return this.unsubscribe(),i}unsubscribe(){if(!this.closed){let{id:e,scheduler:r}=this,{actions:t}=r;this.work=this.state=this.scheduler=null,this.pending=!1,Ec(t,this),e!=null&&(this.id=this.recycleAsyncId(r,e,null)),this.delay=null,super.unsubscribe()}}};var yc={now(){return(yc.delegate||Date).now()},delegate:void 0};var yu=class n{constructor(e,r=n.now){this.schedulerActionCtor=e,this.now=r}schedule(e,r=0,t){return new this.schedulerActionCtor(this,e).schedule(t,r)}};yu.now=yc.now;var ao=class extends yu{constructor(e,r=yu.now){super(e,r),this.actions=[],this._active=!1}flush(e){let{actions:r}=this;if(this._active){r.push(e);return}let t;this._active=!0;do if(t=e.execute(e.state,e.delay))break;while(e=r.shift());if(this._active=!1,t){for(;e=r.shift();)e.unsubscribe();throw t}}};var Hn=new ao(so),IS=Hn;function rE(n){return n&&Se(n.schedule)}function iE(n){return n instanceof Date&&!isNaN(n)}function Ci(n=0,e,r=IS){let t=-1;return e!=null&&(rE(e)?r=e:t=e),new ge(i=>{let o=iE(n)?+n-r.now():n;o<0&&(o=0);let s=0;return r.schedule(function(){i.closed||(i.next(s++),0<=t?this.schedule(void 0,t):i.complete())},o)})}function Pz(n,e=Hn){return CP(()=>Ci(n,e))}function vS(n){return n[n.length-1]}function oE(n){return Se(vS(n))?n.pop():void 0}function co(n){return rE(vS(n))?n.pop():void 0}function NP(n,e){return typeof vS(n)=="number"?n.pop():e}function Wn(n,e,r,t=0,i=!1){let o=e.schedule(function(){r(),i?n.add(this.schedule(null,t)):this.unsubscribe()},t);if(n.add(o),!i)return o}function ts(n){return ye((e,r)=>{let t=null,i=!1,o;t=e.subscribe(Ee(r,void 0,void 0,s=>{o=Me(n(s,ts(n)(e))),t?(t.unsubscribe(),t=null,o.subscribe(r)):i=!0})),i&&(t.unsubscribe(),t=null,o.subscribe(r))})}var{isArray:xz}=Array,{getPrototypeOf:Fz,prototype:kz,keys:Uz}=Object;function sE(n){if(n.length===1){let e=n[0];if(xz(e))return{args:e,keys:null};if(Vz(e)){let r=Uz(e);return{args:r.map(t=>e[t]),keys:r}}}return{args:n,keys:null}}function Vz(n){return n&&typeof n=="object"&&Fz(n)===kz}function Hs(n,e=0){return ye((r,t)=>{r.subscribe(Ee(t,i=>Wn(t,n,()=>t.next(i),e),()=>Wn(t,n,()=>t.complete(),e),i=>Wn(t,n,()=>t.error(i),e)))})}function Ws(n,e=0){return ye((r,t)=>{t.add(n.schedule(()=>r.subscribe(t),e))})}function OP(n,e){return Me(n).pipe(Ws(e),Hs(e))}function wP(n,e){return Me(n).pipe(Ws(e),Hs(e))}function bP(n,e){return new ge(r=>{let t=0;return e.schedule(function(){t===n.length?r.complete():(r.next(n[t++]),r.closed||this.schedule())})})}function LP(n,e){return new ge(r=>{let t;return Wn(r,e,()=>{t=n[Jp](),Wn(r,e,()=>{let i,o;try{({value:i,done:o}=t.next())}catch(s){r.error(s);return}o?r.complete():r.next(i)},0,!0)}),()=>Se(t?.return)&&t.return()})}function aE(n,e){if(!n)throw new Error("Iterable cannot be null");return new ge(r=>{Wn(r,e,()=>{let t=n[Symbol.asyncIterator]();Wn(r,e,()=>{t.next().then(i=>{i.done?r.complete():r.next(i.value)})},0,!0)})})}function MP(n,e){return aE(eE(n),e)}function PP(n,e){if(n!=null){if(Yp(n))return OP(n,e);if(vu(n))return bP(n,e);if(Kp(n))return wP(n,e);if(Qp(n))return aE(n,e);if(Zp(n))return LP(n,e);if(tE(n))return MP(n,e)}throw Xp(n)}function xr(n,e){return e?PP(n,e):Me(n)}function fe(n,e){return ye((r,t)=>{let i=0;r.subscribe(Ee(t,o=>{t.next(n.call(e,o,i++))}))})}var{isArray:Bz}=Array;function Gz(n,e){return Bz(e)?n(...e):n(e)}function Su(n){return fe(e=>Gz(n,e))}function cE(n,e){return n.reduce((r,t,i)=>(r[t]=e[i],r),{})}function Zr(...n){let e=co(n),r=oE(n),{args:t,keys:i}=sE(n);if(t.length===0)return xr([],e);let o=new ge($z(t,e,i?s=>cE(i,s):Ri));return r?o.pipe(Su(r)):o}function $z(n,e,r=Ri){return t=>{xP(e,()=>{let{length:i}=n,o=new Array(i),s=i,a=i;for(let c=0;c<i;c++)xP(e,()=>{let l=xr(n[c],e),u=!1;l.subscribe(Ee(t,d=>{o[c]=d,u||(u=!0,a--),a||t.next(r(o.slice()))},()=>{--s||t.complete()}))},t)},t)}}function xP(n,e,r){n?Wn(r,n,e):e()}function FP(n,e,r,t,i,o,s,a){let c=[],l=0,u=0,d=!1,f=()=>{d&&!c.length&&!l&&e.complete()},g=_=>l<t?p(_):c.push(_),p=_=>{o&&e.next(_),l++;let T=!1;Me(r(_,u++)).subscribe(Ee(e,D=>{i?.(D),o?g(D):e.next(D)},()=>{T=!0},void 0,()=>{if(T)try{for(l--;c.length&&l<t;){let D=c.shift();s?Wn(e,s,()=>p(D)):p(D)}f()}catch(D){e.error(D)}}))};return n.subscribe(Ee(e,g,()=>{d=!0,f()})),()=>{a?.()}}function lo(n,e,r=1/0){return Se(e)?lo((t,i)=>fe((o,s)=>e(t,o,i,s))(Me(n(t,i))),r):(typeof e=="number"&&(r=e),ye((t,i)=>FP(t,i,n,r)))}function kP(n,e,r,t,i){return(o,s)=>{let a=r,c=e,l=0;o.subscribe(Ee(s,u=>{let d=l++;c=a?n(c,u,d):(a=!0,u),t&&s.next(c)},i&&(()=>{a&&s.next(c),s.complete()})))}}function lE(n=1/0){return lo(Ri,n)}function UP(){return lE(1)}function yS(n,e){return Se(e)?lo(n,e,1):lo(n,1)}var VP=js(n=>function(){n(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var Ot=(()=>{class n extends ge{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){let t=new uE(this,this);return t.operator=r,t}_throwIfClosed(){if(this.closed)throw new VP}next(r){Tu(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let t of this.currentObservers)t.next(r)}})}error(r){Tu(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=r;let{observers:t}=this;for(;t.length;)t.shift().error(r)}})}complete(){Tu(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:r}=this;for(;r.length;)r.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var r;return((r=this.observers)===null||r===void 0?void 0:r.length)>0}_trySubscribe(r){return this._throwIfClosed(),super._trySubscribe(r)}_subscribe(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)}_innerSubscribe(r){let{hasError:t,isStopped:i,observers:o}=this;return t||i?fS:(this.currentObservers=null,o.push(r),new gt(()=>{this.currentObservers=null,Ec(o,r)}))}_checkFinalizedStatuses(r){let{hasError:t,thrownError:i,isStopped:o}=this;t?r.error(i):o&&r.complete()}asObservable(){let r=new ge;return r.source=this,r}}return n.create=(e,r)=>new uE(e,r),n})(),uE=class extends Ot{constructor(e,r){super(),this.destination=e,this.source=r}next(e){var r,t;(t=(r=this.destination)===null||r===void 0?void 0:r.next)===null||t===void 0||t.call(r,e)}error(e){var r,t;(t=(r=this.destination)===null||r===void 0?void 0:r.error)===null||t===void 0||t.call(r,e)}complete(){var e,r;(r=(e=this.destination)===null||e===void 0?void 0:e.complete)===null||r===void 0||r.call(e)}_subscribe(e){var r,t;return(t=(r=this.source)===null||r===void 0?void 0:r.subscribe(e))!==null&&t!==void 0?t:fS}};function SS(n){return ye((e,r)=>{let t=!1,i=null,o=null,s=()=>{if(o?.unsubscribe(),o=null,t){t=!1;let a=i;i=null,r.next(a)}};e.subscribe(Ee(r,a=>{o?.unsubscribe(),t=!0,i=a,o=Ee(r,s,Ai),Me(n(a)).subscribe(o)},()=>{s(),r.complete()},void 0,()=>{i=o=null}))})}function Au(n,e=Hn){return ye((r,t)=>{let i=null,o=null,s=null,a=()=>{if(i){i.unsubscribe(),i=null;let l=o;o=null,t.next(l)}};function c(){let l=s+n,u=e.now();if(u<l){i=this.schedule(void 0,l-u),t.add(i);return}a()}r.subscribe(Ee(t,l=>{o=l,s=e.now(),i||(i=e.schedule(c,n),t.add(i))},()=>{a(),t.complete()},void 0,()=>{o=i=null}))})}function zs(...n){return UP()(xr(n,co(n)))}function BP(){return ye((n,e)=>{n.subscribe(Ee(e,Ai))})}function GP(n){return fe(()=>n)}function AS(n,e){return e?r=>zs(e.pipe(Nt(1),BP()),r.pipe(AS(n))):lo((r,t)=>Me(n(r,t)).pipe(Nt(1),GP(r)))}function DS(n,e=Hn){let r=Ci(n,e);return AS(()=>r)}function ue(...n){let e=co(n);return xr(n,e)}function it(n,e=Ri){return n=n??jz,ye((r,t)=>{let i,o=!0;r.subscribe(Ee(t,s=>{let a=e(s);(o||!n(i,a))&&(o=!1,i=a,t.next(s))}))})}function jz(n,e){return n===e}var $P=js(n=>function(){n(this),this.name="EmptyError",this.message="no elements in sequence"});function Sc(n){return ye((e,r)=>{try{e.subscribe(r)}finally{r.add(n)}})}function jP(){return ye((n,e)=>{let r=null;n._refCount++;let t=Ee(e,void 0,void 0,void 0,()=>{if(!n||n._refCount<=0||0<--n._refCount){r=null;return}let i=n._connection,o=r;r=null,i&&(!o||i===o)&&i.unsubscribe(),e.unsubscribe()});n.subscribe(t),t.closed||(r=n.connect())})}var RS=class extends ge{constructor(e,r){super(),this.source=e,this.subjectFactory=r,this._subject=null,this._refCount=0,this._connection=null,hS(e)&&(this.lift=e.lift)}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){let e=this._subject;return(!e||e.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection:e}=this;this._subject=this._connection=null,e?.unsubscribe()}connect(){let e=this._connection;if(!e){e=this._connection=new gt;let r=this.getSubject();e.add(this.source.subscribe(Ee(r,void 0,()=>{this._teardown(),r.complete()},t=>{this._teardown(),r.error(t)},()=>this._teardown()))),e.closed&&(this._connection=null,e=gt.EMPTY)}return e}refCount(){return jP()(this)}};function Du(){return ye((n,e)=>{let r,t=!1;n.subscribe(Ee(e,i=>{let o=r;r=i,t&&e.next([o,i]),t=!0}))})}var Y=class extends Ot{constructor(e){super(),this._value=e}get value(){return this.getValue()}_subscribe(e){let r=super._subscribe(e);return!r.closed&&e.next(this._value),r}getValue(){let{hasError:e,thrownError:r,_value:t}=this;if(e)throw r;return this._throwIfClosed(),t}next(e){super.next(this._value=e)}};var Ac=class extends Ot{constructor(e=1/0,r=1/0,t=yc){super(),this._bufferSize=e,this._windowTime=r,this._timestampProvider=t,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=r===1/0,this._bufferSize=Math.max(1,e),this._windowTime=Math.max(1,r)}next(e){let{isStopped:r,_buffer:t,_infiniteTimeWindow:i,_timestampProvider:o,_windowTime:s}=this;r||(t.push(e),!i&&t.push(o.now()+s)),this._trimBuffer(),super.next(e)}_subscribe(e){this._throwIfClosed(),this._trimBuffer();let r=this._innerSubscribe(e),{_infiniteTimeWindow:t,_buffer:i}=this,o=i.slice();for(let s=0;s<o.length&&!e.closed;s+=t?1:2)e.next(o[s]);return this._checkFinalizedStatuses(e),r}_trimBuffer(){let{_bufferSize:e,_timestampProvider:r,_buffer:t,_infiniteTimeWindow:i}=this,o=(i?1:2)*e;if(e<1/0&&o<t.length&&t.splice(0,t.length-o),!i){let s=r.now(),a=0;for(let c=1;c<t.length&&t[c]<=s;c+=2)a=c;a&&t.splice(0,a+1)}}};function Hz(n=0,e=Hn){return n<0&&(n=0),Ci(n,n,e)}function dE(n,e){return ye(kP(n,e,arguments.length>=2,!0))}function NS(n={}){let{connector:e=()=>new Ot,resetOnError:r=!0,resetOnComplete:t=!0,resetOnRefCountZero:i=!0}=n;return o=>{let s,a,c,l=0,u=!1,d=!1,f=()=>{a?.unsubscribe(),a=void 0},g=()=>{f(),s=c=void 0,u=d=!1},p=()=>{let _=s;g(),_?.unsubscribe()};return ye((_,T)=>{l++,!d&&!u&&f();let D=c=c??e();T.add(()=>{l--,l===0&&!d&&!u&&(a=CS(p,i))}),D.subscribe(T),!s&&l>0&&(s=new Di({next:b=>D.next(b),error:b=>{d=!0,f(),a=CS(g,r,b),D.error(b)},complete:()=>{u=!0,f(),a=CS(g,t),D.complete()}}),Me(_).subscribe(s))})(o)}}function CS(n,e,...r){if(e===!0){n();return}if(e===!1)return;let t=new Di({next:()=>{t.unsubscribe(),n()}});return Me(e(...r)).subscribe(t)}function Wz(n,e,r){let t,i=!1;return n&&typeof n=="object"?{bufferSize:t=1/0,windowTime:e=1/0,refCount:i=!1,scheduler:r}=n:t=n??1/0,NS({connector:()=>new Ac(t,e,r),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:i})}function OS(n){return Ct((e,r)=>n<=r)}function zz(n){return ye((e,r)=>{let t=!1,i=Ee(r,()=>{i?.unsubscribe(),t=!0},Ai);Me(n).subscribe(i),e.subscribe(Ee(r,o=>t&&r.next(o)))})}function Ru(...n){let e=co(n);return ye((r,t)=>{(e?zs(n,r,e):zs(n,r)).subscribe(t)})}function mt(n,e){return ye((r,t)=>{let i=null,o=0,s=!1,a=()=>s&&!i&&t.complete();r.subscribe(Ee(t,c=>{i?.unsubscribe();let l=0,u=o++;Me(n(c,u)).subscribe(i=Ee(t,d=>t.next(e?e(c,d,u,l++):d),()=>{i=null,a()}))},()=>{s=!0,a()}))})}function qs(n){return ye((e,r)=>{Me(n).subscribe(Ee(r,()=>r.complete(),Ai)),!r.closed&&e.subscribe(r)})}function qz(n,e=!1){return ye((r,t)=>{let i=0;r.subscribe(Ee(t,o=>{let s=n(o,i++);(s||e)&&t.next(o),!s&&t.complete()}))})}function Ks(n,e,r){let t=Se(n)||e||r?{next:n,error:e,complete:r}:n;return t?ye((i,o)=>{var s;(s=t.subscribe)===null||s===void 0||s.call(t);let a=!0;i.subscribe(Ee(o,c=>{var l;(l=t.next)===null||l===void 0||l.call(t,c),o.next(c)},()=>{var c;a=!1,(c=t.complete)===null||c===void 0||c.call(t),o.complete()},c=>{var l;a=!1,(l=t.error)===null||l===void 0||l.call(t,c),o.error(c)},()=>{var c,l;a&&((c=t.unsubscribe)===null||c===void 0||c.call(t)),(l=t.finalize)===null||l===void 0||l.call(t)}))}):Ri}function HP(n,e){return ye((r,t)=>{let{leading:i=!0,trailing:o=!1}=e??{},s=!1,a=null,c=null,l=!1,u=()=>{c?.unsubscribe(),c=null,o&&(g(),l&&t.complete())},d=()=>{c=null,l&&t.complete()},f=p=>c=Me(n(p)).subscribe(Ee(t,u,d)),g=()=>{if(s){s=!1;let p=a;a=null,t.next(p),!l&&f(p)}};r.subscribe(Ee(t,p=>{s=!0,a=p,!(c&&!c.closed)&&(i?g():f(p))},()=>{l=!0,!(o&&s&&c&&!c.closed)&&t.complete()}))})}function Kz(n,e=Hn,r){let t=Ci(n,e);return HP(()=>t,r)}var Yz=js(n=>function(r=null){n(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=r});function Qz(n,e){let{first:r,each:t,with:i=Xz,scheduler:o=e??Hn,meta:s=null}=iE(n)?{first:n}:typeof n=="number"?{each:n}:n;if(r==null&&t==null)throw new TypeError("No timeout provided.");return ye((a,c)=>{let l,u,d=null,f=0,g=p=>{u=Wn(c,o,()=>{try{l.unsubscribe(),Me(i({meta:s,lastValue:d,seen:f})).subscribe(c)}catch(_){c.error(_)}},p)};l=a.subscribe(Ee(c,p=>{u?.unsubscribe(),f++,c.next(d=p),t>0&&g(t)},void 0,void 0,()=>{u?.closed||u?.unsubscribe(),d=null})),!f&&g(r!=null?typeof r=="number"?r:+r-o.now():t)})}function Xz(n){throw new Yz(n)}function Jz(n=yc){return fe(e=>({value:e,timestamp:n.now()}))}var wS;function hE(){return wS}function uo(n){let e=wS;return wS=n,e}var WP=Symbol("NotFound");function Cu(n){return n===WP||n?.name==="\u0275NotFound"}var zn=null,fE=!1,bS=1,Zz=null,An=Symbol("SIGNAL");function Ae(n){let e=zn;return zn=n,e}function EE(){return zn}var Dc={version:0,lastCleanEpoch:0,dirty:!1,producers:void 0,producersTail:void 0,consumers:void 0,consumersTail:void 0,recomputing:!1,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,kind:"unknown",producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function Nu(n){if(fE)throw new Error("");if(zn===null)return;zn.consumerOnSignalRead(n);let e=zn.producersTail;if(e!==void 0&&e.producer===n)return;let r,t=zn.recomputing;if(t&&(r=e!==void 0?e.nextProducer:zn.producers,r!==void 0&&r.producer===n)){zn.producersTail=r,r.lastReadVersion=n.version;return}let i=n.consumersTail;if(i!==void 0&&i.consumer===zn&&(!t||t6(i,zn)))return;let o=bu(zn),s={producer:n,consumer:zn,nextProducer:r,prevConsumer:i,lastReadVersion:n.version,nextConsumer:void 0};zn.producersTail=s,e!==void 0?e.nextProducer=s:zn.producers=s,o&&YP(n,s)}function zP(){bS++}function _E(n){if(!(bu(n)&&!n.dirty)&&!(!n.dirty&&n.lastCleanEpoch===bS)){if(!n.producerMustRecompute(n)&&!wu(n)){pE(n);return}n.producerRecomputeValue(n),pE(n)}}function LS(n){if(n.consumers===void 0)return;let e=fE;fE=!0;try{for(let r=n.consumers;r!==void 0;r=r.nextConsumer){let t=r.consumer;t.dirty||e6(t)}}finally{fE=e}}function MS(){return zn?.consumerAllowSignalWrites!==!1}function e6(n){n.dirty=!0,LS(n),n.consumerMarkedDirty?.(n)}function pE(n){n.dirty=!1,n.lastCleanEpoch=bS}function Rc(n){return n&&qP(n),Ae(n)}function qP(n){n.producersTail=void 0,n.recomputing=!0}function Ou(n,e){Ae(e),n&&KP(n)}function KP(n){n.recomputing=!1;let e=n.producersTail,r=e!==void 0?e.nextProducer:n.producers;if(r!==void 0){if(bu(n))do r=PS(r);while(r!==void 0);e!==void 0?e.nextProducer=void 0:n.producers=void 0}}function wu(n){for(let e=n.producers;e!==void 0;e=e.nextProducer){let r=e.producer,t=e.lastReadVersion;if(t!==r.version||(_E(r),t!==r.version))return!0}return!1}function Cc(n){if(bu(n)){let e=n.producers;for(;e!==void 0;)e=PS(e)}n.producers=void 0,n.producersTail=void 0,n.consumers=void 0,n.consumersTail=void 0}function YP(n,e){let r=n.consumersTail,t=bu(n);if(r!==void 0?(e.nextConsumer=r.nextConsumer,r.nextConsumer=e):(e.nextConsumer=void 0,n.consumers=e),e.prevConsumer=r,n.consumersTail=e,!t)for(let i=n.producers;i!==void 0;i=i.nextProducer)YP(i.producer,i)}function PS(n){let e=n.producer,r=n.nextProducer,t=n.nextConsumer,i=n.prevConsumer;if(n.nextConsumer=void 0,n.prevConsumer=void 0,t!==void 0?t.prevConsumer=i:e.consumersTail=i,i!==void 0)i.nextConsumer=t;else if(e.consumers=t,!bu(e)){let o=e.producers;for(;o!==void 0;)o=PS(o)}return r}function bu(n){return n.consumerIsAlwaysLive||n.consumers!==void 0}function TE(n){Zz?.(n)}function t6(n,e){let r=e.producersTail;if(r!==void 0){let t=e.producers;do{if(t===n)return!0;if(t===r)break;t=t.nextProducer}while(t!==void 0)}return!1}function IE(n,e){return Object.is(n,e)}function vf(n,e){let r=Object.create(n6);r.computation=n,e!==void 0&&(r.equal=e);let t=()=>{if(_E(r),Nu(r),r.value===If)throw r.error;return r.value};return t[An]=r,TE(r),t}var gE=Symbol("UNSET"),mE=Symbol("COMPUTING"),If=Symbol("ERRORED"),n6=le(x({},Dc),{value:gE,dirty:!0,error:null,equal:IE,kind:"computed",producerMustRecompute(n){return n.value===gE||n.value===mE},producerRecomputeValue(n){if(n.value===mE)throw new Error("");let e=n.value;n.value=mE;let r=Rc(n),t,i=!1;try{t=n.computation(),Ae(null),i=e!==gE&&e!==If&&t!==If&&n.equal(e,t)}catch(o){t=If,n.error=o}finally{Ou(n,r)}if(i){n.value=e;return}n.value=t,n.version++}});function r6(){throw new Error}var QP=r6;function XP(n){QP(n)}function xS(n){QP=n}var i6=null;function FS(n,e){let r=Object.create(vE);r.value=n,e!==void 0&&(r.equal=e);let t=()=>JP(r);return t[An]=r,TE(r),[t,s=>Lu(r,s),s=>kS(r,s)]}function JP(n){return Nu(n),n.value}function Lu(n,e){MS()||XP(n),n.equal(n.value,e)||(n.value=e,o6(n))}function kS(n,e){MS()||XP(n),Lu(n,e(n.value))}var vE=le(x({},Dc),{equal:IE,value:void 0,kind:"signal"});function o6(n){n.version++,zP(),LS(n),i6?.(n)}var Mu={schedule(n){let e=requestAnimationFrame,r=cancelAnimationFrame,{delegate:t}=Mu;t&&(e=t.requestAnimationFrame,r=t.cancelAnimationFrame);let i=e(o=>{r=void 0,n(o)});return new gt(()=>r?.(i))},requestAnimationFrame(...n){let{delegate:e}=Mu;return(e?.requestAnimationFrame||requestAnimationFrame)(...n)},cancelAnimationFrame(...n){let{delegate:e}=Mu;return(e?.cancelAnimationFrame||cancelAnimationFrame)(...n)},delegate:void 0};var s6=1,US,VS={};function ZP(n){return n in VS?(delete VS[n],!0):!1}var e0={setImmediate(n){let e=s6++;return VS[e]=!0,US||(US=Promise.resolve()),US.then(()=>ZP(e)&&n()),e},clearImmediate(n){ZP(n)}};var{setImmediate:a6,clearImmediate:c6}=e0,yf={setImmediate(...n){let{delegate:e}=yf;return(e?.setImmediate||a6)(...n)},clearImmediate(n){let{delegate:e}=yf;return(e?.clearImmediate||c6)(n)},delegate:void 0};var yE=class extends so{constructor(e,r){super(e,r),this.scheduler=e,this.work=r}requestAsyncId(e,r,t=0){return t!==null&&t>0?super.requestAsyncId(e,r,t):(e.actions.push(this),e._scheduled||(e._scheduled=yf.setImmediate(e.flush.bind(e,void 0))))}recycleAsyncId(e,r,t=0){var i;if(t!=null?t>0:this.delay>0)return super.recycleAsyncId(e,r,t);let{actions:o}=e;r!=null&&((i=o[o.length-1])===null||i===void 0?void 0:i.id)!==r&&(yf.clearImmediate(r),e._scheduled===r&&(e._scheduled=void 0))}};var SE=class extends ao{flush(e){this._active=!0;let r=this._scheduled;this._scheduled=void 0;let{actions:t}=this,i;e=e||t.shift();do if(i=e.execute(e.state,e.delay))break;while((e=t[0])&&e.id===r&&t.shift());if(this._active=!1,i){for(;(e=t[0])&&e.id===r&&t.shift();)e.unsubscribe();throw i}}};var l6=new SE(yE);var AE=class extends so{constructor(e,r){super(e,r),this.scheduler=e,this.work=r}schedule(e,r=0){return r>0?super.schedule(e,r):(this.delay=r,this.state=e,this.scheduler.flush(this),this)}execute(e,r){return r>0||this.closed?super.execute(e,r):this._execute(e,r)}requestAsyncId(e,r,t=0){return t!=null&&t>0||t==null&&this.delay>0?super.requestAsyncId(e,r,t):(e.flush(this),0)}};var DE=class extends ao{};var BS=new DE(AE);var RE=class extends so{constructor(e,r){super(e,r),this.scheduler=e,this.work=r}requestAsyncId(e,r,t=0){return t!==null&&t>0?super.requestAsyncId(e,r,t):(e.actions.push(this),e._scheduled||(e._scheduled=Mu.requestAnimationFrame(()=>e.flush(void 0))))}recycleAsyncId(e,r,t=0){var i;if(t!=null?t>0:this.delay>0)return super.recycleAsyncId(e,r,t);let{actions:o}=e;r!=null&&r===e._scheduled&&((i=o[o.length-1])===null||i===void 0?void 0:i.id)!==r&&(Mu.cancelAnimationFrame(r),e._scheduled=void 0)}};var CE=class extends ao{flush(e){this._active=!0;let r;e?r=e.id:(r=this._scheduled,this._scheduled=void 0);let{actions:t}=this,i;e=e||t.shift();do if(i=e.execute(e.state,e.delay))break;while((e=t[0])&&e.id===r&&t.shift());if(this._active=!1,i){for(;(e=t[0])&&e.id===r&&t.shift();)e.unsubscribe();throw i}}};var u6=new CE(RE);function d6(n){return!!n&&(n instanceof ge||Se(n.lift)&&Se(n.subscribe))}function h6(n,e){let r=typeof e=="object";return new Promise((t,i)=>{let o=new Di({next:s=>{t(s),o.unsubscribe()},error:i,complete:()=>{r?t(e.defaultValue):i(new $P)}});n.subscribe(o)})}function GS(n){return new ge(e=>{Me(n()).subscribe(e)})}function f6(...n){let e=oE(n),{args:r,keys:t}=sE(n),i=new ge(o=>{let{length:s}=r;if(!s){o.complete();return}let a=new Array(s),c=s,l=s;for(let u=0;u<s;u++){let d=!1;Me(r[u]).subscribe(Ee(o,f=>{d||(d=!0,l--),a[u]=f},()=>c--,void 0,()=>{(!c||!d)&&(l||o.next(t?cE(t,a):a),o.complete())}))}});return e?i.pipe(Su(e)):i}var g6=["addListener","removeListener"],m6=["addEventListener","removeEventListener"],p6=["on","off"];function ho(n,e,r,t){if(Se(r)&&(t=r,r=void 0),t)return ho(n,e,r).pipe(Su(t));let[i,o]=T6(n)?m6.map(s=>a=>n[s](e,a,r)):E6(n)?g6.map(t0(n,e)):_6(n)?p6.map(t0(n,e)):[];if(!i&&vu(n))return lo(s=>ho(s,e,r))(Me(n));if(!i)throw new TypeError("Invalid event target");return new ge(s=>{let a=(...c)=>s.next(1<c.length?c:c[0]);return i(a),()=>o(a)})}function t0(n,e){return r=>t=>n[r](e,t)}function E6(n){return Se(n.addListener)&&Se(n.removeListener)}function _6(n){return Se(n.on)&&Se(n.off)}function T6(n){return Se(n.addEventListener)&&Se(n.removeEventListener)}function I6(n,e,r){return GS(()=>n()?e:r)}function Pu(...n){let e=co(n),r=NP(n,1/0),t=n;return t.length?t.length===1?Me(t[0]):lE(r)(xr(t,e)):Ic}function n0(n){let e=Ae(null);try{return n()}finally{Ae(e)}}var r0=le(x({},Dc),{consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,dirty:!0,kind:"effect"});function i0(n){if(n.dirty=!1,n.version>0&&!wu(n))return;n.version++;let e=Rc(n);try{n.cleanup(),n.fn()}finally{Ou(n,e)}}var Oc=class{full;major;minor;patch;constructor(e){this.full=e;let r=e.split(".");this.major=r[0],this.minor=r[1],this.patch=r.slice(2).join(".")}},ZS=new Oc("20.3.18");var bE="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss",oe=class extends Error{code;constructor(e,r){super(Xs(e,r)),this.code=e}};function v6(n){return`NG0${Math.abs(n)}`}function Xs(n,e){return`${v6(n)}${e?": "+e:""}`}var tn=globalThis;function Je(n){for(let e in n)if(n[e]===Je)return e;throw Error("")}function a0(n,e){for(let r in e)e.hasOwnProperty(r)&&!n.hasOwnProperty(r)&&(n[r]=e[r])}function rs(n){if(typeof n=="string")return n;if(Array.isArray(n))return`[${n.map(rs).join(", ")}]`;if(n==null)return""+n;let e=n.overriddenName||n.name;if(e)return`${e}`;let r=n.toString();if(r==null)return""+r;let t=r.indexOf(`
4
- `);return t>=0?r.slice(0,t):r}function LE(n,e){return n?e?`${n} ${e}`:n:e||""}var y6=Je({__forward_ref__:Je});function ME(n){return n.__forward_ref__=ME,n.toString=function(){return rs(this())},n}function hn(n){return eA(n)?n():n}function eA(n){return typeof n=="function"&&n.hasOwnProperty(y6)&&n.__forward_ref__===ME}function K(n){return{token:n.token,providedIn:n.providedIn||null,factory:n.factory,value:void 0}}function is(n){return{providers:n.providers||[],imports:n.imports||[]}}function PE(n){return S6(n,xE)}function S6(n,e){return n.hasOwnProperty(e)&&n[e]||null}function A6(n){let e=n?.[xE]??null;return e||null}function jS(n){return n&&n.hasOwnProperty(OE)?n[OE]:null}var xE=Je({\u0275prov:Je}),OE=Je({\u0275inj:Je}),Z=class{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(e,r){this._desc=e,this.\u0275prov=void 0,typeof r=="number"?this.__NG_ELEMENT_ID__=r:r!==void 0&&(this.\u0275prov=K({token:this,providedIn:r.providedIn||"root",factory:r.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function tA(n){return n&&!!n.\u0275providers}var nA=Je({\u0275cmp:Je}),rA=Je({\u0275dir:Je}),iA=Je({\u0275pipe:Je}),oA=Je({\u0275mod:Je}),Af=Je({\u0275fac:Je}),Mc=Je({__NG_ELEMENT_ID__:Je}),o0=Je({__NG_ENV_ID__:Je});function kr(n){return typeof n=="string"?n:n==null?"":String(n)}function c0(n){return typeof n=="function"?n.name||n.toString():typeof n=="object"&&n!=null&&typeof n.type=="function"?n.type.name||n.type.toString():kr(n)}var l0=Je({ngErrorCode:Je}),D6=Je({ngErrorMessage:Je}),R6=Je({ngTokenPath:Je});function sA(n,e){return u0("",-200,e)}function FE(n,e){throw new oe(-201,!1)}function u0(n,e,r){let t=new oe(e,n);return t[l0]=e,t[D6]=n,r&&(t[R6]=r),t}function C6(n){return n[l0]}var HS;function d0(){return HS}function or(n){let e=HS;return HS=n,e}function aA(n,e,r){let t=PE(n);if(t&&t.providedIn=="root")return t.value===void 0?t.value=t.factory():t.value;if(r&8)return null;if(e!==void 0)return e;FE(n,"Injector")}var N6={},Nc=N6,WS="__NG_DI_FLAG__",zS=class{injector;constructor(e){this.injector=e}retrieve(e,r){let t=wc(r)||0;try{return this.injector.get(e,t&8?null:Nc,t)}catch(i){if(Cu(i))return i;throw i}}};function O6(n,e=0){let r=hE();if(r===void 0)throw new oe(-203,!1);if(r===null)return aA(n,void 0,e);{let t=w6(e),i=r.retrieve(n,t);if(Cu(i)){if(t.optional)return null;throw i}return i}}function w(n,e=0){return(d0()||O6)(hn(n),e)}function ne(n,e){return w(n,wc(e))}function wc(n){return typeof n>"u"||typeof n=="number"?n:0|(n.optional&&8)|(n.host&&1)|(n.self&&2)|(n.skipSelf&&4)}function w6(n){return{optional:!!(n&8),host:!!(n&1),self:!!(n&2),skipSelf:!!(n&4)}}function qS(n){let e=[];for(let r=0;r<n.length;r++){let t=hn(n[r]);if(Array.isArray(t)){if(t.length===0)throw new oe(900,!1);let i,o=0;for(let s=0;s<t.length;s++){let a=t[s],c=b6(a);typeof c=="number"?c===-1?i=a.token:o|=c:i=a}e.push(w(i,o))}else e.push(w(t))}return e}function cA(n,e){return n[WS]=e,n.prototype[WS]=e,n}function b6(n){return n[WS]}function Ys(n,e){let r=n.hasOwnProperty(Af);return r?n[Af]:null}function h0(n,e,r){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++){let i=n[t],o=e[t];if(r&&(i=r(i),o=r(o)),o!==i)return!1}return!0}function f0(n){return n.flat(Number.POSITIVE_INFINITY)}function kE(n,e){n.forEach(r=>Array.isArray(r)?kE(r,e):e(r))}function lA(n,e,r){e>=n.length?n.push(r):n.splice(e,0,r)}function Cf(n,e){return e>=n.length-1?n.pop():n.splice(e,1)[0]}function g0(n,e){let r=[];for(let t=0;t<n;t++)r.push(e);return r}function m0(n,e,r,t){let i=n.length;if(i==e)n.push(r,t);else if(i===1)n.push(t,n[0]),n[0]=r;else{for(i--,n.push(n[i-1],n[i]);i>e;){let o=i-2;n[i]=n[o],i--}n[e]=r,n[e+1]=t}}function Nf(n,e,r){let t=Fu(n,e);return t>=0?n[t|1]=r:(t=~t,m0(n,t,e,r)),t}function UE(n,e){let r=Fu(n,e);if(r>=0)return n[r|1]}function Fu(n,e){return L6(n,e,1)}function L6(n,e,r){let t=0,i=n.length>>r;for(;i!==t;){let o=t+(i-t>>1),s=n[o<<r];if(e===s)return o<<r;s>e?i=o:t=o+1}return~(i<<r)}var Ni={},qn=[],Js=new Z(""),uA=new Z("",-1),dA=new Z(""),Df=class{get(e,r=Nc){if(r===Nc){let i=u0("",-201);throw i.name="\u0275NotFound",i}return r}};function p0(n){return n[oA]||null}function Zs(n){return n[nA]||null}function VE(n){return n[rA]||null}function hA(n){return n[iA]||null}function pr(n){return{\u0275providers:n}}function E0(...n){return{\u0275providers:fA(!0,n),\u0275fromNgModule:!0}}function fA(n,...e){let r=[],t=new Set,i,o=s=>{r.push(s)};return kE(e,s=>{let a=s;wE(a,o,[],t)&&(i||=[],i.push(a))}),i!==void 0&&_0(i,o),r}function _0(n,e){for(let r=0;r<n.length;r++){let{ngModule:t,providers:i}=n[r];gA(i,o=>{e(o,t)})}}function wE(n,e,r,t){if(n=hn(n),!n)return!1;let i=null,o=jS(n),s=!o&&Zs(n);if(!o&&!s){let c=n.ngModule;if(o=jS(c),o)i=c;else return!1}else{if(s&&!s.standalone)return!1;i=n}let a=t.has(i);if(s){if(a)return!1;if(t.add(i),s.dependencies){let c=typeof s.dependencies=="function"?s.dependencies():s.dependencies;for(let l of c)wE(l,e,r,t)}}else if(o){if(o.imports!=null&&!a){t.add(i);let l;kE(o.imports,u=>{wE(u,e,r,t)&&(l||=[],l.push(u))}),l!==void 0&&_0(l,e)}if(!a){let l=Ys(i)||(()=>new i);e({provide:i,useFactory:l,deps:qn},i),e({provide:dA,useValue:i,multi:!0},i),e({provide:Js,useValue:()=>w(i),multi:!0},i)}let c=o.providers;if(c!=null&&!a){let l=n;gA(c,u=>{e(u,l)})}}else return!1;return i!==n&&n.providers!==void 0}function gA(n,e){for(let r of n)tA(r)&&(r=r.\u0275providers),Array.isArray(r)?gA(r,e):e(r)}var M6=Je({provide:String,useValue:Je});function T0(n){return n!==null&&typeof n=="object"&&M6 in n}function P6(n){return!!(n&&n.useExisting)}function x6(n){return!!(n&&n.useFactory)}function bc(n){return typeof n=="function"}function I0(n){return!!n.useClass}var Of=new Z(""),NE={},s0={},$S;function ku(){return $S===void 0&&($S=new Df),$S}var Kn=class{},Lc=class extends Kn{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(e,r,t,i){super(),this.parent=r,this.source=t,this.scopes=i,YS(e,s=>this.processProvider(s)),this.records.set(uA,xu(void 0,this)),i.has("environment")&&this.records.set(Kn,xu(void 0,this));let o=this.records.get(Of);o!=null&&typeof o.value=="string"&&this.scopes.add(o.value),this.injectorDefTypes=new Set(this.get(dA,qn,{self:!0}))}retrieve(e,r){let t=wc(r)||0;try{return this.get(e,Nc,t)}catch(i){if(Cu(i))return i;throw i}}destroy(){Sf(this),this._destroyed=!0;let e=Ae(null);try{for(let t of this._ngOnDestroyHooks)t.ngOnDestroy();let r=this._onDestroyHooks;this._onDestroyHooks=[];for(let t of r)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),Ae(e)}}onDestroy(e){return Sf(this),this._onDestroyHooks.push(e),()=>this.removeOnDestroy(e)}runInContext(e){Sf(this);let r=uo(this),t=or(void 0),i;try{return e()}finally{uo(r),or(t)}}get(e,r=Nc,t){if(Sf(this),e.hasOwnProperty(o0))return e[o0](this);let i=wc(t),o,s=uo(this),a=or(void 0);try{if(!(i&4)){let l=this.records.get(e);if(l===void 0){let u=B6(e)&&PE(e);u&&this.injectableDefInScope(u)?l=xu(KS(e),NE):l=null,this.records.set(e,l)}if(l!=null)return this.hydrate(e,l,i)}let c=i&2?ku():this.parent;return r=i&8&&r===Nc?null:r,c.get(e,r)}catch(c){let l=C6(c);throw l===-200||l===-201?new oe(l,null):c}finally{or(a),uo(s)}}resolveInjectorInitializers(){let e=Ae(null),r=uo(this),t=or(void 0),i;try{let o=this.get(Js,qn,{self:!0});for(let s of o)s()}finally{uo(r),or(t),Ae(e)}}toString(){let e=[],r=this.records;for(let t of r.keys())e.push(rs(t));return`R3Injector[${e.join(", ")}]`}processProvider(e){e=hn(e);let r=bc(e)?e:hn(e&&e.provide),t=k6(e);if(!bc(e)&&e.multi===!0){let i=this.records.get(r);i||(i=xu(void 0,NE,!0),i.factory=()=>qS(i.multi),this.records.set(r,i)),r=e,i.multi.push(e)}this.records.set(r,t)}hydrate(e,r,t){let i=Ae(null);try{if(r.value===s0)throw sA(rs(e));return r.value===NE&&(r.value=s0,r.value=r.factory(void 0,t)),typeof r.value=="object"&&r.value&&V6(r.value)&&this._ngOnDestroyHooks.add(r.value),r.value}finally{Ae(i)}}injectableDefInScope(e){if(!e.providedIn)return!1;let r=hn(e.providedIn);return typeof r=="string"?r==="any"||this.scopes.has(r):this.injectorDefTypes.has(r)}removeOnDestroy(e){let r=this._onDestroyHooks.indexOf(e);r!==-1&&this._onDestroyHooks.splice(r,1)}};function KS(n){let e=PE(n),r=e!==null?e.factory:Ys(n);if(r!==null)return r;if(n instanceof Z)throw new oe(204,!1);if(n instanceof Function)return F6(n);throw new oe(204,!1)}function F6(n){if(n.length>0)throw new oe(204,!1);let r=A6(n);return r!==null?()=>r.factory(n):()=>new n}function k6(n){if(T0(n))return xu(void 0,n.useValue);{let e=mA(n);return xu(e,NE)}}function mA(n,e,r){let t;if(bc(n)){let i=hn(n);return Ys(i)||KS(i)}else if(T0(n))t=()=>hn(n.useValue);else if(x6(n))t=()=>n.useFactory(...qS(n.deps||[]));else if(P6(n))t=(i,o)=>w(hn(n.useExisting),o!==void 0&&o&8?8:void 0);else{let i=hn(n&&(n.useClass||n.provide));if(U6(n))t=()=>new i(...qS(n.deps));else return Ys(i)||KS(i)}return t}function Sf(n){if(n.destroyed)throw new oe(205,!1)}function xu(n,e,r=!1){return{factory:n,value:e,multi:r?[]:void 0}}function U6(n){return!!n.deps}function V6(n){return n!==null&&typeof n=="object"&&typeof n.ngOnDestroy=="function"}function B6(n){return typeof n=="function"||typeof n=="object"&&n.ngMetadataName==="InjectionToken"}function YS(n,e){for(let r of n)Array.isArray(r)?YS(r,e):r&&tA(r)?YS(r.\u0275providers,e):e(r)}function fo(n,e){let r;n instanceof Lc?(Sf(n),r=n):r=new zS(n);let t,i=uo(r),o=or(void 0);try{return e()}finally{uo(i),or(o)}}function pA(){return d0()!==void 0||hE()!=null}var Oi=0,Te=1,De=2,fn=3,ti=4,sr=5,Pc=6,Uu=7,$t=8,os=9,go=10,Ze=11,Vu=12,EA=13,xc=14,Yn=15,ea=16,Fc=17,mo=18,wf=19,_A=20,ns=21,BE=22,ss=23,Ur=24,kc=25,Uc=26,et=27,v0=1,TA=6,ta=7,bf=8,Vc=9,jt=10;function po(n){return Array.isArray(n)&&typeof n[v0]=="object"}function wi(n){return Array.isArray(n)&&n[v0]===!0}function IA(n){return(n.flags&4)!==0}function as(n){return n.componentOffset>-1}function Bu(n){return(n.flags&1)===1}function bi(n){return!!n.template}function Gu(n){return(n[De]&512)!==0}function Bc(n){return(n[De]&256)===256}var vA="svg",y0="math";function ni(n){for(;Array.isArray(n);)n=n[Oi];return n}function yA(n,e){return ni(e[n])}function ri(n,e){return ni(e[n.index])}function Lf(n,e){return n.data[e]}function Gc(n,e){return n[e]}function Mf(n,e,r,t){r>=n.data.length&&(n.data[r]=null,n.blueprint[r]=null),e[r]=t}function ii(n,e){let r=e[n];return po(r)?r:r[Oi]}function S0(n){return(n[De]&4)===4}function GE(n){return(n[De]&128)===128}function A0(n){return wi(n[fn])}function Vr(n,e){return e==null?null:n[e]}function SA(n){n[Fc]=0}function $E(n){n[De]&1024||(n[De]|=1024,GE(n)&&na(n))}function D0(n,e){for(;n>0;)e=e[xc],n--;return e}function $u(n){return!!(n[De]&9216||n[Ur]?.dirty)}function jE(n){n[go].changeDetectionScheduler?.notify(8),n[De]&64&&(n[De]|=1024),$u(n)&&na(n)}function na(n){n[go].changeDetectionScheduler?.notify(0);let e=Qs(n);for(;e!==null&&!(e[De]&8192||(e[De]|=8192,!GE(e)));)e=Qs(e)}function AA(n,e){if(Bc(n))throw new oe(911,!1);n[ns]===null&&(n[ns]=[]),n[ns].push(e)}function R0(n,e){if(n[ns]===null)return;let r=n[ns].indexOf(e);r!==-1&&n[ns].splice(r,1)}function Qs(n){let e=n[fn];return wi(e)?e[fn]:e}function DA(n){return n[Uu]??=[]}function RA(n){return n.cleanup??=[]}function C0(n,e,r,t){let i=DA(e);i.push(r),n.firstCreatePass&&RA(n).push(t,i.length-1)}var we={lFrame:V0(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var QS=!1;function N0(){return we.lFrame.elementDepthCount}function O0(){we.lFrame.elementDepthCount++}function CA(){we.lFrame.elementDepthCount--}function HE(){return we.bindingsEnabled}function NA(){return we.skipHydrationRootTNode!==null}function OA(n){return we.skipHydrationRootTNode===n}function wA(){we.skipHydrationRootTNode=null}function ce(){return we.lFrame.lView}function tt(){return we.lFrame.tView}function w0(n){return we.lFrame.contextLView=n,n[$t]}function b0(n){return we.lFrame.contextLView=null,n}function gn(){let n=bA();for(;n!==null&&n.type===64;)n=n.parent;return n}function bA(){return we.lFrame.currentTNode}function L0(){let n=we.lFrame,e=n.currentTNode;return n.isParent?e:e.parent}function $c(n,e){let r=we.lFrame;r.currentTNode=n,r.isParent=e}function LA(){return we.lFrame.isParent}function MA(){we.lFrame.isParent=!1}function PA(){return we.lFrame.contextLView}function xA(){return QS}function ju(n){let e=QS;return QS=n,e}function ar(){let n=we.lFrame,e=n.bindingRootIndex;return e===-1&&(e=n.bindingRootIndex=n.tView.bindingStartIndex),e}function FA(){return we.lFrame.bindingIndex}function M0(n){return we.lFrame.bindingIndex=n}function Eo(){return we.lFrame.bindingIndex++}function Pf(n){let e=we.lFrame,r=e.bindingIndex;return e.bindingIndex=e.bindingIndex+n,r}function P0(){return we.lFrame.inI18n}function x0(n,e){let r=we.lFrame;r.bindingIndex=r.bindingRootIndex=n,WE(e)}function F0(){return we.lFrame.currentDirectiveIndex}function WE(n){we.lFrame.currentDirectiveIndex=n}function k0(n){let e=we.lFrame.currentDirectiveIndex;return e===-1?null:n[e]}function zE(){return we.lFrame.currentQueryIndex}function xf(n){we.lFrame.currentQueryIndex=n}function G6(n){let e=n[Te];return e.type===2?e.declTNode:e.type===1?n[sr]:null}function kA(n,e,r){if(r&4){let i=e,o=n;for(;i=i.parent,i===null&&!(r&1);)if(i=G6(o),i===null||(o=o[xc],i.type&10))break;if(i===null)return!1;e=i,n=o}let t=we.lFrame=U0();return t.currentTNode=e,t.lView=n,!0}function qE(n){let e=U0(),r=n[Te];we.lFrame=e,e.currentTNode=r.firstChild,e.lView=n,e.tView=r,e.contextLView=n,e.bindingIndex=r.bindingStartIndex,e.inI18n=!1}function U0(){let n=we.lFrame,e=n===null?null:n.child;return e===null?V0(n):e}function V0(n){let e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:n,child:null,inI18n:!1};return n!==null&&(n.child=e),e}function B0(){let n=we.lFrame;return we.lFrame=n.parent,n.currentTNode=null,n.lView=null,n}var UA=B0;function KE(){let n=B0();n.isParent=!0,n.tView=null,n.selectedIndex=-1,n.contextLView=null,n.elementDepthCount=0,n.currentDirectiveIndex=-1,n.currentNamespace=null,n.bindingRootIndex=-1,n.bindingIndex=-1,n.currentQueryIndex=0}function G0(n){return(we.lFrame.contextLView=D0(n,we.lFrame.contextLView))[$t]}function oi(){return we.lFrame.selectedIndex}function ra(n){we.lFrame.selectedIndex=n}function Hu(){let n=we.lFrame;return Lf(n.tView,n.selectedIndex)}function $0(){we.lFrame.currentNamespace=vA}function j0(){$6()}function $6(){we.lFrame.currentNamespace=null}function H0(){return we.lFrame.currentNamespace}var W0=!0;function YE(){return W0}function Ff(n){W0=n}function XS(n,e=null,r=null,t){let i=VA(n,e,r,t);return i.resolveInjectorInitializers(),i}function VA(n,e=null,r=null,t,i=new Set){let o=[r||qn,E0(n)];return t=t||(typeof n=="object"?void 0:rs(n)),new Lc(o,e||ku(),t||null,i)}var St=class n{static THROW_IF_NOT_FOUND=Nc;static NULL=new Df;static create(e,r){if(Array.isArray(e))return XS({name:""},r,e,"");{let t=e.name??"";return XS({name:t},e.parent,e.providers,t)}}static \u0275prov=K({token:n,providedIn:"any",factory:()=>w(uA)});static __NG_ELEMENT_ID__=-1},Dn=new Z(""),cr=(()=>{class n{static __NG_ELEMENT_ID__=j6;static __NG_ENV_ID__=r=>r}return n})(),Rf=class extends cr{_lView;constructor(e){super(),this._lView=e}get destroyed(){return Bc(this._lView)}onDestroy(e){let r=this._lView;return AA(r,e),()=>R0(r,e)}};function j6(){return new Rf(ce())}var Fr=class{_console=console;handleError(e){this._console.error("ERROR",e)}},_o=new Z("",{providedIn:"root",factory:()=>{let n=ne(Kn),e;return r=>{n.destroyed&&!e?setTimeout(()=>{throw r}):(e??=n.get(Fr),e.handleError(r))}}}),z0={provide:Js,useValue:()=>{ne(Fr)},multi:!0};function To(n){return typeof n=="function"&&n[An]!==void 0}function jc(n,e){let[r,t,i]=FS(n,e?.equal),o=r,s=o[An];return o.set=t,o.update=i,o.asReadonly=BA.bind(o),o}function BA(){let n=this[An];if(n.readonlyFn===void 0){let e=()=>this();e[An]=n,n.readonlyFn=e}return n.readonlyFn}function GA(n){return To(n)&&typeof n.set=="function"}var Wu=(()=>{class n{view;node;constructor(r,t){this.view=r,this.node=t}static __NG_ELEMENT_ID__=H6}return n})();function H6(){return new Wu(ce(),gn())}var ei=class{},zu=new Z("",{providedIn:"root",factory:()=>!1});var $A=new Z(""),QE=new Z(""),ia=(()=>{class n{taskId=0;pendingTasks=new Set;destroyed=!1;pendingTask=new Y(!1);get hasPendingTasks(){return this.destroyed?!1:this.pendingTask.value}get hasPendingTasksObservable(){return this.destroyed?new ge(r=>{r.next(!1),r.complete()}):this.pendingTask}add(){!this.hasPendingTasks&&!this.destroyed&&this.pendingTask.next(!0);let r=this.taskId++;return this.pendingTasks.add(r),r}has(r){return this.pendingTasks.has(r)}remove(r){this.pendingTasks.delete(r),this.pendingTasks.size===0&&this.hasPendingTasks&&this.pendingTask.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks&&this.pendingTask.next(!1),this.destroyed=!0,this.pendingTask.unsubscribe()}static \u0275prov=K({token:n,providedIn:"root",factory:()=>new n})}return n})(),Io=(()=>{class n{internalPendingTasks=ne(ia);scheduler=ne(ei);errorHandler=ne(_o);add(){let r=this.internalPendingTasks.add();return()=>{this.internalPendingTasks.has(r)&&(this.scheduler.notify(11),this.internalPendingTasks.remove(r))}}run(r){let t=this.add();r().catch(this.errorHandler).finally(t)}static \u0275prov=K({token:n,providedIn:"root",factory:()=>new n})}return n})();function Hc(...n){}var kf=(()=>{class n{static \u0275prov=K({token:n,providedIn:"root",factory:()=>new JS})}return n})(),JS=class{dirtyEffectCount=0;queues=new Map;add(e){this.enqueue(e),this.schedule(e)}schedule(e){e.dirty&&this.dirtyEffectCount++}remove(e){let r=e.zone,t=this.queues.get(r);t.has(e)&&(t.delete(e),e.dirty&&this.dirtyEffectCount--)}enqueue(e){let r=e.zone;this.queues.has(r)||this.queues.set(r,new Set);let t=this.queues.get(r);t.has(e)||t.add(e)}flush(){for(;this.dirtyEffectCount>0;){let e=!1;for(let[r,t]of this.queues)r===null?e||=this.flushQueue(t):e||=r.run(()=>this.flushQueue(t));e||(this.dirtyEffectCount=0)}}flushQueue(e){let r=!1;for(let t of e)t.dirty&&(this.dirtyEffectCount--,r=!0,t.run());return r}};function sd(n){return{toString:n}.toString()}var XE="__parameters__";function X6(n){return function(...r){if(n){let t=n(...r);for(let i in t)this[i]=t[i]}}}function Ox(n,e,r){return sd(()=>{let t=X6(e);function i(...o){if(this instanceof i)return t.apply(this,o),this;let s=new i(...o);return a.annotation=s,a;function a(c,l,u){let d=c.hasOwnProperty(XE)?c[XE]:Object.defineProperty(c,XE,{value:[]})[XE];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),c}}return i.prototype.ngMetadataName=n,i.annotationCls=i,i})}var J6=cA(Ox("Inject",n=>({token:n})),-1),pn=cA(Ox("Optional"),8);function wx(n){let e=tn.ng;if(e&&e.\u0275compilerFacade)return e.\u0275compilerFacade;throw new Error("JIT compiler unavailable")}function Z6(n){return typeof n=="function"}var l_=class{previousValue;currentValue;firstChange;constructor(e,r,t){this.previousValue=e,this.currentValue=r,this.firstChange=t}isFirstChange(){return this.firstChange}};function bx(n,e,r,t){e!==null?e.applyValueToInputSignal(e,t):n[r]=t}var VD=(()=>{let n=()=>Lx;return n.ngInherit=!0,n})();function Lx(n){return n.type.prototype.ngOnChanges&&(n.setInput=t4),e4}function e4(){let n=Px(this),e=n?.current;if(e){let r=n.previous;if(r===Ni)n.previous=e;else for(let t in e)r[t]=e[t];n.current=null,this.ngOnChanges(e)}}function t4(n,e,r,t,i){let o=this.declaredInputs[t],s=Px(n)||n4(n,{previous:Ni,current:null}),a=s.current||(s.current={}),c=s.previous,l=c[o];a[o]=new l_(l&&l.currentValue,r,c===Ni),bx(n,e,i,r)}var Mx="__ngSimpleChanges__";function Px(n){return n[Mx]||null}function n4(n,e){return n[Mx]=e}var q0=[];var lt=function(n,e=null,r){for(let t=0;t<q0.length;t++){let i=q0[t];i(n,e,r)}};function r4(n,e,r){let{ngOnChanges:t,ngOnInit:i,ngDoCheck:o}=e.type.prototype;if(t){let s=Lx(e);(r.preOrderHooks??=[]).push(n,s),(r.preOrderCheckHooks??=[]).push(n,s)}i&&(r.preOrderHooks??=[]).push(0-n,i),o&&((r.preOrderHooks??=[]).push(n,o),(r.preOrderCheckHooks??=[]).push(n,o))}function xx(n,e){for(let r=e.directiveStart,t=e.directiveEnd;r<t;r++){let o=n.data[r].type.prototype,{ngAfterContentInit:s,ngAfterContentChecked:a,ngAfterViewInit:c,ngAfterViewChecked:l,ngOnDestroy:u}=o;s&&(n.contentHooks??=[]).push(-r,s),a&&((n.contentHooks??=[]).push(r,a),(n.contentCheckHooks??=[]).push(r,a)),c&&(n.viewHooks??=[]).push(-r,c),l&&((n.viewHooks??=[]).push(r,l),(n.viewCheckHooks??=[]).push(r,l)),u!=null&&(n.destroyHooks??=[]).push(r,u)}}function i_(n,e,r){Fx(n,e,3,r)}function o_(n,e,r,t){(n[De]&3)===r&&Fx(n,e,r,t)}function jA(n,e){let r=n[De];(r&3)===e&&(r&=16383,r+=1,n[De]=r)}function Fx(n,e,r,t){let i=t!==void 0?n[Fc]&65535:0,o=t??-1,s=e.length-1,a=0;for(let c=i;c<s;c++)if(typeof e[c+1]=="number"){if(a=e[c],t!=null&&a>=t)break}else e[c]<0&&(n[Fc]+=65536),(a<o||o==-1)&&(i4(n,r,e,c),n[Fc]=(n[Fc]&4294901760)+c+2),c++}function K0(n,e){lt(4,n,e);let r=Ae(null);try{e.call(n)}finally{Ae(r),lt(5,n,e)}}function i4(n,e,r,t){let i=r[t]<0,o=r[t+1],s=i?-r[t]:r[t],a=n[s];i?n[De]>>14<n[Fc]>>16&&(n[De]&3)===e&&(n[De]+=16384,K0(a,o)):K0(a,o)}var Ku=-1,zc=class{factory;name;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(e,r,t,i){this.factory=e,this.name=i,this.canSeeViewProviders=r,this.injectImpl=t}};function o4(n){return(n.flags&8)!==0}function s4(n){return(n.flags&16)!==0}function a4(n,e,r){let t=0;for(;t<r.length;){let i=r[t];if(typeof i=="number"){if(i!==0)break;t++;let o=r[t++],s=r[t++],a=r[t++];n.setAttribute(e,s,a,o)}else{let o=i,s=r[++t];l4(o)?n.setProperty(e,o,s):n.setAttribute(e,o,s),t++}}return t}function c4(n){return n===3||n===4||n===6}function l4(n){return n.charCodeAt(0)===64}function Yu(n,e){if(!(e===null||e.length===0))if(n===null||n.length===0)n=e.slice();else{let r=-1;for(let t=0;t<e.length;t++){let i=e[t];typeof i=="number"?r=i:r===0||(r===-1||r===2?Y0(n,r,i,null,e[++t]):Y0(n,r,i,null,null))}}return n}function Y0(n,e,r,t,i){let o=0,s=n.length;if(e===-1)s=-1;else for(;o<n.length;){let a=n[o++];if(typeof a=="number"){if(a===e){s=-1;break}else if(a>e){s=o-1;break}}}for(;o<n.length;){let a=n[o];if(typeof a=="number")break;if(a===r){i!==null&&(n[o+1]=i);return}o++,i!==null&&o++}s!==-1&&(n.splice(s,0,e),o=s+1),n.splice(o++,0,r),i!==null&&n.splice(o++,0,i)}function kx(n){return n!==Ku}function u_(n){return n&32767}function u4(n){return n>>16}function d_(n,e){let r=u4(n),t=e;for(;r>0;)t=t[xc],r--;return t}var eD=!0;function h_(n){let e=eD;return eD=n,e}var d4=256,Ux=d4-1,Vx=5,h4=0,vo={};function f4(n,e,r){let t;typeof r=="string"?t=r.charCodeAt(0)||0:r.hasOwnProperty(Mc)&&(t=r[Mc]),t==null&&(t=r[Mc]=h4++);let i=t&Ux,o=1<<i;e.data[n+(i>>Vx)]|=o}function f_(n,e){let r=Bx(n,e);if(r!==-1)return r;let t=e[Te];t.firstCreatePass&&(n.injectorIndex=e.length,HA(t.data,n),HA(e,null),HA(t.blueprint,null));let i=BD(n,e),o=n.injectorIndex;if(kx(i)){let s=u_(i),a=d_(i,e),c=a[Te].data;for(let l=0;l<8;l++)e[o+l]=a[s+l]|c[s+l]}return e[o+8]=i,o}function HA(n,e){n.push(0,0,0,0,0,0,0,0,e)}function Bx(n,e){return n.injectorIndex===-1||n.parent&&n.parent.injectorIndex===n.injectorIndex||e[n.injectorIndex+8]===null?-1:n.injectorIndex}function BD(n,e){if(n.parent&&n.parent.injectorIndex!==-1)return n.parent.injectorIndex;let r=0,t=null,i=e;for(;i!==null;){if(t=Wx(i),t===null)return Ku;if(r++,i=i[xc],t.injectorIndex!==-1)return t.injectorIndex|r<<16}return Ku}function tD(n,e,r){f4(n,e,r)}function Gx(n,e,r){if(r&8||n!==void 0)return n;FE(e,"NodeInjector")}function $x(n,e,r,t){if(r&8&&t===void 0&&(t=null),(r&3)===0){let i=n[os],o=or(void 0);try{return i?i.get(e,t,r&8):aA(e,t,r&8)}finally{or(o)}}return Gx(t,e,r)}function jx(n,e,r,t=0,i){if(n!==null){if(e[De]&2048&&!(t&2)){let s=_4(n,e,r,t,vo);if(s!==vo)return s}let o=Hx(n,e,r,t,vo);if(o!==vo)return o}return $x(e,r,t,i)}function Hx(n,e,r,t,i){let o=m4(r);if(typeof o=="function"){if(!kA(e,n,t))return t&1?Gx(i,r,t):$x(e,r,t,i);try{let s;if(s=o(t),s==null&&!(t&8))FE(r);else return s}finally{UA()}}else if(typeof o=="number"){let s=null,a=Bx(n,e),c=Ku,l=t&1?e[Yn][sr]:null;for((a===-1||t&4)&&(c=a===-1?BD(n,e):e[a+8],c===Ku||!X0(t,!1)?a=-1:(s=e[Te],a=u_(c),e=d_(c,e)));a!==-1;){let u=e[Te];if(Q0(o,a,u.data)){let d=g4(a,e,r,s,t,l);if(d!==vo)return d}c=e[a+8],c!==Ku&&X0(t,e[Te].data[a+8]===l)&&Q0(o,a,e)?(s=u,a=u_(c),e=d_(c,e)):a=-1}}return i}function g4(n,e,r,t,i,o){let s=e[Te],a=s.data[n+8],c=t==null?as(a)&&eD:t!=s&&(a.type&3)!==0,l=i&1&&o===a,u=s_(a,s,r,c,l);return u!==null?Bf(e,s,u,a,i):vo}function s_(n,e,r,t,i){let o=n.providerIndexes,s=e.data,a=o&1048575,c=n.directiveStart,l=n.directiveEnd,u=o>>20,d=t?a:a+u,f=i?a+u:l;for(let g=d;g<f;g++){let p=s[g];if(g<c&&r===p||g>=c&&p.type===r)return g}if(i){let g=s[c];if(g&&bi(g)&&g.type===r)return c}return null}function Bf(n,e,r,t,i){let o=n[r],s=e.data;if(o instanceof zc){let a=o;if(a.resolving){let g=c0(s[r]);throw sA(g)}let c=h_(a.canSeeViewProviders);a.resolving=!0;let l=s[r].type||s[r],u,d=a.injectImpl?or(a.injectImpl):null,f=kA(n,t,0);try{o=n[r]=a.factory(void 0,i,s,n,t),e.firstCreatePass&&r>=t.directiveStart&&r4(r,s[r],e)}finally{d!==null&&or(d),h_(c),a.resolving=!1,UA()}}return o}function m4(n){if(typeof n=="string")return n.charCodeAt(0)||0;let e=n.hasOwnProperty(Mc)?n[Mc]:void 0;return typeof e=="number"?e>=0?e&Ux:p4:e}function Q0(n,e,r){let t=1<<n;return!!(r[e+(n>>Vx)]&t)}function X0(n,e){return!(n&2)&&!(n&1&&e)}var Wc=class{_tNode;_lView;constructor(e,r){this._tNode=e,this._lView=r}get(e,r,t){return jx(this._tNode,this._lView,e,wc(t),r)}};function p4(){return new Wc(gn(),ce())}function E4(n){return sd(()=>{let e=n.prototype.constructor,r=e[Af]||nD(e),t=Object.prototype,i=Object.getPrototypeOf(n.prototype).constructor;for(;i&&i!==t;){let o=i[Af]||nD(i);if(o&&o!==r)return o;i=Object.getPrototypeOf(i)}return o=>new o})}function nD(n){return eA(n)?()=>{let e=nD(hn(n));return e&&e()}:Ys(n)}function _4(n,e,r,t,i){let o=n,s=e;for(;o!==null&&s!==null&&s[De]&2048&&!Gu(s);){let a=Hx(o,s,r,t|2,vo);if(a!==vo)return a;let c=o.parent;if(!c){let l=s[_A];if(l){let u=l.get(r,vo,t);if(u!==vo)return u}c=Wx(s),s=s[xc]}o=c}return i}function Wx(n){let e=n[Te],r=e.type;return r===2?e.declTNode:r===1?n[sr]:null}function T4(){return ad(gn(),ce())}function ad(n,e){return new sa(ri(n,e))}var sa=(()=>{class n{nativeElement;constructor(r){this.nativeElement=r}static __NG_ELEMENT_ID__=T4}return n})();function zx(n){return n instanceof sa?n.nativeElement:n}function I4(){return this._results[Symbol.iterator]()}var g_=class{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new Ot}constructor(e=!1){this._emitDistinctChangesOnly=e}get(e){return this._results[e]}map(e){return this._results.map(e)}filter(e){return this._results.filter(e)}find(e){return this._results.find(e)}reduce(e,r){return this._results.reduce(e,r)}forEach(e){this._results.forEach(e)}some(e){return this._results.some(e)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(e,r){this.dirty=!1;let t=f0(e);(this._changesDetected=!h0(this._results,t,r))&&(this._results=t,this.length=t.length,this.last=t[this.length-1],this.first=t[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(e){this._onDirty=e}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=I4};function qx(n){return(n.flags&128)===128}var GD=(function(n){return n[n.OnPush=0]="OnPush",n[n.Default=1]="Default",n})(GD||{}),Kx=new Map,v4=0;function y4(){return v4++}function S4(n){Kx.set(n[wf],n)}function rD(n){Kx.delete(n[wf])}var J0="__ngContext__";function Qu(n,e){po(e)?(n[J0]=e[wf],S4(e)):n[J0]=e}function Yx(n){return Xx(n[Vu])}function Qx(n){return Xx(n[ti])}function Xx(n){for(;n!==null&&!wi(n);)n=n[ti];return n}var iD;function $D(n){iD=n}function jD(){if(iD!==void 0)return iD;if(typeof document<"u")return document;throw new oe(210,!1)}var w_=new Z("",{providedIn:"root",factory:()=>A4}),A4="ng",b_=new Z(""),hs=new Z("",{providedIn:"platform",factory:()=>"unknown"});var D4=new Z(""),cd=new Z("",{providedIn:"root",factory:()=>jD().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var R4="h",C4="b";var Jx="r";var Zx="di";var eF=!1,tF=new Z("",{providedIn:"root",factory:()=>eF});var N4=(n,e,r,t)=>{};function O4(n,e,r,t){N4(n,e,r,t)}function L_(n){return(n.flags&32)===32}var w4=()=>null;function nF(n,e,r=!1){return w4(n,e,r)}function rF(n,e){let r=n.contentQueries;if(r!==null){let t=Ae(null);try{for(let i=0;i<r.length;i+=2){let o=r[i],s=r[i+1];if(s!==-1){let a=n.data[s];xf(o),a.contentQueries(2,e[s],s)}}}finally{Ae(t)}}}function oD(n,e,r){xf(0);let t=Ae(null);try{e(n,r)}finally{Ae(t)}}function HD(n,e,r){if(IA(e)){let t=Ae(null);try{let i=e.directiveStart,o=e.directiveEnd;for(let s=i;s<o;s++){let a=n.data[s];if(a.contentQueries){let c=r[s];a.contentQueries(1,c,s)}}}finally{Ae(t)}}}var ls=(function(n){return n[n.Emulated=0]="Emulated",n[n.None=2]="None",n[n.ShadowDom=3]="ShadowDom",n})(ls||{});var JE;function b4(){if(JE===void 0&&(JE=null,tn.trustedTypes))try{JE=tn.trustedTypes.createPolicy("angular",{createHTML:n=>n,createScript:n=>n,createScriptURL:n=>n})}catch{}return JE}function M_(n){return b4()?.createHTML(n)||n}var ZE;function L4(){if(ZE===void 0&&(ZE=null,tn.trustedTypes))try{ZE=tn.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:n=>n,createScript:n=>n,createScriptURL:n=>n})}catch{}return ZE}function Z0(n){return L4()?.createHTML(n)||n}var us=class{changingThisBreaksApplicationSecurity;constructor(e){this.changingThisBreaksApplicationSecurity=e}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${bE})`}},sD=class extends us{getTypeName(){return"HTML"}},aD=class extends us{getTypeName(){return"Style"}},cD=class extends us{getTypeName(){return"Script"}},lD=class extends us{getTypeName(){return"URL"}},uD=class extends us{getTypeName(){return"ResourceURL"}};function Br(n){return n instanceof us?n.changingThisBreaksApplicationSecurity:n}function So(n,e){let r=iF(n);if(r!=null&&r!==e){if(r==="ResourceURL"&&e==="URL")return!0;throw new Error(`Required a safe ${e}, got a ${r} (see ${bE})`)}return r===e}function iF(n){return n instanceof us&&n.getTypeName()||null}function WD(n){return new sD(n)}function zD(n){return new aD(n)}function qD(n){return new cD(n)}function KD(n){return new lD(n)}function YD(n){return new uD(n)}function M4(n){let e=new hD(n);return P4()?new dD(e):e}var dD=class{inertDocumentHelper;constructor(e){this.inertDocumentHelper=e}getInertBodyElement(e){e="<body><remove></remove>"+e;try{let r=new window.DOMParser().parseFromString(M_(e),"text/html").body;return r===null?this.inertDocumentHelper.getInertBodyElement(e):(r.firstChild?.remove(),r)}catch{return null}}},hD=class{defaultDoc;inertDocument;constructor(e){this.defaultDoc=e,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(e){let r=this.inertDocument.createElement("template");return r.innerHTML=M_(e),r}};function P4(){try{return!!new window.DOMParser().parseFromString(M_(""),"text/html")}catch{return!1}}var x4=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Hf(n){return n=String(n),n.match(x4)?n:"unsafe:"+n}function fs(n){let e={};for(let r of n.split(","))e[r]=!0;return e}function Wf(...n){let e={};for(let r of n)for(let t in r)r.hasOwnProperty(t)&&(e[t]=!0);return e}var oF=fs("area,br,col,hr,img,wbr"),sF=fs("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),aF=fs("rp,rt"),F4=Wf(aF,sF),k4=Wf(sF,fs("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),U4=Wf(aF,fs("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),ex=Wf(oF,k4,U4,F4),cF=fs("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),V4=fs("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),B4=fs("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext"),G4=Wf(cF,V4,B4),$4=fs("script,style,template");var fD=class{sanitizedSomething=!1;buf=[];sanitizeChildren(e){let r=e.firstChild,t=!0,i=[];for(;r;){if(r.nodeType===Node.ELEMENT_NODE?t=this.startElement(r):r.nodeType===Node.TEXT_NODE?this.chars(r.nodeValue):this.sanitizedSomething=!0,t&&r.firstChild){i.push(r),r=W4(r);continue}for(;r;){r.nodeType===Node.ELEMENT_NODE&&this.endElement(r);let o=H4(r);if(o){r=o;break}r=i.pop()}}return this.buf.join("")}startElement(e){let r=tx(e).toLowerCase();if(!ex.hasOwnProperty(r))return this.sanitizedSomething=!0,!$4.hasOwnProperty(r);this.buf.push("<"),this.buf.push(r);let t=e.attributes;for(let i=0;i<t.length;i++){let o=t.item(i),s=o.name,a=s.toLowerCase();if(!G4.hasOwnProperty(a)){this.sanitizedSomething=!0;continue}let c=o.value;cF[a]&&(c=Hf(c)),this.buf.push(" ",s,'="',nx(c),'"')}return this.buf.push(">"),!0}endElement(e){let r=tx(e).toLowerCase();ex.hasOwnProperty(r)&&!oF.hasOwnProperty(r)&&(this.buf.push("</"),this.buf.push(r),this.buf.push(">"))}chars(e){this.buf.push(nx(e))}};function j4(n,e){return(n.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function H4(n){let e=n.nextSibling;if(e&&n!==e.previousSibling)throw lF(e);return e}function W4(n){let e=n.firstChild;if(e&&j4(n,e))throw lF(e);return e}function tx(n){let e=n.nodeName;return typeof e=="string"?e:"FORM"}function lF(n){return new Error(`Failed to sanitize html because the element is clobbered: ${n.outerHTML}`)}var z4=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,q4=/([^\#-~ |!])/g;function nx(n){return n.replace(/&/g,"&amp;").replace(z4,function(e){let r=e.charCodeAt(0),t=e.charCodeAt(1);return"&#"+((r-55296)*1024+(t-56320)+65536)+";"}).replace(q4,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}var e_;function P_(n,e){let r=null;try{e_=e_||M4(n);let t=e?String(e):"";r=e_.getInertBodyElement(t);let i=5,o=t;do{if(i===0)throw new Error("Failed to sanitize html because the input is unstable");i--,t=o,o=r.innerHTML,r=e_.getInertBodyElement(t)}while(t!==o);let a=new fD().sanitizeChildren(rx(r)||r);return M_(a)}finally{if(r){let t=rx(r)||r;for(;t.firstChild;)t.firstChild.remove()}}}function rx(n){return"content"in n&&K4(n)?n.content:null}function K4(n){return n.nodeType===Node.ELEMENT_NODE&&n.nodeName==="TEMPLATE"}var Y4=/^>|^->|<!--|-->|--!>|<!-$/g,Q4=/(<|>)/g,X4="\u200B$1\u200B";function J4(n){return n.replace(Y4,e=>e.replace(Q4,X4))}function Z4(n,e){return n.createText(e)}function eq(n,e,r){n.setValue(e,r)}function tq(n,e){return n.createComment(J4(e))}function uF(n,e,r){return n.createElement(e,r)}function m_(n,e,r,t,i){n.insertBefore(e,r,t,i)}function dF(n,e,r){n.appendChild(e,r)}function ix(n,e,r,t,i){t!==null?m_(n,e,r,t,i):dF(n,e,r)}function hF(n,e,r,t){n.removeChild(null,e,r,t)}function nq(n,e,r){n.setAttribute(e,"style",r)}function rq(n,e,r){r===""?n.removeAttribute(e,"class"):n.setAttribute(e,"class",r)}function fF(n,e,r){let{mergedAttrs:t,classes:i,styles:o}=r;t!==null&&a4(n,e,t),i!==null&&rq(n,e,i),o!==null&&nq(n,e,o)}var si=(function(n){return n[n.NONE=0]="NONE",n[n.HTML=1]="HTML",n[n.STYLE=2]="STYLE",n[n.SCRIPT=3]="SCRIPT",n[n.URL=4]="URL",n[n.RESOURCE_URL=5]="RESOURCE_URL",n})(si||{});function iq(n){let e=QD();return e?Z0(e.sanitize(si.HTML,n)||""):So(n,"HTML")?Z0(Br(n)):P_(jD(),kr(n))}function oq(n){let e=QD();return e?e.sanitize(si.STYLE,n)||"":So(n,"Style")?Br(n):kr(n)}function sq(n){let e=QD();return e?e.sanitize(si.URL,n)||"":So(n,"URL")?Br(n):Hf(kr(n))}function QD(){let n=ce();return n&&n[go].sanitizer}function aq(n){return n.ownerDocument.defaultView}function cq(n){return n.ownerDocument}function lq(n){return n instanceof Function?n():n}function uq(n,e,r){let t=n.length;for(;;){let i=n.indexOf(e,r);if(i===-1)return i;if(i===0||n.charCodeAt(i-1)<=32){let o=e.length;if(i+o===t||n.charCodeAt(i+o)<=32)return i}r=i+1}}var gF="ng-template";function dq(n,e,r,t){let i=0;if(t){for(;i<e.length&&typeof e[i]=="string";i+=2)if(e[i]==="class"&&uq(e[i+1].toLowerCase(),r,0)!==-1)return!0}else if(XD(n))return!1;if(i=e.indexOf(1,i),i>-1){let o;for(;++i<e.length&&typeof(o=e[i])=="string";)if(o.toLowerCase()===r)return!0}return!1}function XD(n){return n.type===4&&n.value!==gF}function hq(n,e,r){let t=n.type===4&&!r?gF:n.value;return e===t}function fq(n,e,r){let t=4,i=n.attrs,o=i!==null?pq(i):0,s=!1;for(let a=0;a<e.length;a++){let c=e[a];if(typeof c=="number"){if(!s&&!Li(t)&&!Li(c))return!1;if(s&&Li(c))continue;s=!1,t=c|t&1;continue}if(!s)if(t&4){if(t=2|t&1,c!==""&&!hq(n,c,r)||c===""&&e.length===1){if(Li(t))return!1;s=!0}}else if(t&8){if(i===null||!dq(n,i,c,r)){if(Li(t))return!1;s=!0}}else{let l=e[++a],u=gq(c,i,XD(n),r);if(u===-1){if(Li(t))return!1;s=!0;continue}if(l!==""){let d;if(u>o?d="":d=i[u+1].toLowerCase(),t&2&&l!==d){if(Li(t))return!1;s=!0}}}}return Li(t)||s}function Li(n){return(n&1)===0}function gq(n,e,r,t){if(e===null)return-1;let i=0;if(t||!r){let o=!1;for(;i<e.length;){let s=e[i];if(s===n)return i;if(s===3||s===6)o=!0;else if(s===1||s===2){let a=e[++i];for(;typeof a=="string";)a=e[++i];continue}else{if(s===4)break;if(s===0){i+=4;continue}}i+=o?1:2}return-1}else return Eq(e,n)}function mF(n,e,r=!1){for(let t=0;t<e.length;t++)if(fq(n,e[t],r))return!0;return!1}function mq(n){let e=n.attrs;if(e!=null){let r=e.indexOf(5);if((r&1)===0)return e[r+1]}return null}function pq(n){for(let e=0;e<n.length;e++){let r=n[e];if(c4(r))return e}return n.length}function Eq(n,e){let r=n.indexOf(4);if(r>-1)for(r++;r<n.length;){let t=n[r];if(typeof t=="number")return-1;if(t===e)return r;r++}return-1}function _q(n,e){e:for(let r=0;r<e.length;r++){let t=e[r];if(n.length===t.length){for(let i=0;i<n.length;i++)if(n[i]!==t[i])continue e;return!0}}return!1}function ox(n,e){return n?":not("+e.trim()+")":e}function Tq(n){let e=n[0],r=1,t=2,i="",o=!1;for(;r<n.length;){let s=n[r];if(typeof s=="string")if(t&2){let a=n[++r];i+="["+s+(a.length>0?'="'+a+'"':"")+"]"}else t&8?i+="."+s:t&4&&(i+=" "+s);else i!==""&&!Li(s)&&(e+=ox(o,i),i=""),t=s,o=o||!Li(t);r++}return i!==""&&(e+=ox(o,i)),e}function Iq(n){return n.map(Tq).join(",")}function vq(n){let e=[],r=[],t=1,i=2;for(;t<n.length;){let o=n[t];if(typeof o=="string")i===2?o!==""&&e.push(o,n[++t]):i===8&&r.push(o);else{if(!Li(i))break;i=o}t++}return r.length&&e.push(1,...r),e}var Rn={};function JD(n,e,r,t,i,o,s,a,c,l,u){let d=et+t,f=d+i,g=yq(d,f),p=typeof l=="function"?l():l;return g[Te]={type:n,blueprint:g,template:r,queries:null,viewQuery:a,declTNode:e,data:g.slice().fill(null,d),bindingStartIndex:d,expandoStartIndex:f,hostBindingOpCodes:null,firstCreatePass:!0,firstUpdatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:typeof o=="function"?o():o,pipeRegistry:typeof s=="function"?s():s,firstChild:null,schemas:c,consts:p,incompleteFirstPass:!1,ssrId:u}}function yq(n,e){let r=[];for(let t=0;t<e;t++)r.push(t<n?null:Rn);return r}function Sq(n){let e=n.tView;return e===null||e.incompleteFirstPass?n.tView=JD(1,null,n.template,n.decls,n.vars,n.directiveDefs,n.pipeDefs,n.viewQuery,n.schemas,n.consts,n.id):e}function ZD(n,e,r,t,i,o,s,a,c,l,u){let d=e.blueprint.slice();return d[Oi]=i,d[De]=t|4|128|8|64|1024,(l!==null||n&&n[De]&2048)&&(d[De]|=2048),SA(d),d[fn]=d[xc]=n,d[$t]=r,d[go]=s||n&&n[go],d[Ze]=a||n&&n[Ze],d[os]=c||n&&n[os]||null,d[sr]=o,d[wf]=y4(),d[Pc]=u,d[_A]=l,d[Yn]=e.type==2?n[Yn]:d,d}function Aq(n,e,r){let t=ri(e,n),i=Sq(r),o=n[go].rendererFactory,s=eR(n,ZD(n,i,null,pF(r),t,e,null,o.createRenderer(t,r),null,null,null));return n[e.index]=s}function pF(n){let e=16;return n.signals?e=4096:n.onPush&&(e=64),e}function EF(n,e,r,t){if(r===0)return-1;let i=e.length;for(let o=0;o<r;o++)e.push(t),n.blueprint.push(t),n.data.push(null);return i}function eR(n,e){return n[Vu]?n[EA][ti]=e:n[Vu]=e,n[EA]=e,e}function Dq(n=1){_F(tt(),ce(),oi()+n,!1)}function _F(n,e,r,t){if(!t)if((e[De]&3)===3){let o=n.preOrderCheckHooks;o!==null&&i_(e,o,r)}else{let o=n.preOrderHooks;o!==null&&o_(e,o,0,r)}ra(r)}var x_=(function(n){return n[n.None=0]="None",n[n.SignalBased=1]="SignalBased",n[n.HasDecoratorInputTransform=2]="HasDecoratorInputTransform",n})(x_||{});function gD(n,e,r,t){let i=Ae(null);try{let[o,s,a]=n.inputs[r],c=null;(s&x_.SignalBased)!==0&&(c=e[o][An]),c!==null&&c.transformFn!==void 0?t=c.transformFn(t):a!==null&&(t=a.call(e,t)),n.setInput!==null?n.setInput(e,c,t,r,o):bx(e,c,o,t)}finally{Ae(i)}}var Mi=(function(n){return n[n.Important=1]="Important",n[n.DashCase=2]="DashCase",n})(Mi||{}),Rq;function tR(n,e){return Rq(n,e)}var qc=new Set,F_=(function(n){return n[n.CHANGE_DETECTION=0]="CHANGE_DETECTION",n[n.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",n})(F_||{}),Qc=new Z(""),sx=new Set;function gs(n){sx.has(n)||(sx.add(n),performance?.mark?.("mark_feature_usage",{detail:{feature:n}}))}var TF=!1,mD=class extends Ot{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(e=!1){super(),this.__isAsync=e,pA()&&(this.destroyRef=ne(cr,{optional:!0})??void 0,this.pendingTasks=ne(ia,{optional:!0})??void 0)}emit(e){let r=Ae(null);try{super.next(e)}finally{Ae(r)}}subscribe(e,r,t){let i=e,o=r||(()=>null),s=t;if(e&&typeof e=="object"){let c=e;i=c.next?.bind(c),o=c.error?.bind(c),s=c.complete?.bind(c)}this.__isAsync&&(o=this.wrapInTimeout(o),i&&(i=this.wrapInTimeout(i)),s&&(s=this.wrapInTimeout(s)));let a=super.subscribe({next:i,error:o,complete:s});return e instanceof gt&&e.add(a),a}wrapInTimeout(e){return r=>{let t=this.pendingTasks?.add();setTimeout(()=>{try{e(r)}finally{t!==void 0&&this.pendingTasks?.remove(t)}})}}},cs=mD;function IF(n){let e,r;function t(){n=Hc;try{r!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(r),e!==void 0&&clearTimeout(e)}catch{}}return e=setTimeout(()=>{n(),t()}),typeof requestAnimationFrame=="function"&&(r=requestAnimationFrame(()=>{n(),t()})),()=>t()}function ax(n){return queueMicrotask(()=>n()),()=>{n=Hc}}var nR="isAngularZone",p_=nR+"_ID",Cq=0,Le=class n{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new cs(!1);onMicrotaskEmpty=new cs(!1);onStable=new cs(!1);onError=new cs(!1);constructor(e){let{enableLongStackTrace:r=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:i=!1,scheduleInRootZone:o=TF}=e;if(typeof Zone>"u")throw new oe(908,!1);Zone.assertZonePatched();let s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),r&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!i&&t,s.shouldCoalesceRunChangeDetection=i,s.callbackScheduled=!1,s.scheduleInRootZone=o,wq(s)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(nR)===!0}static assertInAngularZone(){if(!n.isInAngularZone())throw new oe(909,!1)}static assertNotInAngularZone(){if(n.isInAngularZone())throw new oe(909,!1)}run(e,r,t){return this._inner.run(e,r,t)}runTask(e,r,t,i){let o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+i,e,Nq,Hc,Hc);try{return o.runTask(s,r,t)}finally{o.cancelTask(s)}}runGuarded(e,r,t){return this._inner.runGuarded(e,r,t)}runOutsideAngular(e){return this._outer.run(e)}},Nq={};function rR(n){if(n._nesting==0&&!n.hasPendingMicrotasks&&!n.isStable)try{n._nesting++,n.onMicrotaskEmpty.emit(null)}finally{if(n._nesting--,!n.hasPendingMicrotasks)try{n.runOutsideAngular(()=>n.onStable.emit(null))}finally{n.isStable=!0}}}function Oq(n){if(n.isCheckStableRunning||n.callbackScheduled)return;n.callbackScheduled=!0;function e(){IF(()=>{n.callbackScheduled=!1,pD(n),n.isCheckStableRunning=!0,rR(n),n.isCheckStableRunning=!1})}n.scheduleInRootZone?Zone.root.run(()=>{e()}):n._outer.run(()=>{e()}),pD(n)}function wq(n){let e=()=>{Oq(n)},r=Cq++;n._inner=n._inner.fork({name:"angular",properties:{[nR]:!0,[p_]:r,[p_+r]:!0},onInvokeTask:(t,i,o,s,a,c)=>{if(bq(c))return t.invokeTask(o,s,a,c);try{return cx(n),t.invokeTask(o,s,a,c)}finally{(n.shouldCoalesceEventChangeDetection&&s.type==="eventTask"||n.shouldCoalesceRunChangeDetection)&&e(),lx(n)}},onInvoke:(t,i,o,s,a,c,l)=>{try{return cx(n),t.invoke(o,s,a,c,l)}finally{n.shouldCoalesceRunChangeDetection&&!n.callbackScheduled&&!Lq(c)&&e(),lx(n)}},onHasTask:(t,i,o,s)=>{t.hasTask(o,s),i===o&&(s.change=="microTask"?(n._hasPendingMicrotasks=s.microTask,pD(n),rR(n)):s.change=="macroTask"&&(n.hasPendingMacrotasks=s.macroTask))},onHandleError:(t,i,o,s)=>(t.handleError(o,s),n.runOutsideAngular(()=>n.onError.emit(s)),!1)})}function pD(n){n._hasPendingMicrotasks||(n.shouldCoalesceEventChangeDetection||n.shouldCoalesceRunChangeDetection)&&n.callbackScheduled===!0?n.hasPendingMicrotasks=!0:n.hasPendingMicrotasks=!1}function cx(n){n._nesting++,n.isStable&&(n.isStable=!1,n.onUnstable.emit(null))}function lx(n){n._nesting--,rR(n)}var Xu=class{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new cs;onMicrotaskEmpty=new cs;onStable=new cs;onError=new cs;run(e,r,t){return e.apply(r,t)}runGuarded(e,r,t){return e.apply(r,t)}runOutsideAngular(e){return e()}runTask(e,r,t,i){return e.apply(r,t)}};function bq(n){return vF(n,"__ignore_ng_zone__")}function Lq(n){return vF(n,"__scheduler_tick__")}function vF(n,e){return!Array.isArray(n)||n.length!==1?!1:n[0]?.data?.[e]===!0}function yF(n="zone.js",e){return n==="noop"?new Xu:n==="zone.js"?new Le(e):n}var iR=(()=>{class n{impl=null;execute(){this.impl?.execute()}static \u0275prov=K({token:n,providedIn:"root",factory:()=>new n})}return n})(),SF=[0,1,2,3],AF=(()=>{class n{ngZone=ne(Le);scheduler=ne(ei);errorHandler=ne(Fr,{optional:!0});sequences=new Set;deferredRegistrations=new Set;executing=!1;constructor(){ne(Qc,{optional:!0})}execute(){let r=this.sequences.size>0;r&&lt(16),this.executing=!0;for(let t of SF)for(let i of this.sequences)if(!(i.erroredOrDestroyed||!i.hooks[t]))try{i.pipelinedValue=this.ngZone.runOutsideAngular(()=>this.maybeTrace(()=>{let o=i.hooks[t];return o(i.pipelinedValue)},i.snapshot))}catch(o){i.erroredOrDestroyed=!0,this.errorHandler?.handleError(o)}this.executing=!1;for(let t of this.sequences)t.afterRun(),t.once&&(this.sequences.delete(t),t.destroy());for(let t of this.deferredRegistrations)this.sequences.add(t);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear(),r&&lt(17)}register(r){let{view:t}=r;t!==void 0?((t[kc]??=[]).push(r),na(t),t[De]|=8192):this.executing?this.deferredRegistrations.add(r):this.addSequence(r)}addSequence(r){this.sequences.add(r),this.scheduler.notify(7)}unregister(r){this.executing&&this.sequences.has(r)?(r.erroredOrDestroyed=!0,r.pipelinedValue=void 0,r.once=!0):(this.sequences.delete(r),this.deferredRegistrations.delete(r))}maybeTrace(r,t){return t?t.run(F_.AFTER_NEXT_RENDER,r):r()}static \u0275prov=K({token:n,providedIn:"root",factory:()=>new n})}return n})(),E_=class{impl;hooks;view;once;snapshot;erroredOrDestroyed=!1;pipelinedValue=void 0;unregisterOnDestroy;constructor(e,r,t,i,o,s=null){this.impl=e,this.hooks=r,this.view=t,this.once=i,this.snapshot=s,this.unregisterOnDestroy=o?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.snapshot?.dispose(),this.snapshot=null}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.();let e=this.view?.[kc];e&&(this.view[kc]=e.filter(r=>r!==this))}};function Mq(n,e){let r=e?.injector??ne(St);return gs("NgAfterNextRender"),xq(n,r,e,!0)}function Pq(n){return n instanceof Function?[void 0,void 0,n,void 0]:[n.earlyRead,n.write,n.mixedReadWrite,n.read]}function xq(n,e,r,t){let i=e.get(iR);i.impl??=e.get(AF);let o=e.get(Qc,null,{optional:!0}),s=r?.manualCleanup!==!0?e.get(cr):null,a=e.get(Wu,null,{optional:!0}),c=new E_(i.impl,Pq(n),a?.view,t,s,o?.snapshot(null));return i.impl.register(c),c}var DF=new Z("",{providedIn:"root",factory:()=>({queue:new Set,isScheduled:!1,scheduler:null})});function RF(n,e,r){let t=n.get(DF);if(Array.isArray(e))for(let i of e)t.queue.add(i),r?.detachedLeaveAnimationFns?.push(i);else t.queue.add(e),r?.detachedLeaveAnimationFns?.push(e);t.scheduler&&t.scheduler(n)}function Fq(n,e){let r=n.get(DF);if(e.detachedLeaveAnimationFns){for(let t of e.detachedLeaveAnimationFns)r.queue.delete(t);e.detachedLeaveAnimationFns=void 0}}function kq(n,e){for(let[r,t]of e)RF(n,t.animateFns)}function ux(n,e,r,t){let i=n?.[Uc]?.enter;e!==null&&i&&i.has(r.index)&&kq(t,i)}function qu(n,e,r,t,i,o,s,a){if(i!=null){let c,l=!1;wi(i)?c=i:po(i)&&(l=!0,i=i[Oi]);let u=ni(i);n===0&&t!==null?(ux(a,t,o,r),s==null?dF(e,t,u):m_(e,t,u,s||null,!0)):n===1&&t!==null?(ux(a,t,o,r),m_(e,t,u,s||null,!0)):n===2?dx(a,o,r,d=>{hF(e,u,l,d)}):n===3&&dx(a,o,r,()=>{e.destroyNode(u)}),c!=null&&Kq(e,n,r,c,o,t,s)}}function Uq(n,e){CF(n,e),e[Oi]=null,e[sr]=null}function Vq(n,e,r,t,i,o){t[Oi]=i,t[sr]=e,U_(n,t,r,1,i,o)}function CF(n,e){e[go].changeDetectionScheduler?.notify(9),U_(n,e,e[Ze],2,null,null)}function Bq(n){let e=n[Vu];if(!e)return WA(n[Te],n);for(;e;){let r=null;if(po(e))r=e[Vu];else{let t=e[jt];t&&(r=t)}if(!r){for(;e&&!e[ti]&&e!==n;)po(e)&&WA(e[Te],e),e=e[fn];e===null&&(e=n),po(e)&&WA(e[Te],e),r=e&&e[ti]}e=r}}function oR(n,e){let r=n[Vc],t=r.indexOf(e);r.splice(t,1)}function k_(n,e){if(Bc(e))return;let r=e[Ze];r.destroyNode&&U_(n,e,r,3,null,null),Bq(e)}function WA(n,e){if(Bc(e))return;let r=Ae(null);try{e[De]&=-129,e[De]|=256,e[Ur]&&Cc(e[Ur]),jq(n,e),$q(n,e),e[Te].type===1&&e[Ze].destroy();let t=e[ea];if(t!==null&&wi(e[fn])){t!==e[fn]&&oR(t,e);let i=e[mo];i!==null&&i.detachView(n)}rD(e)}finally{Ae(r)}}function dx(n,e,r,t){let i=n?.[Uc];if(i==null||i.leave==null||!i.leave.has(e.index))return t(!1);n&&qc.add(n),RF(r,()=>{if(i.leave&&i.leave.has(e.index)){let s=i.leave.get(e.index),a=[];if(s){for(let c=0;c<s.animateFns.length;c++){let l=s.animateFns[c],{promise:u}=l();a.push(u)}i.detachedLeaveAnimationFns=void 0}i.running=Promise.allSettled(a),Gq(n,t)}else n&&qc.delete(n),t(!1)},i)}function Gq(n,e){let r=n[Uc]?.running;if(r){r.then(()=>{n[Uc].running=void 0,qc.delete(n),e(!0)});return}e(!1)}function $q(n,e){let r=n.cleanup,t=e[Uu];if(r!==null)for(let s=0;s<r.length-1;s+=2)if(typeof r[s]=="string"){let a=r[s+3];a>=0?t[a]():t[-a].unsubscribe(),s+=2}else{let a=t[r[s+1]];r[s].call(a)}t!==null&&(e[Uu]=null);let i=e[ns];if(i!==null){e[ns]=null;for(let s=0;s<i.length;s++){let a=i[s];a()}}let o=e[ss];if(o!==null){e[ss]=null;for(let s of o)s.destroy()}}function jq(n,e){let r;if(n!=null&&(r=n.destroyHooks)!=null)for(let t=0;t<r.length;t+=2){let i=e[r[t]];if(!(i instanceof zc)){let o=r[t+1];if(Array.isArray(o))for(let s=0;s<o.length;s+=2){let a=i[o[s]],c=o[s+1];lt(4,a,c);try{c.call(a)}finally{lt(5,a,c)}}else{lt(4,i,o);try{o.call(i)}finally{lt(5,i,o)}}}}}function NF(n,e,r){return Hq(n,e.parent,r)}function Hq(n,e,r){let t=e;for(;t!==null&&t.type&168;)e=t,t=e.parent;if(t===null)return r[Oi];if(as(t)){let{encapsulation:i}=n.data[t.directiveStart+t.componentOffset];if(i===ls.None||i===ls.Emulated)return null}return ri(t,r)}function OF(n,e,r){return zq(n,e,r)}function Wq(n,e,r){return n.type&40?ri(n,r):null}var zq=Wq,hx;function sR(n,e,r,t){let i=NF(n,t,e),o=e[Ze],s=t.parent||e[sr],a=OF(s,t,e);if(i!=null)if(Array.isArray(r))for(let c=0;c<r.length;c++)ix(o,i,r[c],a,!1);else ix(o,i,r,a,!1);hx!==void 0&&hx(o,t,e,r,i)}function Uf(n,e){if(e!==null){let r=e.type;if(r&3)return ri(e,n);if(r&4)return ED(-1,n[e.index]);if(r&8){let t=e.child;if(t!==null)return Uf(n,t);{let i=n[e.index];return wi(i)?ED(-1,i):ni(i)}}else{if(r&128)return Uf(n,e.next);if(r&32)return tR(e,n)()||ni(n[e.index]);{let t=wF(n,e);if(t!==null){if(Array.isArray(t))return t[0];let i=Qs(n[Yn]);return Uf(i,t)}else return Uf(n,e.next)}}}return null}function wF(n,e){if(e!==null){let t=n[Yn][sr],i=e.projection;return t.projection[i]}return null}function ED(n,e){let r=jt+n+1;if(r<e.length){let t=e[r],i=t[Te].firstChild;if(i!==null)return Uf(t,i)}return e[ta]}function aR(n,e,r,t,i,o,s){for(;r!=null;){let a=t[os];if(r.type===128){r=r.next;continue}let c=t[r.index],l=r.type;if(s&&e===0&&(c&&Qu(ni(c),t),r.flags|=2),!L_(r))if(l&8)aR(n,e,r.child,t,i,o,!1),qu(e,n,a,i,c,r,o,t);else if(l&32){let u=tR(r,t),d;for(;d=u();)qu(e,n,a,i,d,r,o,t);qu(e,n,a,i,c,r,o,t)}else l&16?bF(n,e,t,r,i,o):qu(e,n,a,i,c,r,o,t);r=s?r.projectionNext:r.next}}function U_(n,e,r,t,i,o){aR(r,t,n.firstChild,e,i,o,!1)}function qq(n,e,r){let t=e[Ze],i=NF(n,r,e),o=r.parent||e[sr],s=OF(o,r,e);bF(t,0,e,r,i,s)}function bF(n,e,r,t,i,o){let s=r[Yn],c=s[sr].projection[t.projection];if(Array.isArray(c))for(let l=0;l<c.length;l++){let u=c[l];qu(e,n,r[os],i,u,t,o,r)}else{let l=c,u=s[fn];qx(t)&&(l.flags|=128),aR(n,e,l,u,i,o,!0)}}function Kq(n,e,r,t,i,o,s){let a=t[ta],c=ni(t);a!==c&&qu(e,n,r,o,a,i,s);for(let l=jt;l<t.length;l++){let u=t[l];U_(u[Te],u,n,e,o,a)}}function Yq(n,e,r,t,i){if(e)i?n.addClass(r,t):n.removeClass(r,t);else{let o=t.indexOf("-")===-1?void 0:Mi.DashCase;i==null?n.removeStyle(r,t,o):(typeof i=="string"&&i.endsWith("!important")&&(i=i.slice(0,-10),o|=Mi.Important),n.setStyle(r,t,i,o))}}function LF(n,e,r,t,i){let o=oi(),s=t&2;try{ra(-1),s&&e.length>et&&_F(n,e,et,!1),lt(s?2:0,i,r),r(t,i)}finally{ra(o),lt(s?3:1,i,r)}}function V_(n,e,r){e8(n,e,r),(r.flags&64)===64&&t8(n,e,r)}function zf(n,e,r=ri){let t=e.localNames;if(t!==null){let i=e.index+1;for(let o=0;o<t.length;o+=2){let s=t[o+1],a=s===-1?r(e,n):n[s];n[i++]=a}}}function Qq(n,e,r,t){let o=t.get(tF,eF)||r===ls.ShadowDom,s=n.selectRootElement(e,o);return Xq(s),s}function Xq(n){Jq(n)}var Jq=()=>null;function Zq(n){return n==="class"?"className":n==="for"?"htmlFor":n==="formaction"?"formAction":n==="innerHtml"?"innerHTML":n==="readonly"?"readOnly":n==="tabindex"?"tabIndex":n}function MF(n,e,r,t,i,o){let s=e[Te];if(B_(n,s,e,r,t)){as(n)&&xF(e,n.index);return}n.type&3&&(r=Zq(r)),PF(n,e,r,t,i,o)}function PF(n,e,r,t,i,o){if(n.type&3){let s=ri(n,e);t=o!=null?o(t,n.value||"",r):t,i.setProperty(s,r,t)}else n.type&12}function xF(n,e){let r=ii(e,n);r[De]&16||(r[De]|=64)}function e8(n,e,r){let t=r.directiveStart,i=r.directiveEnd;as(r)&&Aq(e,r,n.data[t+r.componentOffset]),n.firstCreatePass||f_(r,e);let o=r.initialInputs;for(let s=t;s<i;s++){let a=n.data[s],c=Bf(e,n,s,r);if(Qu(c,e),o!==null&&i8(e,s-t,c,a,r,o),bi(a)){let l=ii(r.index,e);l[$t]=Bf(e,n,s,r)}}}function t8(n,e,r){let t=r.directiveStart,i=r.directiveEnd,o=r.index,s=F0();try{ra(o);for(let a=t;a<i;a++){let c=n.data[a],l=e[a];WE(a),(c.hostBindings!==null||c.hostVars!==0||c.hostAttrs!==null)&&n8(c,l)}}finally{ra(-1),WE(s)}}function n8(n,e){n.hostBindings!==null&&n.hostBindings(1,e)}function cR(n,e){let r=n.directiveRegistry,t=null;if(r)for(let i=0;i<r.length;i++){let o=r[i];mF(e,o.selectors,!1)&&(t??=[],bi(o)?t.unshift(o):t.push(o))}return t}function r8(n,e,r,t,i,o){let s=ri(n,e);FF(e[Ze],s,o,n.value,r,t,i)}function FF(n,e,r,t,i,o,s){if(o==null)n.removeAttribute(e,i,r);else{let a=s==null?kr(o):s(o,t||"",i);n.setAttribute(e,i,a,r)}}function i8(n,e,r,t,i,o){let s=o[e];if(s!==null)for(let a=0;a<s.length;a+=2){let c=s[a],l=s[a+1];gD(t,r,c,l)}}function lR(n,e,r,t,i){let o=et+r,s=e[Te],a=i(s,e,n,t,r);e[o]=a,$c(n,!0);let c=n.type===2;return c?(fF(e[Ze],a,n),(N0()===0||Bu(n))&&Qu(a,e),O0()):Qu(a,e),YE()&&(!c||!L_(n))&&sR(s,e,a,n),n}function uR(n){let e=n;return LA()?MA():(e=e.parent,$c(e,!1)),e}function o8(n,e){let r=n[os];if(!r)return;let t;try{t=r.get(_o,null)}catch{t=null}t?.(e)}function B_(n,e,r,t,i){let o=n.inputs?.[t],s=n.hostDirectiveInputs?.[t],a=!1;if(s)for(let c=0;c<s.length;c+=2){let l=s[c],u=s[c+1],d=e.data[l];gD(d,r[l],u,i),a=!0}if(o)for(let c of o){let l=r[c],u=e.data[c];gD(u,l,t,i),a=!0}return a}function s8(n,e){let r=ii(e,n),t=r[Te];a8(t,r);let i=r[Oi];i!==null&&r[Pc]===null&&(r[Pc]=nF(i,r[os])),lt(18),dR(t,r,r[$t]),lt(19,r[$t])}function a8(n,e){for(let r=e.length;r<n.blueprint.length;r++)e.push(n.blueprint[r])}function dR(n,e,r){qE(e);try{let t=n.viewQuery;t!==null&&oD(1,t,r);let i=n.template;i!==null&&LF(n,e,i,1,r),n.firstCreatePass&&(n.firstCreatePass=!1),e[mo]?.finishViewCreation(n),n.staticContentQueries&&rF(n,e),n.staticViewQueries&&oD(2,n.viewQuery,r);let o=n.components;o!==null&&c8(e,o)}catch(t){throw n.firstCreatePass&&(n.incompleteFirstPass=!0,n.firstCreatePass=!1),t}finally{e[De]&=-5,KE()}}function c8(n,e){for(let r=0;r<e.length;r++)s8(n,e[r])}function qf(n,e,r,t){let i=Ae(null);try{let o=e.tView,a=n[De]&4096?4096:16,c=ZD(n,o,r,a,null,e,null,null,t?.injector??null,t?.embeddedViewInjector??null,t?.dehydratedView??null),l=n[e.index];c[ea]=l;let u=n[mo];return u!==null&&(c[mo]=u.createEmbeddedView(o)),dR(o,c,r),c}finally{Ae(i)}}function Ju(n,e){return!e||e.firstChild===null||qx(n)}function Gf(n,e,r,t,i=!1){for(;r!==null;){if(r.type===128){r=i?r.projectionNext:r.next;continue}let o=e[r.index];o!==null&&t.push(ni(o)),wi(o)&&kF(o,t);let s=r.type;if(s&8)Gf(n,e,r.child,t);else if(s&32){let a=tR(r,e),c;for(;c=a();)t.push(c)}else if(s&16){let a=wF(e,r);if(Array.isArray(a))t.push(...a);else{let c=Qs(e[Yn]);Gf(c[Te],c,a,t,!0)}}r=i?r.projectionNext:r.next}return t}function kF(n,e){for(let r=jt;r<n.length;r++){let t=n[r],i=t[Te].firstChild;i!==null&&Gf(t[Te],t,i,e)}n[ta]!==n[Oi]&&e.push(n[ta])}function UF(n){if(n[kc]!==null){for(let e of n[kc])e.impl.addSequence(e);n[kc].length=0}}var VF=[];function l8(n){return n[Ur]??u8(n)}function u8(n){let e=VF.pop()??Object.create(h8);return e.lView=n,e}function d8(n){n.lView[Ur]!==n&&(n.lView=null,VF.push(n))}var h8=le(x({},Dc),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:n=>{na(n.lView)},consumerOnSignalRead(){this.lView[Ur]=this}});function f8(n){let e=n[Ur]??Object.create(g8);return e.lView=n,e}var g8=le(x({},Dc),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:n=>{let e=Qs(n.lView);for(;e&&!BF(e[Te]);)e=Qs(e);e&&$E(e)},consumerOnSignalRead(){this.lView[Ur]=this}});function BF(n){return n.type!==2}function GF(n){if(n[ss]===null)return;let e=!0;for(;e;){let r=!1;for(let t of n[ss])t.dirty&&(r=!0,t.zone===null||Zone.current===t.zone?t.run():t.zone.run(()=>t.run()));e=r&&!!(n[De]&8192)}}var m8=100;function $F(n,e=0){let t=n[go].rendererFactory,i=!1;i||t.begin?.();try{p8(n,e)}finally{i||t.end?.()}}function p8(n,e){let r=xA();try{ju(!0),_D(n,e);let t=0;for(;$u(n);){if(t===m8)throw new oe(103,!1);t++,_D(n,1)}}finally{ju(r)}}function E8(n,e,r,t){if(Bc(e))return;let i=e[De],o=!1,s=!1;qE(e);let a=!0,c=null,l=null;o||(BF(n)?(l=l8(e),c=Rc(l)):EE()===null?(a=!1,l=f8(e),c=Rc(l)):e[Ur]&&(Cc(e[Ur]),e[Ur]=null));try{SA(e),M0(n.bindingStartIndex),r!==null&&LF(n,e,r,2,t);let u=(i&3)===3;if(!o)if(u){let g=n.preOrderCheckHooks;g!==null&&i_(e,g,null)}else{let g=n.preOrderHooks;g!==null&&o_(e,g,0,null),jA(e,0)}if(s||_8(e),GF(e),jF(e,0),n.contentQueries!==null&&rF(n,e),!o)if(u){let g=n.contentCheckHooks;g!==null&&i_(e,g)}else{let g=n.contentHooks;g!==null&&o_(e,g,1),jA(e,1)}I8(n,e);let d=n.components;d!==null&&WF(e,d,0);let f=n.viewQuery;if(f!==null&&oD(2,f,t),!o)if(u){let g=n.viewCheckHooks;g!==null&&i_(e,g)}else{let g=n.viewHooks;g!==null&&o_(e,g,2),jA(e,2)}if(n.firstUpdatePass===!0&&(n.firstUpdatePass=!1),e[BE]){for(let g of e[BE])g();e[BE]=null}o||(UF(e),e[De]&=-73)}catch(u){throw o||na(e),u}finally{l!==null&&(Ou(l,c),a&&d8(l)),KE()}}function jF(n,e){for(let r=Yx(n);r!==null;r=Qx(r))for(let t=jt;t<r.length;t++){let i=r[t];HF(i,e)}}function _8(n){for(let e=Yx(n);e!==null;e=Qx(e)){if(!(e[De]&2))continue;let r=e[Vc];for(let t=0;t<r.length;t++){let i=r[t];$E(i)}}}function T8(n,e,r){lt(18);let t=ii(e,n);HF(t,r),lt(19,t[$t])}function HF(n,e){GE(n)&&_D(n,e)}function _D(n,e){let t=n[Te],i=n[De],o=n[Ur],s=!!(e===0&&i&16);if(s||=!!(i&64&&e===0),s||=!!(i&1024),s||=!!(o?.dirty&&wu(o)),s||=!1,o&&(o.dirty=!1),n[De]&=-9217,s)E8(t,n,t.template,n[$t]);else if(i&8192){let a=Ae(null);try{GF(n),jF(n,1);let c=t.components;c!==null&&WF(n,c,1),UF(n)}finally{Ae(a)}}}function WF(n,e,r){for(let t=0;t<e.length;t++)T8(n,e[t],r)}function I8(n,e){let r=n.hostBindingOpCodes;if(r!==null)try{for(let t=0;t<r.length;t++){let i=r[t];if(i<0)ra(~i);else{let o=i,s=r[++t],a=r[++t];x0(s,o);let c=e[o];lt(24,c),a(2,c),lt(25,c)}}}finally{ra(-1)}}function hR(n,e){let r=xA()?64:1088;for(n[go].changeDetectionScheduler?.notify(e);n;){n[De]|=r;let t=Qs(n);if(Gu(n)&&!t)return n;n=t}return null}function zF(n,e,r,t){return[n,!0,0,e,null,t,null,r,null,null]}function qF(n,e){let r=jt+e;if(r<n.length)return n[r]}function Kf(n,e,r,t=!0){let i=e[Te];if(v8(i,e,n,r),t){let s=ED(r,n),a=e[Ze],c=a.parentNode(n[ta]);c!==null&&Vq(i,n[sr],a,e,c,s)}let o=e[Pc];o!==null&&o.firstChild!==null&&(o.firstChild=null)}function KF(n,e){let r=$f(n,e);return r!==void 0&&k_(r[Te],r),r}function $f(n,e){if(n.length<=jt)return;let r=jt+e,t=n[r];if(t){let i=t[ea];i!==null&&i!==n&&oR(i,t),e>0&&(n[r-1][ti]=t[ti]);let o=Cf(n,jt+e);Uq(t[Te],t);let s=o[mo];s!==null&&s.detachView(o[Te]),t[fn]=null,t[ti]=null,t[De]&=-129}return t}function v8(n,e,r,t){let i=jt+t,o=r.length;t>0&&(r[i-1][ti]=e),t<o-jt?(e[ti]=r[i],lA(r,jt+t,e)):(r.push(e),e[ti]=null),e[fn]=r;let s=e[ea];s!==null&&r!==s&&YF(s,e);let a=e[mo];a!==null&&a.insertView(n),jE(e),e[De]|=128}function YF(n,e){let r=n[Vc],t=e[fn];if(po(t))n[De]|=2;else{let i=t[fn][Yn];e[Yn]!==i&&(n[De]|=2)}r===null?n[Vc]=[e]:r.push(e)}var oa=class{_lView;_cdRefInjectingView;_appRef=null;_attachedToViewContainer=!1;exhaustive;get rootNodes(){let e=this._lView,r=e[Te];return Gf(r,e,r.firstChild,[])}constructor(e,r){this._lView=e,this._cdRefInjectingView=r}get context(){return this._lView[$t]}set context(e){this._lView[$t]=e}get destroyed(){return Bc(this._lView)}destroy(){if(this._appRef)this._appRef.detachView(this);else if(this._attachedToViewContainer){let e=this._lView[fn];if(wi(e)){let r=e[bf],t=r?r.indexOf(this):-1;t>-1&&($f(e,t),Cf(r,t))}this._attachedToViewContainer=!1}k_(this._lView[Te],this._lView)}onDestroy(e){AA(this._lView,e)}markForCheck(){hR(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[De]&=-129}reattach(){jE(this._lView),this._lView[De]|=128}detectChanges(){this._lView[De]|=1024,$F(this._lView)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new oe(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let e=Gu(this._lView),r=this._lView[ea];r!==null&&!e&&oR(r,this._lView),CF(this._lView[Te],this._lView)}attachToAppRef(e){if(this._attachedToViewContainer)throw new oe(902,!1);this._appRef=e;let r=Gu(this._lView),t=this._lView[ea];t!==null&&!r&&YF(t,this._lView),jE(this._lView)}};function y8(n){return $u(n._lView)||!!(n._lView[De]&64)}function S8(n){$E(n._lView)}var yo=(()=>{class n{_declarationLView;_declarationTContainer;elementRef;static __NG_ELEMENT_ID__=A8;constructor(r,t,i){this._declarationLView=r,this._declarationTContainer=t,this.elementRef=i}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(r,t){return this.createEmbeddedViewImpl(r,t)}createEmbeddedViewImpl(r,t,i){let o=qf(this._declarationLView,this._declarationTContainer,r,{embeddedViewInjector:t,dehydratedView:i});return new oa(o)}}return n})();function A8(){return G_(gn(),ce())}function G_(n,e){return n.type&4?new yo(e,n,ad(n,e)):null}function Xc(n,e,r,t,i){let o=n.data[e];if(o===null)o=D8(n,e,r,t,i),P0()&&(o.flags|=32);else if(o.type&64){o.type=r,o.value=t,o.attrs=i;let s=L0();o.injectorIndex=s===null?-1:s.injectorIndex}return $c(o,!0),o}function D8(n,e,r,t,i){let o=bA(),s=LA(),a=s?o:o&&o.parent,c=n.data[e]=C8(n,a,r,e,t,i);return R8(n,c,o,s),c}function R8(n,e,r,t){n.firstChild===null&&(n.firstChild=e),r!==null&&(t?r.child==null&&e.parent!==null&&(r.child=e):r.next===null&&(r.next=e,e.prev=r))}function C8(n,e,r,t,i,o){let s=e?e.injectorIndex:-1,a=0;return NA()&&(a|=128),{type:r,index:t,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:i,attrs:o,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:e,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}var Rpe=new RegExp(`^(\\d+)*(${C4}|${R4})*(.*)`);function N8(n){let e=n[TA]??[],t=n[fn][Ze],i=[];for(let o of e)o.data[Zx]!==void 0?i.push(o):O8(o,t);n[TA]=i}function O8(n,e){let r=0,t=n.firstChild;if(t){let i=n.data[Jx];for(;r<i;){let o=t.nextSibling;hF(e,t,!1),t=o,r++}}}var w8=()=>null,b8=()=>null;function __(n,e){return w8(n,e)}function QF(n,e,r){return b8(n,e,r)}var XF=class{},$_=class{},TD=class{resolveComponentFactory(e){throw new oe(917,!1)}},Yf=class{static NULL=new TD},ds=class{},j_=(()=>{class n{destroyNode=null;static __NG_ELEMENT_ID__=()=>L8()}return n})();function L8(){let n=ce(),e=gn(),r=ii(e.index,n);return(po(r)?r:n)[Ze]}var JF=(()=>{class n{static \u0275prov=K({token:n,providedIn:"root",factory:()=>null})}return n})();var a_={},ID=class{injector;parentInjector;constructor(e,r){this.injector=e,this.parentInjector=r}get(e,r,t){let i=this.injector.get(e,a_,t);return i!==a_||r===a_?i:this.parentInjector.get(e,r,t)}};function T_(n,e,r){let t=r?n.styles:null,i=r?n.classes:null,o=0;if(e!==null)for(let s=0;s<e.length;s++){let a=e[s];if(typeof a=="number")o=a;else if(o==1)i=LE(i,a);else if(o==2){let c=a,l=e[++s];t=LE(t,c+": "+l+";")}}r?n.styles=t:n.stylesWithoutHost=t,r?n.classes=i:n.classesWithoutHost=i}function ut(n,e=0){let r=ce();if(r===null)return w(n,e);let t=gn();return jx(t,r,hn(n),e)}function M8(){let n="invalid";throw new Error(n)}function ZF(n,e,r,t,i){let o=t===null?null:{"":-1},s=i(n,r);if(s!==null){let a=s,c=null,l=null;for(let u of s)if(u.resolveHostDirectives!==null){[a,c,l]=u.resolveHostDirectives(s);break}F8(n,e,r,a,o,c,l)}o!==null&&t!==null&&P8(r,t,o)}function P8(n,e,r){let t=n.localNames=[];for(let i=0;i<e.length;i+=2){let o=r[e[i+1]];if(o==null)throw new oe(-301,!1);t.push(e[i],o)}}function x8(n,e,r){e.componentOffset=r,(n.components??=[]).push(e.index)}function F8(n,e,r,t,i,o,s){let a=t.length,c=!1;for(let f=0;f<a;f++){let g=t[f];!c&&bi(g)&&(c=!0,x8(n,r,f)),tD(f_(r,e),n,g.type)}$8(r,n.data.length,a);for(let f=0;f<a;f++){let g=t[f];g.providersResolver&&g.providersResolver(g)}let l=!1,u=!1,d=EF(n,e,a,null);a>0&&(r.directiveToIndex=new Map);for(let f=0;f<a;f++){let g=t[f];if(r.mergedAttrs=Yu(r.mergedAttrs,g.hostAttrs),U8(n,r,e,d,g),G8(d,g,i),s!==null&&s.has(g)){let[_,T]=s.get(g);r.directiveToIndex.set(g.type,[d,_+r.directiveStart,T+r.directiveStart])}else(o===null||!o.has(g))&&r.directiveToIndex.set(g.type,d);g.contentQueries!==null&&(r.flags|=4),(g.hostBindings!==null||g.hostAttrs!==null||g.hostVars!==0)&&(r.flags|=64);let p=g.type.prototype;!l&&(p.ngOnChanges||p.ngOnInit||p.ngDoCheck)&&((n.preOrderHooks??=[]).push(r.index),l=!0),!u&&(p.ngOnChanges||p.ngDoCheck)&&((n.preOrderCheckHooks??=[]).push(r.index),u=!0),d++}k8(n,r,o)}function k8(n,e,r){for(let t=e.directiveStart;t<e.directiveEnd;t++){let i=n.data[t];if(r===null||!r.has(i))fx(0,e,i,t),fx(1,e,i,t),mx(e,t,!1);else{let o=r.get(i);gx(0,e,o,t),gx(1,e,o,t),mx(e,t,!0)}}}function fx(n,e,r,t){let i=n===0?r.inputs:r.outputs;for(let o in i)if(i.hasOwnProperty(o)){let s;n===0?s=e.inputs??={}:s=e.outputs??={},s[o]??=[],s[o].push(t),ek(e,o)}}function gx(n,e,r,t){let i=n===0?r.inputs:r.outputs;for(let o in i)if(i.hasOwnProperty(o)){let s=i[o],a;n===0?a=e.hostDirectiveInputs??={}:a=e.hostDirectiveOutputs??={},a[s]??=[],a[s].push(t,o),ek(e,s)}}function ek(n,e){e==="class"?n.flags|=8:e==="style"&&(n.flags|=16)}function mx(n,e,r){let{attrs:t,inputs:i,hostDirectiveInputs:o}=n;if(t===null||!r&&i===null||r&&o===null||XD(n)){n.initialInputs??=[],n.initialInputs.push(null);return}let s=null,a=0;for(;a<t.length;){let c=t[a];if(c===0){a+=4;continue}else if(c===5){a+=2;continue}else if(typeof c=="number")break;if(!r&&i.hasOwnProperty(c)){let l=i[c];for(let u of l)if(u===e){s??=[],s.push(c,t[a+1]);break}}else if(r&&o.hasOwnProperty(c)){let l=o[c];for(let u=0;u<l.length;u+=2)if(l[u]===e){s??=[],s.push(l[u+1],t[a+1]);break}}a+=2}n.initialInputs??=[],n.initialInputs.push(s)}function U8(n,e,r,t,i){n.data[t]=i;let o=i.factory||(i.factory=Ys(i.type,!0)),s=new zc(o,bi(i),ut,null);n.blueprint[t]=s,r[t]=s,V8(n,e,t,EF(n,r,i.hostVars,Rn),i)}function V8(n,e,r,t,i){let o=i.hostBindings;if(o){let s=n.hostBindingOpCodes;s===null&&(s=n.hostBindingOpCodes=[]);let a=~e.index;B8(s)!=a&&s.push(a),s.push(r,t,o)}}function B8(n){let e=n.length;for(;e>0;){let r=n[--e];if(typeof r=="number"&&r<0)return r}return 0}function G8(n,e,r){if(r){if(e.exportAs)for(let t=0;t<e.exportAs.length;t++)r[e.exportAs[t]]=n;bi(e)&&(r[""]=n)}}function $8(n,e,r){n.flags|=1,n.directiveStart=e,n.directiveEnd=e+r,n.providerIndexes=e}function fR(n,e,r,t,i,o,s,a){let c=e[Te],l=c.consts,u=Vr(l,s),d=Xc(c,n,r,t,u);return o&&ZF(c,e,d,Vr(l,a),i),d.mergedAttrs=Yu(d.mergedAttrs,d.attrs),d.attrs!==null&&T_(d,d.attrs,!1),d.mergedAttrs!==null&&T_(d,d.mergedAttrs,!0),c.queries!==null&&c.queries.elementStart(c,d),d}function gR(n,e){xx(n,e),IA(e)&&n.queries.elementEnd(e)}function j8(n,e,r,t,i,o){let s=e.consts,a=Vr(s,i),c=Xc(e,n,r,t,a);if(c.mergedAttrs=Yu(c.mergedAttrs,c.attrs),o!=null){let l=Vr(s,o);c.localNames=[];for(let u=0;u<l.length;u+=2)c.localNames.push(l[u],-1)}return c.attrs!==null&&T_(c,c.attrs,!1),c.mergedAttrs!==null&&T_(c,c.mergedAttrs,!0),e.queries!==null&&e.queries.elementStart(e,c),c}function mR(n){return H_(n)?Array.isArray(n)||!(n instanceof Map)&&Symbol.iterator in n:!1}function tk(n,e){if(Array.isArray(n))for(let r=0;r<n.length;r++)e(n[r]);else{let r=n[Symbol.iterator](),t;for(;!(t=r.next()).done;)e(t.value)}}function H_(n){return n!==null&&(typeof n=="function"||typeof n=="object")}function Ao(n,e,r){return n[e]=r}function Qf(n,e){return n[e]}function Pn(n,e,r){if(r===Rn)return!1;let t=n[e];return Object.is(t,r)?!1:(n[e]=r,!0)}function Zu(n,e,r,t){let i=Pn(n,e,r);return Pn(n,e+1,t)||i}function pR(n,e,r,t,i){let o=Zu(n,e,r,t);return Pn(n,e+2,i)||o}function ed(n,e,r,t,i,o){let s=Zu(n,e,r,t);return Zu(n,e+2,i,o)||s}function c_(n,e,r){return function t(i){let o=as(n)?ii(n.index,e):e;hR(o,5);let s=e[$t],a=px(e,s,r,i),c=t.__ngNextListenerFn__;for(;c;)a=px(e,s,c,i)&&a,c=c.__ngNextListenerFn__;return a}}function px(n,e,r,t){let i=Ae(null);try{return lt(6,e,r),r(t)!==!1}catch(o){return o8(n,o),!1}finally{lt(7,e,r),Ae(i)}}function nk(n,e,r,t,i,o,s,a){let c=Bu(n),l=!1,u=null;if(!t&&c&&(u=W8(e,r,o,n.index)),u!==null){let d=u.__ngLastListenerFn__||u;d.__ngNextListenerFn__=s,u.__ngLastListenerFn__=s,l=!0}else{let d=ri(n,r),f=t?t(d):d;O4(r,f,o,a);let g=i.listen(f,o,a);if(!H8(o)){let p=t?_=>t(ni(_[n.index])):n.index;rk(p,e,r,o,a,g,!1)}}return l}function H8(n){return n.startsWith("animation")||n.startsWith("transition")}function W8(n,e,r,t){let i=n.cleanup;if(i!=null)for(let o=0;o<i.length-1;o+=2){let s=i[o];if(s===r&&i[o+1]===t){let a=e[Uu],c=i[o+2];return a&&a.length>c?a[c]:null}typeof s=="string"&&(o+=2)}return null}function rk(n,e,r,t,i,o,s){let a=e.firstCreatePass?RA(e):null,c=DA(r),l=c.length;c.push(i,o),a&&a.push(t,n,l,(l+1)*(s?-1:1))}function Ex(n,e,r,t,i,o){let s=e[r],a=e[Te],l=a.data[r].outputs[t],d=s[l].subscribe(o);rk(n.index,a,e,i,o,d,!0)}var vD=Symbol("BINDING");var I_=class extends Yf{ngModule;constructor(e){super(),this.ngModule=e}resolveComponentFactory(e){let r=Zs(e);return new td(r,this.ngModule)}};function z8(n){return Object.keys(n).map(e=>{let[r,t,i]=n[e],o={propName:r,templateName:e,isSignal:(t&x_.SignalBased)!==0};return i&&(o.transform=i),o})}function q8(n){return Object.keys(n).map(e=>({propName:n[e],templateName:e}))}function K8(n,e,r){let t=e instanceof Kn?e:e?.injector;return t&&n.getStandaloneInjector!==null&&(t=n.getStandaloneInjector(t)||t),t?new ID(r,t):r}function Y8(n){let e=n.get(ds,null);if(e===null)throw new oe(407,!1);let r=n.get(JF,null),t=n.get(ei,null);return{rendererFactory:e,sanitizer:r,changeDetectionScheduler:t,ngReflect:!1}}function Q8(n,e){let r=ik(n);return uF(e,r,r==="svg"?vA:r==="math"?y0:null)}function ik(n){return(n.selectors[0][0]||"div").toLowerCase()}var td=class extends $_{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=z8(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=q8(this.componentDef.outputs),this.cachedOutputs}constructor(e,r){super(),this.componentDef=e,this.ngModule=r,this.componentType=e.type,this.selector=Iq(e.selectors),this.ngContentSelectors=e.ngContentSelectors??[],this.isBoundToModule=!!r}create(e,r,t,i,o,s){lt(22);let a=Ae(null);try{let c=this.componentDef,l=X8(t,c,s,o),u=K8(c,i||this.ngModule,e),d=Y8(u),f=d.rendererFactory.createRenderer(null,c),g=t?Qq(f,t,c.encapsulation,u):Q8(c,f),p=s?.some(_x)||o?.some(D=>typeof D!="function"&&D.bindings.some(_x)),_=ZD(null,l,null,512|pF(c),null,null,d,f,u,null,nF(g,u,!0));_[et]=g,qE(_);let T=null;try{let D=fR(et,_,2,"#host",()=>l.directiveRegistry,!0,0);fF(f,g,D),Qu(g,_),V_(l,_,D),HD(l,D,_),gR(l,D),r!==void 0&&Z8(D,this.ngContentSelectors,r),T=ii(D.index,_),_[$t]=T[$t],dR(l,_,null)}catch(D){throw T!==null&&rD(T),rD(_),D}finally{lt(23),KE()}return new v_(this.componentType,_,!!p)}finally{Ae(a)}}};function X8(n,e,r,t){let i=n?["ng-version","20.3.18"]:vq(e.selectors[0]),o=null,s=null,a=0;if(r)for(let u of r)a+=u[vD].requiredVars,u.create&&(u.targetIdx=0,(o??=[]).push(u)),u.update&&(u.targetIdx=0,(s??=[]).push(u));if(t)for(let u=0;u<t.length;u++){let d=t[u];if(typeof d!="function")for(let f of d.bindings){a+=f[vD].requiredVars;let g=u+1;f.create&&(f.targetIdx=g,(o??=[]).push(f)),f.update&&(f.targetIdx=g,(s??=[]).push(f))}}let c=[e];if(t)for(let u of t){let d=typeof u=="function"?u:u.type,f=VE(d);c.push(f)}return JD(0,null,J8(o,s),1,a,c,null,null,null,[i],null)}function J8(n,e){return!n&&!e?null:r=>{if(r&1&&n)for(let t of n)t.create();if(r&2&&e)for(let t of e)t.update()}}function _x(n){let e=n[vD].kind;return e==="input"||e==="twoWay"}var v_=class extends XF{_rootLView;_hasInputBindings;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(e,r,t){super(),this._rootLView=r,this._hasInputBindings=t,this._tNode=Lf(r[Te],et),this.location=ad(this._tNode,r),this.instance=ii(this._tNode.index,r)[$t],this.hostView=this.changeDetectorRef=new oa(r,void 0),this.componentType=e}setInput(e,r){this._hasInputBindings;let t=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(e)&&Object.is(this.previousInputValues.get(e),r))return;let i=this._rootLView,o=B_(t,i[Te],i,e,r);this.previousInputValues.set(e,r);let s=ii(t.index,i);hR(s,1)}get injector(){return new Wc(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(e){this.hostView.onDestroy(e)}};function Z8(n,e,r){let t=n.projection=[];for(let i=0;i<e.length;i++){let o=r[i];t.push(o!=null&&o.length?Array.from(o):null)}}var Do=(()=>{class n{static __NG_ELEMENT_ID__=e5}return n})();function e5(){let n=gn();return sk(n,ce())}var t5=Do,ok=class extends t5{_lContainer;_hostTNode;_hostLView;constructor(e,r,t){super(),this._lContainer=e,this._hostTNode=r,this._hostLView=t}get element(){return ad(this._hostTNode,this._hostLView)}get injector(){return new Wc(this._hostTNode,this._hostLView)}get parentInjector(){let e=BD(this._hostTNode,this._hostLView);if(kx(e)){let r=d_(e,this._hostLView),t=u_(e),i=r[Te].data[t+8];return new Wc(i,r)}else return new Wc(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(e){let r=Tx(this._lContainer);return r!==null&&r[e]||null}get length(){return this._lContainer.length-jt}createEmbeddedView(e,r,t){let i,o;typeof t=="number"?i=t:t!=null&&(i=t.index,o=t.injector);let s=__(this._lContainer,e.ssrId),a=e.createEmbeddedViewImpl(r||{},o,s);return this.insertImpl(a,i,Ju(this._hostTNode,s)),a}createComponent(e,r,t,i,o,s,a){let c=e&&!Z6(e),l;if(c)l=r;else{let T=r||{};l=T.index,t=T.injector,i=T.projectableNodes,o=T.environmentInjector||T.ngModuleRef,s=T.directives,a=T.bindings}let u=c?e:new td(Zs(e)),d=t||this.parentInjector;if(!o&&u.ngModule==null){let D=(c?d:this.parentInjector).get(Kn,null);D&&(o=D)}let f=Zs(u.componentType??{}),g=__(this._lContainer,f?.id??null),p=g?.firstChild??null,_=u.create(d,i,p,o,s,a);return this.insertImpl(_.hostView,l,Ju(this._hostTNode,g)),_}insert(e,r){return this.insertImpl(e,r,!0)}insertImpl(e,r,t){let i=e._lView;if(A0(i)){let a=this.indexOf(e);if(a!==-1)this.detach(a);else{let c=i[fn],l=new ok(c,c[sr],c[fn]);l.detach(l.indexOf(e))}}let o=this._adjustIndex(r),s=this._lContainer;return Kf(s,i,o,t),e.attachToViewContainerRef(),lA(zA(s),o,e),e}move(e,r){return this.insert(e,r)}indexOf(e){let r=Tx(this._lContainer);return r!==null?r.indexOf(e):-1}remove(e){let r=this._adjustIndex(e,-1),t=$f(this._lContainer,r);t&&(Cf(zA(this._lContainer),r),k_(t[Te],t))}detach(e){let r=this._adjustIndex(e,-1),t=$f(this._lContainer,r);return t&&Cf(zA(this._lContainer),r)!=null?new oa(t):null}_adjustIndex(e,r=0){return e??this.length+r}};function Tx(n){return n[bf]}function zA(n){return n[bf]||(n[bf]=[])}function sk(n,e){let r,t=e[n.index];return wi(t)?r=t:(r=zF(t,e,null,n),e[n.index]=r,eR(e,r)),r5(r,e,n,t),new ok(r,n,e)}function n5(n,e){let r=n[Ze],t=r.createComment(""),i=ri(e,n),o=r.parentNode(i);return m_(r,o,t,r.nextSibling(i),!1),t}var r5=s5,i5=()=>!1;function o5(n,e,r){return i5(n,e,r)}function s5(n,e,r,t){if(n[ta])return;let i;r.type&8?i=ni(t):i=n5(e,r),n[ta]=i}var yD=class n{queryList;matches=null;constructor(e){this.queryList=e}clone(){return new n(this.queryList)}setDirty(){this.queryList.setDirty()}},SD=class n{queries;constructor(e=[]){this.queries=e}createEmbeddedView(e){let r=e.queries;if(r!==null){let t=e.contentQueries!==null?e.contentQueries[0]:r.length,i=[];for(let o=0;o<t;o++){let s=r.getByIndex(o),a=this.queries[s.indexInDeclarationView];i.push(a.clone())}return new n(i)}return null}insertView(e){this.dirtyQueriesWithMatches(e)}detachView(e){this.dirtyQueriesWithMatches(e)}finishViewCreation(e){this.dirtyQueriesWithMatches(e)}dirtyQueriesWithMatches(e){for(let r=0;r<this.queries.length;r++)_R(e,r).matches!==null&&this.queries[r].setDirty()}},y_=class{flags;read;predicate;constructor(e,r,t=null){this.flags=r,this.read=t,typeof e=="string"?this.predicate=h5(e):this.predicate=e}},AD=class n{queries;constructor(e=[]){this.queries=e}elementStart(e,r){for(let t=0;t<this.queries.length;t++)this.queries[t].elementStart(e,r)}elementEnd(e){for(let r=0;r<this.queries.length;r++)this.queries[r].elementEnd(e)}embeddedTView(e){let r=null;for(let t=0;t<this.length;t++){let i=r!==null?r.length:0,o=this.getByIndex(t).embeddedTView(e,i);o&&(o.indexInDeclarationView=t,r!==null?r.push(o):r=[o])}return r!==null?new n(r):null}template(e,r){for(let t=0;t<this.queries.length;t++)this.queries[t].template(e,r)}getByIndex(e){return this.queries[e]}get length(){return this.queries.length}track(e){this.queries.push(e)}},DD=class n{metadata;matches=null;indexInDeclarationView=-1;crossesNgTemplate=!1;_declarationNodeIndex;_appliesToNextNode=!0;constructor(e,r=-1){this.metadata=e,this._declarationNodeIndex=r}elementStart(e,r){this.isApplyingToNode(r)&&this.matchTNode(e,r)}elementEnd(e){this._declarationNodeIndex===e.index&&(this._appliesToNextNode=!1)}template(e,r){this.elementStart(e,r)}embeddedTView(e,r){return this.isApplyingToNode(e)?(this.crossesNgTemplate=!0,this.addMatch(-e.index,r),new n(this.metadata)):null}isApplyingToNode(e){if(this._appliesToNextNode&&(this.metadata.flags&1)!==1){let r=this._declarationNodeIndex,t=e.parent;for(;t!==null&&t.type&8&&t.index!==r;)t=t.parent;return r===(t!==null?t.index:-1)}return this._appliesToNextNode}matchTNode(e,r){let t=this.metadata.predicate;if(Array.isArray(t))for(let i=0;i<t.length;i++){let o=t[i];this.matchTNodeWithReadOption(e,r,a5(r,o)),this.matchTNodeWithReadOption(e,r,s_(r,e,o,!1,!1))}else t===yo?r.type&4&&this.matchTNodeWithReadOption(e,r,-1):this.matchTNodeWithReadOption(e,r,s_(r,e,t,!1,!1))}matchTNodeWithReadOption(e,r,t){if(t!==null){let i=this.metadata.read;if(i!==null)if(i===sa||i===Do||i===yo&&r.type&4)this.addMatch(r.index,-2);else{let o=s_(r,e,i,!1,!1);o!==null&&this.addMatch(r.index,o)}else this.addMatch(r.index,t)}}addMatch(e,r){this.matches===null?this.matches=[e,r]:this.matches.push(e,r)}};function a5(n,e){let r=n.localNames;if(r!==null){for(let t=0;t<r.length;t+=2)if(r[t]===e)return r[t+1]}return null}function c5(n,e){return n.type&11?ad(n,e):n.type&4?G_(n,e):null}function l5(n,e,r,t){return r===-1?c5(e,n):r===-2?u5(n,e,t):Bf(n,n[Te],r,e)}function u5(n,e,r){if(r===sa)return ad(e,n);if(r===yo)return G_(e,n);if(r===Do)return sk(e,n)}function ak(n,e,r,t){let i=e[mo].queries[t];if(i.matches===null){let o=n.data,s=r.matches,a=[];for(let c=0;s!==null&&c<s.length;c+=2){let l=s[c];if(l<0)a.push(null);else{let u=o[l];a.push(l5(e,u,s[c+1],r.metadata.read))}}i.matches=a}return i.matches}function RD(n,e,r,t){let i=n.queries.getByIndex(r),o=i.matches;if(o!==null){let s=ak(n,e,i,r);for(let a=0;a<o.length;a+=2){let c=o[a];if(c>0)t.push(s[a/2]);else{let l=o[a+1],u=e[-c];for(let d=jt;d<u.length;d++){let f=u[d];f[ea]===f[fn]&&RD(f[Te],f,l,t)}if(u[Vc]!==null){let d=u[Vc];for(let f=0;f<d.length;f++){let g=d[f];RD(g[Te],g,l,t)}}}}}return t}function ER(n,e){return n[mo].queries[e].queryList}function ck(n,e,r){let t=new g_((r&4)===4);return C0(n,e,t,t.destroy),(e[mo]??=new SD).queries.push(new yD(t))-1}function lk(n,e,r){let t=tt();return t.firstCreatePass&&(uk(t,new y_(n,e,r),-1),(e&2)===2&&(t.staticViewQueries=!0)),ck(t,ce(),e)}function d5(n,e,r,t){let i=tt();if(i.firstCreatePass){let o=gn();uk(i,new y_(e,r,t),o.index),f5(i,n),(r&2)===2&&(i.staticContentQueries=!0)}return ck(i,ce(),r)}function h5(n){return n.split(",").map(e=>e.trim())}function uk(n,e,r){n.queries===null&&(n.queries=new AD),n.queries.track(new DD(e,r))}function f5(n,e){let r=n.contentQueries||(n.contentQueries=[]),t=r.length?r[r.length-1]:-1;e!==t&&r.push(n.queries.length-1,e)}function _R(n,e){return n.queries.getByIndex(e)}function dk(n,e){let r=n[Te],t=_R(r,e);return t.crossesNgTemplate?RD(r,n,e,[]):ak(r,n,t,e)}function hk(n,e,r){let t,i=vf(()=>{t._dirtyCounter();let o=m5(t,n);if(e&&o===void 0)throw new oe(-951,!1);return o});return t=i[An],t._dirtyCounter=jc(0),t._flatValue=void 0,i}function fk(n){return hk(!0,!1,n)}function gk(n){return hk(!0,!0,n)}function g5(n,e){let r=n[An];r._lView=ce(),r._queryIndex=e,r._queryList=ER(r._lView,e),r._queryList.onDirty(()=>r._dirtyCounter.update(t=>t+1))}function m5(n,e){let r=n._lView,t=n._queryIndex;if(r===void 0||t===void 0||r[De]&4)return e?void 0:qn;let i=ER(r,t),o=dk(r,t);return i.reset(o,zx),e?i.first:i._changesDetected||n._flatValue===void 0?n._flatValue=i.toArray():n._flatValue}function mk(n){let e=[],r=new Map;function t(i){let o=r.get(i);if(!o){let s=n(i);r.set(i,o=s.then(a=>E5(i,a)))}return o}return S_.forEach((i,o)=>{let s=[];i.templateUrl&&s.push(t(i.templateUrl).then(l=>{i.template=l}));let a=typeof i.styles=="string"?[i.styles]:i.styles||[];if(i.styles=a,i.styleUrl&&i.styleUrls?.length)throw new Error("@Component cannot define both `styleUrl` and `styleUrls`. Use `styleUrl` if the component has one stylesheet, or `styleUrls` if it has multiple");if(i.styleUrls?.length){let l=i.styles.length,u=i.styleUrls;i.styleUrls.forEach((d,f)=>{a.push(""),s.push(t(d).then(g=>{a[l+f]=g,u.splice(u.indexOf(d),1),u.length==0&&(i.styleUrls=void 0)}))})}else i.styleUrl&&s.push(t(i.styleUrl).then(l=>{a.push(l),i.styleUrl=void 0}));let c=Promise.all(s).then(()=>_5(o));e.push(c)}),pk(),Promise.all(e).then(()=>{})}var S_=new Map,p5=new Set;function pk(){let n=S_;return S_=new Map,n}function Ek(){return S_.size===0}function E5(n,e){return typeof e=="string"?e:e.status!==void 0&&e.status!==200?Promise.reject(new oe(918,!1)):e.text()}function _5(n){p5.delete(n)}var Kc=class{},_k=class{};function Tk(n,e){return new nd(n,e??null,[])}var nd=class extends Kc{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];componentFactoryResolver=new I_(this);constructor(e,r,t,i=!0){super(),this.ngModuleType=e,this._parent=r;let o=p0(e);this._bootstrapComponents=lq(o.bootstrap),this._r3Injector=VA(e,r,[{provide:Kc,useValue:this},{provide:Yf,useValue:this.componentFactoryResolver},...t],rs(e),new Set(["environment"])),i&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(r=>r()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}},A_=class extends _k{moduleType;constructor(e){super(),this.moduleType=e}create(e){return new nd(this.moduleType,e,[])}};function Ik(n,e,r){return new nd(n,e,r,!1)}var D_=class extends Kc{injector;componentFactoryResolver=new I_(this);instance=null;constructor(e){super();let r=new Lc([...e.providers,{provide:Kc,useValue:this},{provide:Yf,useValue:this.componentFactoryResolver}],e.parent||ku(),e.debugName,new Set(["environment"]));this.injector=r,e.runEnvironmentInitializers&&r.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(e){this.injector.onDestroy(e)}};function vk(n,e,r=null){return new D_({providers:n,parent:e,debugName:r,runEnvironmentInitializers:!0}).injector}var T5=(()=>{class n{_injector;cachedInjectors=new Map;constructor(r){this._injector=r}getOrCreateStandaloneInjector(r){if(!r.standalone)return null;if(!this.cachedInjectors.has(r)){let t=fA(!1,r.type),i=t.length>0?vk([t],this._injector,`Standalone[${r.type.name}]`):null;this.cachedInjectors.set(r,i)}return this.cachedInjectors.get(r)}ngOnDestroy(){try{for(let r of this.cachedInjectors.values())r!==null&&r.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=K({token:n,providedIn:"environment",factory:()=>new n(w(Kn))})}return n})();function I5(n){return sd(()=>{let e=Sk(n),r=le(x({},e),{decls:n.decls,vars:n.vars,template:n.template,consts:n.consts||null,ngContentSelectors:n.ngContentSelectors,onPush:n.changeDetection===GD.OnPush,directiveDefs:null,pipeDefs:null,dependencies:e.standalone&&n.dependencies||null,getStandaloneInjector:e.standalone?i=>i.get(T5).getOrCreateStandaloneInjector(r):null,getExternalStyles:null,signals:n.signals??!1,data:n.data||{},encapsulation:n.encapsulation||ls.Emulated,styles:n.styles||qn,_:null,schemas:n.schemas||null,tView:null,id:""});e.standalone&&gs("NgStandalone"),Ak(r);let t=n.dependencies;return r.directiveDefs=R_(t,yk),r.pipeDefs=R_(t,hA),r.id=S5(r),r})}function yk(n){return Zs(n)||VE(n)}function aa(n){return sd(()=>({type:n.type,bootstrap:n.bootstrap||qn,declarations:n.declarations||qn,imports:n.imports||qn,exports:n.exports||qn,transitiveCompileScopes:null,schemas:n.schemas||null,id:n.id||null}))}function v5(n,e){if(n==null)return Ni;let r={};for(let t in n)if(n.hasOwnProperty(t)){let i=n[t],o,s,a,c;Array.isArray(i)?(a=i[0],o=i[1],s=i[2]??o,c=i[3]||null):(o=i,s=i,a=x_.None,c=null),r[o]=[t,a,c],e[o]=s}return r}function y5(n){if(n==null)return Ni;let e={};for(let r in n)n.hasOwnProperty(r)&&(e[n[r]]=r);return e}function Ro(n){return sd(()=>{let e=Sk(n);return Ak(e),e})}function Xf(n){return{type:n.type,name:n.name,factory:null,pure:n.pure!==!1,standalone:n.standalone??!0,onDestroy:n.type.prototype.ngOnDestroy||null}}function Sk(n){let e={};return{type:n.type,providersResolver:null,factory:null,hostBindings:n.hostBindings||null,hostVars:n.hostVars||0,hostAttrs:n.hostAttrs||null,contentQueries:n.contentQueries||null,declaredInputs:e,inputConfig:n.inputs||Ni,exportAs:n.exportAs||null,standalone:n.standalone??!0,signals:n.signals===!0,selectors:n.selectors||qn,viewQuery:n.viewQuery||null,features:n.features||null,setInput:null,resolveHostDirectives:null,hostDirectives:null,inputs:v5(n.inputs,e),outputs:y5(n.outputs),debugInfo:null}}function Ak(n){n.features?.forEach(e=>e(n))}function R_(n,e){return n?()=>{let r=typeof n=="function"?n():n,t=[];for(let i of r){let o=e(i);o!==null&&t.push(o)}return t}:null}function S5(n){let e=0,r=typeof n.consts=="function"?"":n.consts,t=[n.selectors,n.ngContentSelectors,n.hostVars,n.hostAttrs,r,n.vars,n.decls,n.encapsulation,n.standalone,n.signals,n.exportAs,JSON.stringify(n.inputs),JSON.stringify(n.outputs),Object.getOwnPropertyNames(n.type.prototype),!!n.contentQueries,!!n.viewQuery];for(let o of t.join("|"))e=Math.imul(31,e)+o.charCodeAt(0)<<0;return e+=2147483648,"c"+e}function A5(n){return Object.getPrototypeOf(n.prototype).constructor}function Dk(n){let e=A5(n.type),r=!0,t=[n];for(;e;){let i;if(bi(n))i=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new oe(903,!1);i=e.\u0275dir}if(i){if(r){t.push(i);let s=n;s.inputs=qA(n.inputs),s.declaredInputs=qA(n.declaredInputs),s.outputs=qA(n.outputs);let a=i.hostBindings;a&&O5(n,a);let c=i.viewQuery,l=i.contentQueries;if(c&&C5(n,c),l&&N5(n,l),D5(n,i),a0(n.outputs,i.outputs),bi(i)&&i.data.animation){let u=n.data;u.animation=(u.animation||[]).concat(i.data.animation)}}let o=i.features;if(o)for(let s=0;s<o.length;s++){let a=o[s];a&&a.ngInherit&&a(n),a===Dk&&(r=!1)}}e=Object.getPrototypeOf(e)}R5(t)}function D5(n,e){for(let r in e.inputs){if(!e.inputs.hasOwnProperty(r)||n.inputs.hasOwnProperty(r))continue;let t=e.inputs[r];t!==void 0&&(n.inputs[r]=t,n.declaredInputs[r]=e.declaredInputs[r])}}function R5(n){let e=0,r=null;for(let t=n.length-1;t>=0;t--){let i=n[t];i.hostVars=e+=i.hostVars,i.hostAttrs=Yu(i.hostAttrs,r=Yu(r,i.hostAttrs))}}function qA(n){return n===Ni?{}:n===qn?[]:n}function C5(n,e){let r=n.viewQuery;r?n.viewQuery=(t,i)=>{e(t,i),r(t,i)}:n.viewQuery=e}function N5(n,e){let r=n.contentQueries;r?n.contentQueries=(t,i,o)=>{e(t,i,o),r(t,i,o)}:n.contentQueries=e}function O5(n,e){let r=n.hostBindings;r?n.hostBindings=(t,i)=>{e(t,i),r(t,i)}:n.hostBindings=e}function w5(n){let e=r=>{let t=Array.isArray(n);r.hostDirectives===null?(r.resolveHostDirectives=b5,r.hostDirectives=t?n.map(CD):[n]):t?r.hostDirectives.unshift(...n.map(CD)):r.hostDirectives.unshift(n)};return e.ngInherit=!0,e}function b5(n){let e=[],r=!1,t=null,i=null;for(let o=0;o<n.length;o++){let s=n[o];if(s.hostDirectives!==null){let a=e.length;t??=new Map,i??=new Map,Rk(s,e,t),i.set(s,[a,e.length-1])}o===0&&bi(s)&&(r=!0,e.push(s))}for(let o=r?1:0;o<n.length;o++)e.push(n[o]);return[e,t,i]}function Rk(n,e,r){if(n.hostDirectives!==null)for(let t of n.hostDirectives)if(typeof t=="function"){let i=t();for(let o of i)Ix(CD(o),e,r)}else Ix(t,e,r)}function Ix(n,e,r){let t=VE(n.directive);L5(t.declaredInputs,n.inputs),Rk(t,e,r),r.set(t,n),e.push(t)}function CD(n){return typeof n=="function"?{directive:hn(n),inputs:Ni,outputs:Ni}:{directive:hn(n.directive),inputs:vx(n.inputs),outputs:vx(n.outputs)}}function vx(n){if(n===void 0||n.length===0)return Ni;let e={};for(let r=0;r<n.length;r+=2)e[n[r]]=n[r+1];return e}function L5(n,e){for(let r in e)if(e.hasOwnProperty(r)){let t=e[r],i=n[r];n[t]=i}}function Ck(n,e,r,t,i,o,s,a){if(r.firstCreatePass){n.mergedAttrs=Yu(n.mergedAttrs,n.attrs);let u=n.tView=JD(2,n,i,o,s,r.directiveRegistry,r.pipeRegistry,null,r.schemas,r.consts,null);r.queries!==null&&(r.queries.template(r,n),u.queries=r.queries.embeddedTView(n))}a&&(n.flags|=a),$c(n,!1);let c=P5(r,e,n,t);YE()&&sR(r,e,c,n),Qu(c,e);let l=zF(c,e,c,n);e[t+et]=l,eR(e,l),o5(l,n,e)}function M5(n,e,r,t,i,o,s,a,c,l,u){let d=r+et,f;return e.firstCreatePass?(f=Xc(e,d,4,s||null,a||null),HE()&&ZF(e,n,f,Vr(e.consts,l),cR),xx(e,f)):f=e.data[d],Ck(f,n,e,r,t,i,o,c),Bu(f)&&V_(e,n,f),l!=null&&zf(n,f,u),f}function rd(n,e,r,t,i,o,s,a,c,l,u){let d=r+et,f;if(e.firstCreatePass){if(f=Xc(e,d,4,s||null,a||null),l!=null){let g=Vr(e.consts,l);f.localNames=[];for(let p=0;p<g.length;p+=2)f.localNames.push(g[p],-1)}}else f=e.data[d];return Ck(f,n,e,r,t,i,o,c),l!=null&&zf(n,f,u),f}function Nk(n,e,r,t,i,o,s,a){let c=ce(),l=tt(),u=Vr(l.consts,o);return M5(c,l,n,e,r,t,i,u,void 0,s,a),Nk}function Ok(n,e,r,t,i,o,s,a){let c=ce(),l=tt(),u=Vr(l.consts,o);return rd(c,l,n,e,r,t,i,u,void 0,s,a),Ok}var P5=x5;function x5(n,e,r,t){return Ff(!0),e[Ze].createComment("")}var W_=new Z(""),ld=new Z(""),Jf=(()=>{class n{_ngZone;registry;_isZoneStable=!0;_callbacks=[];_taskTrackingZone=null;_destroyRef;constructor(r,t,i){this._ngZone=r,this.registry=t,pA()&&(this._destroyRef=ne(cr,{optional:!0})??void 0),TR||(wk(i),i.addToWindow(t)),this._watchAngularEvents(),r.run(()=>{this._taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){let r=this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),t=this._ngZone.runOutsideAngular(()=>this._ngZone.onStable.subscribe({next:()=>{Le.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}}));this._destroyRef?.onDestroy(()=>{r.unsubscribe(),t.unsubscribe()})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;this._callbacks.length!==0;){let r=this._callbacks.pop();clearTimeout(r.timeoutId),r.doneCb()}});else{let r=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>t.updateCb&&t.updateCb(r)?(clearTimeout(t.timeoutId),!1):!0)}}getPendingTasks(){return this._taskTrackingZone?this._taskTrackingZone.macroTasks.map(r=>({source:r.source,creationLocation:r.creationLocation,data:r.data})):[]}addCallback(r,t,i){let o=-1;t&&t>0&&(o=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==o),r()},t)),this._callbacks.push({doneCb:r,timeoutId:o,updateCb:i})}whenStable(r,t,i){if(i&&!this._taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(r,t,i),this._runCallbacksIfReady()}registerApplication(r){this.registry.registerApplication(r,this)}unregisterApplication(r){this.registry.unregisterApplication(r)}findProviders(r,t,i){return[]}static \u0275fac=function(t){return new(t||n)(w(Le),w(Zf),w(ld))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),Zf=(()=>{class n{_applications=new Map;registerApplication(r,t){this._applications.set(r,t)}unregisterApplication(r){this._applications.delete(r)}unregisterAllApplications(){this._applications.clear()}getTestability(r){return this._applications.get(r)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(r,t=!0){return TR?.findTestabilityInTree(this,r,t)??null}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"platform"})}return n})();function wk(n){TR=n}var TR;function z_(n){return!!n&&typeof n.then=="function"}function IR(n){return!!n&&typeof n.subscribe=="function"}var bk=new Z("");var vR=(()=>{class n{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((r,t)=>{this.resolve=r,this.reject=t});appInits=ne(bk,{optional:!0})??[];injector=ne(St);constructor(){}runInitializers(){if(this.initialized)return;let r=[];for(let i of this.appInits){let o=fo(this.injector,i);if(z_(o))r.push(o);else if(IR(o)){let s=new Promise((a,c)=>{o.subscribe({complete:a,error:c})});r.push(s)}}let t=()=>{this.done=!0,this.resolve()};Promise.all(r).then(()=>{t()}).catch(i=>{this.reject(i)}),r.length===0&&t(),this.initialized=!0}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),Lk=new Z("");function Mk(){xS(()=>{let n="";throw new oe(600,n)})}function Pk(n){return n.isBoundToModule}var F5=10;function yR(n,e){return Array.isArray(e)?e.reduce(yR,n):x(x({},n),e)}var ca=(()=>{class n{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=ne(_o);afterRenderManager=ne(iR);zonelessEnabled=ne(zu);rootEffectScheduler=ne(kf);dirtyFlags=0;tracingSnapshot=null;allTestViews=new Set;autoDetectTestViews=new Set;includeAllTestViews=!1;afterTick=new Ot;get allViews(){return[...(this.includeAllTestViews?this.allTestViews:this.autoDetectTestViews).keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];internalPendingTask=ne(ia);get isStable(){return this.internalPendingTask.hasPendingTasksObservable.pipe(fe(r=>!r))}constructor(){ne(Qc,{optional:!0})}whenStable(){let r;return new Promise(t=>{r=this.isStable.subscribe({next:i=>{i&&t()}})}).finally(()=>{r.unsubscribe()})}_injector=ne(Kn);_rendererFactory=null;get injector(){return this._injector}bootstrap(r,t){return this.bootstrapImpl(r,t)}bootstrapImpl(r,t,i=St.NULL){return this._injector.get(Le).run(()=>{lt(10);let s=r instanceof $_;if(!this._injector.get(vR).done){let p="";throw new oe(405,p)}let c;s?c=r:c=this._injector.get(Yf).resolveComponentFactory(r),this.componentTypes.push(c.componentType);let l=Pk(c)?void 0:this._injector.get(Kc),u=t||c.selector,d=c.create(i,[],u,l),f=d.location.nativeElement,g=d.injector.get(W_,null);return g?.registerApplication(f),d.onDestroy(()=>{this.detachView(d.hostView),Vf(this.components,d),g?.unregisterApplication(f)}),this._loadComponent(d),lt(11,d),d})}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){lt(12),this.tracingSnapshot!==null?this.tracingSnapshot.run(F_.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw new oe(101,!1);let r=Ae(null);try{this._runningTick=!0,this.synchronize()}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,Ae(r),this.afterTick.next(),lt(13)}};synchronize(){this._rendererFactory===null&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get(ds,null,{optional:!0}));let r=0;for(;this.dirtyFlags!==0&&r++<F5;)lt(14),this.synchronizeOnce(),lt(15)}synchronizeOnce(){this.dirtyFlags&16&&(this.dirtyFlags&=-17,this.rootEffectScheduler.flush());let r=!1;if(this.dirtyFlags&7){let t=!!(this.dirtyFlags&1);this.dirtyFlags&=-8,this.dirtyFlags|=8;for(let{_lView:i}of this.allViews){if(!t&&!$u(i))continue;let o=t&&!this.zonelessEnabled?0:1;$F(i,o),r=!0}if(this.dirtyFlags&=-5,this.syncDirtyFlagsWithViews(),this.dirtyFlags&23)return}r||(this._rendererFactory?.begin?.(),this._rendererFactory?.end?.()),this.dirtyFlags&8&&(this.dirtyFlags&=-9,this.afterRenderManager.execute()),this.syncDirtyFlagsWithViews()}syncDirtyFlagsWithViews(){if(this.allViews.some(({_lView:r})=>$u(r))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(r){let t=r;this._views.push(t),t.attachToAppRef(this)}detachView(r){let t=r;Vf(this._views,t),t.detachFromAppRef()}_loadComponent(r){this.attachView(r.hostView);try{this.tick()}catch(i){this.internalErrorHandler(i)}this.components.push(r),this._injector.get(Lk,[]).forEach(i=>i(r))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(r=>r()),this._views.slice().forEach(r=>r.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(r){return this._destroyListeners.push(r),()=>Vf(this._destroyListeners,r)}destroy(){if(this._destroyed)throw new oe(406,!1);let r=this._injector;r.destroy&&!r.destroyed&&r.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function Vf(n,e){let r=n.indexOf(e);r>-1&&n.splice(r,1)}function xk(n,e){let r=ce(),t=Eo();if(Pn(r,t,e)){let i=tt(),o=Hu();if(B_(o,i,r,n,e))as(o)&&xF(r,o.index);else{let a=ri(o,r);FF(r[Ze],a,null,o.value,n,e,null)}}return xk}function Fk(n,e,r,t){let i=ce(),o=Eo();if(Pn(i,o,e)){let s=tt(),a=Hu();r8(a,i,n,e,r,t)}return Fk}var Mpe=typeof document<"u"&&typeof document?.documentElement?.getAnimations=="function";function k5(){return ce()[Yn][$t]}var ND=class{destroy(e){}updateValue(e,r){}swap(e,r){let t=Math.min(e,r),i=Math.max(e,r),o=this.detach(i);if(i-t>1){let s=this.detach(t);this.attach(t,o),this.attach(i,s)}else this.attach(t,o)}move(e,r){this.attach(r,this.detach(e))}};function KA(n,e,r,t,i){return n===r&&Object.is(e,t)?1:Object.is(i(n,e),i(r,t))?-1:0}function U5(n,e,r){let t,i,o=0,s=n.length-1,a=void 0;if(Array.isArray(e)){let c=e.length-1;for(;o<=s&&o<=c;){let l=n.at(o),u=e[o],d=KA(o,l,o,u,r);if(d!==0){d<0&&n.updateValue(o,u),o++;continue}let f=n.at(s),g=e[c],p=KA(s,f,c,g,r);if(p!==0){p<0&&n.updateValue(s,g),s--,c--;continue}let _=r(o,l),T=r(s,f),D=r(o,u);if(Object.is(D,T)){let b=r(c,g);Object.is(b,_)?(n.swap(o,s),n.updateValue(s,g),c--,s--):n.move(s,o),n.updateValue(o,u),o++;continue}if(t??=new C_,i??=Sx(n,o,s,r),OD(n,t,o,D))n.updateValue(o,u),o++,s++;else if(i.has(D))t.set(_,n.detach(o)),s--;else{let b=n.create(o,e[o]);n.attach(o,b),o++,s++}}for(;o<=c;)yx(n,t,r,o,e[o]),o++}else if(e!=null){let c=e[Symbol.iterator](),l=c.next();for(;!l.done&&o<=s;){let u=n.at(o),d=l.value,f=KA(o,u,o,d,r);if(f!==0)f<0&&n.updateValue(o,d),o++,l=c.next();else{t??=new C_,i??=Sx(n,o,s,r);let g=r(o,d);if(OD(n,t,o,g))n.updateValue(o,d),o++,s++,l=c.next();else if(!i.has(g))n.attach(o,n.create(o,d)),o++,s++,l=c.next();else{let p=r(o,u);t.set(p,n.detach(o)),s--}}}for(;!l.done;)yx(n,t,r,n.length,l.value),l=c.next()}for(;o<=s;)n.destroy(n.detach(s--));t?.forEach(c=>{n.destroy(c)})}function OD(n,e,r,t){return e!==void 0&&e.has(t)?(n.attach(r,e.get(t)),e.delete(t),!0):!1}function yx(n,e,r,t,i){if(OD(n,e,t,r(t,i)))n.updateValue(t,i);else{let o=n.create(t,i);n.attach(t,o)}}function Sx(n,e,r,t){let i=new Set;for(let o=e;o<=r;o++)i.add(t(o,n.at(o)));return i}var C_=class{kvMap=new Map;_vMap=void 0;has(e){return this.kvMap.has(e)}delete(e){if(!this.has(e))return!1;let r=this.kvMap.get(e);return this._vMap!==void 0&&this._vMap.has(r)?(this.kvMap.set(e,this._vMap.get(r)),this._vMap.delete(r)):this.kvMap.delete(e),!0}get(e){return this.kvMap.get(e)}set(e,r){if(this.kvMap.has(e)){let t=this.kvMap.get(e);this._vMap===void 0&&(this._vMap=new Map);let i=this._vMap;for(;i.has(t);)t=i.get(t);i.set(t,r)}else this.kvMap.set(e,r)}forEach(e){for(let[r,t]of this.kvMap)if(e(t,r),this._vMap!==void 0){let i=this._vMap;for(;i.has(t);)t=i.get(t),e(t,r)}}};function V5(n,e,r,t,i,o,s,a){gs("NgControlFlow");let c=ce(),l=tt(),u=Vr(l.consts,o);return rd(c,l,n,e,r,t,i,u,256,s,a),SR}function SR(n,e,r,t,i,o,s,a){gs("NgControlFlow");let c=ce(),l=tt(),u=Vr(l.consts,o);return rd(c,l,n,e,r,t,i,u,512,s,a),SR}function B5(n,e){gs("NgControlFlow");let r=ce(),t=Eo(),i=r[t]!==Rn?r[t]:-1,o=i!==-1?N_(r,et+i):void 0,s=0;if(Pn(r,t,n)){let a=Ae(null);try{if(o!==void 0&&KF(o,s),n!==-1){let c=et+n,l=N_(r,c),u=MD(r[Te],c),d=QF(l,u,r),f=qf(r,u,e,{dehydratedView:d});Kf(l,f,s,Ju(u,d))}}finally{Ae(a)}}else if(o!==void 0){let a=qF(o,s);a!==void 0&&(a[$t]=e)}}var wD=class{lContainer;$implicit;$index;constructor(e,r,t){this.lContainer=e,this.$implicit=r,this.$index=t}get $count(){return this.lContainer.length-jt}};function G5(n){return n}function $5(n,e){return e}var bD=class{hasEmptyBlock;trackByFn;liveCollection;constructor(e,r,t){this.hasEmptyBlock=e,this.trackByFn=r,this.liveCollection=t}};function j5(n,e,r,t,i,o,s,a,c,l,u,d,f){gs("NgControlFlow");let g=ce(),p=tt(),_=c!==void 0,T=ce(),D=a?s.bind(T[Yn][$t]):s,b=new bD(_,D);T[et+n]=b,rd(g,p,n+1,e,r,t,i,Vr(p.consts,o),256),_&&rd(g,p,n+2,c,l,u,d,Vr(p.consts,f),512)}var LD=class extends ND{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(e,r,t){super(),this.lContainer=e,this.hostLView=r,this.templateTNode=t}get length(){return this.lContainer.length-jt}at(e){return this.getLView(e)[$t].$implicit}attach(e,r){let t=r[Pc];this.needsIndexUpdate||=e!==this.length,Kf(this.lContainer,r,e,Ju(this.templateTNode,t)),W5(this.lContainer,e)}detach(e){return this.needsIndexUpdate||=e!==this.length-1,z5(this.lContainer,e),q5(this.lContainer,e)}create(e,r){let t=__(this.lContainer,this.templateTNode.tView.ssrId),i=qf(this.hostLView,this.templateTNode,new wD(this.lContainer,r,e),{dehydratedView:t});return this.operationsCounter?.recordCreate(),i}destroy(e){k_(e[Te],e),this.operationsCounter?.recordDestroy()}updateValue(e,r){this.getLView(e)[$t].$implicit=r}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let e=0;e<this.length;e++)this.getLView(e)[$t].$index=e}getLView(e){return K5(this.lContainer,e)}};function H5(n){let e=Ae(null),r=oi();try{let t=ce(),i=t[Te],o=t[r],s=r+1,a=N_(t,s);if(o.liveCollection===void 0){let l=MD(i,s);o.liveCollection=new LD(a,t,l)}else o.liveCollection.reset();let c=o.liveCollection;if(U5(c,n,o.trackByFn),c.updateIndexes(),o.hasEmptyBlock){let l=Eo(),u=c.length===0;if(Pn(t,l,u)){let d=r+2,f=N_(t,d);if(u){let g=MD(i,d),p=QF(f,g,t),_=qf(t,g,void 0,{dehydratedView:p});Kf(f,_,0,Ju(g,p))}else i.firstUpdatePass&&N8(f),KF(f,0)}}}finally{Ae(e)}}function N_(n,e){return n[e]}function W5(n,e){if(n.length<=jt)return;let r=jt+e,t=n[r],i=t?t[Uc]:void 0;if(t&&i&&i.detachedLeaveAnimationFns&&i.detachedLeaveAnimationFns.length>0){let o=t[os];Fq(o,i),qc.delete(t),i.detachedLeaveAnimationFns=void 0}}function z5(n,e){if(n.length<=jt)return;let r=jt+e,t=n[r],i=t?t[Uc]:void 0;i&&i.leave&&i.leave.size>0&&(i.detachedLeaveAnimationFns=[])}function q5(n,e){return $f(n,e)}function K5(n,e){return qF(n,e)}function MD(n,e){return Lf(n,e)}function kk(n,e,r){let t=ce(),i=Eo();if(Pn(t,i,e)){let o=tt(),s=Hu();MF(s,t,n,e,t[Ze],r)}return kk}function PD(n,e,r,t,i){B_(e,n,r,i?"class":"style",t)}function AR(n,e,r,t){let i=ce(),o=i[Te],s=n+et,a=o.firstCreatePass?fR(s,i,2,e,cR,HE(),r,t):o.data[s];if(lR(a,i,n,e,Bk),Bu(a)){let c=i[Te];V_(c,i,a),HD(c,a,i)}return t!=null&&zf(i,a),AR}function DR(){let n=tt(),e=gn(),r=uR(e);return n.firstCreatePass&&gR(n,r),OA(r)&&wA(),CA(),r.classesWithoutHost!=null&&o4(r)&&PD(n,r,ce(),r.classesWithoutHost,!0),r.stylesWithoutHost!=null&&s4(r)&&PD(n,r,ce(),r.stylesWithoutHost,!1),DR}function Uk(n,e,r,t){return AR(n,e,r,t),DR(),Uk}function RR(n,e,r,t){let i=ce(),o=i[Te],s=n+et,a=o.firstCreatePass?j8(s,o,2,e,r,t):o.data[s];return lR(a,i,n,e,Bk),t!=null&&zf(i,a),RR}function CR(){let n=gn(),e=uR(n);return OA(e)&&wA(),CA(),CR}function Vk(n,e,r,t){return RR(n,e,r,t),CR(),Vk}var Bk=(n,e,r,t,i)=>(Ff(!0),uF(e[Ze],t,H0()));function NR(n,e,r){let t=ce(),i=t[Te],o=n+et,s=i.firstCreatePass?fR(o,t,8,"ng-container",cR,HE(),e,r):i.data[o];if(lR(s,t,n,"ng-container",Y5),Bu(s)){let a=t[Te];V_(a,t,s),HD(a,s,t)}return r!=null&&zf(t,s),NR}function OR(){let n=tt(),e=gn(),r=uR(e);return n.firstCreatePass&&gR(n,r),OR}function Gk(n,e,r){return NR(n,e,r),OR(),Gk}var Y5=(n,e,r,t,i)=>(Ff(!0),tq(e[Ze],""));function Q5(){return ce()}function $k(n,e,r){let t=ce(),i=Eo();if(Pn(t,i,e)){let o=tt(),s=Hu();PF(s,t,n,e,t[Ze],r)}return $k}var t_=void 0;function X5(n){let e=Math.floor(Math.abs(n)),r=n.toString().replace(/^[^.]*\.?/,"").length;return e===1&&r===0?1:5}var J5=["en",[["a","p"],["AM","PM"]],[["AM","PM"]],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],t_,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],t_,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",t_,"{1} 'at' {0}",t_],[".",",",";","%","+","-","E","\xD7","\u2030","\u221E","NaN",":"],["#,##0.###","#,##0%","\xA4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",X5],YA={};function Gr(n){let e=Z5(n),r=Ax(e);if(r)return r;let t=e.split("-")[0];if(r=Ax(t),r)return r;if(t==="en")return J5;throw new oe(701,!1)}function Ax(n){return n in YA||(YA[n]=tn.ng&&tn.ng.common&&tn.ng.common.locales&&tn.ng.common.locales[n]),YA[n]}var Yt=(function(n){return n[n.LocaleId=0]="LocaleId",n[n.DayPeriodsFormat=1]="DayPeriodsFormat",n[n.DayPeriodsStandalone=2]="DayPeriodsStandalone",n[n.DaysFormat=3]="DaysFormat",n[n.DaysStandalone=4]="DaysStandalone",n[n.MonthsFormat=5]="MonthsFormat",n[n.MonthsStandalone=6]="MonthsStandalone",n[n.Eras=7]="Eras",n[n.FirstDayOfWeek=8]="FirstDayOfWeek",n[n.WeekendRange=9]="WeekendRange",n[n.DateFormat=10]="DateFormat",n[n.TimeFormat=11]="TimeFormat",n[n.DateTimeFormat=12]="DateTimeFormat",n[n.NumberSymbols=13]="NumberSymbols",n[n.NumberFormats=14]="NumberFormats",n[n.CurrencyCode=15]="CurrencyCode",n[n.CurrencySymbol=16]="CurrencySymbol",n[n.CurrencyName=17]="CurrencyName",n[n.Currencies=18]="Currencies",n[n.Directionality=19]="Directionality",n[n.PluralCase=20]="PluralCase",n[n.ExtraData=21]="ExtraData",n})(Yt||{});function Z5(n){return n.toLowerCase().replace(/_/g,"-")}var eg="en-US";var e9=eg;function jk(n){typeof n=="string"&&(e9=n.toLowerCase().replace(/_/g,"-"))}function Hk(n,e,r){let t=ce(),i=tt(),o=gn();return zk(i,t,t[Ze],o,n,e,r),Hk}function Wk(n,e,r){let t=ce(),i=tt(),o=gn();return(o.type&3||r)&&nk(o,i,t,r,t[Ze],n,e,c_(o,t,e)),Wk}function zk(n,e,r,t,i,o,s){let a=!0,c=null;if((t.type&3||s)&&(c??=c_(t,e,o),nk(t,n,e,s,r,i,o,c)&&(a=!1)),a){let l=t.outputs?.[i],u=t.hostDirectiveOutputs?.[i];if(u&&u.length)for(let d=0;d<u.length;d+=2){let f=u[d],g=u[d+1];c??=c_(t,e,o),Ex(t,e,f,g,i,c)}if(l&&l.length)for(let d of l)c??=c_(t,e,o),Ex(t,e,d,i,i,c)}}function t9(n=1){return G0(n)}function n9(n,e){let r=null,t=mq(n);for(let i=0;i<e.length;i++){let o=e[i];if(o==="*"){r=i;continue}if(t===null?mF(n,o,!0):_q(t,o))return i}return r}function r9(n){let e=ce()[Yn][sr];if(!e.projection){let r=n?n.length:1,t=e.projection=g0(r,null),i=t.slice(),o=e.child;for(;o!==null;){if(o.type!==128){let s=n?n9(o,n):0;s!==null&&(i[s]?i[s].projectionNext=o:t[s]=o,i[s]=o)}o=o.next}}}function i9(n,e=0,r,t,i,o){let s=ce(),a=tt(),c=t?n+1:null;c!==null&&rd(s,a,c,t,i,o,null,r);let l=Xc(a,et+n,16,null,r||null);l.projection===null&&(l.projection=e),MA();let d=!s[Pc]||NA();s[Yn][sr].projection[l.projection]===null&&c!==null?o9(s,a,c):d&&!L_(l)&&qq(a,s,l)}function o9(n,e,r){let t=et+r,i=e.data[t],o=n[t],s=__(o,i.tView.ssrId),a=qf(n,i,void 0,{dehydratedView:s});Kf(o,a,0,Ju(i,s))}function s9(n,e,r,t){d5(n,e,r,t)}function a9(n,e,r){lk(n,e,r)}function c9(n){let e=ce(),r=tt(),t=zE();xf(t+1);let i=_R(r,t);if(n.dirty&&S0(e)===((i.metadata.flags&2)===2)){if(i.matches===null)n.reset([]);else{let o=dk(e,t);n.reset(o,zx),n.notifyOnChanges()}return!0}return!1}function l9(){return ER(ce(),zE())}function u9(n,e,r,t){g5(n,lk(e,r,t))}function d9(n=1){xf(zE()+n)}function h9(n){let e=PA();return Gc(e,et+n)}function n_(n,e){return n<<17|e<<2}function Yc(n){return n>>17&32767}function f9(n){return(n&2)==2}function g9(n,e){return n&131071|e<<17}function xD(n){return n|2}function id(n){return(n&131068)>>2}function QA(n,e){return n&-131069|e<<2}function m9(n){return(n&1)===1}function FD(n){return n|1}function p9(n,e,r,t,i,o){let s=o?e.classBindings:e.styleBindings,a=Yc(s),c=id(s);n[t]=r;let l=!1,u;if(Array.isArray(r)){let d=r;u=d[1],(u===null||Fu(d,u)>0)&&(l=!0)}else u=r;if(i)if(c!==0){let f=Yc(n[a+1]);n[t+1]=n_(f,a),f!==0&&(n[f+1]=QA(n[f+1],t)),n[a+1]=g9(n[a+1],t)}else n[t+1]=n_(a,0),a!==0&&(n[a+1]=QA(n[a+1],t)),a=t;else n[t+1]=n_(c,0),a===0?a=t:n[c+1]=QA(n[c+1],t),c=t;l&&(n[t+1]=xD(n[t+1])),Dx(n,u,t,!0),Dx(n,u,t,!1),E9(e,u,n,t,o),s=n_(a,c),o?e.classBindings=s:e.styleBindings=s}function E9(n,e,r,t,i){let o=i?n.residualClasses:n.residualStyles;o!=null&&typeof e=="string"&&Fu(o,e)>=0&&(r[t+1]=FD(r[t+1]))}function Dx(n,e,r,t){let i=n[r+1],o=e===null,s=t?Yc(i):id(i),a=!1;for(;s!==0&&(a===!1||o);){let c=n[s],l=n[s+1];_9(c,e)&&(a=!0,n[s+1]=t?FD(l):xD(l)),s=t?Yc(l):id(l)}a&&(n[r+1]=t?xD(i):FD(i))}function _9(n,e){return n===null||e==null||(Array.isArray(n)?n[1]:n)===e?!0:Array.isArray(n)&&typeof e=="string"?Fu(n,e)>=0:!1}var mn={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function qk(n){return n.substring(mn.key,mn.keyEnd)}function T9(n){return n.substring(mn.value,mn.valueEnd)}function I9(n){return Qk(n),Kk(n,od(n,0,mn.textEnd))}function Kk(n,e){let r=mn.textEnd;return r===e?-1:(e=mn.keyEnd=y9(n,mn.key=e,r),od(n,e,r))}function v9(n){return Qk(n),Yk(n,od(n,0,mn.textEnd))}function Yk(n,e){let r=mn.textEnd,t=mn.key=od(n,e,r);return r===t?-1:(t=mn.keyEnd=S9(n,t,r),t=Rx(n,t,r,58),t=mn.value=od(n,t,r),t=mn.valueEnd=A9(n,t,r),Rx(n,t,r,59))}function Qk(n){mn.key=0,mn.keyEnd=0,mn.value=0,mn.valueEnd=0,mn.textEnd=n.length}function od(n,e,r){for(;e<r&&n.charCodeAt(e)<=32;)e++;return e}function y9(n,e,r){for(;e<r&&n.charCodeAt(e)>32;)e++;return e}function S9(n,e,r){let t;for(;e<r&&((t=n.charCodeAt(e))===45||t===95||(t&-33)>=65&&(t&-33)<=90||t>=48&&t<=57);)e++;return e}function Rx(n,e,r,t){return e=od(n,e,r),e<r&&e++,e}function A9(n,e,r){let t=-1,i=-1,o=-1,s=e,a=s;for(;s<r;){let c=n.charCodeAt(s++);if(c===59)return a;c===34||c===39?a=s=Cx(n,c,s,r):e===s-4&&o===85&&i===82&&t===76&&c===40?a=s=Cx(n,41,s,r):c>32&&(a=s),o=i,i=t,t=c&-33}return a}function Cx(n,e,r,t){let i=-1,o=r;for(;o<t;){let s=n.charCodeAt(o++);if(s==e&&i!==92)return o;s==92&&i===92?i=0:i=s}throw new Error}function Xk(n,e,r){return Zk(n,e,r,!1),Xk}function Jk(n,e){return Zk(n,e,null,!0),Jk}function D9(n){eU(rU,R9,n,!1)}function R9(n,e){for(let r=v9(e);r>=0;r=Yk(e,r))rU(n,qk(e),T9(e))}function C9(n){eU(P9,N9,n,!0)}function N9(n,e){for(let r=I9(e);r>=0;r=Kk(e,r))Nf(n,qk(e),!0)}function Zk(n,e,r,t){let i=ce(),o=tt(),s=Pf(2);if(o.firstUpdatePass&&nU(o,n,s,t),e!==Rn&&Pn(i,s,e)){let a=o.data[oi()];iU(o,a,i,i[Ze],n,i[s+1]=F9(e,r),t,s)}}function eU(n,e,r,t){let i=tt(),o=Pf(2);i.firstUpdatePass&&nU(i,null,o,t);let s=ce();if(r!==Rn&&Pn(s,o,r)){let a=i.data[oi()];if(oU(a,t)&&!tU(i,o)){let c=t?a.classesWithoutHost:a.stylesWithoutHost;c!==null&&(r=LE(c,r||"")),PD(i,a,s,r,t)}else x9(i,a,s,s[Ze],s[o+1],s[o+1]=M9(n,e,r),t,o)}}function tU(n,e){return e>=n.expandoStartIndex}function nU(n,e,r,t){let i=n.data;if(i[r+1]===null){let o=i[oi()],s=tU(n,r);oU(o,t)&&e===null&&!s&&(e=!1),e=O9(i,o,e,t),p9(i,o,e,r,s,t)}}function O9(n,e,r,t){let i=k0(n),o=t?e.residualClasses:e.residualStyles;if(i===null)(t?e.classBindings:e.styleBindings)===0&&(r=XA(null,n,e,r,t),r=jf(r,e.attrs,t),o=null);else{let s=e.directiveStylingLast;if(s===-1||n[s]!==i)if(r=XA(i,n,e,r,t),o===null){let c=w9(n,e,t);c!==void 0&&Array.isArray(c)&&(c=XA(null,n,e,c[1],t),c=jf(c,e.attrs,t),b9(n,e,t,c))}else o=L9(n,e,t)}return o!==void 0&&(t?e.residualClasses=o:e.residualStyles=o),r}function w9(n,e,r){let t=r?e.classBindings:e.styleBindings;if(id(t)!==0)return n[Yc(t)]}function b9(n,e,r,t){let i=r?e.classBindings:e.styleBindings;n[Yc(i)]=t}function L9(n,e,r){let t,i=e.directiveEnd;for(let o=1+e.directiveStylingLast;o<i;o++){let s=n[o].hostAttrs;t=jf(t,s,r)}return jf(t,e.attrs,r)}function XA(n,e,r,t,i){let o=null,s=r.directiveEnd,a=r.directiveStylingLast;for(a===-1?a=r.directiveStart:a++;a<s&&(o=e[a],t=jf(t,o.hostAttrs,i),o!==n);)a++;return n!==null&&(r.directiveStylingLast=a),t}function jf(n,e,r){let t=r?1:2,i=-1;if(e!==null)for(let o=0;o<e.length;o++){let s=e[o];typeof s=="number"?i=s:i===t&&(Array.isArray(n)||(n=n===void 0?[]:["",n]),Nf(n,s,r?!0:e[++o]))}return n===void 0?null:n}function M9(n,e,r){if(r==null||r==="")return qn;let t=[],i=Br(r);if(Array.isArray(i))for(let o=0;o<i.length;o++)n(t,i[o],!0);else if(typeof i=="object")for(let o in i)i.hasOwnProperty(o)&&n(t,o,i[o]);else typeof i=="string"&&e(t,i);return t}function rU(n,e,r){Nf(n,e,Br(r))}function P9(n,e,r){let t=String(e);t!==""&&!t.includes(" ")&&Nf(n,t,r)}function x9(n,e,r,t,i,o,s,a){i===Rn&&(i=qn);let c=0,l=0,u=0<i.length?i[0]:null,d=0<o.length?o[0]:null;for(;u!==null||d!==null;){let f=c<i.length?i[c+1]:void 0,g=l<o.length?o[l+1]:void 0,p=null,_;u===d?(c+=2,l+=2,f!==g&&(p=d,_=g)):d===null||u!==null&&u<d?(c+=2,p=u):(l+=2,p=d,_=g),p!==null&&iU(n,e,r,t,p,_,s,a),u=c<i.length?i[c]:null,d=l<o.length?o[l]:null}}function iU(n,e,r,t,i,o,s,a){if(!(e.type&3))return;let c=n.data,l=c[a+1],u=m9(l)?Nx(c,e,r,i,id(l),s):void 0;if(!O_(u)){O_(o)||f9(l)&&(o=Nx(c,null,r,i,a,s));let d=yA(oi(),r);Yq(t,s,d,i,o)}}function Nx(n,e,r,t,i,o){let s=e===null,a;for(;i>0;){let c=n[i],l=Array.isArray(c),u=l?c[1]:c,d=u===null,f=r[i+1];f===Rn&&(f=d?qn:void 0);let g=d?UE(f,t):u===t?f:void 0;if(l&&!O_(g)&&(g=UE(c,t)),O_(g)&&(a=g,s))return a;let p=n[i+1];i=s?Yc(p):id(p)}if(e!==null){let c=o?e.residualClasses:e.residualStyles;c!=null&&(a=UE(c,t))}return a}function O_(n){return n!==void 0}function F9(n,e){return n==null||n===""||(typeof e=="string"?n=n+e:typeof n=="object"&&(n=rs(Br(n)))),n}function oU(n,e){return(n.flags&(e?8:16))!==0}function k9(n,e=""){let r=ce(),t=tt(),i=n+et,o=t.firstCreatePass?Xc(t,i,1,e,null):t.data[i],s=U9(t,r,o,e,n);r[i]=s,YE()&&sR(t,r,s,o),$c(o,!1)}var U9=(n,e,r,t,i)=>(Ff(!0),Z4(e[Ze],t));function sU(n,e,r,t=""){return Pn(n,Eo(),r)?e+kr(r)+t:Rn}function V9(n,e,r,t,i,o=""){let s=FA(),a=Zu(n,s,r,i);return Pf(2),a?e+kr(r)+t+kr(i)+o:Rn}function B9(n,e,r,t,i,o,s,a=""){let c=FA(),l=pR(n,c,r,i,s);return Pf(3),l?e+kr(r)+t+kr(i)+o+kr(s)+a:Rn}function aU(n){return wR("",n),aU}function wR(n,e,r){let t=ce(),i=sU(t,n,e,r);return i!==Rn&&bR(t,oi(),i),wR}function cU(n,e,r,t,i){let o=ce(),s=V9(o,n,e,r,t,i);return s!==Rn&&bR(o,oi(),s),cU}function lU(n,e,r,t,i,o,s){let a=ce(),c=B9(a,n,e,r,t,i,o,s);return c!==Rn&&bR(a,oi(),c),lU}function bR(n,e,r){let t=yA(e,n);eq(n[Ze],t,r)}function uU(n,e,r){GA(e)&&(e=e());let t=ce(),i=Eo();if(Pn(t,i,e)){let o=tt(),s=Hu();MF(s,t,n,e,t[Ze],r)}return uU}function G9(n,e){let r=GA(n);return r&&n.set(e),r}function dU(n,e){let r=ce(),t=tt(),i=gn();return zk(t,r,r[Ze],i,n,e),dU}var hU={};function fU(n){let e=tt(),r=ce(),t=n+et,i=Xc(e,t,128,null,null);return $c(i,!1),Mf(e,r,t,hU),fU}function $9(n){gs("NgLet");let e=tt(),r=ce(),t=oi();return Mf(e,r,t,n),n}function j9(n){let e=PA(),r=Gc(e,et+n);if(r===hU)throw new oe(314,!1);return r}function H9(n){return Pn(ce(),Eo(),n)?kr(n):Rn}function W9(n,e,r=""){return sU(ce(),n,e,r)}function z9(n,e,r){let t=tt();if(t.firstCreatePass){let i=bi(n);kD(r,t.data,t.blueprint,i,!0),kD(e,t.data,t.blueprint,i,!1)}}function kD(n,e,r,t,i){if(n=hn(n),Array.isArray(n))for(let o=0;o<n.length;o++)kD(n[o],e,r,t,i);else{let o=tt(),s=ce(),a=gn(),c=bc(n)?n:hn(n.provide),l=mA(n),u=a.providerIndexes&1048575,d=a.directiveStart,f=a.providerIndexes>>20;if(bc(n)||!n.multi){let g=new zc(l,i,ut,null),p=ZA(c,e,i?u:u+f,d);p===-1?(tD(f_(a,s),o,c),JA(o,n,e.length),e.push(c),a.directiveStart++,a.directiveEnd++,i&&(a.providerIndexes+=1048576),r.push(g),s.push(g)):(r[p]=g,s[p]=g)}else{let g=ZA(c,e,u+f,d),p=ZA(c,e,u,u+f),_=g>=0&&r[g],T=p>=0&&r[p];if(i&&!T||!i&&!_){tD(f_(a,s),o,c);let D=Y9(i?K9:q9,r.length,i,t,l,n);!i&&T&&(r[p].providerFactory=D),JA(o,n,e.length,0),e.push(c),a.directiveStart++,a.directiveEnd++,i&&(a.providerIndexes+=1048576),r.push(D),s.push(D)}else{let D=gU(r[i?p:g],l,!i&&t);JA(o,n,g>-1?g:p,D)}!i&&t&&T&&r[p].componentProviders++}}}function JA(n,e,r,t){let i=bc(e),o=I0(e);if(i||o){let c=(o?hn(e.useClass):e).prototype.ngOnDestroy;if(c){let l=n.destroyHooks||(n.destroyHooks=[]);if(!i&&e.multi){let u=l.indexOf(r);u===-1?l.push(r,[t,c]):l[u+1].push(t,c)}else l.push(r,c)}}}function gU(n,e,r){return r&&n.componentProviders++,n.multi.push(e)-1}function ZA(n,e,r,t){for(let i=r;i<t;i++)if(e[i]===n)return i;return-1}function q9(n,e,r,t,i){return UD(this.multi,[])}function K9(n,e,r,t,i){let o=this.multi,s;if(this.providerFactory){let a=this.providerFactory.componentProviders,c=Bf(t,t[Te],this.providerFactory.index,i);s=c.slice(0,a),UD(o,s);for(let l=a;l<c.length;l++)s.push(c[l])}else s=[],UD(o,s);return s}function UD(n,e){for(let r=0;r<n.length;r++){let t=n[r];e.push(t())}return e}function Y9(n,e,r,t,i,o){let s=new zc(n,r,ut,null);return s.multi=[],s.index=e,s.componentProviders=0,gU(s,i,t&&!r),s}function Q9(n,e=[]){return r=>{r.providersResolver=(t,i)=>z9(t,i?i(n):n,e)}}function X9(n,e,r){let t=n.\u0275cmp;t.directiveDefs=R_(e,yk),t.pipeDefs=R_(r,hA)}function J9(n,e,r){let t=ar()+n,i=ce();return i[t]===Rn?Ao(i,t,r?e.call(r):e()):Qf(i,t)}function Z9(n,e,r,t){return mU(ce(),ar(),n,e,r,t)}function eK(n,e,r,t,i){return pU(ce(),ar(),n,e,r,t,i)}function tK(n,e,r,t,i,o){return EU(ce(),ar(),n,e,r,t,i,o)}function nK(n,e,r,t,i,o,s){return cK(ce(),ar(),n,e,r,t,i,o,s)}function rK(n,e,r,t,i,o,s,a){let c=ar()+n,l=ce(),u=ed(l,c,r,t,i,o);return Pn(l,c+4,s)||u?Ao(l,c+5,a?e.call(a,r,t,i,o,s):e(r,t,i,o,s)):Qf(l,c+5)}function iK(n,e,r,t,i,o,s,a,c){let l=ar()+n,u=ce(),d=ed(u,l,r,t,i,o);return Zu(u,l+4,s,a)||d?Ao(u,l+6,c?e.call(c,r,t,i,o,s,a):e(r,t,i,o,s,a)):Qf(u,l+6)}function oK(n,e,r,t,i,o,s,a,c,l){let u=ar()+n,d=ce(),f=ed(d,u,r,t,i,o);return pR(d,u+4,s,a,c)||f?Ao(d,u+7,l?e.call(l,r,t,i,o,s,a,c):e(r,t,i,o,s,a,c)):Qf(d,u+7)}function sK(n,e,r,t,i,o,s,a,c,l,u){let d=ar()+n,f=ce(),g=ed(f,d,r,t,i,o);return ed(f,d+4,s,a,c,l)||g?Ao(f,d+8,u?e.call(u,r,t,i,o,s,a,c,l):e(r,t,i,o,s,a,c,l)):Qf(f,d+8)}function aK(n,e,r,t){return _U(ce(),ar(),n,e,r,t)}function tg(n,e){let r=n[e];return r===Rn?void 0:r}function mU(n,e,r,t,i,o){let s=e+r;return Pn(n,s,i)?Ao(n,s+1,o?t.call(o,i):t(i)):tg(n,s+1)}function pU(n,e,r,t,i,o,s){let a=e+r;return Zu(n,a,i,o)?Ao(n,a+2,s?t.call(s,i,o):t(i,o)):tg(n,a+2)}function EU(n,e,r,t,i,o,s,a){let c=e+r;return pR(n,c,i,o,s)?Ao(n,c+3,a?t.call(a,i,o,s):t(i,o,s)):tg(n,c+3)}function cK(n,e,r,t,i,o,s,a,c){let l=e+r;return ed(n,l,i,o,s,a)?Ao(n,l+4,c?t.call(c,i,o,s,a):t(i,o,s,a)):tg(n,l+4)}function _U(n,e,r,t,i,o){let s=e+r,a=!1;for(let c=0;c<i.length;c++)Pn(n,s++,i[c])&&(a=!0);return a?Ao(n,s,t.apply(o,i)):tg(n,s)}function lK(n,e){let r=tt(),t,i=n+et;r.firstCreatePass?(t=uK(e,r.pipeRegistry),r.data[i]=t,t.onDestroy&&(r.destroyHooks??=[]).push(i,t.onDestroy)):t=r.data[i];let o=t.factory||(t.factory=Ys(t.type,!0)),s,a=or(ut);try{let c=h_(!1),l=o();return h_(c),Mf(r,ce(),i,l),l}finally{or(a)}}function uK(n,e){if(e)for(let r=e.length-1;r>=0;r--){let t=e[r];if(n===t.name)return t}}function dK(n,e,r){let t=n+et,i=ce(),o=Gc(i,t);return q_(i,t)?mU(i,ar(),e,o.transform,r,o):o.transform(r)}function hK(n,e,r,t){let i=n+et,o=ce(),s=Gc(o,i);return q_(o,i)?pU(o,ar(),e,s.transform,r,t,s):s.transform(r,t)}function fK(n,e,r,t,i){let o=n+et,s=ce(),a=Gc(s,o);return q_(s,o)?EU(s,ar(),e,a.transform,r,t,i,a):a.transform(r,t,i)}function gK(n,e,r){let t=n+et,i=ce(),o=Gc(i,t);return q_(i,t)?_U(i,ar(),e,o.transform,r,o):o.transform.apply(o,r)}function q_(n,e){return n[Te].data[e].pure}function mK(n,e){return G_(n,e)}var r_=null;function TU(n){r_!==null&&(n.defaultEncapsulation!==r_.defaultEncapsulation||n.preserveWhitespaces!==r_.preserveWhitespaces)||(r_=n)}var IU=new Z("");var pK=(()=>{class n{zone=ne(Le);changeDetectionScheduler=ne(ei);applicationRef=ne(ca);applicationErrorHandler=ne(_o);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{try{this.applicationRef.dirtyFlags|=1,this.applicationRef._tick()}catch(r){this.applicationErrorHandler(r)}})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function vU({ngZoneFactory:n,ignoreChangesOutsideZone:e,scheduleInRootZone:r}){return n??=()=>new Le(le(x({},LR()),{scheduleInRootZone:r})),[{provide:Le,useFactory:n},{provide:Js,multi:!0,useFactory:()=>{let t=ne(pK,{optional:!0});return()=>t.initialize()}},{provide:Js,multi:!0,useFactory:()=>{let t=ne(EK);return()=>{t.initialize()}}},e===!0?{provide:$A,useValue:!0}:[],{provide:QE,useValue:r??TF},{provide:_o,useFactory:()=>{let t=ne(Le),i=ne(Kn),o;return s=>{t.runOutsideAngular(()=>{i.destroyed&&!o?setTimeout(()=>{throw s}):(o??=i.get(Fr),o.handleError(s))})}}}]}function LR(n){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:n?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:n?.runCoalescing??!1}}var EK=(()=>{class n{subscription=new gt;initialized=!1;zone=ne(Le);pendingTasks=ne(ia);initialize(){if(this.initialized)return;this.initialized=!0;let r=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(r=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{Le.assertNotInAngularZone(),queueMicrotask(()=>{r!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(r),r=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{Le.assertInAngularZone(),r??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var MR=(()=>{class n{applicationErrorHandler=ne(_o);appRef=ne(ca);taskService=ne(ia);ngZone=ne(Le);zonelessEnabled=ne(zu);tracing=ne(Qc,{optional:!0});disableScheduling=ne($A,{optional:!0})??!1;zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new gt;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(p_):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(ne(QE,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof Xu||!this.zoneIsDefined)}notify(r){if(!this.zonelessEnabled&&r===5)return;let t=!1;switch(r){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 6:{this.appRef.dirtyFlags|=2,t=!0;break}case 12:{this.appRef.dirtyFlags|=16,t=!0;break}case 13:{this.appRef.dirtyFlags|=2,t=!0;break}case 11:{t=!0;break}default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick(t))return;let i=this.useMicrotaskScheduler?ax:IF;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>i(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>i(()=>this.tick()))}shouldScheduleTick(r){return!(this.disableScheduling&&!r||this.appRef.destroyed||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(p_+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(this.appRef.dirtyFlags===0){this.cleanup();return}!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let r=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(t){this.taskService.remove(r),this.applicationErrorHandler(t)}finally{this.cleanup()}this.useMicrotaskScheduler=!0,ax(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(r)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let r=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(r)}}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function _K(){return gs("NgZoneless"),pr([{provide:ei,useExisting:MR},{provide:Le,useClass:Xu},{provide:zu,useValue:!0},{provide:QE,useValue:!1},[]])}function TK(){return typeof $localize<"u"&&$localize.locale||eg}var ng=new Z("",{providedIn:"root",factory:()=>ne(ng,{optional:!0,skipSelf:!0})||TK()});var K_=class{destroyed=!1;listeners=null;errorHandler=ne(Fr,{optional:!0});destroyRef=ne(cr);constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0,this.listeners=null})}subscribe(e){if(this.destroyed)throw new oe(953,!1);return(this.listeners??=[]).push(e),{unsubscribe:()=>{let r=this.listeners?.indexOf(e);r!==void 0&&r!==-1&&this.listeners?.splice(r,1)}}}emit(e){if(this.destroyed){console.warn(Xs(953,!1));return}if(this.listeners===null)return;let r=Ae(null);try{for(let t of this.listeners)try{t(e)}catch(i){this.errorHandler?.handleError(i)}}finally{Ae(r)}}};function rg(n){return n0(n)}function ig(n,e){return vf(n,e?.equal)}var PR=class{[An];constructor(e){this[An]=e}destroy(){this[An].destroy()}};function xR(n,e){let r=e?.injector??ne(St),t=e?.manualCleanup!==!0?r.get(cr):null,i,o=r.get(Wu,null,{optional:!0}),s=r.get(ei);return o!==null?(i=yK(o.view,s,n),t instanceof Rf&&t._lView===o.view&&(t=null)):i=SK(n,r.get(kf),s),i.injector=r,t!==null&&(i.onDestroyFn=t.onDestroy(()=>i.destroy())),new PR(i)}var yU=le(x({},r0),{cleanupFns:void 0,zone:null,onDestroyFn:Hc,run(){let n=ju(!1);try{i0(this)}finally{ju(n)}},cleanup(){if(!this.cleanupFns?.length)return;let n=Ae(null);try{for(;this.cleanupFns.length;)this.cleanupFns.pop()()}finally{this.cleanupFns=[],Ae(n)}}}),IK=le(x({},yU),{consumerMarkedDirty(){this.scheduler.schedule(this),this.notifier.notify(12)},destroy(){Cc(this),this.onDestroyFn(),this.cleanup(),this.scheduler.remove(this)}}),vK=le(x({},yU),{consumerMarkedDirty(){this.view[De]|=8192,na(this.view),this.notifier.notify(13)},destroy(){Cc(this),this.onDestroyFn(),this.cleanup(),this.view[ss]?.delete(this)}});function yK(n,e,r){let t=Object.create(vK);return t.view=n,t.zone=typeof Zone<"u"?Zone.current:null,t.notifier=e,t.fn=SU(t,r),n[ss]??=new Set,n[ss].add(t),t.consumerMarkedDirty(t),t}function SK(n,e,r){let t=Object.create(IK);return t.fn=SU(t,n),t.scheduler=e,t.notifier=r,t.zone=typeof Zone<"u"?Zone.current:null,t.scheduler.add(t),t.notifier.notify(12),t}function SU(n,e){return()=>{e(r=>(n.cleanupFns??=[]).push(r))}}var bU=Symbol("InputSignalNode#UNSET"),xK=le(x({},vE),{transformFn:void 0,applyValueToInputSignal(n,e){Lu(n,e)}});function LU(n,e){let r=Object.create(xK);r.value=n,r.transformFn=e?.transform;function t(){if(Nu(r),r.value===bU){let i=null;throw new oe(-950,i)}return r.value}return t[An]=r,t}var FK=new Z("");FK.__NG_ELEMENT_ID__=n=>{let e=gn();if(e===null)throw new oe(204,!1);if(e.type&2)return e.value;if(n&8)return null;throw new oe(204,!1)};function qve(n){return new K_}function AU(n,e){return LU(n,e)}function kK(n){return LU(bU,n)}var Kve=(AU.required=kK,AU);function DU(n,e){return fk(e)}function UK(n,e){return gk(e)}var Yve=(DU.required=UK,DU);function VK(n,e,r){let t=new A_(r);return Promise.resolve(t)}function RU(n){for(let e=n.length-1;e>=0;e--)if(n[e]!==void 0)return n[e]}var Y_=new Z(""),BK=new Z("");function og(n){return!n.moduleRef}function GK(n){let e=og(n)?n.r3Injector:n.moduleRef.injector,r=e.get(Le);return r.run(()=>{og(n)?n.r3Injector.resolveInjectorInitializers():n.moduleRef.resolveInjectorInitializers();let t=e.get(_o),i;if(r.runOutsideAngular(()=>{i=r.onError.subscribe({next:t})}),og(n)){let o=()=>e.destroy(),s=n.platformInjector.get(Y_);s.add(o),e.onDestroy(()=>{i.unsubscribe(),s.delete(o)})}else{let o=()=>n.moduleRef.destroy(),s=n.platformInjector.get(Y_);s.add(o),n.moduleRef.onDestroy(()=>{Vf(n.allPlatformModules,n.moduleRef),i.unsubscribe(),s.delete(o)})}return jK(t,r,()=>{let o=e.get(ia),s=o.add(),a=e.get(vR);return a.runInitializers(),a.donePromise.then(()=>{let c=e.get(ng,eg);if(jk(c||eg),!e.get(BK,!0))return og(n)?e.get(ca):(n.allPlatformModules.push(n.moduleRef),n.moduleRef);if(og(n)){let u=e.get(ca);return n.rootComponent!==void 0&&u.bootstrap(n.rootComponent),u}else return MU?.(n.moduleRef,n.allPlatformModules),n.moduleRef}).finally(()=>{o.remove(s)})})})}var MU;function CU(){MU=$K}function $K(n,e){let r=n.injector.get(ca);if(n._bootstrapComponents.length>0)n._bootstrapComponents.forEach(t=>r.bootstrap(t));else if(n.instance.ngDoBootstrap)n.instance.ngDoBootstrap(r);else throw new oe(-403,!1);e.push(n)}function jK(n,e,r){try{let t=r();return z_(t)?t.catch(i=>{throw e.runOutsideAngular(()=>n(i)),i}):t}catch(t){throw e.runOutsideAngular(()=>n(t)),t}}var PU=(()=>{class n{_injector;_modules=[];_destroyListeners=[];_destroyed=!1;constructor(r){this._injector=r}bootstrapModuleFactory(r,t){let i=t?.scheduleInRootZone,o=()=>yF(t?.ngZone,le(x({},LR({eventCoalescing:t?.ngZoneEventCoalescing,runCoalescing:t?.ngZoneRunCoalescing})),{scheduleInRootZone:i})),s=t?.ignoreChangesOutsideZone,a=[vU({ngZoneFactory:o,ignoreChangesOutsideZone:s}),{provide:ei,useExisting:MR},z0],c=Ik(r.moduleType,this.injector,a);return CU(),GK({moduleRef:c,allPlatformModules:this._modules,platformInjector:this.injector})}bootstrapModule(r,t=[]){let i=yR({},t);return CU(),VK(this.injector,i,r).then(o=>this.bootstrapModuleFactory(o,i))}onDestroy(r){this._destroyListeners.push(r)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new oe(404,!1);this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t());let r=this._injector.get(Y_,null);r&&(r.forEach(t=>t()),r.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static \u0275fac=function(t){return new(t||n)(w(St))};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"platform"})}return n})(),jR=null;function HK(n){if(WR())throw new oe(400,!1);Mk(),jR=n;let e=n.get(PU);return qK(n),e}function HR(n,e,r=[]){let t=`Platform: ${e}`,i=new Z(t);return(o=[])=>{let s=WR();if(!s){let a=[...r,...o,{provide:i,useValue:!0}];s=n?.(a)??HK(WK(a,t))}return zK(i)}}function WK(n=[],e){return St.create({name:e,providers:[{provide:Of,useValue:"platform"},{provide:Y_,useValue:new Set([()=>jR=null])},...n]})}function zK(n){let e=WR();if(!e)throw new oe(-401,!1);return e}function WR(){return jR?.get(PU)??null}function qK(n){let e=n.get(b_,null);fo(n,()=>{e?.forEach(r=>r())})}function zR(){return!1}var KK=(()=>{class n{static __NG_ELEMENT_ID__=YK}return n})();function YK(n){return QK(gn(),ce(),(n&16)===16)}function QK(n,e,r){if(as(n)&&!r){let t=ii(n.index,e);return new oa(t,t)}else if(n.type&175){let t=e[Yn];return new oa(t,e)}return null}var FR=class{constructor(){}supports(e){return mR(e)}create(e){return new kR(e)}},XK=(n,e)=>e,kR=class{length=0;collection;_linkedRecords=null;_unlinkedRecords=null;_previousItHead=null;_itHead=null;_itTail=null;_additionsHead=null;_additionsTail=null;_movesHead=null;_movesTail=null;_removalsHead=null;_removalsTail=null;_identityChangesHead=null;_identityChangesTail=null;_trackByFn;constructor(e){this._trackByFn=e||XK}forEachItem(e){let r;for(r=this._itHead;r!==null;r=r._next)e(r)}forEachOperation(e){let r=this._itHead,t=this._removalsHead,i=0,o=null;for(;r||t;){let s=!t||r&&r.currentIndex<NU(t,i,o)?r:t,a=NU(s,i,o),c=s.currentIndex;if(s===t)i--,t=t._nextRemoved;else if(r=r._next,s.previousIndex==null)i++;else{o||(o=[]);let l=a-i,u=c-i;if(l!=u){for(let f=0;f<l;f++){let g=f<o.length?o[f]:o[f]=0,p=g+f;u<=p&&p<l&&(o[f]=g+1)}let d=s.previousIndex;o[d]=u-l}}a!==c&&e(s,a,c)}}forEachPreviousItem(e){let r;for(r=this._previousItHead;r!==null;r=r._nextPrevious)e(r)}forEachAddedItem(e){let r;for(r=this._additionsHead;r!==null;r=r._nextAdded)e(r)}forEachMovedItem(e){let r;for(r=this._movesHead;r!==null;r=r._nextMoved)e(r)}forEachRemovedItem(e){let r;for(r=this._removalsHead;r!==null;r=r._nextRemoved)e(r)}forEachIdentityChange(e){let r;for(r=this._identityChangesHead;r!==null;r=r._nextIdentityChange)e(r)}diff(e){if(e==null&&(e=[]),!mR(e))throw new oe(900,!1);return this.check(e)?this:null}onDestroy(){}check(e){this._reset();let r=this._itHead,t=!1,i,o,s;if(Array.isArray(e)){this.length=e.length;for(let a=0;a<this.length;a++)o=e[a],s=this._trackByFn(a,o),r===null||!Object.is(r.trackById,s)?(r=this._mismatch(r,o,s,a),t=!0):(t&&(r=this._verifyReinsertion(r,o,s,a)),Object.is(r.item,o)||this._addIdentityChange(r,o)),r=r._next}else i=0,tk(e,a=>{s=this._trackByFn(i,a),r===null||!Object.is(r.trackById,s)?(r=this._mismatch(r,a,s,i),t=!0):(t&&(r=this._verifyReinsertion(r,a,s,i)),Object.is(r.item,a)||this._addIdentityChange(r,a)),r=r._next,i++}),this.length=i;return this._truncate(r),this.collection=e,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let e;for(e=this._previousItHead=this._itHead;e!==null;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;e!==null;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;e!==null;e=e._nextMoved)e.previousIndex=e.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,r,t,i){let o;return e===null?o=this._itTail:(o=e._prev,this._remove(e)),e=this._unlinkedRecords===null?null:this._unlinkedRecords.get(t,null),e!==null?(Object.is(e.item,r)||this._addIdentityChange(e,r),this._reinsertAfter(e,o,i)):(e=this._linkedRecords===null?null:this._linkedRecords.get(t,i),e!==null?(Object.is(e.item,r)||this._addIdentityChange(e,r),this._moveAfter(e,o,i)):e=this._addAfter(new UR(r,t),o,i)),e}_verifyReinsertion(e,r,t,i){let o=this._unlinkedRecords===null?null:this._unlinkedRecords.get(t,null);return o!==null?e=this._reinsertAfter(o,e._prev,i):e.currentIndex!=i&&(e.currentIndex=i,this._addToMoves(e,i)),e}_truncate(e){for(;e!==null;){let r=e._next;this._addToRemovals(this._unlink(e)),e=r}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,r,t){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(e);let i=e._prevRemoved,o=e._nextRemoved;return i===null?this._removalsHead=o:i._nextRemoved=o,o===null?this._removalsTail=i:o._prevRemoved=i,this._insertAfter(e,r,t),this._addToMoves(e,t),e}_moveAfter(e,r,t){return this._unlink(e),this._insertAfter(e,r,t),this._addToMoves(e,t),e}_addAfter(e,r,t){return this._insertAfter(e,r,t),this._additionsTail===null?this._additionsTail=this._additionsHead=e:this._additionsTail=this._additionsTail._nextAdded=e,e}_insertAfter(e,r,t){let i=r===null?this._itHead:r._next;return e._next=i,e._prev=r,i===null?this._itTail=e:i._prev=e,r===null?this._itHead=e:r._next=e,this._linkedRecords===null&&(this._linkedRecords=new Q_),this._linkedRecords.put(e),e.currentIndex=t,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){this._linkedRecords!==null&&this._linkedRecords.remove(e);let r=e._prev,t=e._next;return r===null?this._itHead=t:r._next=t,t===null?this._itTail=r:t._prev=r,e}_addToMoves(e,r){return e.previousIndex===r||(this._movesTail===null?this._movesTail=this._movesHead=e:this._movesTail=this._movesTail._nextMoved=e),e}_addToRemovals(e){return this._unlinkedRecords===null&&(this._unlinkedRecords=new Q_),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,r){return e.item=r,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=e:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=e,e}},UR=class{item;trackById;currentIndex=null;previousIndex=null;_nextPrevious=null;_prev=null;_next=null;_prevDup=null;_nextDup=null;_prevRemoved=null;_nextRemoved=null;_nextAdded=null;_nextMoved=null;_nextIdentityChange=null;constructor(e,r){this.item=e,this.trackById=r}},VR=class{_head=null;_tail=null;add(e){this._head===null?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,r){let t;for(t=this._head;t!==null;t=t._nextDup)if((r===null||r<=t.currentIndex)&&Object.is(t.trackById,e))return t;return null}remove(e){let r=e._prevDup,t=e._nextDup;return r===null?this._head=t:r._nextDup=t,t===null?this._tail=r:t._prevDup=r,this._head===null}},Q_=class{map=new Map;put(e){let r=e.trackById,t=this.map.get(r);t||(t=new VR,this.map.set(r,t)),t.add(e)}get(e,r){let t=e,i=this.map.get(t);return i?i.get(e,r):null}remove(e){let r=e.trackById;return this.map.get(r).remove(e)&&this.map.delete(r),e}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function NU(n,e,r){let t=n.previousIndex;if(t===null)return t;let i=0;return r&&t<r.length&&(i=r[t]),t+e+i}var BR=class{constructor(){}supports(e){return e instanceof Map||H_(e)}create(){return new GR}},GR=class{_records=new Map;_mapHead=null;_appendAfter=null;_previousMapHead=null;_changesHead=null;_changesTail=null;_additionsHead=null;_additionsTail=null;_removalsHead=null;_removalsTail=null;get isDirty(){return this._additionsHead!==null||this._changesHead!==null||this._removalsHead!==null}forEachItem(e){let r;for(r=this._mapHead;r!==null;r=r._next)e(r)}forEachPreviousItem(e){let r;for(r=this._previousMapHead;r!==null;r=r._nextPrevious)e(r)}forEachChangedItem(e){let r;for(r=this._changesHead;r!==null;r=r._nextChanged)e(r)}forEachAddedItem(e){let r;for(r=this._additionsHead;r!==null;r=r._nextAdded)e(r)}forEachRemovedItem(e){let r;for(r=this._removalsHead;r!==null;r=r._nextRemoved)e(r)}diff(e){if(!e)e=new Map;else if(!(e instanceof Map||H_(e)))throw new oe(900,!1);return this.check(e)?this:null}onDestroy(){}check(e){this._reset();let r=this._mapHead;if(this._appendAfter=null,this._forEach(e,(t,i)=>{if(r&&r.key===i)this._maybeAddToChanges(r,t),this._appendAfter=r,r=r._next;else{let o=this._getOrCreateRecordForKey(i,t);r=this._insertBeforeOrAppend(r,o)}}),r){r._prev&&(r._prev._next=null),this._removalsHead=r;for(let t=r;t!==null;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,r){if(e){let t=e._prev;return r._next=e,r._prev=t,e._prev=r,t&&(t._next=r),e===this._mapHead&&(this._mapHead=r),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=r,r._prev=this._appendAfter):this._mapHead=r,this._appendAfter=r,null}_getOrCreateRecordForKey(e,r){if(this._records.has(e)){let i=this._records.get(e);this._maybeAddToChanges(i,r);let o=i._prev,s=i._next;return o&&(o._next=s),s&&(s._prev=o),i._next=null,i._prev=null,i}let t=new $R(e);return this._records.set(e,t),t.currentValue=r,this._addToAdditions(t),t}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;e!==null;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;e!==null;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;e!=null;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,r){Object.is(r,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=r,this._addToChanges(e))}_addToAdditions(e){this._additionsHead===null?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){this._changesHead===null?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,r){e instanceof Map?e.forEach(r):Object.keys(e).forEach(t=>r(e[t],t))}},$R=class{key;previousValue=null;currentValue=null;_nextPrevious=null;_next=null;_prev=null;_nextAdded=null;_nextRemoved=null;_nextChanged=null;constructor(e){this.key=e}};function OU(){return new qR([new FR])}var qR=(()=>{class n{factories;static \u0275prov=K({token:n,providedIn:"root",factory:OU});constructor(r){this.factories=r}static create(r,t){if(t!=null){let i=t.factories.slice();r=r.concat(i)}return new n(r)}static extend(r){return{provide:n,useFactory:()=>{let t=ne(n,{optional:!0,skipSelf:!0});return n.create(r,t||OU())}}}find(r){let t=this.factories.find(i=>i.supports(r));if(t!=null)return t;throw new oe(901,!1)}}return n})();function wU(){return new X_([new BR])}var X_=(()=>{class n{static \u0275prov=K({token:n,providedIn:"root",factory:wU});factories;constructor(r){this.factories=r}static create(r,t){if(t){let i=t.factories.slice();r=r.concat(i)}return new n(r)}static extend(r){return{provide:n,useFactory:()=>{let t=ne(n,{optional:!0,skipSelf:!0});return n.create(r,t||wU())}}}find(r){let t=this.factories.find(i=>i.supports(r));if(t)return t;throw new oe(901,!1)}}return n})();var xU=HR(null,"core",[]),FU=(()=>{class n{constructor(r){}static \u0275fac=function(t){return new(t||n)(w(ca))};static \u0275mod=aa({type:n});static \u0275inj=is({})}return n})();function Qve(n){return typeof n=="boolean"?n:n!=null&&n!=="false"}function Xve(n,e=NaN){return!isNaN(parseFloat(n))&&!isNaN(Number(n))?Number(n):e}function Jve(n,e){let r=Zs(n),t=e.elementInjector||ku();return new td(r).create(t,e.projectableNodes,e.hostElement,e.environmentInjector,e.directives,e.bindings)}var VU=null;function Co(){return VU}function KR(n){VU??=n}var sg=class{},YR=(()=>{class n{historyGo(r){throw new Error("")}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:()=>ne(BU),providedIn:"platform"})}return n})();var BU=(()=>{class n extends YR{_location;_history;_doc=ne(Dn);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Co().getBaseHref(this._doc)}onPopState(r){let t=Co().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",r,!1),()=>t.removeEventListener("popstate",r)}onHashChange(r){let t=Co().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",r,!1),()=>t.removeEventListener("hashchange",r)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(r){this._location.pathname=r}pushState(r,t,i){this._history.pushState(r,t,i)}replaceState(r,t,i){this._history.replaceState(r,t,i)}forward(){this._history.forward()}back(){this._history.back()}historyGo(r=0){this._history.go(r)}getState(){return this._history.state}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:()=>new n,providedIn:"platform"})}return n})();function GU(n,e){return n?e?n.endsWith("/")?e.startsWith("/")?n+e.slice(1):n+e:e.startsWith("/")?n+e:`${n}/${e}`:n:e}function kU(n){let e=n.search(/#|\?|$/);return n[e-1]==="/"?n.slice(0,e-1)+n.slice(e):n}function la(n){return n&&n[0]!=="?"?`?${n}`:n}var J_=(()=>{class n{historyGo(r){throw new Error("")}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:()=>ne(jU),providedIn:"root"})}return n})(),$U=new Z(""),jU=(()=>{class n extends J_{_platformLocation;_baseHref;_removeListenerFns=[];constructor(r,t){super(),this._platformLocation=r,this._baseHref=t??this._platformLocation.getBaseHrefFromDOM()??ne(Dn).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(r){this._removeListenerFns.push(this._platformLocation.onPopState(r),this._platformLocation.onHashChange(r))}getBaseHref(){return this._baseHref}prepareExternalUrl(r){return GU(this._baseHref,r)}path(r=!1){let t=this._platformLocation.pathname+la(this._platformLocation.search),i=this._platformLocation.hash;return i&&r?`${t}${i}`:t}pushState(r,t,i,o){let s=this.prepareExternalUrl(i+la(o));this._platformLocation.pushState(r,t,s)}replaceState(r,t,i,o){let s=this.prepareExternalUrl(i+la(o));this._platformLocation.replaceState(r,t,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(r=0){this._platformLocation.historyGo?.(r)}static \u0275fac=function(t){return new(t||n)(w(YR),w($U,8))};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),HU=(()=>{class n{_subject=new Ot;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(r){this._locationStrategy=r;let t=this._locationStrategy.getBaseHref();this._basePath=eY(kU(UU(t))),this._locationStrategy.onPopState(i=>{this._subject.next({url:this.path(!0),pop:!0,state:i.state,type:i.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(r=!1){return this.normalize(this._locationStrategy.path(r))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(r,t=""){return this.path()==this.normalize(r+la(t))}normalize(r){return n.stripTrailingSlash(ZK(this._basePath,UU(r)))}prepareExternalUrl(r){return r&&r[0]!=="/"&&(r="/"+r),this._locationStrategy.prepareExternalUrl(r)}go(r,t="",i=null){this._locationStrategy.pushState(i,"",r,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(r+la(t)),i)}replaceState(r,t="",i=null){this._locationStrategy.replaceState(i,"",r,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(r+la(t)),i)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(r=0){this._locationStrategy.historyGo?.(r)}onUrlChange(r){return this._urlChangeListeners.push(r),this._urlChangeSubscription??=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}),()=>{let t=this._urlChangeListeners.indexOf(r);this._urlChangeListeners.splice(t,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(r="",t){this._urlChangeListeners.forEach(i=>i(r,t))}subscribe(r,t,i){return this._subject.subscribe({next:r,error:t??void 0,complete:i??void 0})}static normalizeQueryParams=la;static joinWithSlash=GU;static stripTrailingSlash=kU;static \u0275fac=function(t){return new(t||n)(w(J_))};static \u0275prov=K({token:n,factory:()=>JK(),providedIn:"root"})}return n})();function JK(){return new HU(w(J_))}function ZK(n,e){if(!n||!e.startsWith(n))return e;let r=e.substring(n.length);return r===""||["/",";","?","#"].includes(r[0])?r:e}function UU(n){return n.replace(/\/index.html$/,"")}function eY(n){if(new RegExp("^(https?:)?//").test(n)){let[,r]=n.split(/\/\/[^\/]+/);return r}return n}var Qn=(function(n){return n[n.Format=0]="Format",n[n.Standalone=1]="Standalone",n})(Qn||{}),ot=(function(n){return n[n.Narrow=0]="Narrow",n[n.Abbreviated=1]="Abbreviated",n[n.Wide=2]="Wide",n[n.Short=3]="Short",n})(ot||{}),Er=(function(n){return n[n.Short=0]="Short",n[n.Medium=1]="Medium",n[n.Long=2]="Long",n[n.Full=3]="Full",n})(Er||{}),ps={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function QU(n){return Gr(n)[Yt.LocaleId]}function XU(n,e,r){let t=Gr(n),i=[t[Yt.DayPeriodsFormat],t[Yt.DayPeriodsStandalone]],o=ai(i,e);return ai(o,r)}function JU(n,e,r){let t=Gr(n),i=[t[Yt.DaysFormat],t[Yt.DaysStandalone]],o=ai(i,e);return ai(o,r)}function ZU(n,e,r){let t=Gr(n),i=[t[Yt.MonthsFormat],t[Yt.MonthsStandalone]],o=ai(i,e);return ai(o,r)}function e1(n,e){let t=Gr(n)[Yt.Eras];return ai(t,e)}function ag(n,e){let r=Gr(n);return ai(r[Yt.DateFormat],e)}function cg(n,e){let r=Gr(n);return ai(r[Yt.TimeFormat],e)}function lg(n,e){let t=Gr(n)[Yt.DateTimeFormat];return ai(t,e)}function ug(n,e){let r=Gr(n),t=r[Yt.NumberSymbols][e];if(typeof t>"u"){if(e===ps.CurrencyDecimal)return r[Yt.NumberSymbols][ps.Decimal];if(e===ps.CurrencyGroup)return r[Yt.NumberSymbols][ps.Group]}return t}function t1(n){if(!n[Yt.ExtraData])throw new oe(2303,!1)}function n1(n){let e=Gr(n);return t1(e),(e[Yt.ExtraData][2]||[]).map(t=>typeof t=="string"?QR(t):[QR(t[0]),QR(t[1])])}function r1(n,e,r){let t=Gr(n);t1(t);let i=[t[Yt.ExtraData][0],t[Yt.ExtraData][1]],o=ai(i,e)||[];return ai(o,r)||[]}function ai(n,e){for(let r=e;r>-1;r--)if(typeof n[r]<"u")return n[r];throw new oe(2304,!1)}function QR(n){let[e,r]=n.split(":");return{hours:+e,minutes:+r}}var tY=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,Z_={},nY=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;function i1(n,e,r,t){let i=dY(n);e=ms(r,e)||e;let s=[],a;for(;e;)if(a=nY.exec(e),a){s=s.concat(a.slice(1));let u=s.pop();if(!u)break;e=u}else{s.push(e);break}let c=i.getTimezoneOffset();t&&(c=s1(t,c),i=uY(i,t));let l="";return s.forEach(u=>{let d=cY(u);l+=d?d(i,r,c):u==="''"?"'":u.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),l}function iT(n,e,r){let t=new Date(0);return t.setFullYear(n,e,r),t.setHours(0,0,0),t}function ms(n,e){let r=QU(n);if(Z_[r]??={},Z_[r][e])return Z_[r][e];let t="";switch(e){case"shortDate":t=ag(n,Er.Short);break;case"mediumDate":t=ag(n,Er.Medium);break;case"longDate":t=ag(n,Er.Long);break;case"fullDate":t=ag(n,Er.Full);break;case"shortTime":t=cg(n,Er.Short);break;case"mediumTime":t=cg(n,Er.Medium);break;case"longTime":t=cg(n,Er.Long);break;case"fullTime":t=cg(n,Er.Full);break;case"short":let i=ms(n,"shortTime"),o=ms(n,"shortDate");t=eT(lg(n,Er.Short),[i,o]);break;case"medium":let s=ms(n,"mediumTime"),a=ms(n,"mediumDate");t=eT(lg(n,Er.Medium),[s,a]);break;case"long":let c=ms(n,"longTime"),l=ms(n,"longDate");t=eT(lg(n,Er.Long),[c,l]);break;case"full":let u=ms(n,"fullTime"),d=ms(n,"fullDate");t=eT(lg(n,Er.Full),[u,d]);break}return t&&(Z_[r][e]=t),t}function eT(n,e){return e&&(n=n.replace(/\{([^}]+)}/g,function(r,t){return e!=null&&t in e?e[t]:r})),n}function Pi(n,e,r="-",t,i){let o="";(n<0||i&&n<=0)&&(i?n=-n+1:(n=-n,o=r));let s=String(n);for(;s.length<e;)s="0"+s;return t&&(s=s.slice(s.length-e)),o+s}function rY(n,e){return Pi(n,3).substring(0,e)}function nn(n,e,r=0,t=!1,i=!1){return function(o,s){let a=iY(n,o);if((r>0||a>-r)&&(a+=r),n===3)a===0&&r===-12&&(a=12);else if(n===6)return rY(a,e);let c=ug(s,ps.MinusSign);return Pi(a,e,c,t,i)}}function iY(n,e){switch(n){case 0:return e.getFullYear();case 1:return e.getMonth();case 2:return e.getDate();case 3:return e.getHours();case 4:return e.getMinutes();case 5:return e.getSeconds();case 6:return e.getMilliseconds();case 7:return e.getDay();default:throw new oe(2301,!1)}}function pt(n,e,r=Qn.Format,t=!1){return function(i,o){return oY(i,o,n,e,r,t)}}function oY(n,e,r,t,i,o){switch(r){case 2:return ZU(e,i,t)[n.getMonth()];case 1:return JU(e,i,t)[n.getDay()];case 0:let s=n.getHours(),a=n.getMinutes();if(o){let l=n1(e),u=r1(e,i,t),d=l.findIndex(f=>{if(Array.isArray(f)){let[g,p]=f,_=s>=g.hours&&a>=g.minutes,T=s<p.hours||s===p.hours&&a<p.minutes;if(g.hours<p.hours){if(_&&T)return!0}else if(_||T)return!0}else if(f.hours===s&&f.minutes===a)return!0;return!1});if(d!==-1)return u[d]}return XU(e,i,t)[s<12?0:1];case 3:return e1(e,t)[n.getFullYear()<=0?0:1];default:let c=r;throw new oe(2302,!1)}}function tT(n){return function(e,r,t){let i=-1*t,o=ug(r,ps.MinusSign),s=i>0?Math.floor(i/60):Math.ceil(i/60);switch(n){case 0:return(i>=0?"+":"")+Pi(s,2,o)+Pi(Math.abs(i%60),2,o);case 1:return"GMT"+(i>=0?"+":"")+Pi(s,1,o);case 2:return"GMT"+(i>=0?"+":"")+Pi(s,2,o)+":"+Pi(Math.abs(i%60),2,o);case 3:return t===0?"Z":(i>=0?"+":"")+Pi(s,2,o)+":"+Pi(Math.abs(i%60),2,o);default:throw new oe(2310,!1)}}}var sY=0,rT=4;function aY(n){let e=iT(n,sY,1).getDay();return iT(n,0,1+(e<=rT?rT:rT+7)-e)}function o1(n){let e=n.getDay(),r=e===0?-3:rT-e;return iT(n.getFullYear(),n.getMonth(),n.getDate()+r)}function XR(n,e=!1){return function(r,t){let i;if(e){let o=new Date(r.getFullYear(),r.getMonth(),1).getDay()-1,s=r.getDate();i=1+Math.floor((s+o)/7)}else{let o=o1(r),s=aY(o.getFullYear()),a=o.getTime()-s.getTime();i=1+Math.round(a/6048e5)}return Pi(i,n,ug(t,ps.MinusSign))}}function nT(n,e=!1){return function(r,t){let o=o1(r).getFullYear();return Pi(o,n,ug(t,ps.MinusSign),e)}}var JR={};function cY(n){if(JR[n])return JR[n];let e;switch(n){case"G":case"GG":case"GGG":e=pt(3,ot.Abbreviated);break;case"GGGG":e=pt(3,ot.Wide);break;case"GGGGG":e=pt(3,ot.Narrow);break;case"y":e=nn(0,1,0,!1,!0);break;case"yy":e=nn(0,2,0,!0,!0);break;case"yyy":e=nn(0,3,0,!1,!0);break;case"yyyy":e=nn(0,4,0,!1,!0);break;case"Y":e=nT(1);break;case"YY":e=nT(2,!0);break;case"YYY":e=nT(3);break;case"YYYY":e=nT(4);break;case"M":case"L":e=nn(1,1,1);break;case"MM":case"LL":e=nn(1,2,1);break;case"MMM":e=pt(2,ot.Abbreviated);break;case"MMMM":e=pt(2,ot.Wide);break;case"MMMMM":e=pt(2,ot.Narrow);break;case"LLL":e=pt(2,ot.Abbreviated,Qn.Standalone);break;case"LLLL":e=pt(2,ot.Wide,Qn.Standalone);break;case"LLLLL":e=pt(2,ot.Narrow,Qn.Standalone);break;case"w":e=XR(1);break;case"ww":e=XR(2);break;case"W":e=XR(1,!0);break;case"d":e=nn(2,1);break;case"dd":e=nn(2,2);break;case"c":case"cc":e=nn(7,1);break;case"ccc":e=pt(1,ot.Abbreviated,Qn.Standalone);break;case"cccc":e=pt(1,ot.Wide,Qn.Standalone);break;case"ccccc":e=pt(1,ot.Narrow,Qn.Standalone);break;case"cccccc":e=pt(1,ot.Short,Qn.Standalone);break;case"E":case"EE":case"EEE":e=pt(1,ot.Abbreviated);break;case"EEEE":e=pt(1,ot.Wide);break;case"EEEEE":e=pt(1,ot.Narrow);break;case"EEEEEE":e=pt(1,ot.Short);break;case"a":case"aa":case"aaa":e=pt(0,ot.Abbreviated);break;case"aaaa":e=pt(0,ot.Wide);break;case"aaaaa":e=pt(0,ot.Narrow);break;case"b":case"bb":case"bbb":e=pt(0,ot.Abbreviated,Qn.Standalone,!0);break;case"bbbb":e=pt(0,ot.Wide,Qn.Standalone,!0);break;case"bbbbb":e=pt(0,ot.Narrow,Qn.Standalone,!0);break;case"B":case"BB":case"BBB":e=pt(0,ot.Abbreviated,Qn.Format,!0);break;case"BBBB":e=pt(0,ot.Wide,Qn.Format,!0);break;case"BBBBB":e=pt(0,ot.Narrow,Qn.Format,!0);break;case"h":e=nn(3,1,-12);break;case"hh":e=nn(3,2,-12);break;case"H":e=nn(3,1);break;case"HH":e=nn(3,2);break;case"m":e=nn(4,1);break;case"mm":e=nn(4,2);break;case"s":e=nn(5,1);break;case"ss":e=nn(5,2);break;case"S":e=nn(6,1);break;case"SS":e=nn(6,2);break;case"SSS":e=nn(6,3);break;case"Z":case"ZZ":case"ZZZ":e=tT(0);break;case"ZZZZZ":e=tT(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=tT(1);break;case"OOOO":case"ZZZZ":case"zzzz":e=tT(2);break;default:return null}return JR[n]=e,e}function s1(n,e){n=n.replace(/:/g,"");let r=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(r)?e:r}function lY(n,e){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+e),n}function uY(n,e,r){let i=n.getTimezoneOffset(),o=s1(e,i);return lY(n,-1*(o-i))}function dY(n){if(WU(n))return n;if(typeof n=="number"&&!isNaN(n))return new Date(n);if(typeof n=="string"){if(n=n.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(n)){let[i,o=1,s=1]=n.split("-").map(a=>+a);return iT(i,o-1,s)}let r=parseFloat(n);if(!isNaN(n-r))return new Date(r);let t;if(t=n.match(tY))return hY(t)}let e=new Date(n);if(!WU(e))throw new oe(2311,!1);return e}function hY(n){let e=new Date(0),r=0,t=0,i=n[8]?e.setUTCFullYear:e.setFullYear,o=n[8]?e.setUTCHours:e.setHours;n[9]&&(r=Number(n[9]+n[10]),t=Number(n[9]+n[11])),i.call(e,Number(n[1]),Number(n[2])-1,Number(n[3]));let s=Number(n[4]||0)-r,a=Number(n[5]||0)-t,c=Number(n[6]||0),l=Math.floor(parseFloat("0."+(n[7]||0))*1e3);return o.call(e,s,a,c,l),e}function WU(n){return n instanceof Date&&!isNaN(n.valueOf())}var ZR=/\s+/,zU=[],fY=(()=>{class n{_ngEl;_renderer;initialClasses=zU;rawClass;stateMap=new Map;constructor(r,t){this._ngEl=r,this._renderer=t}set klass(r){this.initialClasses=r!=null?r.trim().split(ZR):zU}set ngClass(r){this.rawClass=typeof r=="string"?r.trim().split(ZR):r}ngDoCheck(){for(let t of this.initialClasses)this._updateState(t,!0);let r=this.rawClass;if(Array.isArray(r)||r instanceof Set)for(let t of r)this._updateState(t,!0);else if(r!=null)for(let t of Object.keys(r))this._updateState(t,!!r[t]);this._applyStateDiff()}_updateState(r,t){let i=this.stateMap.get(r);i!==void 0?(i.enabled!==t&&(i.changed=!0,i.enabled=t),i.touched=!0):this.stateMap.set(r,{enabled:t,changed:!0,touched:!0})}_applyStateDiff(){for(let r of this.stateMap){let t=r[0],i=r[1];i.changed?(this._toggleClass(t,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(t,!1),this.stateMap.delete(t)),i.touched=!1}}_toggleClass(r,t){r=r.trim(),r.length>0&&r.split(ZR).forEach(i=>{t?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}static \u0275fac=function(t){return new(t||n)(ut(sa),ut(j_))};static \u0275dir=Ro({type:n,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return n})();var oT=class{$implicit;ngForOf;index;count;constructor(e,r,t,i){this.$implicit=e,this.ngForOf=r,this.index=t,this.count=i}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},a1=(()=>{class n{_viewContainer;_template;_differs;set ngForOf(r){this._ngForOf=r,this._ngForOfDirty=!0}set ngForTrackBy(r){this._trackByFn=r}get ngForTrackBy(){return this._trackByFn}_ngForOf=null;_ngForOfDirty=!0;_differ=null;_trackByFn;constructor(r,t,i){this._viewContainer=r,this._template=t,this._differs=i}set ngForTemplate(r){r&&(this._template=r)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let r=this._ngForOf;!this._differ&&r&&(this._differ=this._differs.find(r).create(this.ngForTrackBy))}if(this._differ){let r=this._differ.diff(this._ngForOf);r&&this._applyChanges(r)}}_applyChanges(r){let t=this._viewContainer;r.forEachOperation((i,o,s)=>{if(i.previousIndex==null)t.createEmbeddedView(this._template,new oT(i.item,this._ngForOf,-1,-1),s===null?void 0:s);else if(s==null)t.remove(o===null?void 0:o);else if(o!==null){let a=t.get(o);t.move(a,s),qU(a,i)}});for(let i=0,o=t.length;i<o;i++){let a=t.get(i).context;a.index=i,a.count=o,a.ngForOf=this._ngForOf}r.forEachIdentityChange(i=>{let o=t.get(i.currentIndex);qU(o,i)})}static ngTemplateContextGuard(r,t){return!0}static \u0275fac=function(t){return new(t||n)(ut(Do),ut(yo),ut(qR))};static \u0275dir=Ro({type:n,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}})}return n})();function qU(n,e){n.context.$implicit=e.item}var gY=(()=>{class n{_viewContainer;_context=new sT;_thenTemplateRef=null;_elseTemplateRef=null;_thenViewRef=null;_elseViewRef=null;constructor(r,t){this._viewContainer=r,this._thenTemplateRef=t}set ngIf(r){this._context.$implicit=this._context.ngIf=r,this._updateView()}set ngIfThen(r){KU(r,!1),this._thenTemplateRef=r,this._thenViewRef=null,this._updateView()}set ngIfElse(r){KU(r,!1),this._elseTemplateRef=r,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngIfUseIfTypeGuard;static ngTemplateGuard_ngIf;static ngTemplateContextGuard(r,t){return!0}static \u0275fac=function(t){return new(t||n)(ut(Do),ut(yo))};static \u0275dir=Ro({type:n,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}})}return n})(),sT=class{$implicit=null;ngIf=null};function KU(n,e){if(n&&!n.createEmbeddedView)throw new oe(2020,!1)}var aT=class{_viewContainerRef;_templateRef;_created=!1;constructor(e,r){this._viewContainerRef=e,this._templateRef=r}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(e){e&&!this._created?this.create():!e&&this._created&&this.destroy()}},eC=(()=>{class n{_defaultViews=[];_defaultUsed=!1;_caseCount=0;_lastCaseCheckIndex=0;_lastCasesMatched=!1;_ngSwitch;set ngSwitch(r){this._ngSwitch=r,this._caseCount===0&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(r){this._defaultViews.push(r)}_matchCase(r){let t=r===this._ngSwitch;return this._lastCasesMatched||=t,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),t}_updateDefaultCases(r){if(this._defaultViews.length>0&&r!==this._defaultUsed){this._defaultUsed=r;for(let t of this._defaultViews)t.enforceState(r)}}static \u0275fac=function(t){return new(t||n)};static \u0275dir=Ro({type:n,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"}})}return n})(),mY=(()=>{class n{ngSwitch;_view;ngSwitchCase;constructor(r,t,i){this.ngSwitch=i,i._addCase(),this._view=new aT(r,t)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}static \u0275fac=function(t){return new(t||n)(ut(Do),ut(yo),ut(eC,9))};static \u0275dir=Ro({type:n,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}})}return n})(),pY=(()=>{class n{constructor(r,t,i){i._addDefault(new aT(r,t))}static \u0275fac=function(t){return new(t||n)(ut(Do),ut(yo),ut(eC,9))};static \u0275dir=Ro({type:n,selectors:[["","ngSwitchDefault",""]]})}return n})();var EY=(()=>{class n{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(r,t,i){this._ngEl=r,this._differs=t,this._renderer=i}set ngStyle(r){this._ngStyle=r,!this._differ&&r&&(this._differ=this._differs.find(r).create())}ngDoCheck(){if(this._differ){let r=this._differ.diff(this._ngStyle);r&&this._applyChanges(r)}}_setStyle(r,t){let[i,o]=r.split("."),s=i.indexOf("-")===-1?void 0:Mi.DashCase;t!=null?this._renderer.setStyle(this._ngEl.nativeElement,i,o?`${t}${o}`:t,s):this._renderer.removeStyle(this._ngEl.nativeElement,i,s)}_applyChanges(r){r.forEachRemovedItem(t=>this._setStyle(t.key,null)),r.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),r.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}static \u0275fac=function(t){return new(t||n)(ut(sa),ut(X_),ut(j_))};static \u0275dir=Ro({type:n,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return n})(),_Y=(()=>{class n{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;constructor(r){this._viewContainerRef=r}ngOnChanges(r){if(this._shouldRecreateView(r)){let t=this._viewContainerRef;if(this._viewRef&&t.remove(t.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let i=this._createContextForwardProxy();this._viewRef=t.createEmbeddedView(this.ngTemplateOutlet,i,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(r){return!!r.ngTemplateOutlet||!!r.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(r,t,i)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,t,i):!1,get:(r,t,i)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,t,i)}})}static \u0275fac=function(t){return new(t||n)(ut(Do))};static \u0275dir=Ro({type:n,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[VD]})}return n})();function c1(n,e){return new oe(2100,!1)}var TY=/(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g,IY=(()=>{class n{transform(r){if(r==null)return null;if(typeof r!="string")throw c1(n,r);return r.replace(TY,t=>t[0].toUpperCase()+t.slice(1).toLowerCase())}static \u0275fac=function(t){return new(t||n)};static \u0275pipe=Xf({name:"titlecase",type:n,pure:!0})}return n})();var vY="mediumDate",l1=new Z(""),u1=new Z(""),yY=(()=>{class n{locale;defaultTimezone;defaultOptions;constructor(r,t,i){this.locale=r,this.defaultTimezone=t,this.defaultOptions=i}transform(r,t,i,o){if(r==null||r===""||r!==r)return null;try{let s=t??this.defaultOptions?.dateFormat??vY,a=i??this.defaultOptions?.timezone??this.defaultTimezone??void 0;return i1(r,s,o||this.locale,a)}catch(s){throw c1(n,s.message)}}static \u0275fac=function(t){return new(t||n)(ut(ng,16),ut(l1,24),ut(u1,24))};static \u0275pipe=Xf({name:"date",type:n,pure:!0})}return n})();function SY(n,e){return{key:n,value:e}}var AY=(()=>{class n{differs;constructor(r){this.differs=r}differ;keyValues=[];compareFn=YU;transform(r,t=YU){if(!r||!(r instanceof Map)&&typeof r!="object")return null;this.differ??=this.differs.find(r).create();let i=this.differ.diff(r),o=t!==this.compareFn;return i&&(this.keyValues=[],i.forEachItem(s=>{this.keyValues.push(SY(s.key,s.currentValue))})),(i||o)&&(t&&this.keyValues.sort(t),this.compareFn=t),this.keyValues}static \u0275fac=function(t){return new(t||n)(ut(X_,16))};static \u0275pipe=Xf({name:"keyvalue",type:n,pure:!1})}return n})();function YU(n,e){let r=n.key,t=e.key;if(r===t)return 0;if(r==null)return 1;if(t==null)return-1;if(typeof r=="string"&&typeof t=="string")return r<t?-1:1;if(typeof r=="number"&&typeof t=="number")return r-t;if(typeof r=="boolean"&&typeof t=="boolean")return r<t?-1:1;let i=String(r),o=String(t);return i==o?0:i<o?-1:1}var tC=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275mod=aa({type:n});static \u0275inj=is({})}return n})();function dg(n,e){e=encodeURIComponent(e);for(let r of n.split(";")){let t=r.indexOf("="),[i,o]=t==-1?[r,""]:[r.slice(0,t),r.slice(t+1)];if(i.trim()===e)return decodeURIComponent(o)}return null}var Jc=class{};var nC="browser";function d1(n){return n===nC}var hg=class{_doc;constructor(e){this._doc=e}manager},cT=(()=>{class n extends hg{constructor(r){super(r)}supports(r){return!0}addEventListener(r,t,i,o){return r.addEventListener(t,i,o),()=>this.removeEventListener(r,t,i,o)}removeEventListener(r,t,i,o){return r.removeEventListener(t,i,o)}static \u0275fac=function(t){return new(t||n)(w(Dn))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),uT=new Z(""),aC=(()=>{class n{_zone;_plugins;_eventNameToPlugin=new Map;constructor(r,t){this._zone=t,r.forEach(s=>{s.manager=this});let i=r.filter(s=>!(s instanceof cT));this._plugins=i.slice().reverse();let o=r.find(s=>s instanceof cT);o&&this._plugins.push(o)}addEventListener(r,t,i,o){return this._findPluginFor(t).addEventListener(r,t,i,o)}getZone(){return this._zone}_findPluginFor(r){let t=this._eventNameToPlugin.get(r);if(t)return t;if(t=this._plugins.find(o=>o.supports(r)),!t)throw new oe(5101,!1);return this._eventNameToPlugin.set(r,t),t}static \u0275fac=function(t){return new(t||n)(w(uT),w(Le))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),rC="ng-app-id";function h1(n){for(let e of n)e.remove()}function f1(n,e){let r=e.createElement("style");return r.textContent=n,r}function DY(n,e,r,t){let i=n.head?.querySelectorAll(`style[${rC}="${e}"],link[${rC}="${e}"]`);if(i)for(let o of i)o.removeAttribute(rC),o instanceof HTMLLinkElement?t.set(o.href.slice(o.href.lastIndexOf("/")+1),{usage:0,elements:[o]}):o.textContent&&r.set(o.textContent,{usage:0,elements:[o]})}function oC(n,e){let r=e.createElement("link");return r.setAttribute("rel","stylesheet"),r.setAttribute("href",n),r}var cC=(()=>{class n{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(r,t,i,o={}){this.doc=r,this.appId=t,this.nonce=i,DY(r,t,this.inline,this.external),this.hosts.add(r.head)}addStyles(r,t){for(let i of r)this.addUsage(i,this.inline,f1);t?.forEach(i=>this.addUsage(i,this.external,oC))}removeStyles(r,t){for(let i of r)this.removeUsage(i,this.inline);t?.forEach(i=>this.removeUsage(i,this.external))}addUsage(r,t,i){let o=t.get(r);o?o.usage++:t.set(r,{usage:1,elements:[...this.hosts].map(s=>this.addElement(s,i(r,this.doc)))})}removeUsage(r,t){let i=t.get(r);i&&(i.usage--,i.usage<=0&&(h1(i.elements),t.delete(r)))}ngOnDestroy(){for(let[,{elements:r}]of[...this.inline,...this.external])h1(r);this.hosts.clear()}addHost(r){this.hosts.add(r);for(let[t,{elements:i}]of this.inline)i.push(this.addElement(r,f1(t,this.doc)));for(let[t,{elements:i}]of this.external)i.push(this.addElement(r,oC(t,this.doc)))}removeHost(r){this.hosts.delete(r)}addElement(r,t){return this.nonce&&t.setAttribute("nonce",this.nonce),r.appendChild(t)}static \u0275fac=function(t){return new(t||n)(w(Dn),w(w_),w(cd,8),w(hs))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),iC={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},lC=/%COMP%/g;var m1="%COMP%",RY=`_nghost-${m1}`,CY=`_ngcontent-${m1}`,NY=!0,OY=new Z("",{providedIn:"root",factory:()=>NY});function wY(n){return CY.replace(lC,n)}function bY(n){return RY.replace(lC,n)}function p1(n,e){return e.map(r=>r.replace(lC,n))}var uC=(()=>{class n{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;platformIsServer;constructor(r,t,i,o,s,a,c=null,l=null){this.eventManager=r,this.sharedStylesHost=t,this.appId=i,this.removeStylesOnCompDestroy=o,this.doc=s,this.ngZone=a,this.nonce=c,this.tracingService=l,this.platformIsServer=!1,this.defaultRenderer=new fg(r,s,a,this.platformIsServer,this.tracingService)}createRenderer(r,t){if(!r||!t)return this.defaultRenderer;let i=this.getOrCreateRenderer(r,t);return i instanceof lT?i.applyToHost(r):i instanceof gg&&i.applyStyles(),i}getOrCreateRenderer(r,t){let i=this.rendererByCompId,o=i.get(t.id);if(!o){let s=this.doc,a=this.ngZone,c=this.eventManager,l=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer,f=this.tracingService;switch(t.encapsulation){case ls.Emulated:o=new lT(c,l,t,this.appId,u,s,a,d,f);break;case ls.ShadowDom:return new sC(c,l,r,t,s,a,this.nonce,d,f);default:o=new gg(c,l,t,u,s,a,d,f);break}i.set(t.id,o)}return o}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(r){this.rendererByCompId.delete(r)}static \u0275fac=function(t){return new(t||n)(w(aC),w(cC),w(w_),w(OY),w(Dn),w(Le),w(cd),w(Qc,8))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),fg=class{eventManager;doc;ngZone;platformIsServer;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(e,r,t,i,o){this.eventManager=e,this.doc=r,this.ngZone=t,this.platformIsServer=i,this.tracingService=o}destroy(){}destroyNode=null;createElement(e,r){return r?this.doc.createElementNS(iC[r]||r,e):this.doc.createElement(e)}createComment(e){return this.doc.createComment(e)}createText(e){return this.doc.createTextNode(e)}appendChild(e,r){(g1(e)?e.content:e).appendChild(r)}insertBefore(e,r,t){e&&(g1(e)?e.content:e).insertBefore(r,t)}removeChild(e,r){r.remove()}selectRootElement(e,r){let t=typeof e=="string"?this.doc.querySelector(e):e;if(!t)throw new oe(-5104,!1);return r||(t.textContent=""),t}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,r,t,i){if(i){r=i+":"+r;let o=iC[i];o?e.setAttributeNS(o,r,t):e.setAttribute(r,t)}else e.setAttribute(r,t)}removeAttribute(e,r,t){if(t){let i=iC[t];i?e.removeAttributeNS(i,r):e.removeAttribute(`${t}:${r}`)}else e.removeAttribute(r)}addClass(e,r){e.classList.add(r)}removeClass(e,r){e.classList.remove(r)}setStyle(e,r,t,i){i&(Mi.DashCase|Mi.Important)?e.style.setProperty(r,t,i&Mi.Important?"important":""):e.style[r]=t}removeStyle(e,r,t){t&Mi.DashCase?e.style.removeProperty(r):e.style[r]=""}setProperty(e,r,t){e!=null&&(e[r]=t)}setValue(e,r){e.nodeValue=r}listen(e,r,t,i){if(typeof e=="string"&&(e=Co().getGlobalEventTarget(this.doc,e),!e))throw new oe(5102,!1);let o=this.decoratePreventDefault(t);return this.tracingService?.wrapEventListener&&(o=this.tracingService.wrapEventListener(e,r,o)),this.eventManager.addEventListener(e,r,o,i)}decoratePreventDefault(e){return r=>{if(r==="__ngUnwrap__")return e;e(r)===!1&&r.preventDefault()}}};function g1(n){return n.tagName==="TEMPLATE"&&n.content!==void 0}var sC=class extends fg{sharedStylesHost;hostEl;shadowRoot;constructor(e,r,t,i,o,s,a,c,l){super(e,o,s,c,l),this.sharedStylesHost=r,this.hostEl=t,this.shadowRoot=t.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let u=i.styles;u=p1(i.id,u);for(let f of u){let g=document.createElement("style");a&&g.setAttribute("nonce",a),g.textContent=f,this.shadowRoot.appendChild(g)}let d=i.getExternalStyles?.();if(d)for(let f of d){let g=oC(f,o);a&&g.setAttribute("nonce",a),this.shadowRoot.appendChild(g)}}nodeOrShadowRoot(e){return e===this.hostEl?this.shadowRoot:e}appendChild(e,r){return super.appendChild(this.nodeOrShadowRoot(e),r)}insertBefore(e,r,t){return super.insertBefore(this.nodeOrShadowRoot(e),r,t)}removeChild(e,r){return super.removeChild(null,r)}parentNode(e){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(e)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},gg=class extends fg{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(e,r,t,i,o,s,a,c,l){super(e,o,s,a,c),this.sharedStylesHost=r,this.removeStylesOnCompDestroy=i;let u=t.styles;this.styles=l?p1(l,u):u,this.styleUrls=t.getExternalStyles?.(l)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&qc.size===0&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},lT=class extends gg{contentAttr;hostAttr;constructor(e,r,t,i,o,s,a,c,l){let u=i+"-"+t.id;super(e,r,t,o,s,a,c,l,u),this.contentAttr=wY(u),this.hostAttr=bY(u)}applyToHost(e){this.applyStyles(),this.setAttribute(e,this.hostAttr,"")}createElement(e,r){let t=super.createElement(e,r);return super.setAttribute(t,this.contentAttr,""),t}};var dT=class n extends sg{supportsDOMEvents=!0;static makeCurrent(){KR(new n)}onAndCancel(e,r,t,i){return e.addEventListener(r,t,i),()=>{e.removeEventListener(r,t,i)}}dispatchEvent(e,r){e.dispatchEvent(r)}remove(e){e.remove()}createElement(e,r){return r=r||this.getDefaultDocument(),r.createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,r){return r==="window"?window:r==="document"?e:r==="body"?e.body:null}getBaseHref(e){let r=LY();return r==null?null:MY(r)}resetBaseElement(){mg=null}getUserAgent(){return window.navigator.userAgent}getCookie(e){return dg(document.cookie,e)}},mg=null;function LY(){return mg=mg||document.head.querySelector("base"),mg?mg.getAttribute("href"):null}function MY(n){return new URL(n,document.baseURI).pathname}var hT=class{addToWindow(e){tn.getAngularTestability=(t,i=!0)=>{let o=e.findTestabilityInTree(t,i);if(o==null)throw new oe(5103,!1);return o},tn.getAllAngularTestabilities=()=>e.getAllTestabilities(),tn.getAllAngularRootElements=()=>e.getAllRootElements();let r=t=>{let i=tn.getAllAngularTestabilities(),o=i.length,s=function(){o--,o==0&&t()};i.forEach(a=>{a.whenStable(s)})};tn.frameworkStabilizers||(tn.frameworkStabilizers=[]),tn.frameworkStabilizers.push(r)}findTestabilityInTree(e,r,t){if(r==null)return null;let i=e.getTestability(r);return i??(t?Co().isShadowRoot(r)?this.findTestabilityInTree(e,r.host,!0):this.findTestabilityInTree(e,r.parentElement,!0):null)}},PY=(()=>{class n{build(){return new XMLHttpRequest}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),E1=["alt","control","meta","shift"],xY={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},FY={alt:n=>n.altKey,control:n=>n.ctrlKey,meta:n=>n.metaKey,shift:n=>n.shiftKey},_1=(()=>{class n extends hg{constructor(r){super(r)}supports(r){return n.parseEventName(r)!=null}addEventListener(r,t,i,o){let s=n.parseEventName(t),a=n.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Co().onAndCancel(r,s.domEventName,a,o))}static parseEventName(r){let t=r.toLowerCase().split("."),i=t.shift();if(t.length===0||!(i==="keydown"||i==="keyup"))return null;let o=n._normalizeKey(t.pop()),s="",a=t.indexOf("code");if(a>-1&&(t.splice(a,1),s="code."),E1.forEach(l=>{let u=t.indexOf(l);u>-1&&(t.splice(u,1),s+=l+".")}),s+=o,t.length!=0||o.length===0)return null;let c={};return c.domEventName=i,c.fullKey=s,c}static matchEventFullKeyCode(r,t){let i=xY[r.key]||r.key,o="";return t.indexOf("code.")>-1&&(i=r.code,o="code."),i==null||!i?!1:(i=i.toLowerCase(),i===" "?i="space":i==="."&&(i="dot"),E1.forEach(s=>{if(s!==i){let a=FY[s];a(r)&&(o+=s+".")}}),o+=i,o===t)}static eventCallback(r,t,i){return o=>{n.matchEventFullKeyCode(o,r)&&i.runGuarded(()=>t(o))}}static _normalizeKey(r){return r==="esc"?"escape":r}static \u0275fac=function(t){return new(t||n)(w(Dn))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})();function kY(){dT.makeCurrent()}function UY(){return new Fr}function VY(){return $D(document),document}var BY=[{provide:hs,useValue:nC},{provide:b_,useValue:kY,multi:!0},{provide:Dn,useFactory:VY}],GY=HR(xU,"browser",BY);var $Y=[{provide:ld,useClass:hT},{provide:W_,useClass:Jf,deps:[Le,Zf,ld]},{provide:Jf,useClass:Jf,deps:[Le,Zf,ld]}],jY=[{provide:Of,useValue:"root"},{provide:Fr,useFactory:UY},{provide:uT,useClass:cT,multi:!0,deps:[Dn]},{provide:uT,useClass:_1,multi:!0,deps:[Dn]},uC,cC,aC,{provide:ds,useExisting:uC},{provide:Jc,useClass:PY},[]],HY=(()=>{class n{constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275mod=aa({type:n});static \u0275inj=is({providers:[...jY,...$Y],imports:[tC,FU]})}return n})();var hd=class{},pg=class{},ua=class n{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(e){e?typeof e=="string"?this.lazyInit=()=>{this.headers=new Map,e.split(`
5
- `).forEach(r=>{let t=r.indexOf(":");if(t>0){let i=r.slice(0,t),o=r.slice(t+1).trim();this.addHeaderEntry(i,o)}})}:typeof Headers<"u"&&e instanceof Headers?(this.headers=new Map,e.forEach((r,t)=>{this.addHeaderEntry(t,r)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(e).forEach(([r,t])=>{this.setHeaderEntries(r,t)})}:this.headers=new Map}has(e){return this.init(),this.headers.has(e.toLowerCase())}get(e){this.init();let r=this.headers.get(e.toLowerCase());return r&&r.length>0?r[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(e){return this.init(),this.headers.get(e.toLowerCase())||null}append(e,r){return this.clone({name:e,value:r,op:"a"})}set(e,r){return this.clone({name:e,value:r,op:"s"})}delete(e,r){return this.clone({name:e,value:r,op:"d"})}maybeSetNormalizedName(e,r){this.normalizedNames.has(r)||this.normalizedNames.set(r,e)}init(){this.lazyInit&&(this.lazyInit instanceof n?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(e=>this.applyUpdate(e)),this.lazyUpdate=null))}copyFrom(e){e.init(),Array.from(e.headers.keys()).forEach(r=>{this.headers.set(r,e.headers.get(r)),this.normalizedNames.set(r,e.normalizedNames.get(r))})}clone(e){let r=new n;return r.lazyInit=this.lazyInit&&this.lazyInit instanceof n?this.lazyInit:this,r.lazyUpdate=(this.lazyUpdate||[]).concat([e]),r}applyUpdate(e){let r=e.name.toLowerCase();switch(e.op){case"a":case"s":let t=e.value;if(typeof t=="string"&&(t=[t]),t.length===0)return;this.maybeSetNormalizedName(e.name,r);let i=(e.op==="a"?this.headers.get(r):void 0)||[];i.push(...t),this.headers.set(r,i);break;case"d":let o=e.value;if(!o)this.headers.delete(r),this.normalizedNames.delete(r);else{let s=this.headers.get(r);if(!s)return;s=s.filter(a=>o.indexOf(a)===-1),s.length===0?(this.headers.delete(r),this.normalizedNames.delete(r)):this.headers.set(r,s)}break}}addHeaderEntry(e,r){let t=e.toLowerCase();this.maybeSetNormalizedName(e,t),this.headers.has(t)?this.headers.get(t).push(r):this.headers.set(t,[r])}setHeaderEntries(e,r){let t=(Array.isArray(r)?r:[r]).map(o=>o.toString()),i=e.toLowerCase();this.headers.set(i,t),this.maybeSetNormalizedName(e,i)}forEach(e){this.init(),Array.from(this.normalizedNames.keys()).forEach(r=>e(this.normalizedNames.get(r),this.headers.get(r)))}};var gT=class{encodeKey(e){return T1(e)}encodeValue(e){return T1(e)}decodeKey(e){return decodeURIComponent(e)}decodeValue(e){return decodeURIComponent(e)}};function WY(n,e){let r=new Map;return n.length>0&&n.replace(/^\?/,"").split("&").forEach(i=>{let o=i.indexOf("="),[s,a]=o==-1?[e.decodeKey(i),""]:[e.decodeKey(i.slice(0,o)),e.decodeValue(i.slice(o+1))],c=r.get(s)||[];c.push(a),r.set(s,c)}),r}var zY=/%(\d[a-f0-9])/gi,qY={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function T1(n){return encodeURIComponent(n).replace(zY,(e,r)=>qY[r]??e)}function fT(n){return`${n}`}var Es=class n{map;encoder;updates=null;cloneFrom=null;constructor(e={}){if(this.encoder=e.encoder||new gT,e.fromString){if(e.fromObject)throw new oe(2805,!1);this.map=WY(e.fromString,this.encoder)}else e.fromObject?(this.map=new Map,Object.keys(e.fromObject).forEach(r=>{let t=e.fromObject[r],i=Array.isArray(t)?t.map(fT):[fT(t)];this.map.set(r,i)})):this.map=null}has(e){return this.init(),this.map.has(e)}get(e){this.init();let r=this.map.get(e);return r?r[0]:null}getAll(e){return this.init(),this.map.get(e)||null}keys(){return this.init(),Array.from(this.map.keys())}append(e,r){return this.clone({param:e,value:r,op:"a"})}appendAll(e){let r=[];return Object.keys(e).forEach(t=>{let i=e[t];Array.isArray(i)?i.forEach(o=>{r.push({param:t,value:o,op:"a"})}):r.push({param:t,value:i,op:"a"})}),this.clone(r)}set(e,r){return this.clone({param:e,value:r,op:"s"})}delete(e,r){return this.clone({param:e,value:r,op:"d"})}toString(){return this.init(),this.keys().map(e=>{let r=this.encoder.encodeKey(e);return this.map.get(e).map(t=>r+"="+this.encoder.encodeValue(t)).join("&")}).filter(e=>e!=="").join("&")}clone(e){let r=new n({encoder:this.encoder});return r.cloneFrom=this.cloneFrom||this,r.updates=(this.updates||[]).concat(e),r}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(e=>this.map.set(e,this.cloneFrom.map.get(e))),this.updates.forEach(e=>{switch(e.op){case"a":case"s":let r=(e.op==="a"?this.map.get(e.param):void 0)||[];r.push(fT(e.value)),this.map.set(e.param,r);break;case"d":if(e.value!==void 0){let t=this.map.get(e.param)||[],i=t.indexOf(fT(e.value));i!==-1&&t.splice(i,1),t.length>0?this.map.set(e.param,t):this.map.delete(e.param)}else{this.map.delete(e.param);break}}}),this.cloneFrom=this.updates=null)}};var mT=class{map=new Map;set(e,r){return this.map.set(e,r),this}get(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}delete(e){return this.map.delete(e),this}has(e){return this.map.has(e)}keys(){return this.map.keys()}};function KY(n){switch(n){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function I1(n){return typeof ArrayBuffer<"u"&&n instanceof ArrayBuffer}function v1(n){return typeof Blob<"u"&&n instanceof Blob}function y1(n){return typeof FormData<"u"&&n instanceof FormData}function YY(n){return typeof URLSearchParams<"u"&&n instanceof URLSearchParams}var S1="Content-Type",A1="Accept",R1="X-Request-URL",C1="text/plain",N1="application/json",QY=`${N1}, ${C1}, */*`,ud=class n{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;credentials;keepalive=!1;cache;priority;mode;redirect;referrer;integrity;responseType="json";method;params;urlWithParams;transferCache;timeout;constructor(e,r,t,i){this.url=r,this.method=e.toUpperCase();let o;if(KY(this.method)||i?(this.body=t!==void 0?t:null,o=i):o=t,o){if(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,this.keepalive=!!o.keepalive,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params),o.priority&&(this.priority=o.priority),o.cache&&(this.cache=o.cache),o.credentials&&(this.credentials=o.credentials),typeof o.timeout=="number"){if(o.timeout<1||!Number.isInteger(o.timeout))throw new oe(2822,"");this.timeout=o.timeout}o.mode&&(this.mode=o.mode),o.redirect&&(this.redirect=o.redirect),o.integrity&&(this.integrity=o.integrity),o.referrer&&(this.referrer=o.referrer),this.transferCache=o.transferCache}if(this.headers??=new ua,this.context??=new mT,!this.params)this.params=new Es,this.urlWithParams=r;else{let s=this.params.toString();if(s.length===0)this.urlWithParams=r;else{let a=r.indexOf("?"),c=a===-1?"?":a<r.length-1?"&":"";this.urlWithParams=r+c+s}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||I1(this.body)||v1(this.body)||y1(this.body)||YY(this.body)?this.body:this.body instanceof Es?this.body.toString():typeof this.body=="object"||typeof this.body=="boolean"||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return this.body===null||y1(this.body)?null:v1(this.body)?this.body.type||null:I1(this.body)?null:typeof this.body=="string"?C1:this.body instanceof Es?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?N1:null}clone(e={}){let r=e.method||this.method,t=e.url||this.url,i=e.responseType||this.responseType,o=e.keepalive??this.keepalive,s=e.priority||this.priority,a=e.cache||this.cache,c=e.mode||this.mode,l=e.redirect||this.redirect,u=e.credentials||this.credentials,d=e.referrer||this.referrer,f=e.integrity||this.integrity,g=e.transferCache??this.transferCache,p=e.timeout??this.timeout,_=e.body!==void 0?e.body:this.body,T=e.withCredentials??this.withCredentials,D=e.reportProgress??this.reportProgress,b=e.headers||this.headers,G=e.params||this.params,M=e.context??this.context;return e.setHeaders!==void 0&&(b=Object.keys(e.setHeaders).reduce((U,k)=>U.set(k,e.setHeaders[k]),b)),e.setParams&&(G=Object.keys(e.setParams).reduce((U,k)=>U.set(k,e.setParams[k]),G)),new n(r,t,_,{params:G,headers:b,context:M,reportProgress:D,responseType:i,withCredentials:T,transferCache:g,keepalive:o,cache:a,priority:s,timeout:p,mode:c,redirect:l,credentials:u,referrer:d,integrity:f})}},Zc=(function(n){return n[n.Sent=0]="Sent",n[n.UploadProgress=1]="UploadProgress",n[n.ResponseHeader=2]="ResponseHeader",n[n.DownloadProgress=3]="DownloadProgress",n[n.Response=4]="Response",n[n.User=5]="User",n})(Zc||{}),fd=class{headers;status;statusText;url;ok;type;redirected;constructor(e,r=200,t="OK"){this.headers=e.headers||new ua,this.status=e.status!==void 0?e.status:r,this.statusText=e.statusText||t,this.url=e.url||null,this.redirected=e.redirected,this.ok=this.status>=200&&this.status<300}},pT=class n extends fd{constructor(e={}){super(e)}type=Zc.ResponseHeader;clone(e={}){return new n({headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},Eg=class n extends fd{body;constructor(e={}){super(e),this.body=e.body!==void 0?e.body:null}type=Zc.Response;clone(e={}){return new n({body:e.body!==void 0?e.body:this.body,headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0,redirected:e.redirected??this.redirected})}},dd=class extends fd{name="HttpErrorResponse";message;error;ok=!1;constructor(e){super(e,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${e.url||"(unknown url)"}`:this.message=`Http failure response for ${e.url||"(unknown url)"}: ${e.status} ${e.statusText}`,this.error=e.error||null}},XY=200,JY=204;function dC(n,e){return{body:e,headers:n.headers,context:n.context,observe:n.observe,params:n.params,reportProgress:n.reportProgress,responseType:n.responseType,withCredentials:n.withCredentials,credentials:n.credentials,transferCache:n.transferCache,timeout:n.timeout,keepalive:n.keepalive,priority:n.priority,cache:n.cache,mode:n.mode,redirect:n.redirect,integrity:n.integrity,referrer:n.referrer}}var O1=(()=>{class n{handler;constructor(r){this.handler=r}request(r,t,i={}){let o;if(r instanceof ud)o=r;else{let c;i.headers instanceof ua?c=i.headers:c=new ua(i.headers);let l;i.params&&(i.params instanceof Es?l=i.params:l=new Es({fromObject:i.params})),o=new ud(r,t,i.body!==void 0?i.body:null,{headers:c,context:i.context,params:l,reportProgress:i.reportProgress,responseType:i.responseType||"json",withCredentials:i.withCredentials,transferCache:i.transferCache,keepalive:i.keepalive,priority:i.priority,cache:i.cache,mode:i.mode,redirect:i.redirect,credentials:i.credentials,referrer:i.referrer,integrity:i.integrity,timeout:i.timeout})}let s=ue(o).pipe(yS(c=>this.handler.handle(c)));if(r instanceof ud||i.observe==="events")return s;let a=s.pipe(Ct(c=>c instanceof Eg));switch(i.observe||"body"){case"body":switch(o.responseType){case"arraybuffer":return a.pipe(fe(c=>{if(c.body!==null&&!(c.body instanceof ArrayBuffer))throw new oe(2806,!1);return c.body}));case"blob":return a.pipe(fe(c=>{if(c.body!==null&&!(c.body instanceof Blob))throw new oe(2807,!1);return c.body}));case"text":return a.pipe(fe(c=>{if(c.body!==null&&typeof c.body!="string")throw new oe(2808,!1);return c.body}));default:return a.pipe(fe(c=>c.body))}case"response":return a;default:throw new oe(2809,!1)}}delete(r,t={}){return this.request("DELETE",r,t)}get(r,t={}){return this.request("GET",r,t)}head(r,t={}){return this.request("HEAD",r,t)}jsonp(r,t){return this.request("JSONP",r,{params:new Es().append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(r,t={}){return this.request("OPTIONS",r,t)}patch(r,t,i={}){return this.request("PATCH",r,dC(i,t))}post(r,t,i={}){return this.request("POST",r,dC(i,t))}put(r,t,i={}){return this.request("PUT",r,dC(i,t))}static \u0275fac=function(t){return new(t||n)(w(hd))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})();var ZY=new Z("");function w1(n,e){return e(n)}function e7(n,e){return(r,t)=>e.intercept(r,{handle:i=>n(i,t)})}function t7(n,e,r){return(t,i)=>fo(r,()=>e(t,o=>n(o,i)))}var b1=new Z(""),fC=new Z(""),L1=new Z(""),gC=new Z("",{providedIn:"root",factory:()=>!0});function n7(){let n=null;return(e,r)=>{n===null&&(n=(ne(b1,{optional:!0})??[]).reduceRight(e7,w1));let t=ne(Io);if(ne(gC)){let o=t.add();return n(e,r).pipe(Sc(o))}else return n(e,r)}}var ET=(()=>{class n extends hd{backend;injector;chain=null;pendingTasks=ne(Io);contributeToStability=ne(gC);constructor(r,t){super(),this.backend=r,this.injector=t}handle(r){if(this.chain===null){let t=Array.from(new Set([...this.injector.get(fC),...this.injector.get(L1,[])]));this.chain=t.reduceRight((i,o)=>t7(i,o,this.injector),w1)}if(this.contributeToStability){let t=this.pendingTasks.add();return this.chain(r,i=>this.backend.handle(i)).pipe(Sc(t))}else return this.chain(r,t=>this.backend.handle(t))}static \u0275fac=function(t){return new(t||n)(w(pg),w(Kn))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})();var r7=/^\)\]\}',?\n/,i7=RegExp(`^${R1}:`,"m");function o7(n){return"responseURL"in n&&n.responseURL?n.responseURL:i7.test(n.getAllResponseHeaders())?n.getResponseHeader(R1):null}var hC=(()=>{class n{xhrFactory;constructor(r){this.xhrFactory=r}handle(r){if(r.method==="JSONP")throw new oe(-2800,!1);let t=this.xhrFactory;return ue(null).pipe(mt(()=>new ge(o=>{let s=t.build();if(s.open(r.method,r.urlWithParams),r.withCredentials&&(s.withCredentials=!0),r.headers.forEach((T,D)=>s.setRequestHeader(T,D.join(","))),r.headers.has(A1)||s.setRequestHeader(A1,QY),!r.headers.has(S1)){let T=r.detectContentTypeHeader();T!==null&&s.setRequestHeader(S1,T)}if(r.timeout&&(s.timeout=r.timeout),r.responseType){let T=r.responseType.toLowerCase();s.responseType=T!=="json"?T:"text"}let a=r.serializeBody(),c=null,l=()=>{if(c!==null)return c;let T=s.statusText||"OK",D=new ua(s.getAllResponseHeaders()),b=o7(s)||r.url;return c=new pT({headers:D,status:s.status,statusText:T,url:b}),c},u=()=>{let{headers:T,status:D,statusText:b,url:G}=l(),M=null;D!==JY&&(M=typeof s.response>"u"?s.responseText:s.response),D===0&&(D=M?XY:0);let U=D>=200&&D<300;if(r.responseType==="json"&&typeof M=="string"){let k=M;M=M.replace(r7,"");try{M=M!==""?JSON.parse(M):null}catch(S){M=k,U&&(U=!1,M={error:S,text:M})}}U?(o.next(new Eg({body:M,headers:T,status:D,statusText:b,url:G||void 0})),o.complete()):o.error(new dd({error:M,headers:T,status:D,statusText:b,url:G||void 0}))},d=T=>{let{url:D}=l(),b=new dd({error:T,status:s.status||0,statusText:s.statusText||"Unknown Error",url:D||void 0});o.error(b)},f=d;r.timeout&&(f=T=>{let{url:D}=l(),b=new dd({error:new DOMException("Request timed out","TimeoutError"),status:s.status||0,statusText:s.statusText||"Request timeout",url:D||void 0});o.error(b)});let g=!1,p=T=>{g||(o.next(l()),g=!0);let D={type:Zc.DownloadProgress,loaded:T.loaded};T.lengthComputable&&(D.total=T.total),r.responseType==="text"&&s.responseText&&(D.partialText=s.responseText),o.next(D)},_=T=>{let D={type:Zc.UploadProgress,loaded:T.loaded};T.lengthComputable&&(D.total=T.total),o.next(D)};return s.addEventListener("load",u),s.addEventListener("error",d),s.addEventListener("timeout",f),s.addEventListener("abort",d),r.reportProgress&&(s.addEventListener("progress",p),a!==null&&s.upload&&s.upload.addEventListener("progress",_)),s.send(a),o.next({type:Zc.Sent}),()=>{s.removeEventListener("error",d),s.removeEventListener("abort",d),s.removeEventListener("load",u),s.removeEventListener("timeout",f),r.reportProgress&&(s.removeEventListener("progress",p),a!==null&&s.upload&&s.upload.removeEventListener("progress",_)),s.readyState!==s.DONE&&s.abort()}})))}static \u0275fac=function(t){return new(t||n)(w(Jc))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),M1=new Z(""),s7="XSRF-TOKEN",a7=new Z("",{providedIn:"root",factory:()=>s7}),c7="X-XSRF-TOKEN",l7=new Z("",{providedIn:"root",factory:()=>c7}),_g=class{},u7=(()=>{class n{doc;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(r,t){this.doc=r,this.cookieName=t}getToken(){let r=this.doc.cookie||"";return r!==this.lastCookieString&&(this.parseCount++,this.lastToken=dg(r,this.cookieName),this.lastCookieString=r),this.lastToken}static \u0275fac=function(t){return new(t||n)(w(Dn),w(a7))};static \u0275prov=K({token:n,factory:n.\u0275fac})}return n})(),d7=/^(?:https?:)?\/\//i;function h7(n,e){if(!ne(M1)||n.method==="GET"||n.method==="HEAD"||d7.test(n.url))return e(n);let r=ne(_g).getToken(),t=ne(l7);return r!=null&&!n.headers.has(t)&&(n=n.clone({headers:n.headers.set(t,r)})),e(n)}var mC=(function(n){return n[n.Interceptors=0]="Interceptors",n[n.LegacyInterceptors=1]="LegacyInterceptors",n[n.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",n[n.NoXsrfProtection=3]="NoXsrfProtection",n[n.JsonpSupport=4]="JsonpSupport",n[n.RequestsMadeViaParent=5]="RequestsMadeViaParent",n[n.Fetch=6]="Fetch",n})(mC||{});function f7(n,e){return{\u0275kind:n,\u0275providers:e}}function g7(...n){let e=[O1,hC,ET,{provide:hd,useExisting:ET},{provide:pg,useFactory:()=>ne(ZY,{optional:!0})??ne(hC)},{provide:fC,useValue:h7,multi:!0},{provide:M1,useValue:!0},{provide:_g,useClass:u7}];for(let r of n)e.push(...r.\u0275providers);return pr(e)}var D1=new Z("");function m7(){return f7(mC.LegacyInterceptors,[{provide:D1,useFactory:n7},{provide:fC,useExisting:D1,multi:!0}])}var pC=(()=>{class n{static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:function(t){let i=null;return t?i=new(t||n):i=w(p7),i},providedIn:"root"})}return n})(),p7=(()=>{class n extends pC{_doc;constructor(r){super(),this._doc=r}sanitize(r,t){if(t==null)return null;switch(r){case si.NONE:return t;case si.HTML:return So(t,"HTML")?Br(t):P_(this._doc,String(t)).toString();case si.STYLE:return So(t,"Style")?Br(t):t;case si.SCRIPT:if(So(t,"Script"))return Br(t);throw new oe(5200,!1);case si.URL:return So(t,"URL")?Br(t):Hf(String(t));case si.RESOURCE_URL:if(So(t,"ResourceURL"))return Br(t);throw new oe(5201,!1);default:throw new oe(5202,!1)}}bypassSecurityTrustHtml(r){return WD(r)}bypassSecurityTrustStyle(r){return zD(r)}bypassSecurityTrustScript(r){return qD(r)}bypassSecurityTrustUrl(r){return KD(r)}bypassSecurityTrustResourceUrl(r){return YD(r)}static \u0275fac=function(t){return new(t||n)(w(Dn))};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var st={production:!1,staging:!0,firebaseLogLevel:"error",firebaseConfig:{apiKey:"AIzaSyAzcW2n1JhY_zhkXmuFcwe550AkwmYeJ0w",authDomain:"snipply-sdk-staging.firebaseapp.com",projectId:"snipply-sdk-staging",storageBucket:"snipply-sdk-staging.appspot.com",messagingSenderId:"877538579326",appId:"1:877538579326:web:f793f73f2b7dc770c4992f"},firebaseNotificationsDatabaseURL:"https://snipply-sdk-staging-notifications.firebaseio.com",segmentAnalyticsWriteKey:"ndJ0KZs5LkL6jny5a43FXXQkTF5bgPFt",useEmulators:!1,debugMode:!1,cloudFunction:{sa:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/sa",getIceServers:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/geticeservers",validateClient:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/validateclient",convertRecording:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/convertrecordingv2",chatgptCompletion:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/chatgptcompletion",rewriterAskAi:"https://staging.velt.dev/v2/rewriter/ask-ai",whisperTranscription:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/whispertranscription",getPlanDetails:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/getplandetails",getAllowedDocuments:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/getalloweddocuments",getNotificationsForDocuments:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/getnotificationsfordocuments",videoBackend:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/videobackend",processRecording:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/processrecording",sdkProxy:"https://staging.velt.dev/v2/core/a",screenshot:"https://staging.velt.dev/v2/screenshots/capture",usCentral1:{setEncryptedData:"https://us-central1-snipply-sdk-staging.cloudfunctions.net/setencrypteddata"},asiaSouthEast1:{setEncryptedData:"https://asia-southeast1-snipply-sdk-staging.cloudfunctions.net/setencrypteddataau"},europeWest1:{setEncryptedData:"https://europe-west1-snipply-sdk-staging.cloudfunctions.net/setencrypteddataeu"},asiaNorthEast1:{setEncryptedData:"https://asia-northeast1-snipply-sdk-staging.cloudfunctions.net/setencrypteddatajp"},australiaSouthEast1:{setEncryptedData:"https://australia-southeast1-snipply-sdk-staging.cloudfunctions.net/setencrypteddataau1"}}};var Ie=(function(n){return n.NEWLY_ADDED="newlyAdded",n.ADDED="added",n.UPDATED="updated",n.DELETED="deleted",n.APPROVED="approved",n.ASSIGNED="assigned",n.STATUS_CHANGED="statusChanged",n.PRIORITY_CHANGED="priorityChanged",n.ACCESS_MODE_CHANGED="accessModeChanged",n.CUSTOM_LIST_CHANGED="customListChanged",n.ACCEPTED="accepted",n.REJECTED="rejected",n.REACTION_ADDED="reactionAdded",n.REACTION_DELETED="reactionDeleted",n.SUBSCRIBED="subscribed",n.UNSUBSCRIBED="unsubscribed",n.SUGGESTION_ACCEPTED="suggestionAccepted",n.SUGGESTION_REJECTED="suggestionRejected",n})(Ie||{}),Qt=(function(n){return n.COMMENT_ANNOTATION_ADD="comment_annotation.add",n.COMMENT_ANNOTATION_DELETE="comment_annotation.delete",n.COMMENT_ADD="comment.add",n.COMMENT_DELETE="comment.delete",n.COMMENT_UPDATE="comment.update",n.REACTION_ADD="reaction.add",n.REACTION_DELETE="reaction.delete",n.ATTACHMENT_ADD="attachment.add",n.ATTACHMENT_DELETE="attachment.delete",n.RECORDER_ANNOTATION_ADD="recorder_annotation.add",n.RECORDER_ANNOTATION_UPDATE="recorder_annotation.update",n.RECORDER_ANNOTATION_DELETE="recorder_annotation.delete",n.ACTIVITY_SAVE="activity.save",n})(Qt||{}),Xn=(function(n){return n.STATUS_CHANGE="comment_annotation.status_change",n.PRIORITY_CHANGE="comment_annotation.priority_change",n.ASSIGN="comment_annotation.assign",n.ACCESS_MODE_CHANGE="comment_annotation.access_mode_change",n.CUSTOM_LIST_CHANGE="comment_annotation.custom_list_change",n.APPROVE="comment_annotation.approve",n.ACCEPT="comment.accept",n.REJECT="comment.reject",n.SUGGESTION_ACCEPT="comment_annotation.suggestion_accept",n.SUGGESTION_REJECT="comment_annotation.suggestion_reject",n.REACTION_ADD="comment.reaction_add",n.REACTION_DELETE="comment.reaction_delete",n.SUBSCRIBE="comment_annotation.subscribe",n.UNSUBSCRIBE="comment_annotation.unsubscribe",n})(Xn||{}),pAe={ADD_COMMENT_ANNOTATION:"addCommentAnnotation",ADD_COMMENT_ANNOTATION_DRAFT:"addCommentAnnotationDraft",DELETE_COMMENT_ANNOTATION:"deleteCommentAnnotation",APPROVE_COMMENT_ANNOTATION:"approveCommentAnnotation",ACCEPT_COMMENT_ANNOTATION:"acceptCommentAnnotation",REJECT_COMMENT_ANNOTATION:"rejectCommentAnnotation",SUBSCRIBE_COMMENT_ANNOTATION:"subscribeCommentAnnotation",UNSUBSCRIBE_COMMENT_ANNOTATION:"unsubscribeCommentAnnotation",ASSIGN_USER:"assignUser",UPDATE_STATUS:"updateStatus",UPDATE_PRIORITY:"updatePriority",UPDATE_ACCESS:"updateAccess",RESOLVE_COMMENT:"resolveComment",ADD_COMMENT:"addComment",ADD_COMMENT_DRAFT:"addCommentDraft",UPDATE_COMMENT:"updateComment",DELETE_COMMENT:"deleteComment",ADD_ATTACHMENT:"addAttachment",DELETE_ATTACHMENT:"deleteAttachment",DELETE_RECORDING:"deleteRecording",COPY_LINK:"copyLink",ADD_REACTION:"addReaction",DELETE_REACTION:"deleteReaction",TOGGLE_REACTION:"toggleReaction",COMMENT_SIDEBAR_DATA_INIT:"commentSidebarDataInit",COMMENT_SIDEBAR_DATA_UPDATE:"commentSidebarDataUpdate",AUTOCOMPLETE_SEARCH:"autocompleteSearch",COMPOSER_CLICKED:"composerClicked",COMPOSER_TEXT_CHANGE:"composerTextChange",LINK_CLICKED:"linkClicked",COMMENT_PIN_CLICKED:"commentPinClicked",COMMENT_BUBBLE_CLICKED:"commentBubbleClicked",COMMENT_TOOL_CLICK:"commentToolClick",COMMENT_TOOL_CLICKED:"commentToolClicked",SIDEBAR_BUTTON_CLICK:"sidebarButtonClick",SIDEBAR_BUTTON_CLICKED:"sidebarButtonClicked",ATTACHMENT_DOWNLOAD_CLICKED:"attachmentDownloadClicked",COMMENT_SAVED:"commentSaved",COMMENT_SAVE_TRIGGERED:"commentSaveTriggered",VISIBILITY_OPTION_CLICKED:"visibilityOptionClicked",SUGGESTION_ACCEPTED:"suggestionAccepted",SUGGESTION_REJECTED:"suggestionRejected"},EAe={TRANSCRIPTION_DONE:"transcriptionDone",RECORDING_DONE:"recordingDone",RECORDING_EDIT_DONE:"recordingEditDone",DELETE_RECORDING:"deleteRecording",ERROR:"error",RECORDING_SAVE_INITIATED:"recordingSaveInitiated",RECORDING_STARTED:"recordingStarted",RECORDING_PAUSED:"recordingPaused",RECORDING_RESUMED:"recordingResumed",RECORDING_CANCELLED:"recordingCancelled",RECORDING_STOPPED:"recordingStopped",RECORDING_DONE_LOCAL:"recordingDoneLocal"},_Ae={TEXT_SELECTED:"textSelected"},TAe={SUGGESTION_CREATED:"suggestionCreated",SUGGESTION_APPROVED:"suggestionApproved",SUGGESTION_REJECTED:"suggestionRejected",SUGGESTION_STALE:"suggestionStale",TARGET_EDIT_START:"targetEditStart",TARGET_EDIT_COMMIT:"targetEditCommit"},$={PERMISSION_PROVIDER:"permissionProvider",USER_RESOLVER:"userResolver",COMMENT_RESOLVER:"commentResolver",ATTACHMENT_RESOLVER:"attachmentResolver",REACTION_RESOLVER:"reactionResolver",RECORDER_RESOLVER:"recorderResolver",NOTIFICATION_RESOLVER:"notificationResolver",ACTIVITY_RESOLVER:"activityResolver",VELT_BUTTON_CLICK:"veltButtonClick",USER_UPDATE:"userUpdate",INIT_UPDATE:"initUpdate",DOCUMENT_INIT:"documentInit",ERROR:"error"},IAe={ACCESS_REQUESTED:"accessRequested",ACCESS_REQUEST_CANCELED:"accessRequestCanceled",ACCESS_ACCEPTED:"accessAccepted",ACCESS_REJECTED:"accessRejected",EDITOR_ASSIGNED:"editorAssigned",VIEWER_ASSIGNED:"viewerAssigned",EDITOR_ON_DIFFERENT_TAB_DETECTED:"editorOnDifferentTabDetected"},vAe={MULTIPLE_USERS_ONLINE:"multipleUsersOnline",USER_STATE_CHANGE:"userStateChange"},yAe={SETTINGS_UPDATED:"settingsUpdated"},SAe={UPDATE_DATA:"updateData"},_7=(function(n){return n.ADDED="added",n.UPDATED="updated",n.DELETED="deleted",n.APPROVED="approved",n.RESOLVED="resolved",n})(_7||{}),T7=(function(n){return n.INVITE="invite",n.REMOVE="remove",n})(T7||{}),I7=(function(n){return n.CREATED="created",n.JOINED="joined",n})(I7||{}),v7=(function(n){return n.UPDATE_DATA="updateData",n})(v7||{}),_T=(function(n){return n.ADDED="added",n.UPDATED="updated",n.DELETED="deleted",n.APPROVED="approved",n.RESOLVED="resolved",n})(_T||{}),y7=(function(n){return n.ADDED="added",n.UPDATED="updated",n.DELETED="deleted",n})(y7||{}),S7=(function(n){return n.ADDED="added",n.UPDATED="updated",n.DELETED="deleted",n})(S7||{}),A7=(function(n){return n.FIRST_VIEWED="firstViewed",n})(A7||{}),EC=(function(n){return n.AREA="area",n.ARROW="arrow",n.AUDIO_HUDDLE="audioHuddle",n.COMMENT="comment",n.MULTI_THREAD="multiThread",n.CURSOR="cursor",n.HUDDLE="huddle",n.LIVE_STATE_SYNC="liveStateSync",n.PRESENCE="presence",n.TAG="tag",n.RECORDER="recorder",n.REWRITER="rewriter",n.LIVE_SELECTION="liveSelection",n.NOTIFICATION="notification",n.REACTION="reaction",n.ACTIVITY="activity",n.VIEWS="views",n.USER_INVITE="userInvite",n.USER_REQUEST="userRequest",n.VIDEO_PLAYER="videoPlayer",n.CRDT="crdt",n})(EC||{}),D7=(function(n){return n.AREA="area",n.ARROW="arrow",n.AUDIO_HUDDLE="audioHuddle",n.COMMENT="comment",n.MULTI_THREAD="multiThread",n.CURSOR="cursor",n.HUDDLE="huddle",n.LIVE_STATE_SYNC="liveStateSync",n.PRESENCE="presence",n.TAG="tag",n.RECORDER="recorder",n.REWRITER="rewriter",n.LIVE_SELECTION="liveSelection",n.NOTIFICATION="notification",n.REACTION="reaction",n.AREA_COMMENT="areaComment",n.INLINE_COMMENT="inlineComment",n.COMMENT_SIDEBAR="commentSidebar",n})(D7||{}),$r=(function(n){return n.DESKTOP="Desktop",n.MOBILE="Mobile",n.TABLET="Tablet",n.MONITOR="Monitor",n.UNKNOWN="Unknown",n})($r||{}),gd=(function(n){return n.PORTRAIT="portrait",n.LANDSCAPE="landscape",n.UNKNOWN="unknown",n})(gd||{}),TT=(function(n){return n.Portrait="(orientation: portrait)",n.Landscape="(orientation: landscape)",n})(TT||{}),R7=(function(n){return n.DIFFERENT_DEVICE="differentDevice",n.ELEMENT_DELETED="elementDeleted",n})(R7||{}),md=(function(n){return n.ADMIN="Admin",n.COMMENTER="Commenter",n})(md||{}),wt=(function(n){return n.PUBLIC="public",n.RESTRICTED="restricted",n.ORGANIZATION_PRIVATE="organizationPrivate",n})(wt||{}),C7=(function(n){return n.DEFAULT="default",n.DYNAMIC_ID="dynamicId",n})(C7||{}),Tg=(function(n){return n.PUBLIC="public",n.PRIVATE="private",n})(Tg||{}),N7=(function(n){return n.MINIMAL="minimal",n.VERBOSE="verbose",n})(N7||{}),O7=(function(n){return n.DEFAULT="default",n.EXPANDED="expanded",n})(O7||{}),w7=(function(n){return n.TOTAL="total",n.UNREAD="unread",n})(w7||{}),b7=(function(n){return n.ONLINE="online",n.OFFLINE="offline",n.PENDING_INIT="pendingInit",n.PENDING_DATA="pendingData",n})(b7||{}),L7=(function(n){return n.ALL="all",n.ORGANIZATION="organization",n.ORGANIZATION_USER_GROUP="organizationUserGroup",n.DOCUMENT="document",n.FOLDER="folder",n})(L7||{}),M7=(function(n){return n.AND="and",n.OR="or",n})(M7||{}),P7=(function(n){return n.RESTRICTED_SELF="restrictedSelf",n.RESTRICTED_SELECTED_PEOPLE="restrictedSelectedPeople",n.ORGANIZATION_PRIVATE="organizationPrivate",n.PUBLIC="public",n})(P7||{});var q=class q{};q.SNIPPYLY_HOST_URL_PROD="https://snippyly.com",q.SNIPPYLY_HOST_URL_STAGING="https://snippyly-staging.web.app",q.USER_TYPE_ANONYMOUS="anonymous",q.USER_TYPE_SIGNED_IN="signedIn",q.LOCALSTORAGE_DATA_ID="snippylytempdata",q.NO_ORGANIZATION_ID="veltNoOrganization",q.DEFAULT_QUERY_HASH="default",q.LISTENER_BATCH_SIZE=5,q.LISTENER_CONTEXT_BATCH_SIZE=25,q.DEFAULT_VELT_CONTEXT="default:velt",q.VISIBILITY_SELF_PREFIX="__velt_private_self:",q.FIREBASE_PARTIAL_PATH_ORGANIZATIONS="organizations",q.FIREBASE_PARTIAL_PATH_FOLDERS="folders",q.FIREBASE_PARTIAL_PATH_DOCS="docs",q.FIREBASE_PARTIAL_PATH_DOCUMENT_CONFIGURATIONS="documentConfigurations",q.FIREBASE_PARTIAL_PATH_PRESENCE="presence",q.FIREBASE_PARTIAL_PATH_ORGANIZATION_USERS="orgIamUsers",q.FIREBASE_PARTIAL_PATH_CENTRAL_USERS="users",q.FIREBASE_PARTIAL_PATH_FOLDER_USERS="folderIamUsers",q.FIREBASE_PARTIAL_PATH_DOCUMENT_USERS="docIamUsers",q.FIREBASE_PARTIAL_PATH_CURSOR="cursor",q.FIREBASE_PARTIAL_PATH_ARROW="arrow",q.FIREBASE_PARTIAL_PATH_AREA="area",q.FIREBASE_PARTIAL_PATH_COMMENT="comment",q.FIREBASE_PARTIAL_PATH_LOCATION="location",q.FIREBASE_PARTIAL_PATH_MULTI_THREAD="multiThread",q.FIREBASE_PARTIAL_PATH_TAG="tag",q.FIREBASE_PARTIAL_PATH_SELECTION="selection",q.FIREBASE_PARTIAL_PATH_AUDIO_HUDDLE="audioHuddle",q.FIREBASE_PARTIAL_PATH_HUDDLE="huddle",q.FIREBASE_PARTIAL_PATH_CONTACTS="contacts",q.FIREBASE_PARTIAL_PATH_GROUPS="groups",q.FIREBASE_PARTIAL_PATH_NOTIFICATION_DOCS="notificationsDocs",q.FIREBASE_PARTIAL_PATH_NOTIFICATION_USERS="notificationsUsers",q.FIREBASE_PARTIAL_PATH_DOC_NOTIFICATION="notificationsDocs__notification",q.FIREBASE_PARTIAL_PATH_USER_NOTIFICATION="notificationsUsers__notification",q.FIREBASE_PARTIAL_PATH_USER_NOTIFICATION_INDEX="userNotificationIndex",q.FIREBASE_PARTIAL_PATH_GLOBAL="global",q.FIREBASE_PARTIAL_PATH_LOGINS="logins",q.FIREBASE_PARTIAL_PATH_METADATA="metadata",q.FIREBASE_PARTIAL_PATH_ORGANIZATION_METADATA="metadata",q.FIREBASE_PARTIAL_PATH_ORGANIZATION_GROUPS="groups",q.FIREBASE_PARTIAL_PATH_LOCATIONS="locations",q.FIREBASE_PARTIAL_PATH_RECORDER="recorder",q.FIREBASE_PARTIAL_PATH_FOLLOW_ALONG="flock",q.FIREBASE_PARTIAL_PATH_SYNC_VIDEO_PLAYER="syncVideoPlayer",q.FIREBASE_PARTIAL_PATH_LIVE_STATE="liveState",q.FIREBASE_PARTIAL_PATH_IAM="iam",q.FIREBASE_PARTIAL_PATH_REACTION="reaction",q.FIREBASE_PARTIAL_PATH_CRDT="crdt",q.FIREBASE_PARTIAL_PATH_VIEWS="views",q.FIREBASE_PARTIAL_PATH_NOTIFICATION_VIEWS="notificationViews",q.FIREBASE_PARTIAL_PATH_DOCUMENT_VIEWS="documentViews",q.FIREBASE_PARTIAL_PATH_LOCATION_VIEWS="locationViews",q.FIREBASE_PARTIAL_PATH_NOTIFICATIONS="notifications",q.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS="notifications",q.FIREBASE_PARTIAL_PATH_LAST_NOTIFICATION_TIMESTAMP="lastNotificationTimestamp",q.FIREBASE_PARTIAL_PATH_ACTIVITIES="activities",q.FIREBASE_PARTIAL_PATH_LAST_ACTIVITY_TIMESTAMP="lastActivityTimestamp",q.FIREBASE_PARTIAL_PATH_HEARTBEAT="heartbeat",q.FIREBASE_PARTIAL_PATH_HEARTBEAT_BY_DOCUMENT="heartbeatByDocument",q.FIREBASE_PARTIAL_PATH_USERS="users",q.FIREBASE_PARTIAL_PATH_PERMISSIONS_USERS="permissions",q.FIREBASE_PARTIAL_PATH_USER_REQUESTS="userRequests",q.FIREBASE_PARTIAL_PATH_FEEDBACK="feedback",q.FIREBASE_PARTIAL_PATH_BUGS="bugs",q.FIREBASE_PARTIAL_PATH_CONTACT_US="contactUs",q.FIREBASE_PARTIAL_PATH_CUSTOMER_METADATA="metadata",q.PRESENCE_STATUS_ONLINE="online",q.PRESENCE_STATUS_OFFLINE="offline",q.PRESENCE_STATUS_AWAY="away",q.IMG_URL_NOT_FOUND="https://snippyly.com/assets/icons/anon-user.svg",q.IMG_CLASS_NOT_FOUND="presence-avatar-image-small",q.AVATAR_COLOR_LIST=["#a259fe","#9746ff","#19bcfe","#FE8947","#2c83fc","#0dcf82","#ffcb00","#ff7162","#FFD600","#A5A7FE","#67DBF4","#FDA192"],q.TEXT_COLOR_MAP={"#a259fe":"#ffffff","#9746ff":"#ffffff","#19bcfe":"#ffffff","#FE8947":"#ffffff","#2c83fc":"#ffffff","#0dcf82":"#141416","#ffcb00":"#141416","#ff7162":"#ffffff","#FFD600":"#141416","#A5A7FE":"#141416","#67DBF4":"#141416","#FDA192":"#141416"},q.UNREAD_COMMENTS_CHECK_FROM_DATE="2024-02-05",q.DEFAULT_ANNOTATION_COLOR="#a259fe",q.REGEX_EMAIL=/(\+|@)+([a-zA-Z0-9._+-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)/gi,q.REGEX_URL=/((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)(?::[0-9]+)?((?:\/[\+~%\/\.\w\-_]*)?\??(?:[\-\+=&;%@\.\w_0-9]*)#?(?:[\.\!\/\\\w0-9=]*))?)/gi,q.REGEX_URL_FOR_USER_NAME=/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/gi,q.REGEX_SPECIAL_CHARS=/[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/,q.SNIPPYLY_HIGHLIGHT="snippyly-highlight",q.SNIPPYLY_HIGHLIGHT_PREVIEW="snippyly-highlight-preview",q.SNIPPYLY_HIGHLIGHT_USER="snippyly-highlight-user",q.SNIPPYLY_HIGHLIGHT_USER_NAME="snippyly-highlight-user-name",q.SNIPPYLY_HIGHLIGHT_USER_TEXT="snippyly-highlight-user-text",q.VELT_LIVE_SELECTION_ON_ELEMENT="velt-live-selection-on-element",q.VELT_LIVE_SELECTION_ON_ELEMENT_DEFAULT="velt-live-selection-on-element-default",q.VELT_LIVE_SELECTION_ON_TEXT="velt-live-selection-on-text",q.VELT_LIVE_SELECTION_ON_TEXT_DEFAULT="velt-live-selection-on-text-default",q.VELT_IGNORE_CHANGE_DETECTION="velt-ignore-change-detection",q.VELT_CUSTOM_CSS="velt-custom-css",q.TAGS={SNIPPYLY_ROOT:"snippyly-root",SNIPPYLY_PRESENCE:"snippyly-presence",SNIPPYLY_CURSOR:"snippyly-cursor",SNIPPYLY_COMMENT_TOOL:"snippyly-comment-tool",SNIPPYLY_COMMENTS:"snippyly-comments",SNIPPYLY_TAG_TOOL:"snippyly-tag-tool",SNIPPYLY_TAGS:"snippyly-tags",SNIPPYLY_RECORDER_NOTES:"snippyly-recorder-notes",SNIPPYLY_RECORDER_CONTROL_PANEL:"snippyly-recorder-control-panel",SNIPPYLY_RECORDER_CONTROL_PANEL_INTERNAL:"snippyly-recorder-control-panel-internal",SNIPPYLY_RECORDER_PLAYER:"snippyly-recorder-player",SNIPPYLY_TEXT_HIGHLIGHT:"snippyly-text-highlight",SNIPPYLY_COMMENT_TEXT_PORTAL:"snippyly-comment-text-portal",SNIPPYLY_COMMENT_TEXT:"snippyly-comment-text",SNIPPYLY_COMMENTS_SIDEBAR:"snippyly-comments-sidebar",SNIPPYLY_COMMENT_BUBBLE:"snippyly-comment-bubble",SNIPPYLY_HIGHLIGHT_USER_TEXT:"snippyly-highlight-user-text",SNIPPYLY_AUDIO_HUDDLE:"snippyly-audio-huddle",SNIPPYLY_VIDEO_HUDDLE:"snippyly-video-huddle",SNIPPYLY_HUDDLE:"snippyly-huddle",SNIPPYLY_HUDDLE_TOOL:"snippyly-huddle-tool",SNIPPYLY_RECORDER_TOOL:"snippyly-recorder-tool",SNIPPYLY_PLUGIN:"snippyly-plugin",SNIPPYLY_MENU:"snippyly-menu",SNIPPYLY_COMMENT_DIALOG:"snippyly-comment-dialog",SNIPPYLY_SIDEBAR_BUTTON:"snippyly-sidebar-button",SNIPPYLY_REWRITER:"snippyly-rewriter",SNIPPYLY_USER_INVITE_TOOL:"snippyly-user-invite-tool",SNIPPYLY_USER_REQUEST_TOOL:"snippyly-user-request-tool",SNIPPYLY_USER_AVATAR:"snippyly-user-avatar",SNIPPYLY_ARROW_TOOL:"snippyly-arrow-tool",SNIPPYLY_ARROWS:"snippyly-arrows",SNIPPYLY_AREA_TOOL:"snippyly-area-tool",SNIPPYLY_AREAS:"snippyly-areas",VELT_ROOT:"velt-root",VELT_PRESENCE:"velt-presence",VELT_CURSOR:"velt-cursor",VELT_COMMENT_TOOL:"velt-comment-tool",VELT_COMMENTS:"velt-comments",VELT_TAG_TOOL:"velt-tag-tool",VELT_TAGS:"velt-tags",VELT_RECORDER_NOTES:"velt-recorder-notes",VELT_RECORDER_CONTROL_PANEL:"velt-recorder-control-panel",VELT_RECORDER_CONTROL_PANEL_EMBED:"velt-recorder-control-panel-embed",SNIPPYLY_RECORDER_CONTROL_PANEL_EMBED:"snippyly-recorder-control-panel-embed",VELT_RECORDER_PLAYER:"velt-recorder-player",VELT_RECORDER_PLAYER_EMBED:"velt-recorder-player-embed",SNIPPYLY_RECORDER_PLAYER_EMBED:"snippyly-recorder-player-embed",VELT_VIDEO_EDITOR:"velt-video-editor",VELT_TEXT_HIGHLIGHT:"velt-text-highlight",VELT_COMMENT_TEXT_PORTAL:"velt-comment-text-portal",VELT_COMMENTS_SIDEBAR:"velt-comments-sidebar",VELT_COMMENTS_SIDEBAR_V2:"velt-comments-sidebar-v2",VELT_COMMENT_SIDEBAR_SKELETON_V2:"velt-comment-sidebar-skeleton-v2",VELT_COMMENT_SIDEBAR_PANEL_V2:"velt-comment-sidebar-panel-v2",VELT_COMMENT_SIDEBAR_LIST_V2:"velt-comment-sidebar-list-v2",VELT_COMMENT_SIDEBAR_LIST_ITEM_V2:"velt-comment-sidebar-list-item-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_V2:"velt-comment-sidebar-filter-dropdown-content-list-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_CATEGORY_V2:"velt-comment-sidebar-filter-dropdown-content-list-category-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_CATEGORY_LABEL_V2:"velt-comment-sidebar-filter-dropdown-content-list-category-label-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_CATEGORY_CONTENT_V2:"velt-comment-sidebar-filter-dropdown-content-list-category-content-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_ITEM_V2:"velt-comment-sidebar-filter-dropdown-content-list-item-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_ITEM_INDICATOR_V2:"velt-comment-sidebar-filter-dropdown-content-list-item-indicator-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_ITEM_LABEL_V2:"velt-comment-sidebar-filter-dropdown-content-list-item-label-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_LIST_ITEM_COUNT_V2:"velt-comment-sidebar-filter-dropdown-content-list-item-count-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_V2:"velt-comment-sidebar-filter-dropdown-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_TRIGGER_V2:"velt-comment-sidebar-filter-dropdown-trigger-v2",VELT_COMMENT_SIDEBAR_FILTER_DROPDOWN_CONTENT_V2:"velt-comment-sidebar-filter-dropdown-content-v2",VELT_COMMENT_SIDEBAR_FILTER_BUTTON_V2:"velt-comment-sidebar-filter-button-v2",VELT_COMMENT_SIDEBAR_FILTER_BUTTON_V2_APPLIED_ICON:"velt-comment-sidebar-filter-button-v2-applied-icon",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2:"velt-comment-sidebar-filter-container-v2",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION:"velt-comment-sidebar-filter-container-v2-section",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_FIELD:"velt-comment-sidebar-filter-container-v2-section-field",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_LIST:"velt-comment-sidebar-filter-container-v2-section-list",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_LABEL:"velt-comment-sidebar-filter-container-v2-section-label",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_CONTROL:"velt-comment-sidebar-filter-container-v2-section-control",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_OPTION_LIST:"velt-comment-sidebar-filter-container-v2-section-option-list",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_OPTION:"velt-comment-sidebar-filter-container-v2-section-option",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_OPTION_CHECKBOX:"velt-comment-sidebar-filter-container-v2-section-option-checkbox",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_CONTROL_VALUE:"velt-comment-sidebar-filter-container-v2-section-control-value",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_CONTROL_CHIP:"velt-comment-sidebar-filter-container-v2-section-control-chip",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_CONTROL_CHIP_LIST:"velt-comment-sidebar-filter-container-v2-section-control-chip-list",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_CONTROL_SEARCH:"velt-comment-sidebar-filter-container-v2-section-control-search",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_CONTROL_CHEVRON:"velt-comment-sidebar-filter-container-v2-section-control-chevron",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_OPTION_NAME:"velt-comment-sidebar-filter-container-v2-section-option-name",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_SECTION_OPTION_COUNT:"velt-comment-sidebar-filter-container-v2-section-option-count",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_TITLE:"velt-comment-sidebar-filter-container-v2-title",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_CLOSE_BUTTON:"velt-comment-sidebar-filter-container-v2-close-button",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_GROUP_BY:"velt-comment-sidebar-filter-container-v2-group-by",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_RESET_BUTTON:"velt-comment-sidebar-filter-container-v2-reset-button",VELT_COMMENT_SIDEBAR_FILTER_CONTAINER_V2_APPLY_BUTTON:"velt-comment-sidebar-filter-container-v2-apply-button",VELT_COMMENT_SIDEBAR_SEARCH_V2:"velt-comment-sidebar-search-v2",VELT_COMMENT_SIDEBAR_SEARCH_V2_ICON:"velt-comment-sidebar-search-v2-icon",VELT_COMMENT_SIDEBAR_SEARCH_V2_INPUT:"velt-comment-sidebar-search-v2-input",VELT_COMMENT_SIDEBAR_FULLSCREEN_BUTTON_V2:"velt-comment-sidebar-fullscreen-button-v2",VELT_COMMENT_SIDEBAR_LIST_GROUP_HEADER_V2:"velt-comment-sidebar-list-group-header-v2",VELT_COMMENT_SIDEBAR_LIST_GROUP_HEADER_V2_LABEL:"velt-comment-sidebar-list-group-header-v2-label",VELT_COMMENT_SIDEBAR_LIST_GROUP_HEADER_V2_COUNT:"velt-comment-sidebar-list-group-header-v2-count",VELT_COMMENT_SIDEBAR_LIST_GROUP_HEADER_V2_SEPARATOR:"velt-comment-sidebar-list-group-header-v2-separator",VELT_COMMENT_SIDEBAR_LIST_GROUP_HEADER_V2_CHEVRON:"velt-comment-sidebar-list-group-header-v2-chevron",VELT_COMMENT_SIDEBAR_HEADER_V2:"velt-comment-sidebar-header-v2",VELT_COMMENT_SIDEBAR_CLOSE_BUTTON_V2:"velt-comment-sidebar-close-button-v2",VELT_COMMENT_SIDEBAR_EMPTY_PLACEHOLDER_V2:"velt-comment-sidebar-empty-placeholder-v2",VELT_COMMENT_SIDEBAR_RESET_FILTER_BUTTON_V2:"velt-comment-sidebar-reset-filter-button-v2",VELT_COMMENT_SIDEBAR_PAGE_MODE_COMPOSER_V2:"velt-comment-sidebar-page-mode-composer-v2",VELT_COMMENT_SIDEBAR_FOCUSED_THREAD_V2:"velt-comment-sidebar-focused-thread-v2",VELT_COMMENT_SIDEBAR_FOCUSED_THREAD_BACK_BUTTON_V2:"velt-comment-sidebar-focused-thread-back-button-v2",VELT_COMMENT_SIDEBAR_FOCUSED_THREAD_DIALOG_CONTAINER_V2:"velt-comment-sidebar-focused-thread-dialog-container-v2",VELT_COMMENT_BUBBLE:"velt-comment-bubble",VELT_COMMENT_BUBBLE_AVATAR:"velt-comment-bubble-avatar",VELT_COMMENT_BUBBLE_COMMENTS_COUNT:"velt-comment-bubble-comments-count",VELT_COMMENT_BUBBLE_UNREAD_ICON:"velt-comment-bubble-unread-icon",VELT_COMMENT_THREAD:"velt-comment-thread",VELT_COMMENT_PIN:"velt-comment-pin",VELT_COMMENT_PIN_EMBED:"velt-comment-pin-embed",SNIPPYLY_COMMENT_PIN_EMBED:"snippyly-comment-pin-embed",VELT_COMMENT_PIN_NUMBER:"velt-comment-pin-number",VELT_COMMENT_PIN_INDEX:"velt-comment-pin-index",VELT_COMMENT_PIN_TRIANGLE:"velt-comment-pin-triangle",VELT_COMMENT_PIN_PRIVATE_COMMENT_INDICATOR:"velt-comment-pin-private-comment-indicator",VELT_COMMENT_PIN_GHOST_COMMENT_INDICATOR:"velt-comment-pin-ghost-comment-indicator",VELT_COMMENT_PIN_UNREAD_COMMENT_INDICATOR:"velt-comment-pin-unread-comment-indicator",VELT_SIDEBAR_BUTTON_ICON:"velt-sidebar-button-icon",VELT_SIDEBAR_BUTTON_COMMENTS_COUNT:"velt-sidebar-button-comments-count",VELT_SIDEBAR_BUTTON_UNREAD_ICON:"velt-sidebar-button-unread-icon",VELT_COMMENT_TEXT:"velt-comment-text",VELT_CHART_COMMENT:"velt-chart-comment",VELT_CANVAS_COMMENT:"velt-canvas-comment",VELT_INLINE_COMMENTS_SECTION:"velt-inline-comments-section",VELT_INLINE_COMMENTS_SECTION_SKELETON:"velt-inline-comments-section-skeleton",VELT_INLINE_COMMENTS_SECTION_PANEL:"velt-inline-comments-section-panel",VELT_INLINE_COMMENTS_SECTION_LIST:"velt-inline-comments-section-list",VELT_INLINE_COMMENTS_SECTION_COMPOSER_CONTAINER:"velt-inline-comments-section-composer-container",VELT_INLINE_COMMENTS_SECTION_COMMENT_COUNT:"velt-inline-comments-section-comment-count",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN:"velt-inline-comments-section-sorting-dropdown",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_TRIGGER:"velt-inline-comments-section-sorting-dropdown-trigger",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_TRIGGER_NAME:"velt-inline-comments-section-sorting-dropdown-trigger-name",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_TRIGGER_ICON:"velt-inline-comments-section-sorting-dropdown-trigger-icon",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_CONTENT:"velt-inline-comments-section-sorting-dropdown-content",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_CONTENT_ITEM:"velt-inline-comments-section-sorting-dropdown-content-item",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_CONTENT_ITEM_ICON:"velt-inline-comments-section-sorting-dropdown-content-item-icon",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_CONTENT_ITEM_TICK:"velt-inline-comments-section-sorting-dropdown-content-item-tick",VELT_INLINE_COMMENTS_SECTION_SORTING_DROPDOWN_CONTENT_ITEM_NAME:"velt-inline-comments-section-sorting-dropdown-content-item-name",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN:"velt-inline-comments-section-filter-dropdown",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_TRIGGER:"velt-inline-comments-section-filter-dropdown-trigger",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_TRIGGER_NAME:"velt-inline-comments-section-filter-dropdown-trigger-name",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_TRIGGER_ARROW:"velt-inline-comments-section-filter-dropdown-trigger-arrow",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_CONTENT:"velt-inline-comments-section-filter-dropdown-content",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_CONTENT_LIST:"velt-inline-comments-section-filter-dropdown-content-list",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_CONTENT_LIST_ITEM:"velt-inline-comments-section-filter-dropdown-content-list-item",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_CONTENT_LIST_ITEM_CHECKBOX:"velt-inline-comments-section-filter-dropdown-content-list-item-checkbox",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_CONTENT_LIST_ITEM_LABEL:"velt-inline-comments-section-filter-dropdown-content-list-item-label",VELT_INLINE_COMMENTS_SECTION_FILTER_DROPDOWN_CONTENT_APPLY_BUTTON:"velt-inline-comments-section-filter-dropdown-content-apply-button",VELT_COMMENTS_MINIMAP:"velt-comments-minimap",VELT_HIGHLIGHT_USER_TEXT:"velt-highlight-user-text",VELT_AUDIO_HUDDLE:"velt-audio-huddle",VELT_VIDEO_HUDDLE:"velt-video-huddle",VELT_HUDDLE:"velt-huddle",VELT_HUDDLE_TOOL:"velt-huddle-tool",VELT_RECORDER_TOOL:"velt-recorder-tool",SUPERFLOW_TOOLBAR:"superflow-toolbar",VELT_MENU:"velt-menu",VELT_COMMENT_DIALOG:"velt-comment-dialog-internal",VELT_SIDEBAR_BUTTON:"velt-sidebar-button",VELT_COMMENTS_SIDEBAR_BUTTON:"velt-comments-sidebar-button",VELT_REWRITER:"velt-rewriter",VELT_USER_INVITE_TOOL:"velt-user-invite-tool",VELT_USER_REQUEST_TOOL:"velt-user-request-tool",VELT_USER_AVATAR:"velt-user-avatar",VELT_ARROW_TOOL:"velt-arrow-tool",VELT_ARROWS:"velt-arrows",VELT_AREA_TOOL:"velt-area-tool",VELT_AREAS:"velt-areas",VELT_INLINE_COMMENT:"velt-inline-comment",VELT_VIDEO_PLAYER:"velt-video-player",VELT_VIDEO_COMMENTS_TIMELINE:"velt-comment-player-timeline",VELT_REACTION_TOOL:"velt-reaction-tool",SNIPPYLY_REACTION_TOOL:"snippyly-reaction-tool",VELT_REACTION_PIN:"velt-reaction-pin",SNIPPYLY_REACTION_PIN:"snippyly-reaction-pin",VELT_INLINE_REACTIONS_SECTION:"velt-inline-reactions-section",SNIPPYLY_INLINE_REACTIONS_SECTION:"snippyly-inline-reactions-section",VELT_VIEW_ANALYTICS:"velt-view-analytics",VELT_NOTIFICATIONS_TOOL:"velt-notifications-tool",VELT_NOTIFICATIONS_TOOL_ICON:"velt-notifications-tool-icon",VELT_NOTIFICATIONS_TOOL_UNREAD_ICON:"velt-notifications-tool-unread-icon",VELT_NOTIFICATIONS_TOOL_LABEL:"velt-notifications-tool-label",VELT_NOTIFICATIONS_TOOL_UNREAD_COUNT:"velt-notifications-tool-unread-count",VELT_NOTIFICATIONS_PANEL:"velt-notifications-panel",VELT_NOTIFICATIONS_PANEL_TITLE:"velt-notifications-panel-title",VELT_NOTIFICATIONS_PANEL_TITLE_TEXT:"velt-notifications-panel-title-text",VELT_NOTIFICATIONS_PANEL_HEADER:"velt-notifications-panel-header",VELT_NOTIFICATIONS_PANEL_HEADER_TAB_FOR_YOU:"velt-notifications-panel-header-tab-for-you",VELT_NOTIFICATIONS_PANEL_HEADER_TAB_PEOPLE:"velt-notifications-panel-header-tab-people",VELT_NOTIFICATIONS_PANEL_HEADER_TAB_DOCUMENTS:"velt-notifications-panel-header-tab-documents",VELT_NOTIFICATIONS_PANEL_HEADER_TAB_ALL:"velt-notifications-panel-header-tab-all",VELT_NOTIFICATIONS_PANEL_CONTENT:"velt-notifications-panel-content",VELT_NOTIFICATIONS_PANEL_CONTENT_FOR_YOU:"velt-notifications-panel-content-for-you",VELT_NOTIFICATIONS_PANEL_CONTENT_ALL:"velt-notifications-panel-content-all",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE:"velt-notifications-panel-content-people",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS:"velt-notifications-panel-content-documents",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST:"velt-notifications-panel-content-list",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM:"velt-notifications-panel-content-list-item",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM_AVATAR:"velt-notifications-panel-content-list-item-avatar",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM_UNREAD:"velt-notifications-panel-content-list-item-unread",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM_HEADLINE:"velt-notifications-panel-content-list-item-headline",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM_BODY:"velt-notifications-panel-content-list-item-body",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM_FILE_NAME:"velt-notifications-panel-content-list-item-file-name",VELT_NOTIFICATIONS_PANEL_CONTENT_LIST_ITEM_TIME:"velt-notifications-panel-content-list-item-time",VELT_NOTIFICATIONS_PANEL_CONTENT_ALL_LIST:"velt-notifications-panel-content-all-list",VELT_NOTIFICATIONS_PANEL_CONTENT_ALL_LIST_ITEM:"velt-notifications-panel-content-all-list-item",VELT_NOTIFICATIONS_PANEL_CONTENT_ALL_LIST_ITEM_LABEL:"velt-notifications-panel-content-all-list-item-label",VELT_NOTIFICATIONS_PANEL_CONTENT_ALL_LIST_ITEM_CONTENT:"velt-notifications-panel-content-all-list-item-content",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE_LIST:"velt-notifications-panel-content-people-list",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE_LIST_ITEM:"velt-notifications-panel-content-people-list-item",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE_LIST_ITEM_AVATAR:"velt-notifications-panel-content-people-list-item-avatar",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE_LIST_ITEM_NAME:"velt-notifications-panel-content-people-list-item-name",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE_LIST_ITEM_COUNT:"velt-notifications-panel-content-people-list-item-count",VELT_NOTIFICATIONS_PANEL_CONTENT_PEOPLE_LIST_ITEM_CONTENT:"velt-notifications-panel-content-people-list-item-content",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS_LIST:"velt-notifications-panel-content-documents-list",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS_LIST_ITEM:"velt-notifications-panel-content-documents-list-item",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS_LIST_ITEM_NAME:"velt-notifications-panel-content-documents-list-item-name",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS_LIST_ITEM_COUNT:"velt-notifications-panel-content-documents-list-item-count",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS_LIST_ITEM_CONTENT:"velt-notifications-panel-content-documents-list-item-content",VELT_NOTIFICATIONS_PANEL_CONTENT_DOCUMENTS_LIST_ITEM_UNREAD:"velt-notifications-panel-content-documents-list-item-unread",VELT_NOTIFICATIONS_PANEL_CONTENT_LOAD_MORE:"velt-notifications-panel-content-load-more",VELT_NOTIFICATIONS_PANEL_CONTENT_ALL_READ_CONTAINER:"velt-notifications-panel-content-all-read-container",VELT_NOTIFICATIONS_PANEL_CLOSE_BUTTON:"velt-notifications-panel-close-button",VELT_NOTIFICATIONS_PANEL_READ_ALL_BUTTON:"velt-notifications-panel-read-all-button",VELT_NOTIFICATIONS_PANEL_VIEW_ALL_BUTTON:"velt-notifications-panel-view-all-button",VELT_NOTIFICATIONS_PANEL_SKELETON:"velt-notifications-panel-skeleton",VELT_NOTIFICATIONS_PANEL_SETTINGS_BUTTON:"velt-notifications-panel-settings-button",VELT_NOTIFICATIONS_PANEL_SETTINGS:"velt-notifications-panel-settings",VELT_NOTIFICATIONS_PANEL_SETTINGS_HEADER:"velt-notifications-panel-settings-header",VELT_NOTIFICATIONS_PANEL_SETTINGS_HEADER_TITLE:"velt-notifications-panel-settings-header-title",VELT_NOTIFICATIONS_PANEL_SETTINGS_TITLE:"velt-notifications-panel-settings-title",VELT_NOTIFICATIONS_PANEL_SETTINGS_DESCRIPTION:"velt-notifications-panel-settings-description",VELT_NOTIFICATIONS_PANEL_SETTINGS_LIST:"velt-notifications-panel-settings-list",VELT_NOTIFICATIONS_PANEL_SETTINGS_MUTE_ALL_TITLE:"velt-notifications-panel-settings-mute-all-title",VELT_NOTIFICATIONS_PANEL_SETTINGS_MUTE_ALL_DESCRIPTION:"velt-notifications-panel-settings-mute-all-description",VELT_NOTIFICATIONS_PANEL_SETTINGS_MUTE_ALL_TOGGLE:"velt-notifications-panel-settings-mute-all-toggle",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION:"velt-notifications-panel-settings-accordion",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_TRIGGER:"velt-notifications-panel-settings-accordion-trigger",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_TRIGGER_LABEL:"velt-notifications-panel-settings-accordion-trigger-label",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_TRIGGER_ICON:"velt-notifications-panel-settings-accordion-trigger-icon",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_TRIGGER_SELECTED_VALUE:"velt-notifications-panel-settings-accordion-trigger-selected-value",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_CONTENT:"velt-notifications-panel-settings-accordion-content",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_CONTENT_ITEM:"velt-notifications-panel-settings-accordion-content-item",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_CONTENT_ITEM_LABEL:"velt-notifications-panel-settings-accordion-content-item-label",VELT_NOTIFICATIONS_PANEL_SETTINGS_ACCORDION_CONTENT_ITEM_ICON:"velt-notifications-panel-settings-accordion-content-item-icon",VELT_NOTIFICATIONS_PANEL_SETTINGS_BACK_BUTTON:"velt-notifications-panel-settings-back-button",VELT_NOTIFICATIONS_PANEL_SETTINGS_FOOTER:"velt-notifications-panel-settings-footer",VELT_NOTIFICATIONS_HISTORY_PANEL:"velt-notifications-history-panel",VELT_WIREFRAME:"velt-wireframe",VELT_AUTOCOMPLETE:"velt-autocomplete",VELT_AUTOCOMPLETE_PANEL:"velt-autocomplete-panel",VELT_AUTOCOMPLETE_OPTION:"velt-autocomplete-option",VELT_AUTOCOMPLETE_OPTION_ICON:"velt-autocomplete-option-icon",VELT_AUTOCOMPLETE_OPTION_NAME:"velt-autocomplete-option-name",VELT_AUTOCOMPLETE_OPTION_DESCRIPTION:"velt-autocomplete-option-description",VELT_AUTOCOMPLETE_OPTION_ERROR_ICON:"velt-autocomplete-option-error-icon",VELT_AUTOCOMPLETE_GROUP_OPTION:"velt-autocomplete-group-option",VELT_AUTOCOMPLETE_TOOL:"velt-autocomplete-tool",VELT_AUTOCOMPLETE_EMPTY:"velt-autocomplete-empty",VELT_AUTOCOMPLETE_CHIP:"velt-autocomplete-chip",VELT_AUTOCOMPLETE_CHIP_TOOLTIP:"velt-autocomplete-chip-tooltip",VELT_AUTOCOMPLETE_CHIP_TOOLTIP_ICON:"velt-autocomplete-chip-tooltip-icon",VELT_AUTOCOMPLETE_CHIP_TOOLTIP_NAME:"velt-autocomplete-chip-tooltip-name",VELT_AUTOCOMPLETE_CHIP_TOOLTIP_DESCRIPTION:"velt-autocomplete-chip-tooltip-description",VELT_AUTOCOMPLETE_CONTEXT_WRAPPER:"velt-autocomplete-context-wrapper",VELT_ACTIVITY_LOG:"velt-activity-log",VELT_ACTIVITY_LOG_HEADER:"velt-activity-log-header",VELT_ACTIVITY_LOG_HEADER_TITLE:"velt-activity-log-header-title",VELT_ACTIVITY_LOG_HEADER_CLOSE_BUTTON:"velt-activity-log-header-close-button",VELT_ACTIVITY_LOG_HEADER_FILTER:"velt-activity-log-header-filter",VELT_ACTIVITY_LOG_HEADER_FILTER_TRIGGER:"velt-activity-log-header-filter-trigger",VELT_ACTIVITY_LOG_HEADER_FILTER_TRIGGER_LABEL:"velt-activity-log-header-filter-trigger-label",VELT_ACTIVITY_LOG_HEADER_FILTER_TRIGGER_ICON:"velt-activity-log-header-filter-trigger-icon",VELT_ACTIVITY_LOG_HEADER_FILTER_CONTENT:"velt-activity-log-header-filter-content",VELT_ACTIVITY_LOG_HEADER_FILTER_CONTENT_ITEM:"velt-activity-log-header-filter-content-item",VELT_ACTIVITY_LOG_HEADER_FILTER_CONTENT_ITEM_LABEL:"velt-activity-log-header-filter-content-item-label",VELT_ACTIVITY_LOG_HEADER_FILTER_CONTENT_ITEM_ICON:"velt-activity-log-header-filter-content-item-icon",VELT_ACTIVITY_LOG_LOADING:"velt-activity-log-loading",VELT_ACTIVITY_LOG_LIST:"velt-activity-log-list",VELT_ACTIVITY_LOG_LIST_DATE_GROUP:"velt-activity-log-list-date-group",VELT_ACTIVITY_LOG_LIST_DATE_GROUP_LABEL:"velt-activity-log-list-date-group-label",VELT_ACTIVITY_LOG_LIST_ITEM:"velt-activity-log-list-item",VELT_ACTIVITY_LOG_LIST_ITEM_ICON:"velt-activity-log-list-item-icon",VELT_ACTIVITY_LOG_LIST_ITEM_AVATAR:"velt-activity-log-list-item-avatar",VELT_ACTIVITY_LOG_LIST_ITEM_CONTENT:"velt-activity-log-list-item-content",VELT_ACTIVITY_LOG_LIST_ITEM_CONTENT_USER:"velt-activity-log-list-item-content-user",VELT_ACTIVITY_LOG_LIST_ITEM_CONTENT_ACTION:"velt-activity-log-list-item-content-action",VELT_ACTIVITY_LOG_LIST_ITEM_CONTENT_TARGET:"velt-activity-log-list-item-content-target",VELT_ACTIVITY_LOG_LIST_ITEM_CONTENT_DETAIL:"velt-activity-log-list-item-content-detail",VELT_ACTIVITY_LOG_LIST_ITEM_TIME:"velt-activity-log-list-item-time",VELT_ACTIVITY_LOG_LIST_SHOW_MORE:"velt-activity-log-list-show-more",VELT_ACTIVITY_LOG_EMPTY:"velt-activity-log-empty",VELT_ACTIVITY_LOG_CONTEXT_WRAPPER:"velt-activity-log-context-wrapper",VELT_COMMENT_DIALOG_VISIBILITY_BANNER:"velt-comment-dialog-visibility-banner",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_ICON:"velt-comment-dialog-visibility-banner-icon",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_TEXT:"velt-comment-dialog-visibility-banner-text",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN:"velt-comment-dialog-visibility-banner-dropdown",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_TRIGGER:"velt-comment-dialog-visibility-banner-dropdown-trigger",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_TRIGGER_LABEL:"velt-comment-dialog-visibility-banner-dropdown-trigger-label",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_TRIGGER_AVATAR_LIST:"velt-comment-dialog-visibility-banner-dropdown-trigger-avatar-list",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_TRIGGER_AVATAR_LIST_ITEM:"velt-comment-dialog-visibility-banner-dropdown-trigger-avatar-list-item",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_TRIGGER_AVATAR_LIST_REMAINING_COUNT:"velt-comment-dialog-visibility-banner-dropdown-trigger-avatar-list-remaining-count",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_TRIGGER_ICON:"velt-comment-dialog-visibility-banner-dropdown-trigger-icon",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_CONTENT:"velt-comment-dialog-visibility-banner-dropdown-content",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_CONTENT_ITEM:"velt-comment-dialog-visibility-banner-dropdown-content-item",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_CONTENT_ITEM_ICON:"velt-comment-dialog-visibility-banner-dropdown-content-item-icon",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_CONTENT_ITEM_LABEL:"velt-comment-dialog-visibility-banner-dropdown-content-item-label",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_CONTENT_USER_PICKER:"velt-comment-dialog-visibility-banner-dropdown-content-user-picker",VELT_COMMENT_DIALOG_VISIBILITY_BANNER_DROPDOWN_CONTENT_ORG_PICKER:"velt-comment-dialog-visibility-banner-dropdown-content-org-picker",VELT_COMMENT_COMPOSER:"velt-comment-composer",VELT_SKELETON_LOADER:"velt-skeleton-loader",VELT_SHADOW_DOM_INTERNAL:"velt-shadow-dom-internal",VELT_SINGLE_EDITOR_MODE_PANEL:"velt-single-editor-mode-panel",VELT_MULTI_THREAD_COMMENT_DIALOG:"velt-multi-thread-comment-dialog",VELT_MULTI_THREAD_COMMENT_DIALOG_LIST:"velt-multi-thread-comment-dialog-list",VELT_MULTI_THREAD_COMMENT_DIALOG_PANEL:"velt-multi-thread-comment-dialog-panel",VELT_MULTI_THREAD_COMMENT_DIALOG_COMPOSER_CONTAINER:"velt-multi-thread-comment-dialog-composer-container",VELT_MULTI_THREAD_COMMENT_DIALOG_COMMENT_COUNT:"velt-multi-thread-comment-dialog-comment-count",VELT_MULTI_THREAD_COMMENT_DIALOG_EMPTY_PLACEHOLDER:"velt-multi-thread-comment-dialog-empty-placeholder",VELT_MULTI_THREAD_COMMENT_DIALOG_CLOSE_BUTTON:"velt-multi-thread-comment-dialog-close-button",VELT_MULTI_THREAD_COMMENT_DIALOG_NEW_THREAD_BUTTON:"velt-multi-thread-comment-dialog-new-thread-button",VELT_MULTI_THREAD_COMMENT_DIALOG_RESET_FILTER_BUTTON:"velt-multi-thread-comment-dialog-reset-filter-button",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN:"velt-multi-thread-comment-dialog-minimal-filter-dropdown",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_TRIGGER:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-trigger",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_FILTER_ALL:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-filter-all",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_FILTER_READ:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-filter-read",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_FILTER_RESOLVED:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-filter-resolved",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_FILTER_UNREAD:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-filter-unread",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_SELECTED_ICON:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-selected-icon",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_SORT_DATE:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-sort-date",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_FILTER_DROPDOWN_CONTENT_SORT_UNREAD:"velt-multi-thread-comment-dialog-minimal-filter-dropdown-content-sort-unread",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_ACTIONS_DROPDOWN:"velt-multi-thread-comment-dialog-minimal-actions-dropdown",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_ACTIONS_DROPDOWN_TRIGGER:"velt-multi-thread-comment-dialog-minimal-actions-dropdown-trigger",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_ACTIONS_DROPDOWN_CONTENT:"velt-multi-thread-comment-dialog-minimal-actions-dropdown-content",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_ACTIONS_DROPDOWN_CONTENT_MARK_ALL_READ:"velt-multi-thread-comment-dialog-minimal-actions-dropdown-content-mark-all-read",VELT_MULTI_THREAD_COMMENT_DIALOG_MINIMAL_ACTIONS_DROPDOWN_CONTENT_MARK_ALL_RESOLVED:"velt-multi-thread-comment-dialog-minimal-actions-dropdown-content-mark-all-resolved",VELT_TEXT_COMMENT:"velt-text-comment",VELT_TEXT_COMMENT_TOOL:"velt-text-comment-tool",VELT_TEXT_COMMENT_TOOLBAR:"velt-text-comment-toolbar",VELT_TEXT_COMMENT_TOOLBAR_COMMENT_ANNOTATION:"velt-text-comment-toolbar-comment-annotation",VELT_TEXT_COMMENT_TOOLBAR_DIVIDER:"velt-text-comment-toolbar-divider",VELT_TEXT_COMMENT_TOOLBAR_COPYWRITER:"velt-text-comment-toolbar-copywriter",VELT_TEXT_COMMENT_TOOLBAR_GENERIC:"velt-text-comment-toolbar-generic"},q.ATTRIBUTES={VELT_COMMENT_CONTAINER:"data-velt-comment-container",VELT_TARGET_COMMENT_ELEMENT_ID:"data-velt-target-comment-element-id",VELT_COMMENT_TYPE:"data-velt-comment-type",TARGET_INLINE_COMMENT_ELEMENT_ID:"target-inline-comment-element-id",TARGET_COMMENT_ELEMENT_ID:"target-comment-element-id",TARGET_ELEMENT_ID:"target-element-id",VELT_ID:"data-velt-id",VELT_ELEMENT:"data-velt-element",VELT_SCREEN_RECORDER_PANEL:"data-velt-screen-recorder-panel",VELT_SOURCE_ID:"data-velt-source-id",VELT_ANNOTATION_ID:"data-velt-annotation-id",VELT_ANNOTATION_IDS:"data-velt-annotation-ids",VELT_COMMENT_PIN_HOST:"data-velt-comment-pin-host",VELT_COMMENT_PIN_HOST_STATIC:"data-velt-comment-pin-host-static",VELT_COMMENT_DISABLED:"data-velt-comment-disabled",VELT_MANUAL_COMMENT_CONTAINER:"data-velt-manual-comment-container",VELT_COMMENT_PIN_ACTIVE:"data-velt-comment-pin-active",VELT_INLINE_COMMENT_SECTION_CONFIG:"data-velt-inline-comment-section-config",VELT_TARGET_INLINE_COMMENT_ELEMENT_ID:"data-velt-target-inline-comment-element-id",VELT_TAG_PIN_HOST:"data-velt-tag-pin-host",VELT_TAG_PIN_HOST_STATIC:"data-velt-tag-pin-host-static",VELT_TAG_DISABLED:"data-velt-tag-disabled",VELT_RECORDER_PIN_HOST:"data-velt-recorder-pin-host",VELT_RECORDER_PIN_HOST_STATIC:"data-velt-recorder-pin-host-static",VELT_RECORDER_DISABLED:"data-velt-recorder-disabled",VELT_ANNOTATION_DRAFT:"data-velt-annotation-draft",VELT_ANNOTATION_EDIT_COMMENT:"data-velt-annotation-edit-comment",VELT_DOCUMENT_ID:"data-velt-document-id",VELT_LOCATION:"data-velt-location",VELT_LOCATION_ID:"data-velt-location-id",VELT_THEME:"data-velt-theme",VELT_IGNORE:"data-velt-ignore",EMBED_MODE:"embed-mode",DEFAULT_CURSOR:"default-cursor",VELT_HUDDLE_ON_CURSOR_MODE:"data-velt-huddle-on-cursor-mode",VELT_SELECTION_ENABLED:"data-live-selection-enabled",VELT_LIVE_SELECTION_ENABLED:"data-velt-live-selection-enabled",VELT_LIVE_SELECTION_USER_INDICATOR_POSITION:"data-velt-live-selection-user-indicator-position",VELT_LIVE_SELECTION_USER_INDICATOR_TYPE:"data-velt-live-selection-user-indicator-type",VELT_SELECTION_CONFIG:"data-live-selection-config",VELT_POPOVER_MODE:"data-velt-popover-mode",VELT_ELEMENT_CACHE_ID:"data-velt-cache-id",VELT_ARROW_PIN_HOST:"data-velt-arrow-pin-host",VELT_ARROW_PIN_HOST_STATIC:"data-velt-arrow-pin-host-static",VELT_ARROW_DISABLED:"data-velt-arrow-disabled",VELT_AREA_PIN_HOST:"data-velt-area-pin-host",VELT_AREA_PIN_HOST_STATIC:"data-velt-area-pin-host-static",VELT_AREA_DISABLED:"data-velt-area-disabled",VELT_AREA_PIN_ACTIVE:"data-velt-area-pin-active",VELT_SUGGESTION_TARGET:"data-velt-suggestion-target",VELT_ONGOING_RECORDING:"data-velt-ongoing-recording",VELT_COMMENT_RECORDING:"data-velt-comment-recording",SYNC_VIDEO_PLAYER_ID:"data-sync-video-player-id",SYNC_VIDEO_PLAYER:"data-sync-video-player",VELT_INLINE_COMMENT_ID:"inline-comment-id",VELT_PDF_VIEWER:"data-velt-pdf-viewer",VELT_SYNC_STATE:"data-velt-sync-state",VELT_SYNC_ACCESS:"data-velt-sync-access",VELT_SYNC_ACCESS_AUTO:"data-velt-sync-access-auto",VELT_SYNC_ACCESS_DISABLED:"data-velt-sync-access-disabled",VELT_SINGLE_EDITOR_MODE_CONTAINER:"data-velt-single-editor-mode-container",VELT_IFRAME_CONTAINER:"data-velt-iframe-container",VELT_IFRAME_CONTAINER_STATIC:"data-velt-iframe-container-static",VELT_IS_FIRST_COMPONENT:"data-velt-is-first-component",VELT_DOWNLOAD_BUTTON:"velt-download-button",VELT_COMMENT_DIALOG_PORTAL_INTERNAL:"velt-comment-dialog-portal-internal",ANNOTATION_ID:"annotation-id",MULTI_THREAD_ANNOTATION_ID:"multi-thread-annotation-id",SLATE_EDITOR:"data-slate-editor"},q.INJECTION_STYLE_PROPS={VELT_AVATAR_COLOR:"data-velt-avatar-color",VELT_COMMENT_PRIORITY_COLOR:"data-velt-priority-color"},q.BODY_CLASSES={VELT_PIN_DRAGGING:"velt-pin-dragging"},q.INJECTION_ATTRIBUTES={VELT_AVATAR_IMG:"data-velt-avatar-img",VELT_COMMENT_LENGTH:"data-velt-comment-thread-length"},q.SESSION_STORAGE={SNIPPYLY_AUTO_SELECT_ANNOTATION_ID:"snippylyAutoSelectAnnotationId",SNIPPYLY_SELECTED_ANNOTATION_ID:"snippylySelectedAnnotationId",SNIPPYLY_COMMENT_SIDEBAR_FILTERS:"snippylyCommentSidebarFilters",SNIPPYLY_COMMENT_SIDEBAR_GROUP_BY:"snippylyCommentSidebarGroupBy",SNIPPYLY_COMMENT_DIALOG_AUTO_POPULATE_TEXT:"snippylyCommentDialogAutoPopulateText",SNIPPYLY_HUDDLE_DATA:"snippylyHuddleData",VELT_TAB_ID:"veltTabId",VELT_COMMENT_SIDEBAR_FILTERS_RESET:"veltCommentSidebarFiltersReset",VELT_COMMENT_SIDEBAR_CUSTOM_ACTIONS_STATE:"veltCommentSidebarCustomActionsState",VELT_CURSOR_MULTIPLE_USERS_DETECTED:"veltCursorMultipleUsersDetected",VELT_PRESENCE_MULTIPLE_USERS_DETECTED:"veltPresenceMultipleUsersDetected",VELT_PRESENCE_MULTIPLE_USERS_ONLINE:"veltPresenceMultipleUsersOnline",VELT_CUSTOM_PRIORITY_MAP:"veltCustomPriorityMap",VELT_CUSTOM_STATUS_MAP:"veltCustomStatusMap",VELT_CUSTOM_CATEGORY_MAP:"veltCustomCategoryMap"},q.LOCAL_STORAGE={SNIPPYLY_DEFAULT_MEDIA_SOURCE_OPTIONS:"snippylyDefaultMediaSourceOptions",SNIPPYLY_QUEUED_COMMENT:"snippylyQueuedComment",VELT_USER:"_vu",VELT_IDENTIFY_USER:"_viu",VELT_USER_FORCE_RE_LOGGED_IN:"_vurli",VELT_VERSION:"_vv",VELT_ADVANCED_QUERIES:"_vadq",VELT_COMMENT_VIEWS_MIGRATED:"_vcvm",VELT_AUTH_PROXY_HOST:"_vaph"},q.NON_NESTABLE_ELEMENTS={img:!0,video:!0,audio:!0,input:!0,meter:!0,progress:!0,select:!0,textarea:!0,svg:!0,"lottie-player":!0,"ng-lottie":!0,canvas:!0,hr:!0,iframe:!0},q.INGNORE_MUTATION_OBSERVER_CHANGE_TAGS={svg:!0},q.SELECTION_ENABLED_ELEMENTS={input:!0,textarea:!0,select:!0,button:!0},q.URL_PARAMS={REVIEW_MODE:"review",REVIEW_DOC_ID:"sreviewId",SNIPPYLY_USER:"snippyly-user",COMMENT_ID:"scommentId",TAG_ID:"stagId",RECORDER_ID:"srecorderId",PROJECT_INSTALL:"sprojectInstall"},q.VELT_BASE_REM_UNIT="--velt-base-rem-unit",q.VELT_VIEWPORT_WIDTH="--legacy-velt-viewport-width",q.VELT_VIEWPORT_HEIGHT="--legacy-velt-viewport-height",q.VELT_SELECTION_COLOR="--velt-selection-color",q.VELT_MIN_ARROW_LENGTH=100,q.VELT_ARROW_VIEWPORT_PADDING=20,q.LIVE_STATE_REQUEST_EDITOR_ACCESS_WAIT_TIME=5,q.CURSOR={COMMENT_PIN:"url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0iIzYyNURGNSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9InBhdGgtMS1pbnNpZGUtMV8yMDMyXzIzNjgxIiBmaWxsPSJ3aGl0ZSI+CjxwYXRoIGQ9Ik0wLjM1Mjk0MSAxOEMwLjE1ODAxNyAxOCAtNi45MDcxNWUtMDkgMTcuODQyIC0xLjU0Mjc1ZS0wOCAxNy42NDcxTC0zLjkzNDAyZS0wNyA5Qy02LjEwNjczZS0wNyA0LjAyOTQ0IDQuMDI5NDQgLTEuNzYxMzJlLTA3IDkgLTMuOTM0MDJlLTA3Vi0zLjkzNDAyZS0wN0MxMy45NzA2IC02LjEwNjczZS0wNyAxOCA0LjAyOTQ0IDE4IDlWOUMxOCAxMy45NzA2IDEzLjk3MDYgMTggOSAxOEwwLjM1Mjk0MSAxOFoiLz4KPC9tYXNrPgo8cGF0aCBkPSJNMC4zNTI5NDEgMThDMC4xNTgwMTcgMTggLTYuOTA3MTVlLTA5IDE3Ljg0MiAtMS41NDI3NWUtMDggMTcuNjQ3MUwtMy45MzQwMmUtMDcgOUMtNi4xMDY3M2UtMDcgNC4wMjk0NCA0LjAyOTQ0IC0xLjc2MTMyZS0wNyA5IC0zLjkzNDAyZS0wN1YtMy45MzQwMmUtMDdDMTMuOTcwNiAtNi4xMDY3M2UtMDcgMTggNC4wMjk0NCAxOCA5VjlDMTggMTMuOTcwNiAxMy45NzA2IDE4IDkgMThMMC4zNTI5NDEgMThaIiBmaWxsPSIjMTQxNDE2Ii8+CjxwYXRoIGQ9Ik0wLjM1Mjk0MSAxOEMwLjE1ODAxNyAxOCAtNi45MDcxNWUtMDkgMTcuODQyIC0xLjU0Mjc1ZS0wOCAxNy42NDcxTC0zLjkzNDAyZS0wNyA5Qy02LjEwNjczZS0wNyA0LjAyOTQ0IDQuMDI5NDQgLTEuNzYxMzJlLTA3IDkgLTMuOTM0MDJlLTA3Vi0zLjkzNDAyZS0wN0MxMy45NzA2IC02LjEwNjczZS0wNyAxOCA0LjAyOTQ0IDE4IDlWOUMxOCAxMy45NzA2IDEzLjk3MDYgMTggOSAxOEwwLjM1Mjk0MSAxOFoiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMiIgbWFzaz0idXJsKCNwYXRoLTEtaW5zaWRlLTFfMjAzMl8yMzY4MSkiLz4KPC9zdmc+Cg==') 0 31, auto",TAG_PIN:"url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2aWV3Qm94PSIwIDAgMzIgMzIiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczpieD0iaHR0cHM6Ly9ib3h5LXN2Zy5jb20iPgogIDxlbGxpcHNlIHN0eWxlPSJzdHJva2U6IHJnYigwLCAwLCAwKTsgZmlsbDogcmdiKDE2MiwgODksIDI1NCk7IHBhaW50LW9yZGVyOiBmaWxsOyBzdHJva2Utd2lkdGg6IDBweDsiIGN4PSIxNiIgY3k9IjE2IiByeD0iMTYiIHJ5PSIxNiIvPgogIDxwYXRoIGQ9Ik0gOS4zMzMgMjIgQyA5LjMzMyAyMiA4IDIyIDggMjAuNjY3IEMgOCAxOS4zMzMgOS4zMzMgMTUuMzMzIDE2IDE1LjMzMyBDIDIyLjY2NyAxNS4zMzMgMjQgMTkuMzMzIDI0IDIwLjY2NyBDIDI0IDIyIDIyLjY2NyAyMiAyMi42NjcgMjIgTCA5LjMzMyAyMiBaIE0gMTYgMTQgQyAxOS4wNzkgMTQgMjEuMDA0IDEwLjY2NyAxOS40NjQgOCBDIDE4Ljc1IDYuNzYyIDE3LjQyOSA2IDE2IDYgQyAxMi45MjEgNiAxMC45OTYgOS4zMzMgMTIuNTM2IDEyIEMgMTMuMjUgMTMuMjM3IDE0LjU3MSAxNCAxNiAxNCBaIiBzdHlsZT0iZmlsbDogcmdiKDI1NSwgMjU1LCAyNTUpOyIgYng6b3JpZ2luPSIwLjUgMC41Ii8+Cjwvc3ZnPg==') 16 16, auto",ARROW_PIN:"url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNiAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy44MDU0IDEwLjAyMDdDMTQuNTQxMiA5Ljk5MTMxIDE1LjExMzggOS4zNzA5OCAxNS4wODQzIDguNjM1MThMMTQuODMwNiAyLjI4OTM5QzE0LjgwMjggMS41OTQ4NiAxNC4yNDYxIDEuMDM4MTkgMTMuNTUxNiAxLjAxMDQxTDcuMjA1NzEgMC43NTY1MzdDNi40Njk5MiAwLjcyNzEwMiA1Ljg0OTU4IDEuMjk5NzIgNS44MjAxNSAyLjAzNTUxQzUuNzkwNzEgMi43NzEzIDYuMzYzMzMgMy4zOTE2NCA3LjA5OTEyIDMuNDIxMDdMMTAuNDAyMSAzLjU1MzIxTDEuMjQxNzcgMTIuNzEzNkMwLjcyMTA2NyAxMy4yMzQzIDAuNzIxMDY3IDE0LjA3ODUgMS4yNDE3NyAxNC41OTkyQzEuNzYyNDYgMTUuMTE5OSAyLjYwNjY4IDE1LjExOTkgMy4xMjczOCAxNC41OTkyTDEyLjI4NzcgNS40Mzg4NkwxMi40MTk4IDguNzQxNzVDMTIuNDQ5MiA5LjQ3NzU0IDEzLjA2OTYgMTAuMDUwMiAxMy44MDU0IDEwLjAyMDdaIiBmaWxsPSIjOEY5NUIyIi8+Cjwvc3ZnPgo=) 15 0, auto",AREA_PIN:"url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNiAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy44MDU0IDEwLjAyMDdDMTQuNTQxMiA5Ljk5MTMxIDE1LjExMzggOS4zNzA5OCAxNS4wODQzIDguNjM1MThMMTQuODMwNiAyLjI4OTM5QzE0LjgwMjggMS41OTQ4NiAxNC4yNDYxIDEuMDM4MTkgMTMuNTUxNiAxLjAxMDQxTDcuMjA1NzEgMC43NTY1MzdDNi40Njk5MiAwLjcyNzEwMiA1Ljg0OTU4IDEuMjk5NzIgNS44MjAxNSAyLjAzNTUxQzUuNzkwNzEgMi43NzEzIDYuMzYzMzMgMy4zOTE2NCA3LjA5OTEyIDMuNDIxMDdMMTAuNDAyMSAzLjU1MzIxTDEuMjQxNzcgMTIuNzEzNkMwLjcyMTA2NyAxMy4yMzQzIDAuNzIxMDY3IDE0LjA3ODUgMS4yNDE3NyAxNC41OTkyQzEuNzYyNDYgMTUuMTE5OSAyLjYwNjY4IDE1LjExOTkgMy4xMjczOCAxNC41OTkyTDEyLjI4NzcgNS40Mzg4NkwxMi40MTk4IDguNzQxNzVDMTIuNDQ5MiA5LjQ3NzU0IDEzLjA2OTYgMTAuMDUwMiAxMy44MDU0IDEwLjAyMDdaIiBmaWxsPSIjOEY5NUIyIi8+Cjwvc3ZnPgo=) 16 0, auto"},q.VIDEO_POSTER_DEFAULT_IMAGE="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAADIAQMAAABoEU4WAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAGUExURQAAAAEAAKSl0/gAAAAxSURBVFjD7dBBDQAgCABARjKjGZUofi0Ac+4uwkUAAAAAAMCIpYD/bQVNSsEtFfCaA8vLAaMbkVUtAAAAAElFTkSuQmCC",q.HUDDLE_TYPE_CONFIGS={audio:{audio:!0,video:!1,presentation:!1},video:{audio:!0,video:!0,presentation:!1},presentation:{audio:!1,video:!1,presentation:!0}},q.RecorderModes={VIDEO:"video",AUDIO:"audio",SCREEN:"screen",ALL:"all"},q.CommentAnnotationStatusMap={OPEN:{id:"OPEN",name:"Open",color:"var(--velt-accent, #625DF5)",lightColor:"var(--velt-accent-light, #E7E8FA)",type:"default",svg:`
6
- <svg
7
- width="16"
8
- height="16"
9
- viewBox="0 0 16 16"
10
- fill="none"
11
- xmlns="http://www.w3.org/2000/svg"
12
- >
13
- <path
14
- fill-rule="evenodd"
15
- clip-rule="evenodd"
16
- d="M8.00016 13.3333C10.9457 13.3333 13.3335 10.9455 13.3335 8.00001C13.3335 5.05449 10.9457 2.66668 8.00016 2.66668C5.05464 2.66668 2.66683 5.05449 2.66683 8.00001C2.66683 10.9455 5.05464 13.3333 8.00016 13.3333ZM8.00016 14.6667C11.6821 14.6667 14.6668 11.6819 14.6668 8.00001C14.6668 4.31811 11.6821 1.33334 8.00016 1.33334C4.31826 1.33334 1.3335 4.31811 1.3335 8.00001C1.3335 11.6819 4.31826 14.6667 8.00016 14.6667Z"
17
- fill="currentColor"
18
- />
19
- </svg>
20
- `},IN_PROGRESS:{id:"IN_PROGRESS",name:"In Progress",color:"var(--velt-warning, #ECB000)",lightColor:"var(--velt-warning-light, #FEFCEA)",type:"ongoing",svg:`
21
- <svg
22
- width="16"
23
- height="16"
24
- viewBox="0 0 16 16"
25
- fill="none"
26
- xmlns="http://www.w3.org/2000/svg"
27
- >
28
- <path
29
- fill-rule="evenodd"
30
- clip-rule="evenodd"
31
- d="M8.00016 13.3333C10.9457 13.3333 13.3335 10.9455 13.3335 8.00001C13.3335 5.05449 10.9457 2.66668 8.00016 2.66668C5.05464 2.66668 2.66683 5.05449 2.66683 8.00001C2.66683 10.9455 5.05464 13.3333 8.00016 13.3333ZM8.00016 14.6667C11.6821 14.6667 14.6668 11.6819 14.6668 8.00001C14.6668 4.31811 11.6821 1.33334 8.00016 1.33334C4.31826 1.33334 1.3335 4.31811 1.3335 8.00001C1.3335 11.6819 4.31826 14.6667 8.00016 14.6667Z"
32
- fill="currentColor"
33
- />
34
- <path
35
- fill-rule="evenodd"
36
- clip-rule="evenodd"
37
- d="M8.00016 4C8.36835 4 8.66683 4.29848 8.66683 4.66667V7.72386L10.1382 9.19526C10.3986 9.45561 10.3986 9.87772 10.1382 10.1381C9.87788 10.3984 9.45577 10.3984 9.19542 10.1381L7.52876 8.4714C7.40373 8.34638 7.3335 8.17681 7.3335 8V4.66667C7.3335 4.29848 7.63197 4 8.00016 4Z"
38
- fill="currentColor"
39
- />
40
- </svg>
41
- `},RESOLVED:{id:"RESOLVED",name:"Resolved",color:"var(--velt-success, #00C48C)",lightColor:"var(--velt-success-light, #E7FAF2)",type:"terminal",svg:`
42
- <svg
43
- width="17"
44
- height="16"
45
- viewBox="0 0 17 16"
46
- fill="none"
47
- xmlns="http://www.w3.org/2000/svg"
48
- >
49
- <path
50
- fill-rule="evenodd"
51
- clip-rule="evenodd"
52
- d="M8.50016 13.3333C11.4457 13.3333 13.8335 10.9455 13.8335 8.00001C13.8335 5.05449 11.4457 2.66668 8.50016 2.66668C5.55464 2.66668 3.16683 5.05449 3.16683 8.00001C3.16683 10.9455 5.55464 13.3333 8.50016 13.3333ZM8.50016 14.6667C12.1821 14.6667 15.1668 11.6819 15.1668 8.00001C15.1668 4.31811 12.1821 1.33334 8.50016 1.33334C4.81826 1.33334 1.8335 4.31811 1.8335 8.00001C1.8335 11.6819 4.81826 14.6667 8.50016 14.6667Z"
53
- fill="currentColor"
54
- />
55
- <path
56
- d="M5.8335 8L7.8335 10L11.8335 6"
57
- class="checkmark"
58
- stroke="currentColor"
59
- stroke-width="1.2"
60
- stroke-miterlimit="10"
61
- stroke-linecap="round"
62
- stroke-linejoin="round"
63
- />
64
- </svg>
65
- `}},q.CommentAcceptStatus={id:"ACCEPTED",name:"Accepted",color:"var(--velt-success, #00C48C)",lightColor:"var(--velt-success-light, #E7FAF2)",type:"terminal",svg:`
66
- <svg
67
- width="17"
68
- height="16"
69
- viewBox="0 0 17 16"
70
- fill="none"
71
- xmlns="http://www.w3.org/2000/svg"
72
- >
73
- <path
74
- fill-rule="evenodd"
75
- clip-rule="evenodd"
76
- d="M8.50016 13.3333C11.4457 13.3333 13.8335 10.9455 13.8335 8.00001C13.8335 5.05449 11.4457 2.66668 8.50016 2.66668C5.55464 2.66668 3.16683 5.05449 3.16683 8.00001C3.16683 10.9455 5.55464 13.3333 8.50016 13.3333ZM8.50016 14.6667C12.1821 14.6667 15.1668 11.6819 15.1668 8.00001C15.1668 4.31811 12.1821 1.33334 8.50016 1.33334C4.81826 1.33334 1.8335 4.31811 1.8335 8.00001C1.8335 11.6819 4.81826 14.6667 8.50016 14.6667Z"
77
- fill="currentColor"
78
- />
79
- <path
80
- d="M5.8335 8L7.8335 10L11.8335 6"
81
- class="checkmark"
82
- stroke="currentColor"
83
- stroke-width="1.2"
84
- stroke-miterlimit="10"
85
- stroke-linecap="round"
86
- stroke-linejoin="round"
87
- />
88
- </svg>
89
- `},q.CommentRejectStatus={id:"REJECTED",name:"Rejected",color:"var(--velt-error, #ff0000)",lightColor:"var(--velt-error-light, #f7e7e7)",type:"terminal",svg:`
90
- <svg
91
- xmlns="http://www.w3.org/2000/svg"
92
- width="16" height="16"
93
- fill="currentColor"
94
- class="bi bi-x-circle"
95
- viewBox="0 0 16 16"
96
- >
97
- <path
98
- d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"
99
- />
100
- <path
101
- d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z"
102
- />
103
- </svg>
104
- `},q.CommentAnnotationPriorityMap={P0:{id:"P0",name:"P0",color:"var(--velt-error, #FF7162)",lightColor:"var(--velt-error-light, #F7E7E7)",svg:`<svg width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg">
105
- <g>
106
- <path d="M3.33301 1.33333C3.33301 0.873096 3.7061 0.5 4.16634 0.5C4.62658 0.5 4.99967 0.873096 4.99967 1.33333V19.6667C4.99967 20.1269 4.62658 20.5 4.16634 20.5C3.7061 20.5 3.33301 20.1269 3.33301 19.6667V1.33333Z" fill="currentColor"/>
107
- <path fill-rule="evenodd" clip-rule="evenodd" d="M9.3086 12.167H3.33301V2.16699H8.33301C9.42152 2.16699 10.3476 2.86267 10.6908 3.83366H14.803C16.0419 3.83366 16.8477 5.13751 16.2937 6.24568L14.9997 8.83366L16.2937 11.4216C16.8477 12.5298 16.0419 13.8337 14.803 13.8337H11.6663C10.5778 13.8337 9.65179 13.138 9.3086 12.167ZM4.99967 3.83366H8.33301C8.79324 3.83366 9.16634 4.20675 9.16634 4.66699V10.5003H4.99967V3.83366ZM10.833 11.3337C10.833 11.7939 11.2061 12.167 11.6663 12.167H14.803L13.1363 8.83366L14.803 5.50033H10.833V11.3337Z" fill="currentColor"/>
108
- </g>
109
- </svg>`},P1:{id:"P1",name:"P1",color:"var(--velt-warning, #ECB000)",lightColor:"var(--velt-warning-light, #FEFCEA)",svg:`<svg width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg">
110
- <g>
111
- <path d="M3.33301 1.33333C3.33301 0.873096 3.7061 0.5 4.16634 0.5C4.62658 0.5 4.99967 0.873096 4.99967 1.33333V19.6667C4.99967 20.1269 4.62658 20.5 4.16634 20.5C3.7061 20.5 3.33301 20.1269 3.33301 19.6667V1.33333Z" fill="currentColor"/>
112
- <path fill-rule="evenodd" clip-rule="evenodd" d="M9.3086 12.167H3.33301V2.16699H8.33301C9.42152 2.16699 10.3476 2.86267 10.6908 3.83366H14.803C16.0419 3.83366 16.8477 5.13751 16.2937 6.24568L14.9997 8.83366L16.2937 11.4216C16.8477 12.5298 16.0419 13.8337 14.803 13.8337H11.6663C10.5778 13.8337 9.65179 13.138 9.3086 12.167ZM4.99967 3.83366H8.33301C8.79324 3.83366 9.16634 4.20675 9.16634 4.66699V10.5003H4.99967V3.83366ZM10.833 11.3337C10.833 11.7939 11.2061 12.167 11.6663 12.167H14.803L13.1363 8.83366L14.803 5.50033H10.833V11.3337Z" fill="currentColor"/>
113
- </g>
114
- </svg>`},P2:{id:"P2",name:"P2",color:"var(--velt-text-7, #777E91)",lightColor:"var(--velt-background-1, #F3F3F5)",svg:`<svg width="20" height="21" viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg">
115
- <g>
116
- <path d="M3.33301 1.33333C3.33301 0.873096 3.7061 0.5 4.16634 0.5C4.62658 0.5 4.99967 0.873096 4.99967 1.33333V19.6667C4.99967 20.1269 4.62658 20.5 4.16634 20.5C3.7061 20.5 3.33301 20.1269 3.33301 19.6667V1.33333Z" fill="currentColor"/>
117
- <path fill-rule="evenodd" clip-rule="evenodd" d="M9.3086 12.167H3.33301V2.16699H8.33301C9.42152 2.16699 10.3476 2.86267 10.6908 3.83366H14.803C16.0419 3.83366 16.8477 5.13751 16.2937 6.24568L14.9997 8.83366L16.2937 11.4216C16.8477 12.5298 16.0419 13.8337 14.803 13.8337H11.6663C10.5778 13.8337 9.65179 13.138 9.3086 12.167ZM4.99967 3.83366H8.33301C8.79324 3.83366 9.16634 4.20675 9.16634 4.66699V10.5003H4.99967V3.83366ZM10.833 11.3337C10.833 11.7939 11.2061 12.167 11.6663 12.167H14.803L13.1363 8.83366L14.803 5.50033H10.833V11.3337Z" fill="currentColor"/>
118
- </g>
119
- </svg>`}},q.WorkspaceRoles=[{id:md.COMMENTER?.toLowerCase(),name:md.COMMENTER,description:"Can comment on this project",permissions:[]},{id:md.ADMIN?.toLowerCase(),name:md.ADMIN,description:"Can comment on all projects and has access to the portal",permissions:[]}],q.DocumentAccessTypeMap={[wt.PUBLIC]:{id:wt.PUBLIC,name:wt.PUBLIC,description:"Anyone with link can view"},[wt.RESTRICTED]:{id:wt.RESTRICTED,name:wt.RESTRICTED,description:"Only people with access can view"}},q.DocumentAccessTypeMapSF={[wt.PUBLIC]:{id:wt.PUBLIC,name:wt.PUBLIC,description:"Anyone with the link can comment after logging in."},[wt.RESTRICTED]:{id:wt.RESTRICTED,name:wt.RESTRICTED,description:"Only people added to this project can comment."}},q.CommentCategoryMap={bug:{id:"bug",name:"Bug",color:"#FF7162"},feedback:{id:"feedback",name:"Feedback",color:"#00C48C"},question:{id:"question",name:"Question",color:"#FFD166"}},q.OVERLAY_POSITIONS=[{originX:"end",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom"},{originX:"start",originY:"top",overlayX:"end",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"end",overlayY:"bottom"},{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},{originX:"end",originY:"bottom",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"center",overlayX:"start",overlayY:"center"}],q.OVERLAY_POSITIONS_FOR_POPOVER_MODE=[{originX:"end",originY:"top",overlayX:"start",overlayY:"top"},{originX:"end",originY:"center",overlayX:"start",overlayY:"center"},{originX:"end",originY:"bottom",overlayX:"start",overlayY:"bottom"},{originX:"start",originY:"top",overlayX:"end",overlayY:"top"},{originX:"start",originY:"center",overlayX:"end",overlayY:"center"},{originX:"start",originY:"bottom",overlayX:"end",overlayY:"bottom"}],q.VIDEO_EDITOR={ZOOM_IN_DURATION:500,ZOOM_OUT_DURATION:500,DEFAULT_ZOOM_FACTOR:1.5,MAX_ZOOM_FACTOR:3,ZOOM_FACTOR_OPTIONS:[{value:2,label:"2x"},{value:1.7,label:"1.7x"},{value:1.5,label:"1.5x"},{value:1.2,label:"1.2x"}],MIN_DRAG_AREA_MULTIPLIER:.015,PREFERRED_SECTION_DURATION_MULTIPLIER:.15,SELECTION_MIN_DRAG_DISTANCE:2,MIN_DURATION_THRESHOLD:.01,TIME_BUFFER:.1,SHORT_VIDEO_THRESHOLD:3,SMALL_VIDEO_THRESHOLD:5,MILLISECOND_PRECISION_MULTIPLIER:1e3,TENTH_SECOND_PRECISION_MULTIPLIER:10,DEBOUNCE_DELAY:200,DECIMAL_PRECISION:2,MAX_MARKER_COUNT:10,MARKER_INTERVAL:5,FAST_TIMEOUT:50,STANDARD_TIMEOUT:100,RECTANGLE_POSITIONING:{FULL_PERCENT:100,HALF_PERCENT:50,QUARTER_PERCENT:25},EASING:{QUAD_IN_OUT_MULTIPLIER:2,QUAD_IN_OUT_POWER:2,HALF_THRESHOLD:.5},PERCENTAGE:{HALF:50,FULL:100},MILLISECONDS_TO_SECONDS:1e3};var v=q;var IT=new Z("arrow-utils"),NAe=new Z("notification-service"),OAe=new Z("notifications-actions"),xi=new Z("notification-utils"),wAe=new Z("cursor-service"),vT=new Z("cursor-utils"),bAe=new Z("presence-service"),LAe=new Z("presence-actions"),yT=new Z("presence-utils"),MAe=new Z("huddle-service"),ST=new Z("huddle-utils"),PAe=new Z("recorder-service"),AT=new Z("recorder-annotation-service"),xAe=new Z("recorder-actions"),ci=new Z("recorder-utils"),FAe=new Z("recorder-pin-portal"),pd=new Z("comment-service"),kAe=new Z("comment-actions"),UAe=new Z("comment-dialog-core"),VAe=new Z("comment-dialog-action"),BAe=new Z("comment-text-service"),GAe=new Z("comment-text-portal"),$Ae=new Z("comment-pin-portal"),jAe=new Z("comment-views"),DT=new Z("reaction-service"),HAe=new Z("rewriter-service"),WAe=new Z("rewriter-actions"),RT=new Z("area-service"),CT=new Z("activity-service"),P1=new Z("views-service"),x1=new Z("crdt-service"),F1=new Z("live-state-service");var Jn=class Jn{static showLogs(){try{return st.debugMode||!!sessionStorage.getItem("debugMode")||!!sessionStorage.getItem("forceDebugMode")}catch(e){return Jn.catch("Error in showLogs: ",e),!1}}};Jn.log=Jn.showLogs()?console.log:()=>{},Jn.warn=Jn.showLogs()?console.warn:()=>{},Jn.error=Jn.showLogs()?console.error:()=>{},Jn.debug=Jn.showLogs()?console.debug:()=>{},Jn.info=Jn.showLogs()?console.info:()=>{},Jn.logsEnabled=!0,Jn.catch=(e,r)=>{try{Jn.logsEnabled&&(r!==void 0?console.warn("Velt: ",e,r):console.warn("Velt: ",e))}catch{}};var H=Jn;var li=(()=>{let e=class e{constructor(){this.subjects=new Map,H.log("%c[WB] Creating CLASS: ServiceBook","color: blue;")}set(t,i){try{H.log(`%c[WB] ServiceBook.set: ${t.toString()}`,"color: green;"),this.getOrCreateSubject(t).next(i)}catch(o){H.catch("Error in ServiceBook set: ",o)}}get(t){return this.subjects.get(t)?.value??null}observe(t){return this.getOrCreateSubject(t).asObservable()}getOrCreateSubject(t){let i=this.subjects.get(t);return i||(i=new Y(null),this.subjects.set(t,i)),i}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var L=(()=>{let e=class e{};e.Events={Core:{IDENTIFY:"identify",SDK_VALIDATE_CLIENT_TRIGGERED:"sdkValidateClientTriggered",SDK_VALIDATE_CLIENT_SUCCESS:"sdkValidateClientSuccess",SDK_VALIDATE_CLIENT_FAILED:"sdkValidateClientFailed",SDK_USER_AUTH_SUCCESS:"sdkUserAuthSuccess",SDK_USER_AUTH_FAILED:"sdkUserAuthFailed",SDK_USER_SIGN_OUT:"sdkUserSignOut",SDK_PLAN_EXPIRED:"sdkPlanExpired",SDK_ERROR:"error",SDK_UNCAUGHT_ERROR:"uncaughtError",SDK_SESSION_RE_LOGIN_TRIGGERED:"sdkSessionReLoginTriggered",SDK_SESSION_TOKEN_EXPIRED:"sdkSessionTokenExpired",SDK_SESSION_RE_LOGIN_COUNT_EXCEEDED:"sdkSessionReLoginCountExceeded",SDK_JWT_EXPIRED_RETRY_EXCEEDED:"sdkJwtExpiredRetryExceeded",SDK_EVENT_RATE_LIMIT_EXCEEDED:"sdkEventRateLimitExceeded",SET_PERMISSION_PROVIDER_TRIGGERED:"setPermissionProviderTriggered",SIGN_OUT_USER_TRIGGERED:"signOutUserTriggered",SET_DOCUMENTS_TRIGGERED:"setDocumentsTriggered",SET_ROOT_LOCATION_TRIGGERED:"setRootLocationTriggered",SET_ROOT_DOCUMENT_TRIGGERED:"setRootDocumentTriggered",UNSET_DOCUMENTS_TRIGGERED:"unsetDocumentsTriggered",FETCH_DOCUMENTS_TRIGGERED:"fetchDocumentsTriggered",UPDATE_DOCUMENTS_TRIGGERED:"updateDocumentsTriggered",UPDATE_LOCATIONS_TRIGGERED:"updateLocationsTriggered",FETCH_FOLDERS_TRIGGERED:"fetchFoldersTriggered",SET_USER_DATA_PROVIDER_TRIGGERED:"setUserDataProviderTriggered",SET_ANONYMOUS_USER_DATA_PROVIDER_TRIGGERED:"setAnonymousUserDataProviderTriggered",SET_DATA_PROVIDERS_TRIGGERED:"setDataProvidersTriggered",SET_ENCRYPTION_PROVIDER_TRIGGERED:"setEncryptionProviderTriggered",SET_VELT_AUTH_PROVIDER_TRIGGERED:"setVeltAuthProviderTriggered",GET_DOCUMENT_ID_TRIGGERED:"getDocumentIdTriggered",SET_LOCATIONS_TRIGGERED:"setLocationsTriggered",SET_SCROLLABLE_ELEMENTS_IDS_TRIGGERED:"setScrollableElementsIdsTriggered",REMOVE_LOCATIONS_TRIGGERED:"removeLocationsTriggered",UNSET_LOCATIONS_TRIGGERED:"unsetLocationsTriggered",EXCLUDE_LOCATION_IDS_TRIGGERED:"excludeLocationIdsTriggered",UPDATE_CONTACT_LIST_TRIGGERED:"updateContactListTriggered",UPDATE_ORG_LIST_TRIGGERED:"updateOrgListTriggered",REMOVE_SCROLLABLE_ELEMENTS_IDS_TRIGGERED:"removeScrollableElementsIdsTriggered",GET_PRESENCE_ELEMENT_TRIGGERED:"getPresenceElementTriggered",GET_CURSOR_ELEMENT_TRIGGERED:"getCursorElementTriggered",GET_COMMENT_ELEMENT_TRIGGERED:"getCommentElementTriggered",GET_TAG_ELEMENT_TRIGGERED:"getTagElementTriggered",GET_SELECTION_ELEMENT_TRIGGERED:"getSelectionElementTriggered",GET_RECORDER_ELEMENT_TRIGGERED:"getRecorderElementTriggered",GET_CONTACT_ELEMENT_TRIGGERED:"getContactElementTriggered",GET_REWRITER_ELEMENT_TRIGGERED:"getRewriterElementTriggered",GET_HUDDLE_ELEMENT_TRIGGERED:"getHuddleElementTriggered",GET_LIVE_STATE_SYNC_ELEMENT_TRIGGERED:"getLiveStateSyncElementTriggered",GET_ARROW_ELEMENT_TRIGGERED:"getArrowElementTriggered",GET_VIEWS_ELEMENT_TRIGGERED:"getViewsElementTriggered",GET_NOTIFICATION_ELEMENT_TRIGGERED:"getNotificationElementTriggered",GET_AUTOCOMPLETE_ELEMENT_TRIGGERED:"getAutocompleteElementTriggered",GET_DOC_ELEMENT_TRIGGERED:"getDocElementTriggered",GET_AREA_ELEMENT_TRIGGERED:"getAreaElementTriggered",GET_REACTION_ELEMENT_TRIGGERED:"getReactionElementTriggered",GET_METADATA_TRIGGERED:"getMetadataTriggered",FETCH_DEBUG_INFO_TRIGGERED:"fetchDebugInfoTriggered",GET_DEBUG_INFO_TRIGGERED:"getDebugInfoTriggered",DISABLE_FEATURES_TRIGGERED:"disableFeaturesTriggered",SET_DARK_MODE_TRIGGERED:"setDarkModeTriggered",ENABLE_LOGS_TRIGGERED:"enableLogsTriggered",DISABLE_LOGS_TRIGGERED:"disableLogsTriggered",IS_USER_ALLOWED_TRIGGERED:"isUserAllowedTriggered",GET_USER_TRIGGERED:"getUserTriggered",GET_CURRENT_USER_TRIGGERED:"getCurrentUserTriggered",GET_HEARTBEAT_TRIGGERED:"getHeartbeatTriggered",GET_USER_ROLE_TRIGGERED:"getUserRoleTriggered",GET_USER_PERMISSIONS_TRIGGERED:"getUserPermissionsTriggered",GET_CURRENT_USER_PERMISSIONS_TRIGGERED:"getCurrentUserPermissionsTriggered",GET_FEATURES_ACCESS_LEVEL_IAM_TRIGGERED:"getFeaturesAccessLevelIamTriggered",IS_PLAN_EXPIRED_TRIGGERED:"isPlanExpiredTriggered",GET_CUSTOMER_METADATA_TRIGGERED:"getCustomerMetadataTriggered",GET_DOCUMENT_METADATA_TRIGGERED:"getDocumentMetadataTriggered",REMOVE_VELT_CONTENT_TRIGGERED:"removeVeltContentTriggered",INJECT_CUSTOM_CSS_TRIGGERED:"injectCustomCssTriggered",SET_LANGUAGE_TRIGGERED:"setLanguageTriggered",SET_TRANSLATIONS_TRIGGERED:"setTranslationsTriggered",ENABLE_AUTO_TRANSLATION_TRIGGERED:"enableAutoTranslationTriggered",DISABLE_AUTO_TRANSLATION_TRIGGERED:"disableAutoTranslationTriggered",SF_TRIGGERED:"sfTriggered",SET_UI_STATE_TRIGGERED:"setUiStateTriggered",GET_UI_STATE_TRIGGERED:"getUiStateTriggered",ENABLE_SAFE_EVAL_TRIGGERED:"enableSafeEvalTriggered",DISABLE_SAFE_EVAL_TRIGGERED:"disableSafeEvalTriggered",ENABLE_FIRESTORE_PERSISTENT_CACHE_TRIGGERED:"enableFirestorePersistentCacheTriggered",DISABLE_FIRESTORE_PERSISTENT_CACHE_TRIGGERED:"disableFirestorePersistentCacheTriggered",RESET_VELT_BUTTON_STATE_TRIGGERED:"resetVeltButtonStateTriggered"},PermissionProvider:{RESOURCE_ACCESS_REQUEST_FORMED:"resourceAccessRequestFormed",RESOURCE_ACCESS_REQUEST_TRIGGERED:"resourceAccessRequestTriggered",REVOKE_ACCESS_ON_DOCUMENT_UNSET_TRIGGERED:"revokeAccessOnDocumentUnsetTriggered",REVOKE_ACCESS_ON_DOCUMENT_UNSET_FORMED:"revokeAccessOnDocumentUnsetFormed",REVOKE_ACCESS_ON_DOCUMENT_UNSET_RESULT:"revokeAccessOnDocumentUnsetResult",REVOKE_ACCESS_ON_USER_LOGOUT_TRIGGERED:"revokeAccessOnUserLogoutTriggered",REVOKE_ACCESS_ON_USER_LOGOUT_FORMED:"revokeAccessOnUserLogoutFormed",REVOKE_ACCESS_ON_USER_LOGOUT_RESULT:"revokeAccessOnUserLogoutResult",RESOURCE_ACCESS_RESULT:"resourceAccessResult",RESOURCE_ACCESS_ERROR:"resourceAccessError",RESOURCE_ACCESS_RESULT_FROM_CACHE:"resourceAccessResultFromCache",REVOKE_ACCESS_ON_DOCUMENT_UNSET_ERROR:"revokeAccessOnDocumentUnsetError",REVOKE_ACCESS_ON_USER_LOGOUT_ERROR:"revokeAccessOnUserLogoutError"},Resolver:{COMMENT_RESOLVER_GET:"comment_resolver_get",COMMENT_RESOLVER_SAVE:"comment_resolver_save",COMMENT_RESOLVER_DELETE:"comment_resolver_delete",COMMENT_RESOLUTION_REQUEST_FORMED:"commentResolutionRequestFormed",COMMENT_RESOLUTION_REQUEST_TRIGGERED:"commentResolutionRequestTriggered",COMMENT_RESOLUTION_RESULT:"commentResolutionResult",COMMENT_RESOLUTION_ERROR:"commentResolutionError",COMMENT_RESOLUTION_RESULT_FROM_CACHE:"commentResolutionResultFromCache",COMMENT_SAVE_REQUEST_FORMED:"commentSaveRequestFormed",COMMENT_SAVE_REQUEST_TRIGGERED:"commentSaveRequestTriggered",COMMENT_SAVE_RESULT:"commentSaveResult",COMMENT_SAVE_ERROR:"commentSaveError",COMMENT_DELETE_REQUEST_FORMED:"commentDeleteRequestFormed",COMMENT_DELETE_REQUEST_TRIGGERED:"commentDeleteRequestTriggered",COMMENT_DELETE_RESULT:"commentDeleteResult",COMMENT_DELETE_ERROR:"commentDeleteError",REACTION_RESOLVER_GET:"reaction_resolver_get",REACTION_RESOLVER_SAVE:"reaction_resolver_save",REACTION_RESOLVER_DELETE:"reaction_resolver_delete",REACTION_RESOLUTION_REQUEST_FORMED:"reactionResolutionRequestFormed",REACTION_RESOLUTION_REQUEST_TRIGGERED:"reactionResolutionRequestTriggered",REACTION_RESOLUTION_RESULT:"reactionResolutionResult",REACTION_RESOLUTION_ERROR:"reactionResolutionError",REACTION_RESOLUTION_RESULT_FROM_CACHE:"reactionResolutionResultFromCache",REACTION_SAVE_REQUEST_FORMED:"reactionSaveRequestFormed",REACTION_SAVE_REQUEST_TRIGGERED:"reactionSaveRequestTriggered",REACTION_SAVE_RESULT:"reactionSaveResult",REACTION_SAVE_ERROR:"reactionSaveError",REACTION_DELETE_REQUEST_FORMED:"reactionDeleteRequestFormed",REACTION_DELETE_REQUEST_TRIGGERED:"reactionDeleteRequestTriggered",REACTION_DELETE_RESULT:"reactionDeleteResult",REACTION_DELETE_ERROR:"reactionDeleteError",NOTIFICATION_RESOLVER_GET:"notification_resolver_get",NOTIFICATION_RESOLVER_DELETE:"notification_resolver_delete",NOTIFICATION_RESOLUTION_REQUEST_FORMED:"notificationResolutionRequestFormed",NOTIFICATION_RESOLUTION_REQUEST_TRIGGERED:"notificationResolutionRequestTriggered",NOTIFICATION_RESOLUTION_RESULT:"notificationResolutionResult",NOTIFICATION_RESOLUTION_ERROR:"notificationResolutionError",NOTIFICATION_DELETE_REQUEST_FORMED:"notificationDeleteRequestFormed",NOTIFICATION_DELETE_REQUEST_TRIGGERED:"notificationDeleteRequestTriggered",NOTIFICATION_DELETE_RESULT:"notificationDeleteResult",NOTIFICATION_DELETE_ERROR:"notificationDeleteError",USER_RESOLVER_GET:"user_resolver_get",USER_RESOLUTION_REQUEST_FORMED:"userResolutionRequestFormed",USER_RESOLUTION_REQUEST_TRIGGERED:"userResolutionRequestTriggered",USER_RESOLUTION_RESULT:"userResolutionResult",USER_RESOLUTION_ERROR:"userResolutionError",USER_RESOLUTION_RESULT_FROM_CACHE:"userResolutionResultFromCache",EMAIL_USER_ID_RESOLUTION_REQUEST_FORMED:"emailUserIdResolutionRequestFormed",EMAIL_USER_ID_RESOLUTION_REQUEST_TRIGGERED:"emailUserIdResolutionRequestTriggered",EMAIL_USER_ID_RESOLUTION_RESULT:"emailUserIdResolutionResult",EMAIL_USER_ID_RESOLUTION_ERROR:"emailUserIdResolutionError",ATTACHMENT_RESOLVER_SAVE:"attachment_resolver_save",ATTACHMENT_RESOLVER_DELETE:"attachment_resolver_delete",ATTACHMENT_SAVE_REQUEST_FORMED:"attachmentSaveRequestFormed",ATTACHMENT_SAVE_REQUEST_TRIGGERED:"attachmentSaveRequestTriggered",ATTACHMENT_SAVE_RESULT:"attachmentSaveResult",ATTACHMENT_SAVE_ERROR:"attachmentSaveError",ATTACHMENT_DELETE_REQUEST_FORMED:"attachmentDeleteRequestFormed",ATTACHMENT_DELETE_REQUEST_TRIGGERED:"attachmentDeleteRequestTriggered",ATTACHMENT_DELETE_RESULT:"attachmentDeleteResult",ATTACHMENT_DELETE_ERROR:"attachmentDeleteError",RECORDER_RESOLVER_GET:"recorder_resolver_get",RECORDER_RESOLVER_SAVE:"recorder_resolver_save",RECORDER_RESOLVER_DELETE:"recorder_resolver_delete",RECORDER_RESOLUTION_REQUEST_FORMED:"recorderResolutionRequestFormed",RECORDER_RESOLUTION_REQUEST_TRIGGERED:"recorderResolutionRequestTriggered",RECORDER_RESOLUTION_RESULT:"recorderResolutionResult",RECORDER_RESOLUTION_ERROR:"recorderResolutionError",RECORDER_RESOLUTION_RESULT_FROM_CACHE:"recorderResolutionResultFromCache",RECORDER_SAVE_REQUEST_FORMED:"recorderSaveRequestFormed",RECORDER_SAVE_REQUEST_TRIGGERED:"recorderSaveRequestTriggered",RECORDER_SAVE_RESULT:"recorderSaveResult",RECORDER_SAVE_ERROR:"recorderSaveError",RECORDER_DELETE_REQUEST_FORMED:"recorderDeleteRequestFormed",RECORDER_DELETE_REQUEST_TRIGGERED:"recorderDeleteRequestTriggered",RECORDER_DELETE_RESULT:"recorderDeleteResult",RECORDER_DELETE_ERROR:"recorderDeleteError",ACTIVITY_RESOLVER_GET:"activity_resolver_get",ACTIVITY_RESOLVER_SAVE:"activity_resolver_save",ACTIVITY_RESOLUTION_REQUEST_FORMED:"activityResolutionRequestFormed",ACTIVITY_RESOLUTION_REQUEST_TRIGGERED:"activityResolutionRequestTriggered",ACTIVITY_RESOLUTION_RESULT:"activityResolutionResult",ACTIVITY_RESOLUTION_ERROR:"activityResolutionError",ACTIVITY_RESOLUTION_RESULT_FROM_CACHE:"activityResolutionResultFromCache",ACTIVITY_SAVE_REQUEST_FORMED:"activitySaveRequestFormed",ACTIVITY_SAVE_REQUEST_TRIGGERED:"activitySaveRequestTriggered",ACTIVITY_SAVE_RESULT:"activitySaveResult",ACTIVITY_SAVE_ERROR:"activitySaveError"},Autocomplete:{CREATE_TRIGGERED:"createTriggered",ON_AUTOCOMPLETE_CHIP_CLICK_TRIGGERED:"onAutocompleteChipClickTriggered"},Comments:{COMMENT_TOOL_CLICKED:"commentToolClicked",COMMENT_DRAFT_ADDED:"commentDraftAdded",COMMENT_ADD_CONTEXT_TRIGGERED:"commentAddContextTriggered",COMMENT_UPDATE_CONTEXT_TRIGGERED:"commentUpdateContextTriggered",COMMENT_UPDATE_CONTEXT_SUCCESS:"commentUpdateContextSuccess",COMMENT_UPDATE_CONTEXT_FAILED:"commentUpdateContextFailed",COMMENT_ADDED:"commentAdded",COMMENT_READ:"commentRead",COMMENT_STATUS_CHANGED:"commentStatusChanged",COMMENT_PRIORITY_CHANGED:"commentPriorityChanged",COMMENT_CUSTOM_CHIPS_CHANGED:"commentCustomChipsChanged",COMMENT_APPROVED:"commentApproved",COMMENT_ACCEPTED:"commentAccepted",COMMENT_REJECTED:"commentRejected",COMMENT_ASSIGNED:"commentAssigned",COMMENT_DELETE_TRIGGERED:"commentDeleteTriggered",COMMENT_DELETED:"commentDeleted",COMMENT_THREAD_DELETED:"commentThreadDeleted",COMMENT_LINK_COPIED:"commentLinkCopied",COMMENT_EDIT_BUTTON_CLICKED:"commentEditButtonClicked",COMMENT_EDITED:"commentEdited",COMMENT_SIDEBAR_OPENED:"commentSidebarOpened",COMMENT_SIDEBAR_CLOSED:"commentSidebarClosed",COMMENT_SIDEBAR_TOGGLED:"commentSidebarToggled",COMMENT_TAG_BUTTON_CLICKED:"commentTagButtonClicked",COMMENT_TAG_ADDED:"commentTagAdded",COMMENT_PIN_DRAGGED:"commentPinDragged",COMMENT_ADD_MODE_ENABLED:"commentAddModeEnabled",COMMENT_ADD_MODE_DISABLED:"commentAddModeDisabled",COMMENT_TEXT_MODE_ENABLED:"commentTextModeEnabled",COMMENT_TEXT_MODE_DISABLED:"commentTextModeDisabled",COMMENT_POPOVER_MODE_ENABLED:"commentPopoverModeEnabled",COMMENT_POPOVER_MODE_DISABLED:"commentPopoverModeDisabled",COMMENT_STREAM_MODE_ENABLED:"commentStreamModeEnabled",COMMENT_STREAM_MODE_DISABLED:"commentStreamModeDisabled",COMMENT_SIDEBAR_EMBED_MODE_ENABLED:"commentSidebarEmbedModeEnabled",COMMENT_SIDEBAR_FLOATING_MODE_ENABLED:"commentSidebarFloatingModeEnabled",COMMENT_ATTACHMENT_SET_ALLOWED_FILE_TYPES_TRIGGERED:"commentAttachmentSetAllowedFileTypesTriggered",ENABLE_FORCE_CLOSE_ALL_ON_ESC_TRIGGERED:"enableForceCloseAllOnEscTriggered",DISABLE_FORCE_CLOSE_ALL_ON_ESC_TRIGGERED:"disableForceCloseAllOnEscTriggered",COMMENT_ATTACHMENT_BUTTON_CLICKED:"commentAttachmentButtonClicked",COMMENT_ATTACHMENT_ADDED:"commentAttachmentAdded",COMMENT_ATTACHMENT_DOWNLOADED:"commentAttachmentDownloaded",COMMENT_ATTACHMENT_DELETED:"commentAttachmentDeleted",COMMENT_ATTACHMENT_SIZE_EXCEEDED:"commentAttachmentSizeExceeded",COMMENT_SUBMIT_TRIGGERED:"commentSubmitTriggered",COMMENT_APPROVE_BUTTON_CLICKED:"commentApproveButtonClicked",COMMENT_ACCEPT_BUTTON_CLICKED:"commentAcceptButtonClicked",COMMENT_REJECT_BUTTON_CLICKED:"commentRejectButtonClicked",SUGGESTION_ACCEPTED:"suggestionAccepted",SUGGESTION_REJECTED:"suggestionRejected",COMMENT_SIGN_IN_BUTTON_CLICKED:"commentSignInButtonClicked",COMMENT_UPGRADE_BUTTON_CLICKED:"commentUpgradeButtonClicked",COMMENT_RECORDING_TOOL_CLICKED:"commentRecordingToolClicked",COMMENT_RECORDING_ADDED:"commentRecordingAdded",COMMENT_RECORDING_DELETED:"commentRecordingDeleted",COMMENT_MORE_REPLY_OPTION_CLICKED:"commentMoreReplyOptionClicked",COMMENT_PRIVATE_COMMENT_MODE_ENABLED:"commentPrivateCommentModeEnabled",COMMENT_PRIVATE_COMMENT_MODE_DISABLED:"commentPrivateCommentModeDisabled",COMMENT_ACCESS_MODE_CHANGED:"commentAccessModeChanged",SET_COMPOSER_FILE_ATTACHMENTS_TRIGGERED:"setComposerFileAttachmentsTriggered",GET_ALL_COMMENT_ANNOTATIONS_TRIGGERED_INTERNAL:"getAllCommentAnnotationsTriggered_internal",GET_ALL_COMMENT_ANNOTATIONS_TRIGGERED:"getAllCommentAnnotationsTriggered",DELETE_SELECTED_COMMENT_TRIGGERED:"deleteSelectedCommentTriggered",ENABLE_TEXT_COMMENTS_TRIGGERED:"enableTextCommentsTriggered",DISABLE_TEXT_COMMENTS_TRIGGERED:"disableTextCommentsTriggered",ALLOWED_ELEMENT_IDS_TRIGGERED:"allowedElementIdsTriggered",ALLOWED_ELEMENT_CLASS_NAMES_TRIGGERED:"allowedElementClassNamesTriggered",ALLOWED_ELEMENT_QUERY_SELECTORS_TRIGGERED:"allowedElementQuerySelectorsTriggered",ENABLE_FLOATING_COMMENT_DIALOG_TRIGGERED:"enableFloatingCommentDialogTriggered",DISABLE_FLOATING_COMMENT_DIALOG_TRIGGERED:"disableFloatingCommentDialogTriggered",ATTACH_COMMENT_TRIGGERED:"attachCommentTriggered",OPEN_COMMENT_SIDEBAR_TRIGGERED:"openCommentSidebarTriggered",CLOSE_COMMENT_SIDEBAR_TRIGGERED:"closeCommentSidebarTriggered",TOGGLE_COMMENT_SIDEBAR_TRIGGERED:"toggleCommentSidebarTriggered",SET_ASSIGN_TO_TYPE_TRIGGERED:"setAssignToTypeTriggered",ENABLE_CONTEXT_IN_PAGE_MODE_COMPOSER_TRIGGERED:"enableContextInPageModeComposerTriggered",DISABLE_CONTEXT_IN_PAGE_MODE_COMPOSER_TRIGGERED:"disableContextInPageModeComposerTriggered",CLEAR_PAGE_MODE_COMPOSER_CONTEXT_TRIGGERED:"clearPageModeComposerContextTriggered",SET_CONTEXT_IN_PAGE_MODE_COMPOSER_TRIGGERED:"setContextInPageModeComposerTriggered",FOCUS_PAGE_MODE_COMPOSER_TRIGGERED:"focusPageModeComposerTriggered",ENABLE_MODERATOR_MODE_TRIGGERED:"enableModeratorModeTriggered",DISABLE_MODERATOR_MODE_TRIGGERED:"disableModeratorModeTriggered",ENABLE_STREAM_MODE_TRIGGERED:"enableStreamModeTriggered",DISABLE_STREAM_MODE_TRIGGERED:"disableStreamModeTriggered",ENABLE_SIGN_IN_BUTTON_TRIGGERED:"enableSignInButtonTriggered",DISABLE_SIGN_IN_BUTTON_TRIGGERED:"disableSignInButtonTriggered",ENABLE_UPGRADE_BUTTON_TRIGGERED:"enableUpgradeButtonTriggered",DISABLE_UPGRADE_BUTTON_TRIGGERED:"disableUpgradeButtonTriggered",ON_COMMENT_MODE_CHANGE_TRIGGERED:"onCommentModeChangeTriggered",ENABLE_ATTACHMENTS_TRIGGERED:"enableAttachmentsTriggered",DISABLE_ATTACHMENTS_TRIGGERED:"disableAttachmentsTriggered",ENABLE_ATTACHMENT_DOWNLOAD_TRIGGERED:"enableAttachmentDownloadTriggered",DISABLE_ATTACHMENT_DOWNLOAD_TRIGGERED:"disableAttachmentDownloadTriggered",IS_USER_GLOBAL_CONTACT_TRIGGERED:"isUserGlobalContactTriggered",ENABLE_DEVICE_INFO_TRIGGERED:"enableDeviceInfoTriggered",DISABLE_DEVICE_INFO_TRIGGERED:"disableDeviceInfoTriggered",ENABLE_COMMENT_MODE_TRIGGERED:"enableCommentModeTriggered",DISABLE_COMMENT_MODE_TRIGGERED:"disableCommentModeTriggered",ENABLE_PERSISTENT_COMMENT_MODE_TRIGGERED:"enablePersistentCommentModeTriggered",DISABLE_PERSISTENT_COMMENT_MODE_TRIGGERED:"disablePersistentCommentModeTriggered",SHOW_COMMENT_INDEX_TRIGGERED:"showCommentIndexTriggered",ENABLE_COMMENT_INDEX_TRIGGERED:"enableCommentIndexTriggered",DISABLE_COMMENT_INDEX_TRIGGERED:"disableCommentIndexTriggered",ENABLE_POPOVER_MODE_TRIGGERED:"enablePopoverModeTriggered",DISABLE_POPOVER_MODE_TRIGGERED:"disablePopoverModeTriggered",ENABLE_POPOVER_TRIANGLE_COMPONENT_TRIGGERED:"enablePopoverTriangleComponentTriggered",DISABLE_POPOVER_TRIANGLE_COMPONENT_TRIGGERED:"disablePopoverTriangleComponentTriggered",ENABLE_DIALOG_ON_HOVER_TRIGGERED:"enableDialogOnHoverTriggered",DISABLE_DIALOG_ON_HOVER_TRIGGERED:"disableDialogOnHoverTriggered",ENABLE_DIALOG_ON_TARGET_ELEMENT_CLICK_TRIGGERED:"enableDialogOnTargetElementClickTriggered",DISABLE_DIALOG_ON_TARGET_ELEMENT_CLICK_TRIGGERED:"disableDialogOnTargetElementClickTriggered",ENABLE_PRIORITY_TRIGGERED:"enablePriorityTriggered",DISABLE_PRIORITY_TRIGGERED:"disablePriorityTriggered",ENABLE_STATUS_TRIGGERED:"enableStatusTriggered",DISABLE_STATUS_TRIGGERED:"disableStatusTriggered",ENABLE_VISIBILITY_OPTIONS_TRIGGERED:"enableVisibilityOptionsTriggered",DISABLE_VISIBILITY_OPTIONS_TRIGGERED:"disableVisibilityOptionsTriggered",ENABLE_RESOLVE_BUTTON_TRIGGERED:"enableResolveButtonTriggered",DISABLE_RESOLVE_BUTTON_TRIGGERED:"disableResolveButtonTriggered",ENABLE_GHOST_COMMENTS_TRIGGERED:"enableGhostCommentsTriggered",DISABLE_GHOST_COMMENTS_TRIGGERED:"disableGhostCommentsTriggered",ENABLE_GHOST_COMMENTS_INDICATOR_TRIGGERED:"enableGhostCommentsIndicatorTriggered",DISABLE_GHOST_COMMENTS_INDICATOR_TRIGGERED:"disableGhostCommentsIndicatorTriggered",SET_CUSTOM_STATUS_TRIGGERED:"setCustomStatusTriggered",SET_CUSTOM_PRIORITY_TRIGGERED:"setCustomPriorityTriggered",SET_CUSTOM_CATEGORY_TRIGGERED:"setCustomCategoryTriggered",ENABLE_INBOX_MODE_TRIGGERED:"enableInboxModeTriggered",DISABLE_INBOX_MODE_TRIGGERED:"disableInboxModeTriggered",ENABLE_AUTO_CATEGORIZE_TRIGGERED:"enableAutoCategorizeTriggered",DISABLE_AUTO_CATEGORIZE_TRIGGERED:"disableAutoCategorizeTriggered",ENABLE_DARK_MODE_TRIGGERED:"enableDarkModeTriggered",DISABLE_DARK_MODE_TRIGGERED:"disableDarkModeTriggered",SET_CONTEXT_PROVIDER_TRIGGERED:"setContextProviderTriggered",ENABLE_SUGGESTION_MODE_TRIGGERED:"enableSuggestionModeTriggered",DISABLE_SUGGESTION_MODE_TRIGGERED:"disableSuggestionModeTriggered",ENABLE_MOBILE_MODE_TRIGGERED:"enableMobileModeTriggered",DISABLE_MOBILE_MODE_TRIGGERED:"disableMobileModeTriggered",ENABLE_INLINE_COMMENT_MODE_TRIGGERED:"enableInlineCommentModeTriggered",DISABLE_INLINE_COMMENT_MODE_TRIGGERED:"disableInlineCommentModeTriggered",ENABLE_MINIMAP_TRIGGERED:"enableMinimapTriggered",DISABLE_MINIMAP_TRIGGERED:"disableMinimapTriggered",SHOW_COMMENTS_ON_DOM_TRIGGERED:"showCommentsOnDomTriggered",HIDE_COMMENTS_ON_DOM_TRIGGERED:"hideCommentsOnDomTriggered",ENABLE_COMMENT_TOOL_TRIGGERED:"enableCommentToolTriggered",DISABLE_COMMENT_TOOL_TRIGGERED:"disableCommentToolTriggered",SET_TOTAL_MEDIA_LENGTH_TRIGGERED:"setTotalMediaLengthTriggered",ON_COMMENT_ADD_TRIGGERED:"onCommentAddTriggered",ON_COMMENT_UPDATE_TRIGGERED:"onCommentUpdateTriggered",ADD_COMMENT_ON_SELECTED_TEXT_TRIGGERED:"addCommentOnSelectedTextTriggered",ENABLE_SIDEBAR_URL_NAVIGATION_TRIGGERED:"enableSidebarUrlNavigationTriggered",DISABLE_SIDEBAR_URL_NAVIGATION_TRIGGERED:"disableSidebarUrlNavigationTriggered",SET_D_STRATEGY_TRIGGERED:"setDStrategyTriggered",ENABLE_SIDEBAR_BUTTON_ON_COMMENT_DIALOG_TRIGGERED:"enableSidebarButtonOnCommentDialogTriggered",DISABLE_SIDEBAR_BUTTON_ON_COMMENT_DIALOG_TRIGGERED:"disableSidebarButtonOnCommentDialogTriggered",ON_SIDEBAR_BUTTON_ON_COMMENT_DIALOG_CLICK_TRIGGERED:"onSidebarButtonOnCommentDialogClickTriggered",ENABLE_REACTIONS_TRIGGERED:"enableReactionsTriggered",DISABLE_REACTIONS_TRIGGERED:"disableReactionsTriggered",ENABLE_ANONYMOUS_EMAIL_TRIGGERED:"enableAnonymousEmailTriggered",DISABLE_ANONYMOUS_EMAIL_TRIGGERED:"disableAnonymousEmailTriggered",SET_RECORDINGS_TRIGGERED:"setRecordingsTriggered",ADD_COMMENT_ON_ELEMENT_TRIGGERED:"addCommentOnElementTriggered",ENABLE_PRIVATE_COMMENT_MODE_TRIGGERED:"enablePrivateCommentModeTriggered",DISABLE_PRIVATE_COMMENT_MODE_TRIGGERED:"disablePrivateCommentModeTriggered",ENABLE_PRIVATE_MODE_TRIGGERED:"enablePrivateModeTriggered",DISABLE_PRIVATE_MODE_TRIGGERED:"disablePrivateModeTriggered",ENABLE_SCROLL_TO_COMMENT_TRIGGERED:"enableScrollToCommentTriggered",DISABLE_SCROLL_TO_COMMENT_TRIGGERED:"disableScrollToCommentTriggered",ENABLE_USER_MENTIONS_TRIGGERED:"enableUserMentionsTriggered",DISABLE_USER_MENTIONS_TRIGGERED:"disableUserMentionsTriggered",SET_COMMENT_SIDEBAR_FILTERS_TRIGGERED:"setCommentSidebarFiltersTriggered",SET_SYSTEM_FILTERS_OPERATOR_TRIGGERED:"setSystemFiltersOperatorTriggered",ENABLE_COMMENT_PIN_HIGHLIGHTER_TRIGGERED:"enableCommentPinHighlighterTriggered",DISABLE_COMMENT_PIN_HIGHLIGHTER_TRIGGERED:"disableCommentPinHighlighterTriggered",ENABLE_DELETE_ON_BACKSPACE_TRIGGERED:"enableDeleteOnBackspaceTriggered",DISABLE_DELETE_ON_BACKSPACE_TRIGGERED:"disableDeleteOnBackspaceTriggered",ENABLE_HOTKEY_TRIGGERED:"enableHotkeyTriggered",DISABLE_HOTKEY_TRIGGERED:"disableHotkeyTriggered",ENABLE_DEVICE_INDICATOR_ON_COMMENT_PINS_TRIGGERED:"enableDeviceIndicatorOnCommentPinsTriggered",DISABLE_DEVICE_INDICATOR_ON_COMMENT_PINS_TRIGGERED:"disableDeviceIndicatorOnCommentPinsTriggered",GET_ELEMENT_REF_BY_ANNOTATION_ID_TRIGGERED:"getElementRefByAnnotationIdTriggered",SCROLL_TO_COMMENT_BY_ANNOTATION_ID_TRIGGERED:"scrollToCommentByAnnotationIdTriggered",SELECT_COMMENT_BY_ANNOTATION_ID_TRIGGERED:"selectCommentByAnnotationIdTriggered",ENABLE_RECORDING_SUMMARY_TRIGGERED:"enableRecordingSummaryTriggered",DISABLE_RECORDING_SUMMARY_TRIGGERED:"disableRecordingSummaryTriggered",ENABLE_RECORDING_TRANSCRIPTION_TRIGGERED:"enableRecordingTranscriptionTriggered",DISABLE_RECORDING_TRANSCRIPTION_TRIGGERED:"disableRecordingTranscriptionTriggered",ENABLE_RECORDING_COUNTDOWN_TRIGGERED:"enableRecordingCountdownTriggered",DISABLE_RECORDING_COUNTDOWN_TRIGGERED:"disableRecordingCountdownTriggered",SET_UNREAD_INDICATOR_MODE_TRIGGERED:"setUnreadIndicatorModeTriggered",ENABLE_ENTER_KEY_TO_SUBMIT_TRIGGERED:"enableEnterKeyToSubmitTriggered",DISABLE_ENTER_KEY_TO_SUBMIT_TRIGGERED:"disableEnterKeyToSubmitTriggered",ENABLE_PIN_SHADOW_DOM_TRIGGERED:"enablePinShadowDOMTriggered",DISABLE_PIN_SHADOW_DOM_TRIGGERED:"disablePinShadowDOMTriggered",ENABLE_DIALOG_SHADOW_DOM_TRIGGERED:"enableDialogShadowDOMTriggered",DISABLE_DIALOG_SHADOW_DOM_TRIGGERED:"disableDialogShadowDOMTriggered",ENABLE_SIDEBAR_SHADOW_DOM_TRIGGERED:"enableSidebarShadowDOMTriggered",DISABLE_SIDEBAR_SHADOW_DOM_TRIGGERED:"disableSidebarShadowDOMTriggered",ENABLE_CHANGE_DETECTION_IN_COMMENT_MODE_TRIGGERED:"enableChangeDetectionInCommentModeTriggered",DISABLE_CHANGE_DETECTION_IN_COMMENT_MODE_TRIGGERED:"disableChangeDetectionInCommentModeTriggered",SHOW_RESOLVED_COMMENTS_ON_DOM_TRIGGERED:"showResolvedCommentsOnDomTriggered",HIDE_RESOLVED_COMMENTS_ON_DOM_TRIGGERED:"hideResolvedCommentsOnDomTriggered",SET_CUSTOM_REACTIONS_TRIGGERED:"setCustomReactionsTriggered",ON_COMMENT_SELECTION_CHANGE_TRIGGERED:"onCommentSelectionChangeTriggered",GET_UNREAD_COMMENT_COUNT_BY_ANNOTATION_ID_TRIGGERED:"getUnreadCommentCountByAnnotationIdTriggered",GET_UNREAD_COMMENT_ANNOTATION_COUNT_ON_CURRENT_DOCUMENT_TRIGGERED:"getUnreadCommentAnnotationCountOnCurrentDocumentTriggered",GET_UNREAD_COMMENT_COUNT_ON_CURRENT_DOCUMENT_TRIGGERED:"getUnreadCommentCountOnCurrentDocumentTriggered",GET_UNREAD_COMMENT_ANNOTATION_COUNT_BY_LOCATION_ID_TRIGGERED:"getUnreadCommentAnnotationCountByLocationIdTriggered",GET_UNREAD_COMMENT_COUNT_BY_LOCATION_ID_TRIGGERED:"getUnreadCommentCountByLocationIdTriggered",UPDATE_COMMENT_DIALOG_POSITION_TRIGGERED:"updateCommentDialogPositionTriggered",ENABLE_AREA_COMMENT_TRIGGERED:"enableAreaCommentTriggered",DISABLE_AREA_COMMENT_TRIGGERED:"disableAreaCommentTriggered",SET_PIN_CURSOR_IMAGE_TRIGGERED:"setPinCursorImageTriggered",ADD_MANUAL_COMMENT_TRIGGERED:"addManualCommentTriggered",CREATE_CUSTOM_LIST_DATA_ON_ANNOTATION_TRIGGERED:"createCustomListDataOnAnnotationTriggered",CREATE_CUSTOM_LIST_DATA_ON_COMMENT_TRIGGERED:"createCustomListDataOnCommentTriggered",EXCLUDE_LOCATION_IDS_FROM_SIDEBAR_TRIGGERED:"excludeLocationIdsFromSidebarTriggered",ENABLE_BUBBLE_ON_PIN_TRIGGERED:"enableBubbleOnPinTriggered",DISABLE_BUBBLE_ON_PIN_TRIGGERED:"disableBubbleOnPinTriggered",ENABLE_BUBBLE_ON_PIN_HOVER_TRIGGERED:"enableBubbleOnPinHoverTriggered",DISABLE_BUBBLE_ON_PIN_HOVER_TRIGGERED:"disableBubbleOnPinHoverTriggered",ENABLE_PIN_DRAG_TRIGGERED:"enablePinDragTriggered",DISABLE_PIN_DRAG_TRIGGERED:"disablePinDragTriggered",ENABLE_MULTI_THREAD_MODE_TRIGGERED:"enableMultiThreadModeTriggered",DISABLE_MULTI_THREAD_MODE_TRIGGERED:"disableMultiThreadModeTriggered",ENABLE_MULTI_THREAD_TRIGGERED:"enableMultiThreadTriggered",DISABLE_MULTI_THREAD_TRIGGERED:"disableMultiThreadTriggered",ENABLE_GROUP_MATCHED_COMMENTS_TRIGGERED:"enableGroupMatchedCommentsTriggered",DISABLE_GROUP_MATCHED_COMMENTS_TRIGGERED:"disableGroupMatchedCommentsTriggered",UPDATE_CONTEXT_TRIGGERED:"updateContextTriggered",UPDATE_VISIBILITY_TRIGGERED:"updateVisibilityTriggered",GET_SELECTED_COMMENTS_TRIGGERED:"getSelectedCommentsTriggered",ENABLE_DELETE_REPLY_CONFIRMATION_TRIGGERED:"enableDeleteReplyConfirmationTriggered",DISABLE_DELETE_REPLY_CONFIRMATION_TRIGGERED:"disableDeleteReplyConfirmationTriggered",ON_COPY_LINK_TRIGGERED:"onCopyLinkTriggered",GET_COMMENT_ANNOTATION_BY_ID_TRIGGERED:"getCommentAnnotationByIdTriggered",ENABLE_COLLAPSED_COMMENTS_TRIGGERED:"enableCollapsedCommentsTriggered",DISABLE_COLLAPSED_COMMENTS_TRIGGERED:"disableCollapsedCommentsTriggered",SET_COMMENT_SIDEBAR_DATA_TRIGGERED:"setCommentSidebarDataTriggered",ON_COMMENT_SIDEBAR_INIT_TRIGGERED:"onCommentSidebarInitTriggered",ON_COMMENT_SIDEBAR_DATA_TRIGGERED:"onCommentSidebarDataTriggered",SET_COMMENT_SIDEBAR_DEFAULT_CUSTOM_ACTIONS_TRIGGERED:"setCommentSidebarDefaultCustomActionsTriggered",ENABLE_SIDEBAR_CUSTOM_ACTIONS_TRIGGERED:"enableSidebarCustomActionsTriggered",DISABLE_SIDEBAR_CUSTOM_ACTIONS_TRIGGERED:"disableSidebarCustomActionsTriggered",ENABLE_QUERY_PARAMS_COMMENTS_TRIGGERED:"enableQueryParamsCommentsTriggered",DISABLE_QUERY_PARAMS_COMMENTS_TRIGGERED:"disableQueryParamsCommentsTriggered",ENABLE_RESOLVE_STATUS_ACCESS_ADMIN_ONLY_TRIGGERED:"enableResolveStatusAccessAdminOnlyTriggered",DISABLE_RESOLVE_STATUS_ACCESS_ADMIN_ONLY_TRIGGERED:"disableResolveStatusAccessAdminOnlyTriggered",ENABLE_LINK_CALLBACK_TRIGGERED:"enableLinkCallbackTriggered",DISABLE_LINK_CALLBACK_TRIGGERED:"disableLinkCallbackTriggered",ENABLE_SEEN_BY_USERS_TRIGGERED:"enableSeenByUsersTriggered",DISABLE_SEEN_BY_USERS_TRIGGERED:"disableSeenByUsersTriggered",ENABLE_SHORT_USER_NAME_TRIGGERED:"enableShortUserNameTriggered",DISABLE_SHORT_USER_NAME_TRIGGERED:"disableShortUserNameTriggered",ENABLE_READ_ONLY_TRIGGERED:"enableReadOnlyTriggered",DISABLE_READ_ONLY_TRIGGERED:"disableReadOnlyTriggered",ADD_COMMENT_ANNOTATION_TRIGGERED:"addCommentAnnotationTriggered",APPROVE_COMMENT_ANNOTATION_TRIGGERED:"approveCommentAnnotationTriggered",ACCEPT_COMMENT_ANNOTATION_TRIGGERED:"acceptCommentAnnotationTriggered",REJECT_COMMENT_ANNOTATION_TRIGGERED:"rejectCommentAnnotationTriggered",SUBSCRIBE_COMMENT_ANNOTATION_TRIGGERED:"subscribeCommentAnnotationTriggered",UNSUBSCRIBE_COMMENT_ANNOTATION_TRIGGERED:"unsubscribeCommentAnnotationTriggered",DELETE_COMMENT_ANNOTATION_TRIGGERED:"deleteCommentAnnotationTriggered",GET_COMMENT_ANNOTATIONS_TRIGGERED:"getCommentAnnotationsTriggered",GET_COMMENT_ANNOTATIONS_COUNT_TRIGGERED:"getCommentAnnotationsCountTriggered",ASSIGN_USER_TRIGGERED:"assignUserTriggered",UPDATE_PRIORITY_TRIGGERED:"updatePriorityTriggered",UPDATE_STATUS_TRIGGERED:"updateStatusTriggered",UPDATE_ACCESS_TRIGGERED:"updateAccessTriggered",RESOLVE_COMMENT_ANNOTATION_TRIGGERED:"resolveCommentAnnotationTriggered",GET_LINK_TRIGGERED:"getLinkTriggered",COPY_LINK_TRIGGERED:"copyLinkTriggered",ADD_COMMENT_TRIGGERED:"addCommentTriggered",UPDATE_COMMENT_TRIGGERED:"updateCommentTriggered",DELETE_COMMENT_TRIGGERED:"deleteCommentTriggered",GET_COMMENT_TRIGGERED:"getCommentTriggered",MARK_AS_READ_TRIGGERED:"markAsReadTriggered",MARK_AS_UNREAD_TRIGGERED:"markAsUnreadTriggered",ENABLE_SCREENSHOT_TRIGGERED:"enableScreenshotTriggered",DISABLE_SCREENSHOT_TRIGGERED:"disableScreenshotTriggered",ENABLE_PAGINATED_CONTACT_LIST_TRIGGERED:"enablePaginatedContactListTriggered",DISABLE_PAGINATED_CONTACT_LIST_TRIGGERED:"disablePaginatedContactListTriggered",SUBMIT_COMMENT_TRIGGERED:"submitCommentTriggered",CLEAR_COMPOSER_TRIGGERED:"clearComposerTriggered",GET_COMPOSER_DATA_TRIGGERED:"getComposerDataTriggered",ENABLE_FORMAT_OPTIONS_TRIGGERED:"enableFormatOptionsTriggered",DISABLE_FORMAT_OPTIONS_TRIGGERED:"disableFormatOptionsTriggered",SET_FORMAT_CONFIG_TRIGGERED:"setFormatConfigTriggered",ADD_ATTACHMENT_TRIGGERED:"addAttachmentTriggered",DELETE_ATTACHMENT_TRIGGERED:"deleteAttachmentTriggered",GET_ATTACHMENT_TRIGGERED:"getAttachmentTriggered",DELETE_RECORDING_TRIGGERED:"deleteRecordingTriggered",GET_RECORDING_TRIGGERED:"getRecordingTriggered",REACTION_ADDED:"reactionAdded",REACTION_DELETED:"reactionDeleted",ADD_REACTION_TRIGGERED:"addReactionTriggered",DELETE_REACTION_TRIGGERED:"deleteReactionTriggered",TOGGLE_REACTION_TRIGGERED:"toggleReactionTriggered",ENABLE_CUSTOM_AUTOCOMPLETE_SEARCH_TRIGGERED:"enableCustomAutocompleteSearchTriggered",DISABLE_CUSTOM_AUTOCOMPLETE_SEARCH_TRIGGERED:"disableCustomAutocompleteSearchTriggered",FETCH_COMMENT_ANNOTATIONS_TRIGGERED:"fetchCommentAnnotationsTriggered",SET_TRANSFORM_CONTEXT_TRIGGERED:"setTransformContextTriggered",ENABLE_SVG_AS_IMG_TRIGGERED:"enableSvgAsImgTriggered",DISABLE_SVG_AS_IMG_TRIGGERED:"disableSvgAsImgTriggered",ENABLE_FULL_EXPANDED_TRIGGERED:"enableFullExpandedTriggered",DISABLE_FULL_EXPANDED_TRIGGERED:"disableFullExpandedTriggered",ENABLE_COMMENT_TO_NEAREST_ALLOWED_ELEMENT_TRIGGERED:"enableCommentToNearestAllowedElementTriggered",DISABLE_COMMENT_TO_NEAREST_ALLOWED_ELEMENT_TRIGGERED:"disableCommentToNearestAllowedElementTriggered",ENABLE_DRAFT_MODE_TRIGGERED:"enableDraftModeTriggered",DISABLE_DRAFT_MODE_TRIGGERED:"disableDraftModeTriggered",ENABLE_FILTER_COMMENTS_ON_DOM_TRIGGERED:"enableFilterCommentsOnDomTriggered",DISABLE_FILTER_COMMENTS_ON_DOM_TRIGGERED:"disableFilterCommentsOnDomTriggered",ENABLE_REPLY_AVATARS_TRIGGERED:"enableReplyAvatarsTriggered",DISABLE_REPLY_AVATARS_TRIGGERED:"disableReplyAvatarsTriggered",SET_MAX_REPLY_AVATARS_TRIGGERED:"setMaxReplyAvatarsTriggered",SET_SIDEBAR_BUTTON_COUNT_TYPE_TRIGGERED:"setSidebarButtonCountTypeTriggered",ENABLE_FILTER_GHOST_COMMENTS_IN_SIDEBAR_TRIGGERED:"enableFilterGhostCommentsInSidebarTriggered",DISABLE_FILTER_GHOST_COMMENTS_IN_SIDEBAR_TRIGGERED:"disableFilterGhostCommentsInSidebarTriggered",ENABLE_FULL_SCREEN_IN_SIDEBAR_TRIGGERED:"enableFullScreenInSidebarTriggered",DISABLE_FULL_SCREEN_IN_SIDEBAR_TRIGGERED:"disableFullScreenInSidebarTriggered"},Recording:{RECORDING_TOOL_CLICKED:"recordingToolClicked",RECORDING_ADDED:"recordingAdded",RECORDING_PANEL_SAVE_BUTTON_CLICKED:"recordingPanelSaveButtonClicked",RECORDING_PANEL_CANCEL_BUTTON_CLICKED:"recordingPanelCancelButtonClicked",RECORDING_PANEL_PAUSE_BUTTON_CLICKED:"recordingPanelPauseButtonClicked",RECORDING_PANEL_RESUME_BUTTON_CLICKED:"recordingPanelResumeButtonClicked",RECORDING_PANEL_VIDEO_ON_BUTTON_CLICKED:"recordingPanelVideoOnButtonClicked",RECORDING_PANEL_VIDEO_OFF_BUTTON_CLICKED:"recordingPanelVideoOffButtonClicked",RECORDING_PANEL_AUDIO_ON_BUTTON_CLICKED:"recordingPanelAudioOnButtonClicked",RECORDING_PANEL_AUDIO_OFF_BUTTON_CLICKED:"recordingPanelAudioOffButtonClicked",RECORDING_PANEL_START_BUTTON_CLICKED:"recordingPanelStartButtonClicked",RECORDING_PANEL_PIP_BUTTON_CLICKED:"recordingPanelPipButtonClicked",RECORDING_PLAYED:"recordingPlayed",RECORDING_PAUSED:"recordingPaused",RECORDING_DELETE_TRIGGERED:"recordingDeleteTriggered",RECORDING_DELETED:"recordingDeleted",RECORDING_DRAGGED:"recordingDragged",RECORDING_DRAFT_DRAGGED:"recordingDraftDragged",TRANSCRIPTION_CLICKED:"transcriptionClicked",SUBTITLES_CLICKED:"subtitlesClicked",VIEW_TRANSCRIPTION_SUMMARY_CLICKED:"viewTranscriptionSummaryClicked",TRANSCRIPTION_SUMMARY_COPIED:"transcriptionSummaryCopied",TRANSCRIPTION_TIMESTAMP_CLICKED:"transcriptionTimestampClicked",TRANSCRIPTION_PANEL_DRAGGED:"transcriptionPanelDragged",SUBTITLES_PANEL_DRAGGED:"subtitlesPanelDragged",ENABLE_PLAYBACK_ON_PREVIEW_CLICK_TRIGGERED:"enablePlaybackOnPreviewClickTriggered",DISABLE_PLAYBACK_ON_PREVIEW_CLICK_TRIGGERED:"disablePlaybackOnPreviewClickTriggered",REQUEST_SCREEN_PERMISSION_TRIGGERED:"requestScreenPermissionTriggered",INIT_RECORDING_TRIGGERED:"initRecordingTriggered",ON_RECORDED_DATA_TRIGGERED:"onRecordedDataTriggered",ENABLE_DARK_MODE_TRIGGERED:"enableDarkModeTriggered",DISABLE_DARK_MODE_TRIGGERED:"disableDarkModeTriggered",ENABLE_RECORDING_COUNTDOWN_TRIGGERED:"enableRecordingCountdownTriggered",DISABLE_RECORDING_COUNTDOWN_TRIGGERED:"disableRecordingCountdownTriggered",GET_RECORDING_DATA_BY_RECORDER_ID_TRIGGERED:"getRecordingDataByRecorderIdTriggered",GET_RECORDINGS_TRIGGERED:"getRecordingsTriggered",ENABLE_RECORDING_TRANSCRIPTION_TRIGGERED:"enableRecordingTranscriptionTriggered",DISABLE_RECORDING_TRANSCRIPTION_TRIGGERED:"disableRecordingTranscriptionTriggered",GET_RECORDING_DATA_TRIGGERED:"getRecordingDataTriggered",FETCH_RECORDINGS_TRIGGERED:"fetchRecordingsTriggered",DELETE_RECORDING_TRIGGERED:"deleteRecordingTriggered",ENABLE_VIDEO_EDITOR_TRIGGERED:"enableVideoEditorTriggered",DISABLE_VIDEO_EDITOR_TRIGGERED:"disableVideoEditorTriggered",SET_RECORDING_QUALITY_CONSTRAINTS_TRIGGERED:"setRecordingQualityConstraintsTriggered",SET_RECORDING_ENCODING_OPTIONS_TRIGGERED:"setRecordingEncodingOptionsTriggered",DOWNLOAD_LATEST_VIDEO_TRIGGERED:"downloadLatestVideoTriggered",ENABLE_RECORDING_MIC_TRIGGERED:"enableRecordingMicTriggered",DISABLE_RECORDING_MIC_TRIGGERED:"disableRecordingMicTriggered",ENABLE_RETAKE_ON_VIDEO_EDITOR_TRIGGERED:"enableRetakeOnVideoEditorTriggered",DISABLE_RETAKE_ON_VIDEO_EDITOR_TRIGGERED:"disableRetakeOnVideoEditorTriggered",ASK_DEVICE_PERMISSION_TRIGGERED:"askDevicePermissionTriggered",ENABLE_ONBOARDING_TOOLTIP_TRIGGERED:"enableOnboardingTooltipTriggered",DISABLE_ONBOARDING_TOOLTIP_TRIGGERED:"disableOnboardingTooltipTriggered",SET_MAX_LENGTH_TRIGGERED:"setMaxLengthTriggered",OPEN_PICTURE_IN_PICTURE_TRIGGERED:"openPictureInPictureTriggered",EXIT_PICTURE_IN_PICTURE_TRIGGERED:"exitPictureInPictureTriggered",ENABLE_PICTURE_IN_PICTURE_TRIGGERED:"enablePictureInPictureTriggered",DISABLE_PICTURE_IN_PICTURE_TRIGGERED:"disablePictureInPictureTriggered"},Huddle:{HUDDLE_TOOL_CLICKED:"huddleToolClicked",HUDDLE_CREATED:"huddleCreated",HUDDLE_JOIN_BUTTON_CLICKED:"huddleJoinButtonClicked",HUDDLE_JOINED:"huddleJoined",HUDDLE_LEFT:"huddleLeft",HUDDLE_AUDIO_BUTTON_CLICKED:"huddleAudioButtonClicked",HUDDLE_AUDIO_MUTED:"huddleAudioMuted",HUDDLE_AUDIO_UNMUTED:"huddleAudioUnmuted",HUDDLE_VIDEO_BUTTON_CLICKED:"huddleVideoButtonClicked",HUDDLE_VIDEO_TURNED_ON:"huddleVideoTurnedOn",HUDDLE_VIDEO_TURNED_OFF:"huddleVideoTurnedOff",HUDDLE_SCREENSHARING_BUTTON_CLICKED:"huddleScreensharingButtonClicked",HUDDLE_SCREENSHARING_STARTED:"huddleScreensharingStarted",HUDDLE_SCREENSHARING_STOPPED:"huddleScreensharingStopped",ENABLE_HUDDLE_ON_CURSOR_MODE_TRIGGERED:"enableHuddleOnCursorModeTriggered",DISABLE_HUDDLE_ON_CURSOR_MODE_TRIGGERED:"disableHuddleOnCursorModeTriggered",ENABLE_CHAT_TRIGGERED:"enableChatTriggered",DISABLE_CHAT_TRIGGERED:"disableChatTriggered",ENABLE_FLOCK_MODE_ON_AVATAR_CLICK_TRIGGERED:"enableFlockModeOnAvatarClickTriggered",DISABLE_FLOCK_MODE_ON_AVATAR_CLICK_TRIGGERED:"disableFlockModeOnAvatarClickTriggered"},Presence:{PRESENCE_MULTIPLE_USERS_DETECTED:"presenceMultipleUsersDetected",PRESENCE_USER_STATUS_CHANGED:"presenceUserStatusChanged",PRESENCE_USER_CLICKED:"presenceUserClicked",PRESENCE_SET_CUSTOM_INACTIVITY_TIMER:"presenceSetCustomInactivityTimer",PRESENCE_SET_CUSTOM_OFFLINE_INACTIVITY_TIMER:"presenceSetCustomOfflineInactivityTimer",PRESENCE_SET_CUSTOM_MAX_USERS:"presenceSetCustomMaxUsers",MULTIPLE_USERS_ONLINE:"multipleUsersOnline",ON_USER_STATE_CHANGE:"onUserStateChange",GET_PRESENCE_DATA_TRIGGERED:"getPresenceDataTriggered",GET_ONLINE_USERS_ON_CURRENT_DOCUMENT_TRIGGERED:"getOnlineUsersOnCurrentDocumentTriggered",SET_INACTIVITY_TIME_TRIGGERED:"setInactivityTimeTriggered",ENABLE_FLOCK_MODE_TRIGGERED:"enableFlockModeTriggered",DISABLE_FLOCK_MODE_TRIGGERED:"disableFlockModeTriggered",START_FOLLOWING_USER_TRIGGERED:"startFollowingUserTriggered",STOP_FOLLOWING_USER_TRIGGERED:"stopFollowingUserTriggered",ENABLE_SELF_TRIGGERED:"enableSelfTriggered",DISABLE_SELF_TRIGGERED:"disableSelfTriggered",ADD_USER_TRIGGERED:"addUserTriggered",REMOVE_USER_TRIGGERED:"removeUserTriggered"},Cursor:{CURSOR_MULTIPLE_USERS_DETECTED:"cursorMultipleUsersDetected",CURSOR_SET_CUSTOM_INACTIVITY_TIMER:"cursorSetCustomInactivityTimer",GET_LIVE_CURSORS_ON_CURRENT_DOCUMENT_TRIGGERED:"getLiveCursorsOnCurrentDocumentTriggered",SET_INACTIVITY_TIME_TRIGGERED:"setInactivityTimeTriggered",ALLOWED_ELEMENT_IDS_TRIGGERED:"allowedElementIdsTriggered"},Selection:{SELECTION_CREATED_WHEN_MULTIPLE_USERS_DETECTED:"selectionCreatedWhenMultipleUsersDetected",SELECTION_SET_CUSTOM_INACTIVITY_TIMER:"selectionSetCustomInactivityTimer",ENABLE_LIVE_SELECTION_TRIGGERED:"enableLiveSelectionTriggered",DISABLE_LIVE_SELECTION_TRIGGERED:"disableLiveSelectionTriggered",ENABLE_USER_INDICATOR_TRIGGERED:"enableUserIndicatorTriggered",DISABLE_USER_INDICATOR_TRIGGERED:"disableUserIndicatorTriggered",SET_USER_INDICATOR_POSITION_TRIGGERED:"setUserIndicatorPositionTriggered",SET_USER_INDICATOR_TYPE_TRIGGERED:"setUserIndicatorTypeTriggered",ENABLE_DEFAULT_ELEMENTS_TRACKING_TRIGGERED:"enableDefaultElementsTrackingTriggered",DISABLE_DEFAULT_ELEMENTS_TRACKING_TRIGGERED:"disableDefaultElementsTrackingTriggered",ENABLE_DEFAULT_STYLING_TRIGGERED:"enableDefaultStylingTriggered",DISABLE_DEFAULT_STYLING_TRIGGERED:"disableDefaultStylingTriggered",GET_LIVE_SELECTION_DATA_TRIGGERED:"getLiveSelectionDataTriggered",SET_INACTIVITY_TIME_TRIGGERED:"setInactivityTimeTriggered"},LiveStateSync:{SET_USER_AS_EDITOR_TRIGGERED:"setUserAsEditorTriggered",SET_USER_AS_EDITOR_ERROR:"setUserAsEditorError",REQUEST_EDITOR_ACCESS_TRIGGERED:"requestEditorAccessTriggered",ACCEPT_EDITOR_ACCESS_REQUEST_TRIGGERED:"acceptEditorAccessRequestTriggered",REJECT_EDITOR_ACCESS_REQUEST_TRIGGERED:"rejectEditorAccessRequestTriggered",CANCEL_EDITOR_ACCESS_REQUEST_TRIGGERED:"cancelEditorAccessRequestTriggered",EDIT_CURRENT_TAB_TRIGGERED:"editCurrentTabTriggered",SEM_ACCESS_REQUESTED:"semAccessRequested",SEM_ACCESS_REQUEST_CANCELED:"semAccessRequestCanceled",SEM_ACCESS_ACCEPTED:"semAccessAccepted",SEM_ACCESS_REJECTED:"semAccessRejected",SEM_EDITOR_ASSIGNED:"semEditorAssigned",SEM_VIEWER_ASSIGNED:"semViewerAssigned",SEM_EDITOR_ON_DIFFERENT_TAB_DETECTED:"semEditorOnDifferentTabDetected",SEM_MAKE_EDITOR_TRIGGERED:"semMakeEditorTriggered",SEM_MAKE_READER_TRIGGERED:"semMakeReaderTriggered",SEM_SINGLE_EDITOR_LIVE_STATE_DATA_STATS:"semSingleEditorLiveStateDataStats",SEM_SINGLE_EDITOR_LIVE_STATE_EMPTY_DATA_STATS:"semSingleEditorLiveStateEmptyDataStats",SEM_SINGLE_EDITOR_DETERMINE_EDITOR_STATUS:"semSingleEditorDetermineEditorStatus",SEM_SINGLE_EDITOR_LIVE_STATE_DATA_MISMATCH:"semSingleEditorLiveStateDataMismatch",SEM_SINGLE_EDITOR_DATA_MISMATCH_WITH_EXTERNAL:"semSingleEditorLiveStateDataMismatchWithExternal",SEM_USER_EDITOR_STATS:"semUserEditorStats",REMOVE_EDITOR_ACCESS:"removeEditorAccess",REMOVE_EDITOR_ACCESS_ERROR:"removeEditorAccessError",SEM_SINGLE_EDITOR_LIVE_STATE_DATA_ON_MAKE_EDITOR:"semSingleEditorLiveStateDataOnMakeEditor",SEM_SINGLE_EDITOR_LIVE_STATE_DATA_ON_MAKE_READER:"semSingleEditorLiveStateDataOnMakeReader",GET_LIVE_STATE_DATA_TRIGGERED:"getLiveStateDataTriggered",FETCH_LIVE_STATE_DATA_TRIGGERED:"fetchLiveStateDataTriggered",ENABLE_SINGLE_EDITOR_MODE_TRIGGERED:"enableSingleEditorModeTriggered",DISABLE_SINGLE_EDITOR_MODE_TRIGGERED:"disableSingleEditorModeTriggered",IS_USER_EDITOR_TRIGGERED:"isUserEditorTriggered",GET_EDITOR_TRIGGERED:"getEditorTriggered",RESET_USER_ACCESS_TRIGGERED:"resetUserAccessTriggered",SINGLE_EDITOR_MODE_CONTAINER_IDS_TRIGGERED:"singleEditorModeContainerIdsTriggered",ENABLE_AUTO_SYNC_STATE_TRIGGERED:"enableAutoSyncStateTriggered",DISABLE_AUTO_SYNC_STATE_TRIGGERED:"disableAutoSyncStateTriggered",IS_EDITOR_ACCESS_REQUESTED_TRIGGERED:"isEditorAccessRequestedTriggered",EDITOR_ACCESS_REQUESTED_BY_TRIGGERED:"editorAccessRequestedByTriggered",EDITOR_ACCESS_TRANSFER_ON_TIMEOUT_TRIGGERED:"editorAccessTransferOnTimeoutTriggered",SET_EDITOR_ACCESS_TIMEOUT_TRIGGERED:"setEditorAccessTimeoutTriggered",ENABLE_EDITOR_ACCESS_TRANSFER_ON_TIMEOUT_TRIGGERED:"enableEditorAccessTransferOnTimeoutTriggered",DISABLE_EDITOR_ACCESS_TRANSFER_ON_TIMEOUT_TRIGGERED:"disableEditorAccessTransferOnTimeoutTriggered",ENABLE_DEFAULT_SINGLE_EDITOR_UI_TRIGGERED:"enableDefaultSingleEditorUiTriggered",DISABLE_DEFAULT_SINGLE_EDITOR_UI_TRIGGERED:"disableDefaultSingleEditorUiTriggered",GET_EDITOR_ACCESS_TIMER_TRIGGERED:"getEditorAccessTimerTriggered",ON_SERVER_CONNECTION_STATE_CHANGE_TRIGGERED:"onServerConnectionStateChangeTriggered",UPDATE_USER_PRESENCE_TRIGGERED:"updateUserPresenceTriggered",ENABLE_HEARTBEAT_TRIGGERED:"enableHeartbeatTriggered",DISABLE_HEARTBEAT_TRIGGERED:"disableHeartbeatTriggered"},Tag:{TAG_TOOL_CLICKED:"tagToolClicked",TAG_DRAFT_ADDED:"tagDraftAdded",TAG_ADDED:"tagAdded",TAG_READ:"tagRead",TAG_RESOLVED:"tagResolved",TAG_DRAGGED:"tagDragged",TAG_LINK_COPIED:"tagLinkCopied",TAG_ADD_MODE_ENABLED:"tagAddModeEnabled",TAG_ADD_MODE_DISABLED:"tagAddModeDisabled",TAG_DELETE_TRIGGERED:"tagDeleteTriggered",TAG_DELETED:"tagDeleted",GET_ALL_TAG_ANNOTATIONS_TRIGGERED:"getAllTagAnnotationsTriggered",DELETE_TAG_TRIGGERED:"deleteTagTriggered",ALLOWED_ELEMENT_IDS_TRIGGERED:"allowedElementIdsTriggered",ATTACH_TAG_TRIGGERED:"attachTagTriggered",ADD_TAG_MODE_CHANGE_TRIGGERED:"addTagModeChangeTriggered"},Rewriter:{REWRITER_ENABLED:"rewriterEnabled",REWRITER_MIN_CHARACTER_NOT_MET:"rewriterMinCharacterNotMet",REWRITER_MAX_CHARACTER_NOT_MET:"rewriterMaxCharacterNotMet",REWRITE_BUTTON_CLICKED:"rewriteButtonClicked",REWRITE_PROMPT_BUTTON_CLICKED:"rewritePromptButtonClicked",REWRITE_REFRESH_BUTTON_CLICKED:"rewriteRefreshButtonClicked",REWRITE_OPTION_SELECTED:"rewriteOptionSelected",REWRITE_TASK_CREATED:"rewriteTaskCreated",REWRITE_DIALOG_DRAGGED:"rewriteDialogDragged",REWRITE_SHOW_ORIGINAL_TEXT_CLICKED:"rewriteShowOriginalTextClicked",REWRITE_CLOSE_BUTTON_CLICKED:"rewriteCloseButtonClicked",REWRITE_PROMPT_SUBMITTED:"rewritePromptSubmitted",ENABLE_REWRITER_TRIGGERED:"enableRewriterTriggered",DISABLE_REWRITER_TRIGGERED:"disableRewriterTriggered",ON_TEXT_SELECTED_SUBSCRIBED:"onTextSelectedSubscribed",ASK_AI_TRIGGERED:"askAiTriggered",REPLACE_TEXT_TRIGGERED:"replaceTextTriggered",ADD_COMMENT_FROM_AI_TRIGGERED:"addCommentFromAITriggered"},Feedback:{FEEDBACK_BUTTON_CLICKED:"feedbackButtonClicked",FEEDBACK_SUBMITTED:"feedbackSubmitted"},Contact:{UPDATE_CONTACT_LIST_TRIGGERED:"updateContactListTriggered",UPDATE_ORG_LIST_TRIGGERED:"updateOrgListTriggered",IS_USER_GLOBAL_CONTACT_TRIGGERED:"isUserGlobalContactTriggered",ON_CONTACT_SELECTED_TRIGGERED:"onContactSelectedTriggered",ENABLE_AT_HERE_TRIGGERED:"enableAtHereTriggered",DISABLE_AT_HERE_TRIGGERED:"disableAtHereTriggered",SET_AT_HERE_LABEL_TRIGGERED:"setAtHereLabelTriggered",SET_AT_HERE_DESCRIPTION_TRIGGERED:"setAtHereDescriptionTriggered",UPDATE_CONTACT_LIST_SCOPE_FOR_ORGANIZATION_USERS_TRIGGERED:"updateContactListScopeForOrganizationUsersTriggered",GET_CONTACT_LIST_TRIGGERED:"getContactListTriggered"},ContactUs:{CONTACT_BUTTON_CLICKED:"contactButtonClicked",CONTACT_SUBMITTED:"contactSubmitted"},Bug:{BUG_BUTTON_CLICKED:"bugButtonClicked",BUG_SUBMITTED:"bugSubmitted"},ShareDialog:{SHARE_BUTTON_CLICKED:"shareButtonClicked",DOCUMENT_ACCESS_CHANGED:"documentAccessChanged",DOCUMENT_USER_ACCESS_ADDED:"documentUserAccessAdded",DOCUMENT_USER_ACCESS_REMOVED:"documentUserAccessRemoved",SHARE_LINK_COPIED:"shareLinkCopied"},InviteDialog:{USER_INVITED:"userInvited",INVITE_LINK_COPIED:"inviteLinkCopied"},Iam:{USER_ACCESS_DENIED:"userAccessDenied"},Arrow:{ARROW_TOOL_CLICKED:"arrowToolClicked",ARROW_DRAFT_ADDED:"arrowDraftAdded",ARROW_ADDED:"arrowAdded",ARROW_READ:"arrowRead",ARROW_RESOLVED:"arrowResolved",ARROW_DRAGGED:"arrowDragged",ARROW_LINK_COPIED:"arrowLinkCopied",ARROW_ADD_MODE_ENABLED:"arrowAddModeEnabled",ARROW_ADD_MODE_DISABLED:"arrowAddModeDisabled",ARROW_DELETE_TRIGGERED:"arrowDeleteTriggered",ARROW_DELETED:"arrowDeleted",ALLOWED_ELEMENT_IDS_TRIGGERED:"allowedElementIdsTriggered"},Area:{AREA_TOOL_CLICKED:"areaToolClicked",AREA_ADDED:"areaAdded",AREA_DRAGGED:"areaDragged",AREA_LINK_COPIED:"areaLinkCopied",AREA_ADD_MODE_ENABLED:"areaAddModeEnabled",AREA_ADD_MODE_DISABLED:"areaAddModeDisabled",AREA_DELETE_TRIGGERED:"areaDeleteTriggered",AREA_DELETED:"areaDeleted",ENABLE_AREA_COMMENT_TRIGGERED:"enableAreaCommentTriggered",DISABLE_AREA_COMMENT_TRIGGERED:"disableAreaCommentTriggered"},Doc:{DOCUMENT_ID_SET_TRIGGERED:"documentIdSetTriggered",SET_DOCUMENTS_SUCCESS:"setDocumentsSuccess",SET_LOCATIONS_SUCCESS:"setLocationsSuccess",REMOVE_LOCATIONS_SUCCESS:"removeLocationsSuccess",UNSET_LOCATIONS_SUCCESS:"unsetLocationsSuccess",DOCUMENT_SET_TRIGGERED:"documentSetTriggered",UNSET_DOCUMENTS_TRIGGERED:"unsetDocumentsTriggered",UNSET_DOCUMENTS_SUCCESS:"unsetDocumentsSuccess",DOCUMENTS_SET_TRIGGERED:"documentsSetTriggered",GET_DOCUMENT_METADATA_TRIGGERED:"getDocumentMetadataTriggered"},Reactions:{ENABLE_DARK_MODE_TRIGGERED:"enableDarkModeTriggered",DISABLE_DARK_MODE_TRIGGERED:"disableDarkModeTriggered",SET_CUSTOM_REACTIONS_TRIGGERED:"setCustomReactionsTriggered"},Views:{GET_UNIQUE_VIEWS_BY_USER_TRIGGERED:"getUniqueViewsByUserTriggered",GET_UNIQUE_VIEWS_BY_DATE_TRIGGERED:"getUniqueViewsByDateTriggered"},Notifications:{NOTIFICATION_HISTORY_PANEL_OPENED:"notificationHistoryPanelOpened",ENABLE_SETTINGS_AT_ORGANIZATION_LEVEL_TRIGGERED:"enableSettingsAtOrganizationLevelTriggered",DISABLE_SETTINGS_AT_ORGANIZATION_LEVEL_TRIGGERED:"disableSettingsAtOrganizationLevelTriggered",NOTIFICATION_HISTORY_PANEL_CLOSED:"notificationHistoryPanelClosed",NOTIFICATION_HISTORY_PANEL_TOGGLED:"notificationHistoryPanelToggled",NOTIFICATION_MARK_ALL_AS_READ_CLICKED:"notificationMarkAllAsReadClicked",NOTIFICATION_CLICKED:"notificationClicked",NOTIFICATION_TAB_CLICKED:"notificationTabClicked",NOTIFICATION_READ:"notificationRead",GET_NOTIFICATIONS_FOR_YOU$_TRIGGERED_INTERNAL:"getNotificationsForYou$Triggered_internal",GET_NOTIFICATIONS_BY_DOCUMENT_ID$_TRIGGERED_INTERNAL:"getNotificationsByDocumentId$Triggered_internal",GET_ALL_NOTIFICATIONS$_TRIGGERED_INTERNAL:"getAllNotifications$Triggered_internal",GET_NOTIFICATIONS$_TRIGGERED_INTERNAL:"getNotifications$Triggered_internal",OPEN_HISTORY_PANEL_TRIGGERED:"openHistoryPanelTriggered",CLOSE_HISTORY_PANEL_TRIGGERED:"closeHistoryPanelTriggered",TOGGLE_HISTORY_PANEL_TRIGGERED:"toggleHistoryPanelTriggered",GET_NOTIFICATIONS_DATA_TRIGGERED:"getNotificationsDataTriggered",SET_MAX_DAYS_TRIGGERED:"setMaxDaysTriggered",SET_TAB_CONFIG_TRIGGERED:"setTabConfigTriggered",ENABLE_READ_NOTIFICATIONS_ON_FOR_YOU_TAB_TRIGGERED:"enableReadNotificationsOnForYouTabTriggered",DISABLE_READ_NOTIFICATIONS_ON_FOR_YOU_TAB_TRIGGERED:"disableReadNotificationsOnForYouTabTriggered",SET_ALL_NOTIFICATIONS_AS_READ_TRIGGERED:"setAllNotificationsAsReadTriggered",GET_UNREAD_NOTIFICATIONS_COUNT_TRIGGERED:"getUnreadNotificationsCountTriggered",MARK_NOTIFICATION_AS_READ_BY_ID_TRIGGERED:"markNotificationAsReadByIdTriggered",SET_SETTINGS_TRIGGERED:"setSettingsTriggered",GET_SETTINGS_TRIGGERED:"getSettingsTriggered",MUTE_ALL_NOTIFICATIONS_TRIGGERED:"muteAllNotificationsTriggered",ENABLE_SETTINGS_TRIGGERED:"enableSettingsTriggered",ENABLE_SELF_NOTIFICATIONS_TRIGGERED:"enableSelfNotificationsTriggered",DISABLE_SELF_NOTIFICATIONS_TRIGGERED:"disableSelfNotificationsTriggered",DISABLE_SETTINGS_TRIGGERED:"disableSettingsTriggered",SET_SETTINGS_INITIAL_CONFIG_TRIGGERED:"setSettingsInitialConfigTriggered",OPEN_NOTIFICATIONS_PANEL_TRIGGERED:"openNotificationsPanelTriggered",CLOSE_NOTIFICATIONS_PANEL_TRIGGERED:"closeNotificationsPanelTriggered",ENABLE_CURRENT_DOCUMENT_ONLY_TRIGGERED:"enableCurrentDocumentOnlyTriggered",DISABLE_CURRENT_DOCUMENT_ONLY_TRIGGERED:"disableCurrentDocumentOnlyTriggered"},Crdt:{CRDT_DATA_UPDATED:"crdtDataUpdated"},Suggestions:{ENABLE_SUGGESTION_MODE_TRIGGERED:"suggestionsEnableSuggestionModeTriggered",DISABLE_SUGGESTION_MODE_TRIGGERED:"suggestionsDisableSuggestionModeTriggered",IS_SUGGESTION_MODE_ENABLED_TRIGGERED:"suggestionsIsSuggestionModeEnabledTriggered",IS_SUGGESTION_MODE_ENABLED_STREAM_TRIGGERED:"suggestionsIsSuggestionModeEnabledStreamTriggered",REGISTER_TARGET_TRIGGERED:"suggestionsRegisterTargetTriggered",UNREGISTER_TARGET_TRIGGERED:"suggestionsUnregisterTargetTriggered",START_SUGGESTION_TRIGGERED:"suggestionsStartSuggestionTriggered",COMMIT_SUGGESTION_TRIGGERED:"suggestionsCommitSuggestionTriggered",GET_SUGGESTIONS_TRIGGERED:"suggestionsGetSuggestionsTriggered",GET_SUGGESTIONS_STREAM_TRIGGERED:"suggestionsGetSuggestionsStreamTriggered",GET_PENDING_SUGGESTION_TRIGGERED:"suggestionsGetPendingSuggestionTriggered",GET_PENDING_SUGGESTION_STREAM_TRIGGERED:"suggestionsGetPendingSuggestionStreamTriggered",ON_TRIGGERED:"suggestionsOnTriggered"}};let n=e;return n})(),k1=[L.Events.Rewriter.REWRITER_ENABLED];var U1=class{constructor(){this.attachmentId=Math.floor(1e5+Math.random()*9e5)}};var xe={ANNOTATION_ADD:"comment_annotation.add",ANNOTATION_DELETE:"comment_annotation.delete",COMMENT_ADD:"comment.add",COMMENT_UPDATE:"comment.update",COMMENT_DELETE:"comment.delete",STATUS_CHANGE:"comment_annotation.status_change",PRIORITY_CHANGE:"comment_annotation.priority_change",ASSIGN:"comment_annotation.assign",ACCESS_MODE_CHANGE:"comment_annotation.access_mode_change",CUSTOM_LIST_CHANGE:"comment_annotation.custom_list_change",APPROVE:"comment_annotation.approve",ACCEPT:"comment.accept",REJECT:"comment.reject",SUGGESTION_ACCEPT:"comment_annotation.suggestion_accept",SUGGESTION_REJECT:"comment_annotation.suggestion_reject",REACTION_ADD:"comment.reaction_add",REACTION_DELETE:"comment.reaction_delete",SUBSCRIBE:"comment_annotation.subscribe",UNSUBSCRIBE:"comment_annotation.unsubscribe"},vg={RECORDING_ADD:"recording.add",RECORDING_DELETE:"recording.delete"},yg={REACTION_ADD:"reaction.add",REACTION_DELETE:"reaction.delete"},tDe={EDITOR_EDIT:"crdt.editor_edit"};var _d=class{};var _C,NT=new Map,V1,OT=n=>n!=null?String(n):void 0,x7=n=>{if(n.url)try{let e=new URL(n.url);n.baseUrl===void 0&&(n.baseUrl=e.origin),n.path===void 0&&(n.path=e.pathname),n.queryParams===void 0&&(n.queryParams=e.search)}catch{}},B1=n=>{V1=n},oDe=(n,e)=>{try{if(!n||typeof n!="object")return;let r=JSON.parse(JSON.stringify(n));x7(r);let t=OT(e);t?NT.set(t,r):_C=r}catch(r){H.catch("Error in setClientPageInfo: ",r)}},sDe=n=>{try{let e=OT(n);e?NT.delete(e):_C=void 0}catch(e){H.catch("Error in clearClientPageInfo: ",e)}},wT=n=>{try{let e=OT(n)??OT(V1?.());return e&&NT.has(e)?NT.get(e):_C}catch(e){H.catch("Error in getClientPageInfo: ",e);return}};var TC;try{TC=typeof Intl<"u"&&Intl.v8BreakIterator}catch{TC=!1}var G1=(()=>{class n{_platformId=ne(hs);isBrowser=this._platformId?d1(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||TC)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(){}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function IC(n){return Array.isArray(n)?n:[n]}var $1=new Set,el,H1=(()=>{class n{_platform=ne(G1);_nonce=ne(cd,{optional:!0});_matchMedia;constructor(){this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):k7}matchMedia(r){return(this._platform.WEBKIT||this._platform.BLINK)&&F7(r,this._nonce),this._matchMedia(r)}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function F7(n,e){if(!$1.has(n))try{el||(el=document.createElement("style"),e&&el.setAttribute("nonce",e),el.setAttribute("type","text/css"),document.head.appendChild(el)),el.sheet&&(el.sheet.insertRule(`@media ${n} {body{ }}`,0),$1.add(n))}catch(r){console.error(r)}}function k7(n){return{matches:n==="all"||n==="",media:n,addListener:()=>{},removeListener:()=>{}}}var U7=(()=>{class n{_mediaMatcher=ne(H1);_zone=ne(Le);_queries=new Map;_destroySubject=new Ot;constructor(){}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(r){return j1(IC(r)).some(i=>this._registerQuery(i).mql.matches)}observe(r){let i=j1(IC(r)).map(s=>this._registerQuery(s).observable),o=Zr(i);return o=zs(o.pipe(Nt(1)),o.pipe(OS(1),Au(0))),o.pipe(fe(s=>{let a={matches:!1,breakpoints:{}};return s.forEach(({matches:c,query:l})=>{a.matches=a.matches||c,a.breakpoints[l]=c}),a}))}_registerQuery(r){if(this._queries.has(r))return this._queries.get(r);let t=this._mediaMatcher.matchMedia(r),o={observable:new ge(s=>{let a=c=>this._zone.run(()=>s.next(c));return t.addListener(a),()=>{t.removeListener(a)}}).pipe(Ru(t),fe(({matches:s})=>({query:r,matches:s})),qs(this._destroySubject)),mql:t};return this._queries.set(r,o),o}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function j1(n){return n.map(e=>e.split(",")).reduce((e,r)=>e.concat(r)).map(e=>e.trim())}var Sg={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"};var ui=(()=>{let e=class e{constructor(){try{this.userAgent=navigator.userAgent,this.browserName=this.getBrowserName(),this.browserVersion=this.getBrowserVersion(),this.deviceType=this.getDeviceType(),this.orientation=this.getOrientation(),this.osName=this.getOSName(),this.osVersion=this.getOSVersion(),this.screenWidth=this.getScreenWidth(),this.screenHeight=this.getScreenHeight()}catch{}}getBrowserName(){try{return(navigator.userAgent.indexOf("Opera")||navigator.userAgent.indexOf("OPR"))!=-1?"Opera":navigator.userAgent.indexOf("Chrome")!=-1?"Chrome":navigator.userAgent.indexOf("Safari")!=-1?"Safari":navigator.userAgent.indexOf("Firefox")!=-1?"Firefox":navigator.userAgent.indexOf("MSIE")!=-1||document?.documentMode?"IE":"Unknown"}catch{return"Unknown"}}getDeviceType(){try{return e.Breakpoints[Sg.Handset]?$r.MOBILE:e.Breakpoints[Sg.Tablet]?$r.TABLET:e.Breakpoints[Sg.XLarge]?$r.MONITOR:e.Breakpoints[Sg.Web]?$r.DESKTOP:$r.UNKNOWN}catch{return $r.UNKNOWN}}getOrientation(){try{return e.Orientations[TT.Portrait]?gd.PORTRAIT:e.Orientations[TT.Landscape]?gd.LANDSCAPE:gd.UNKNOWN}catch{return gd.UNKNOWN}}getOSName(){try{return navigator.userAgent.indexOf("Windows")!=-1?"Windows":navigator.userAgent.indexOf("Macintosh")!=-1?"Macintosh":navigator.userAgent.indexOf("Linux")!=-1?"Linux":"Unknown"}catch{return"Unknown"}}getOSVersion(){try{let s=navigator?.userAgent,a="Unknown";if(s.indexOf("Windows")!==-1)s.indexOf("Windows NT 5.1")!==-1?a="Windows XP":s.indexOf("Windows NT 6.0")!==-1?a="Windows Vista":s.indexOf("Windows NT 6.1")!==-1?a="Windows 7":s.indexOf("Windows NT 6.2")!==-1?a="Windows 8":s.indexOf("Windows NT 6.3")!==-1?a="Windows 8.1":s.indexOf("Windows NT 10.0")!==-1&&(a="Windows 10");else if(s.indexOf("Mac OS X")!==-1)a=s.match(/Mac OS X ([0-9_.]+)/)[1],a=a.replace(/_/g,".");else if(s.indexOf("iOS")!==-1)a=s.match(/OS ([0-9_.]+) like Mac OS X/)[1],a=a.replace(/_/g,".");else if(s.indexOf("Firefox")!==-1){var t=/\(([^)]+)\)/,i=t.exec(s)[1],o=i.split("; ");a=o[2]}return a||"Unknown"}catch{return"Unknown"}}getBrowserVersion(){try{return this.browserName=="Opera"?this.getOperaVersion():this.browserName=="Chrome"?this.getChromeVersion():this.browserName=="Safari"?this.getSafariVersion():this.browserName=="Firefox"?this.getFirefoxVersion():this.browserName=="IE"?this.getIEVersion():"Unknown"}catch{return"Unknown"}}getOperaVersion(){try{var t=navigator.userAgent.match(/(?:Opera|OPR)\/(\d+)/);return t?t[1]:"Unknown"}catch{return"Unknown"}}getChromeVersion(){try{var t=navigator.userAgent.match(/(?:Chrome|Chromium)\/(\d+)/);return t?t[1]:"Unknown"}catch{return"Unknown"}}getSafariVersion(){try{var t=navigator.userAgent.match(/Version\/(\d+)/);return t?t[1]:"Unknown"}catch{return"Unknown"}}getFirefoxVersion(){try{var t=navigator.userAgent.match(/Firefox\/(\d+)/);return t?t[1]:"Unknown"}catch{return"Unknown"}}getIEVersion(){try{var t=navigator.userAgent.match(/MSIE (\d+)/);return t?t[1]:"Unknown"}catch{return"Unknown"}}getScreenWidth(){try{return window.screen.width}catch{return 0}}getScreenHeight(){try{return window.screen.height}catch{return 0}}getDeviceInfo(){try{return this.userAgent=navigator.userAgent,this.browserName=this.getBrowserName(),this.browserVersion=this.getBrowserVersion(),this.deviceType=this.getDeviceType(),this.orientation=this.getOrientation(),this.osName=this.getOSName(),this.osVersion=this.getOSVersion(),this.screenWidth=this.getScreenWidth(),this.screenHeight=this.getScreenHeight(),JSON.parse(JSON.stringify(this))}catch{return{browserName:"Unknown",browserVersion:"Unknown",deviceType:"Unknown",osName:"Unknown",osVersion:"Unknown",screenWidth:0,screenHeight:0,userAgent:"Unknown"}}}};e.Breakpoints={},e.Orientations={};let n=e;return n})();var bt=class{constructor(e=!0){this.deviceInfo=new ui().getDeviceInfo();try{if(e){let r=wT();r&&Object.assign(this,r)}}catch{}}};var W1=class{constructor(){this.targetElements=[],this.type="area",this.props=new _d,this.pageInfo=new bt,this.targetAnnotations=[]}};var z1=class{constructor(){this.type="arrow",this.props=new _d,this.pageInfo=new bt}};var xDe={COPY_LINK:"copy-link",DELETE:"delete"},FDe={COPY_LINK:"Copy link",LINK_COPIED:"Link copied!",DELETE_THREAD:"Delete thread"};var bT=class{constructor(){this.comments=[],this.commentCategories=[],this.type="comment",this.status=v.CommentAnnotationStatusMap.OPEN,this.pageInfo=new bt,this.iam=new vC,this.customList=[],this.subscribedUsers={},this.unsubscribedUsers={},this.subscribedGroups={}}};var vC=class{constructor(){this.accessMode=Tg.PUBLIC}};var LT=class{constructor(){this.commentId=Math.floor(1e5+Math.random()*9e5),this.type="text",this.to=[],this.status="added",this.attachments=[],this.recorders=[],this.reactionAnnotationIds=[],this.taggedUserContacts=[],this.customList=[],this.toOrganizationUserGroup=[],this.reactionAnnotations=[]}};var MT=class{constructor(){this.urlAllowList=[],this.featureAllowList=[],this.userPlanAllowList=[],this.userIdAllowList=[],this.userGroupIdAllowList=[],this.debugMode=!1,this.usePrefersColorScheme=!1,this.advancedQueriesDisabled=!1,this.globalStyles=!0}};var xn=(function(n){return n.RESOLVE_USERS="resolveUsers",n.FORMAT_RESPONSE="formatResponse",n.MERGE_USER_WITH_PROVIDED_USER_DATA="mergeUserWithProvidedUserData",n.GET_TEMPORARY_USERS="getTemporaryUsers",n.SET_SINGLE_EDITOR_MODE_LIVE_STATE_DATA_FOR_DIFFERENT_USER_PRESENT_ON_TAB="setSingleEditorModeLiveStateDataForDifferentUserPresentOnTab",n.RESOLVE_AND_MERGE_SINGLE_EDITOR_LIVE_STATE_DATA_WITH_USER="resolveAndMergeSingleEditorLiveStateDataWithUser",n.GET_SINGLE_EDITOR_MODE_DATA="getSingleEditorModeData",n.RESOLVE_USERS_FROM_HUDDLE_MESSAGES="resolveUsersFromHuddleMessages",n.RESOLVE_USER_IDS_BY_EMAIL="resolveUserIdsByEmail",n})(xn||{}),tl=(function(n){return n.IDENTIFY="identify/authProvider",n.GET_TEMPORARY_USERS="getTemporaryUsers",n.GET_USERS="getUsers",n.GET_HUDDLE_USERS="getHuddleUsers",n.GET_SINGLE_EDITOR_USERS="getSingleEditorUsers",n})(tl||{}),Et=(function(n){return n.RESOLVE_COMMENT_ANNOTATIONS="resolveCommentAnnotations",n.SAVE_COMMENT_ANNOTATION="saveCommentAnnotation",n.DELETE_COMMENT_ANNOTATION="deleteCommentAnnotation",n.FORMAT_RESPONSE="formatResponse",n.INIT_DOCUMENTS="initDocuments",n.SET_DATA="setData",n.UPDATE_DATA="updateData",n.DELETE_DATA="deleteData",n})(Et||{}),No=(function(n){return n.SAVE_ATTACHMENT="saveAttachment",n.DELETE_ATTACHMENT="deleteAttachment",n.UPLOAD_TO_RESOLVER="uploadToResolver",n})(No||{}),_t=(function(n){return n.RESOLVE_REACTION_ANNOTATIONS="resolveReactionAnnotations",n.SAVE_REACTION_ANNOTATION="saveReactionAnnotation",n.DELETE_REACTION_ANNOTATION="deleteReactionAnnotation",n.FORMAT_RESPONSE="formatResponse",n.INIT_DOCUMENTS="initDocuments",n.SET_DATA="setData",n.UPDATE_DATA="updateData",n.DELETE_DATA="deleteData",n})(_t||{}),q1;q1||(q1={});var Td=(function(n){return n.SET_DOCUMENTS="setDocuments",n.GET_COMMENT_ANNOTATIONS="getCommentAnnotations",n.GET_NOTIFICATIONS="getNotifications",n})(Td||{}),K1;K1||(K1={});var Id=(function(n){return n.SET_DOCUMENTS="setDocuments",n.GET_REACTION_ANNOTATIONS="getReactionAnnotations",n})(Id||{}),Tt=(function(n){return n.RESOLVE_RECORDER_ANNOTATIONS="resolveRecorderAnnotations",n.SAVE_RECORDER_ANNOTATION="saveRecorderAnnotation",n.DELETE_RECORDER_ANNOTATION="deleteRecorderAnnotation",n.FORMAT_RESPONSE="formatResponse",n.INIT_DOCUMENTS="initDocuments",n.SET_DATA="setData",n.UPDATE_DATA="updateData",n.DELETE_DATA="deleteData",n})(Tt||{}),vd=(function(n){return n.GET_RECORDER_ANNOTATIONS="getRecorderAnnotations",n})(vd||{}),Fn=(function(n){return n.RESOLVE_NOTIFICATIONS="resolveNotifications",n.DELETE_NOTIFICATION="deleteNotification",n.DELETE_DATA="deleteData",n.FORMAT_RESPONSE="formatResponse",n})(Fn||{}),yC=(function(n){return n.GET_NOTIFICATIONS="getNotifications",n})(yC||{}),lr=(function(n){return n.RESOLVE_ACTIVITIES="resolveActivities",n.SAVE_ACTIVITY="saveActivity",n.FORMAT_RESPONSE="formatResponse",n})(lr||{}),SC=(function(n){return n.GET_ACTIVITIES="getActivities",n})(SC||{}),kn=(function(n){return n.SET_DOCUMENTS="setDocuments",n.SET_ROOT_DOCUMENT="setRootDocument",n.SET_DOCUMENT_ID="setDocumentId",n.UNSET_DOCUMENT_ID="unsetDocumentId",n.UNSET_DOCUMENTS="unsetDocuments",n.SET_LOCATION="setLocation",n.SET_LOCATIONS="setLocations",n.SET_ROOT_LOCATION="setRootLocation",n.ADD_LOCATION="addLocation",n.REMOVE_LOCATION="removeLocation",n.REMOVE_LOCATIONS="removeLocations",n.UNSET_LOCATION_IDS="unsetLocationIds",n.REMOVE_LOCATIONS_SUCCESS="removeLocationsSuccess",n})(kn||{});var Y1=class{constructor(){this.pageInfo=new bt}};var Q1=class{constructor(){this.documentAccessType=wt.PUBLIC,this.accessType=wt.PUBLIC,this.disabled=!1,this.features={},this.users={}}};var PT=class{};var xT=class{};var X1=class{};var _s=class{constructor(){this.contacts=[]}};var V7=(function(n){return n.DOCUMENT_UNSET="document_unset",n.USER_LOGOUT="user_logout",n})(V7||{}),Un=(function(n){return n.SET_DOCUMENTS="setDocuments",n.IDENTIFY="identify",n.GET_NOTIFICATIONS="getNotifications",n.SET_NOTIFICATIONS="setNotifications",n.REVOKE_ACCESS_ON_USER_LOGOUT="revokeAccessOnUserLogout",n.REVOKE_ACCESS_ON_DOCUMENT_UNSET="revokeAccessOnDocumentUnset",n})(Un||{}),di=(function(n){return n.FOLDER="folder",n.DOCUMENT="document",n.ORGANIZATION="organization",n.CONTEXT="context",n})(di||{});var J1=class{constructor(){this.id=Math.floor(1e5+Math.random()*9e5)}};var Z1=class{constructor(){this.singleTabEditor=!0}};var eV=class{constructor(){this.state="idle"}};var nl=class{};var FT=class{};var tV=class{constructor(){this.type="multiThread"}};var nV=class{constructor(){this.pageInfo=new bt}};var rV=class{constructor(){this.type="audio"}},iV=class{constructor(){this.type="audio"}},oV=class{constructor(){this.getThumbnailTag=e=>`
120
- <a href="${this.videoPlayerUrl}" target="_blank">
121
- <img src="${e||this.thumbnailWithPlayIconUrl||this.thumbnailUrl}" />
122
- </a>
123
- `}};var sV=class{constructor(){this.type="recorder",this.recordingType="audio",this.mode="floating",this.attachment=null,this.attachments=[],this.pageInfo=new bt}};var aV=class{constructor(){this.type="rewriter",this.rewriterType="copywriter",this.pageInfo=new bt}};var Ag=class{constructor(){this.screenWidth=0,this.screenHeight=0,this.screenScrollHeight=0}};var cV=class{constructor(){this.pageInfo=new bt}},B7=(function(n){return n.Start="start",n.End="end",n})(B7||{}),G7=(function(n){return n.Avatar="avatar",n.Label="label",n})(G7||{});var lV=class{constructor(){this.sources=[],this.playerState=new AC}},AC=class{constructor(){this.volume=1}};var uV=class{constructor(){this.to=[],this.resolved=!1,this.type="tag",this.pageInfo=new bt}};var dV=class{constructor(){this.visibility="private"}};var fV=class{constructor(){this.reactions=[],this.type="reaction",this.pageInfo=new bt,this.isReactionResolverUsed=!1}};var kT=class{};var $7=(function(n){return n.EDITOR="editor",n.VIEWER="viewer",n})($7||{}),Oo=(function(n){return n.DOES_NOT_EXIST="does_not_exist",n.PERMISSION_DENIED="permission_denied",n.SOMETHING_WENT_WRONG="something_went_wrong",n})(Oo||{});var j7=(function(n){return n.INTERNAL="internal",n.EXTERNAL="external",n})(j7||{}),H7=(function(n){return n.UPDATE_DATA="updateData",n})(H7||{});var Vn=class n{constructor(){this._dataLength=0,this._bufferLength=0,this._state=new Int32Array(4),this._buffer=new ArrayBuffer(68),this._buffer8=new Uint8Array(this._buffer,0,68),this._buffer32=new Uint32Array(this._buffer,0,17),this.start()}static hashStr(e,r=!1){return this.onePassHasher.start().appendStr(e).end(r)}static hashAsciiStr(e,r=!1){return this.onePassHasher.start().appendAsciiStr(e).end(r)}static _hex(e){let r=n.hexChars,t=n.hexOut,i,o,s,a;for(a=0;a<4;a+=1)for(o=a*8,i=e[a],s=0;s<8;s+=2)t[o+1+s]=r.charAt(i&15),i>>>=4,t[o+0+s]=r.charAt(i&15),i>>>=4;return t.join("")}static _md5cycle(e,r){let t=e[0],i=e[1],o=e[2],s=e[3];t+=(i&o|~i&s)+r[0]-680876936|0,t=(t<<7|t>>>25)+i|0,s+=(t&i|~t&o)+r[1]-389564586|0,s=(s<<12|s>>>20)+t|0,o+=(s&t|~s&i)+r[2]+606105819|0,o=(o<<17|o>>>15)+s|0,i+=(o&s|~o&t)+r[3]-1044525330|0,i=(i<<22|i>>>10)+o|0,t+=(i&o|~i&s)+r[4]-176418897|0,t=(t<<7|t>>>25)+i|0,s+=(t&i|~t&o)+r[5]+1200080426|0,s=(s<<12|s>>>20)+t|0,o+=(s&t|~s&i)+r[6]-1473231341|0,o=(o<<17|o>>>15)+s|0,i+=(o&s|~o&t)+r[7]-45705983|0,i=(i<<22|i>>>10)+o|0,t+=(i&o|~i&s)+r[8]+1770035416|0,t=(t<<7|t>>>25)+i|0,s+=(t&i|~t&o)+r[9]-1958414417|0,s=(s<<12|s>>>20)+t|0,o+=(s&t|~s&i)+r[10]-42063|0,o=(o<<17|o>>>15)+s|0,i+=(o&s|~o&t)+r[11]-1990404162|0,i=(i<<22|i>>>10)+o|0,t+=(i&o|~i&s)+r[12]+1804603682|0,t=(t<<7|t>>>25)+i|0,s+=(t&i|~t&o)+r[13]-40341101|0,s=(s<<12|s>>>20)+t|0,o+=(s&t|~s&i)+r[14]-1502002290|0,o=(o<<17|o>>>15)+s|0,i+=(o&s|~o&t)+r[15]+1236535329|0,i=(i<<22|i>>>10)+o|0,t+=(i&s|o&~s)+r[1]-165796510|0,t=(t<<5|t>>>27)+i|0,s+=(t&o|i&~o)+r[6]-1069501632|0,s=(s<<9|s>>>23)+t|0,o+=(s&i|t&~i)+r[11]+643717713|0,o=(o<<14|o>>>18)+s|0,i+=(o&t|s&~t)+r[0]-373897302|0,i=(i<<20|i>>>12)+o|0,t+=(i&s|o&~s)+r[5]-701558691|0,t=(t<<5|t>>>27)+i|0,s+=(t&o|i&~o)+r[10]+38016083|0,s=(s<<9|s>>>23)+t|0,o+=(s&i|t&~i)+r[15]-660478335|0,o=(o<<14|o>>>18)+s|0,i+=(o&t|s&~t)+r[4]-405537848|0,i=(i<<20|i>>>12)+o|0,t+=(i&s|o&~s)+r[9]+568446438|0,t=(t<<5|t>>>27)+i|0,s+=(t&o|i&~o)+r[14]-1019803690|0,s=(s<<9|s>>>23)+t|0,o+=(s&i|t&~i)+r[3]-187363961|0,o=(o<<14|o>>>18)+s|0,i+=(o&t|s&~t)+r[8]+1163531501|0,i=(i<<20|i>>>12)+o|0,t+=(i&s|o&~s)+r[13]-1444681467|0,t=(t<<5|t>>>27)+i|0,s+=(t&o|i&~o)+r[2]-51403784|0,s=(s<<9|s>>>23)+t|0,o+=(s&i|t&~i)+r[7]+1735328473|0,o=(o<<14|o>>>18)+s|0,i+=(o&t|s&~t)+r[12]-1926607734|0,i=(i<<20|i>>>12)+o|0,t+=(i^o^s)+r[5]-378558|0,t=(t<<4|t>>>28)+i|0,s+=(t^i^o)+r[8]-2022574463|0,s=(s<<11|s>>>21)+t|0,o+=(s^t^i)+r[11]+1839030562|0,o=(o<<16|o>>>16)+s|0,i+=(o^s^t)+r[14]-35309556|0,i=(i<<23|i>>>9)+o|0,t+=(i^o^s)+r[1]-1530992060|0,t=(t<<4|t>>>28)+i|0,s+=(t^i^o)+r[4]+1272893353|0,s=(s<<11|s>>>21)+t|0,o+=(s^t^i)+r[7]-155497632|0,o=(o<<16|o>>>16)+s|0,i+=(o^s^t)+r[10]-1094730640|0,i=(i<<23|i>>>9)+o|0,t+=(i^o^s)+r[13]+681279174|0,t=(t<<4|t>>>28)+i|0,s+=(t^i^o)+r[0]-358537222|0,s=(s<<11|s>>>21)+t|0,o+=(s^t^i)+r[3]-722521979|0,o=(o<<16|o>>>16)+s|0,i+=(o^s^t)+r[6]+76029189|0,i=(i<<23|i>>>9)+o|0,t+=(i^o^s)+r[9]-640364487|0,t=(t<<4|t>>>28)+i|0,s+=(t^i^o)+r[12]-421815835|0,s=(s<<11|s>>>21)+t|0,o+=(s^t^i)+r[15]+530742520|0,o=(o<<16|o>>>16)+s|0,i+=(o^s^t)+r[2]-995338651|0,i=(i<<23|i>>>9)+o|0,t+=(o^(i|~s))+r[0]-198630844|0,t=(t<<6|t>>>26)+i|0,s+=(i^(t|~o))+r[7]+1126891415|0,s=(s<<10|s>>>22)+t|0,o+=(t^(s|~i))+r[14]-1416354905|0,o=(o<<15|o>>>17)+s|0,i+=(s^(o|~t))+r[5]-57434055|0,i=(i<<21|i>>>11)+o|0,t+=(o^(i|~s))+r[12]+1700485571|0,t=(t<<6|t>>>26)+i|0,s+=(i^(t|~o))+r[3]-1894986606|0,s=(s<<10|s>>>22)+t|0,o+=(t^(s|~i))+r[10]-1051523|0,o=(o<<15|o>>>17)+s|0,i+=(s^(o|~t))+r[1]-2054922799|0,i=(i<<21|i>>>11)+o|0,t+=(o^(i|~s))+r[8]+1873313359|0,t=(t<<6|t>>>26)+i|0,s+=(i^(t|~o))+r[15]-30611744|0,s=(s<<10|s>>>22)+t|0,o+=(t^(s|~i))+r[6]-1560198380|0,o=(o<<15|o>>>17)+s|0,i+=(s^(o|~t))+r[13]+1309151649|0,i=(i<<21|i>>>11)+o|0,t+=(o^(i|~s))+r[4]-145523070|0,t=(t<<6|t>>>26)+i|0,s+=(i^(t|~o))+r[11]-1120210379|0,s=(s<<10|s>>>22)+t|0,o+=(t^(s|~i))+r[2]+718787259|0,o=(o<<15|o>>>17)+s|0,i+=(s^(o|~t))+r[9]-343485551|0,i=(i<<21|i>>>11)+o|0,e[0]=t+e[0]|0,e[1]=i+e[1]|0,e[2]=o+e[2]|0,e[3]=s+e[3]|0}start(){return this._dataLength=0,this._bufferLength=0,this._state.set(n.stateIdentity),this}appendStr(e){let r=this._buffer8,t=this._buffer32,i=this._bufferLength,o,s;for(s=0;s<e.length;s+=1){if(o=e.charCodeAt(s),o<128)r[i++]=o;else if(o<2048)r[i++]=(o>>>6)+192,r[i++]=o&63|128;else if(o<55296||o>56319)r[i++]=(o>>>12)+224,r[i++]=o>>>6&63|128,r[i++]=o&63|128;else{if(o=(o-55296)*1024+(e.charCodeAt(++s)-56320)+65536,o>1114111)throw new Error("Unicode standard supports code points up to U+10FFFF");r[i++]=(o>>>18)+240,r[i++]=o>>>12&63|128,r[i++]=o>>>6&63|128,r[i++]=o&63|128}i>=64&&(this._dataLength+=64,n._md5cycle(this._state,t),i-=64,t[0]=t[16])}return this._bufferLength=i,this}appendAsciiStr(e){let r=this._buffer8,t=this._buffer32,i=this._bufferLength,o,s=0;for(;;){for(o=Math.min(e.length-s,64-i);o--;)r[i++]=e.charCodeAt(s++);if(i<64)break;this._dataLength+=64,n._md5cycle(this._state,t),i=0}return this._bufferLength=i,this}appendByteArray(e){let r=this._buffer8,t=this._buffer32,i=this._bufferLength,o,s=0;for(;;){for(o=Math.min(e.length-s,64-i);o--;)r[i++]=e[s++];if(i<64)break;this._dataLength+=64,n._md5cycle(this._state,t),i=0}return this._bufferLength=i,this}getState(){let e=this._state;return{buffer:String.fromCharCode.apply(null,Array.from(this._buffer8)),buflen:this._bufferLength,length:this._dataLength,state:[e[0],e[1],e[2],e[3]]}}setState(e){let r=e.buffer,t=e.state,i=this._state,o;for(this._dataLength=e.length,this._bufferLength=e.buflen,i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3],o=0;o<r.length;o+=1)this._buffer8[o]=r.charCodeAt(o)}end(e=!1){let r=this._bufferLength,t=this._buffer8,i=this._buffer32,o=(r>>2)+1;this._dataLength+=r;let s=this._dataLength*8;if(t[r]=128,t[r+1]=t[r+2]=t[r+3]=0,i.set(n.buffer32Identity.subarray(o),o),r>55&&(n._md5cycle(this._state,i),i.set(n.buffer32Identity)),s<=4294967295)i[14]=s;else{let a=s.toString(16).match(/(.*?)(.{0,8})$/);if(a===null)return;let c=parseInt(a[2],16),l=parseInt(a[1],16)||0;i[14]=c,i[15]=l}return n._md5cycle(this._state,i),e?this._state:n._hex(this._state)}};Vn.stateIdentity=new Int32Array([1732584193,-271733879,-1732584194,271733878]);Vn.buffer32Identity=new Int32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);Vn.hexChars="0123456789abcdef";Vn.hexOut=[];Vn.onePassHasher=new Vn;if(Vn.hashStr("hello")!=="5d41402abc4b2a76b9719d911017c592")throw new Error("Md5 self test failed.");var gV=["annotationId","annotationNumber","visibilityConfig","comments","commentCategories","from","color","resolved","inProgress","lastUpdated","createdAt","positionX","positionY","screenWidth","screenHeight","screenScrollHeight","screenScrollTop","taggedElementPath","taggedElementRect","targetElement","targetElementId","position","documentParamsId","documentParams","locationId","location","type","commentType","sourceType","metadata","targetTextRange","selectAllContent","approved","status","statusUpdatedByUserId","annotationIndex","pageInfo","assignedTo","priority","ghostComment","areaAnnotationId","context","contextId","iam","isPageAnnotation","targetInlineCommentElementId","inlineCommentSectionConfig","customList","subscribedUsers","unsubscribedUsers","subscribedGroups","resolvedByUserId","resolvedByUser","multiThreadAnnotationId","isDraft","sourceId","views","viewedByUserIds","viewedBy","unread","suggestion","agent","involvedUserIds","mentionedUserIds"];var mV=["commentId","context","type","isCommentTextAvailable","isCommentResolverUsed","replaceContentHtml","replaceContentText","commentVoiceUrl","from","to","lastUpdated","createdAt","status","attachments","recorders","reactionAnnotationIds","taggedUserContacts","customList","toOrganizationUserGroup","isDraft","editedAt","isEdited","reactionAnnotations","sourceType","agent","metadata"];var pV=["annotationId","context","commentAnnotationId","reactions","lastUpdated","targetElement","targetElementId","position","locationId","location","type","annotationIndex","pageInfo","from","isReactionResolverUsed","iconUrl","iconEmoji","metadata","involvedUserIds"];var EV=["context","annotationId","commentAnnotationId","from","color","lastUpdated","positionX","positionY","screenWidth","screenHeight","screenScrollHeight","screenScrollTop","recorderedElementPath","recorderedElementRect","targetElement","position","locationId","location","type","recordingType","mode","approved","attachment","attachments","annotationIndex","pageInfo","recordedTime","waveformData","displayName","metadata","latestVersion","recordingEditVersions","chunkUrls","isRecorderResolverUsed","isUrlAvailable"];var vOe=["id","featureType","actionType","eventType","actionUser","timestamp","metadata","targetEntityId","targetSubEntityId","changes","entityData","entityTargetData","displayMessageTemplate","displayMessageTemplateData","displayMessage","actionIcon","immutable","isActivityResolverUsed"];var _V=["userId"];var TV=["commonAncestorContainer","commonAncestorContainerFXpath","commonAncestorContainerCFXpath","commonAncestorContainerAnchor","occurrence"],IV=["attachmentId","isAttachmentResolverUsed","name","bucketPath","size","type","url","thumbnail","thumbnailWithPlayIconUrl","metadata","mimeType","previewImages"],vV=["attachmentId","isAttachmentResolverUsed","bucketPath","size","type","thumbnail","thumbnailWithPlayIconUrl","metadata","mimeType","previewImages"];var yV=["id","tag","type","thumbnailUrl","thumbnailWithPlayIconUrl","videoUrl","audioUrl","videoPlayerUrl","chunkUrls"];var OV=(n,e)=>{try{let r=new URL(n),t=r.hostname.split("."),i=t.length>=3?t[0]:"",o=n.replace(r.host,e);if(i){let s=o.includes("?")?"&":"?";o+=`${s}ns=${i}`}return o}catch(r){return H.catch("Error in getProxiedDatabaseUrl: ",r),n}},Tr=(n,e=0)=>{try{let r=3735928559^e,t=1103547991^e;for(let i=0,o;i<n.length;i++)o=n.charCodeAt(i),r=Math.imul(r^o,2654435761),t=Math.imul(t^o,1597334677);return r=Math.imul(r^r>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),t=Math.imul(t^t>>>16,2246822507)^Math.imul(r^r>>>13,3266489909),4294967296*(2097151&t)+(r>>>0)}catch(r){return H.catch("Error in cyrb53: ",r),0}},W7=()=>{try{return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,n=>(+n^crypto.getRandomValues(new Uint8Array(1))[0]&15>>+n/4).toString(16))}catch(n){return H.catch("Error in uuidv4: ",n),""}},Fi=n=>{try{return Vn.hashStr(n)}catch(e){return H.catch("Error in hashStr: ",e),n}},wV=n=>{try{return!n||n.trim().length===0?void 0:Vn.hashStr(n)}catch(e){H.catch("Error in hashForAnchor: ",e);return}},da=n=>Tr(n).toString(),CC=n=>Fi(n),Ts=n=>Fi(n).toString(),wo=n=>Fi(n).toString(),LOe=(n,e)=>{try{let r=n.userIds?.length?[...n.userIds]:[];return r.includes(e)||r.push(e),le(x({},n),{userIds:r})}catch(r){return H.catch("Error in ensureUserIdInVisibility: ",r),n}},MOe=n=>{try{if(!n)return!1;if(n.iam?.accessMode===Tg.PRIVATE)return!0;let e=n.visibilityConfig?.type;return e==="restricted"||e==="organizationPrivate"}catch(e){return H.catch("Error in isAnnotationPrivate: ",e),!1}},POe=(n,e)=>{let r=[];switch(n.type){case"public":return r.push(v.DEFAULT_VELT_CONTEXT),r;case"organizationPrivate":{let t=[...n.organizationId?[n.organizationId]:[],...n.organizationIds??[]].filter((i,o,s)=>!!i&&s.indexOf(i)===o);if(!t.length)throw new Error("organizationId is required for organizationPrivate visibility type");t.forEach(i=>{let o=Ts(i);r.push(`organizationPrivate:${o}`)});break}case"restricted":{if(!n.userIds?.length)throw new Error("userIds is required for restricted visibility type");n.userIds.filter((i,o,s)=>!!i&&s.indexOf(i)===o).forEach(i=>{let o=Fi(i).toString();r.push(`${v.VISIBILITY_SELF_PREFIX}${o}`)});break}default:throw new Error(`Invalid visibility type: ${n.type}`)}if(e){let t=`${v.VISIBILITY_SELF_PREFIX}${Fi(e).toString()}`;r.includes(t)||r.push(t)}return r},xOe=(n,e)=>{let r={type:n.type};try{if(n.type==="public")return r;n.organizationId&&(r.organizationId=n.organizationId),n.organizationIds?.length&&(r.organizationIds=n.organizationIds);let t=[...n.userIds??[],...e?[e]:[]].filter((i,o,s)=>!!i&&s.indexOf(i)===o);t.length&&(r.userIds=t)}catch(t){H.catch("Error in buildStoredVisibilityConfig: ",t)}return r},FOe=n=>{let e=[v.DEFAULT_VELT_CONTEXT];try{n?.userId&&e.push(`${v.VISIBILITY_SELF_PREFIX}${Fi(n.userId).toString()}`),n?.clientOrganizationId?e.push(`organizationPrivate:${Ts(n.clientOrganizationId)}`):n?.fallbackServerOrganizationId&&e.push(`organizationPrivate:${n.fallbackServerOrganizationId}`)}catch(r){H.catch("Error in buildViewerVisibilityTokens: ",r)}return e},kOe=(n,e)=>{try{if(!n?.length)return n??[];let r=new Set(e?.tokens??[]);return n.filter(t=>{try{let i=t?.visibilityConfig?.type;if(i!=="organizationPrivate"&&i!=="restricted")return!0;let o=t?.context?.accessFields;return!!(!o?.length||e?.userId&&t?.from?.userId===e.userId||o.some(s=>r.has(s))||e?.userId&&t?.visibilityConfig?.userIds?.includes(e.userId))}catch(i){return H.catch("Error filtering annotation visibility: ",i),!0}})}catch(r){return H.catch("Error in filterAnnotationsVisibleToUser: ",r),n}},UOe=n=>{try{if(n)return typeof n=="string"?Vn.hashStr(n):Array.isArray(n)?Vn.hashStr(n.join("-")):"";{let e=W7();return Vn.hashStr(e)}}catch(e){return H.catch("Error in getMultiThreadAnnotationId: ",e),""}},bV=(n,e,r)=>{try{if(n&&e){if(n.featureAllowList&&n.featureAllowList.length&&!n.featureAllowList.includes(r)||n.userIdAllowList&&n.userIdAllowList.length&&!n.userIdAllowList.includes(e.userId)||n.userGroupIdAllowList&&n.userGroupIdAllowList.length&&!n.userGroupIdAllowList.includes(e.groupId||"")||n.userPlanAllowList&&n.userPlanAllowList.length&&!n.userPlanAllowList.includes(e.plan||""))return!1;if(n.urlAllowList){let t=window.location.href;if(n.urlAllowList.length&&!n.urlAllowList.filter(i=>t.includes(i)).length)return!1}return!0}return!1}catch(t){return H.catch("Error in isFeatureAllowed: ",t),!1}},J=()=>{try{let n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e="";for(let r=0;r<20;r++)e+=n.charAt(Math.floor(Math.random()*n.length));return e}catch(n){return H.catch("Error in utils generateId: ",n),""}},VOe=n=>{try{let e=0;if(n){let r=new Date().getTime();e=Math.abs(r-n)}return e}catch(e){return H.catch("Error in utils getFirebaseTimeDiffInMins: ",e),0}};var LV=()=>{try{return st.debugMode||!!sessionStorage.getItem("debugMode")||!!sessionStorage.getItem("forceDebugMode")}catch(n){return H.catch("Error in showLogs: ",n),!1}},MV=()=>{try{return!!sessionStorage.getItem("debugContextMode")}catch(n){return H.catch("Error in showContextLogs: ",n),!1}},Sd=n=>{try{return typeof n!="object"?Object.assign({},...Object.keys(n).sort().map(e=>({[e]:n[e]&&typeof n[e]=="object"?Sd(n[e]):n[e]}))):n}catch(e){return H.catch("Error in sortObjectByKeys: ",e),n}},DC=n=>{try{return n!==null&&typeof n=="object"&&!Array.isArray(n)}catch{return!1}},SV=n=>{try{return DC(n)?Object.fromEntries(Object.entries(n).sort(([e],[r])=>e.localeCompare(r)).map(([e,r])=>[e,DC(r)?SV(r):Array.isArray(r)?r.map(t=>DC(t)?SV(t):t):r])):n}catch{return n}},AV=(n,e)=>{try{return typeof e!="object"||e===null?n===e:typeof n!="object"||n===null?!1:Array.isArray(e)?Array.isArray(n)?e.every(r=>n.some(t=>AV(t,r))):!1:Object.keys(e).every(r=>Object.prototype.hasOwnProperty.call(n,r)?AV(n[r],e[r]):!1)}catch{return!1}},z7=(n,e,r)=>I(null,null,function*(){try{let t=yield Y7(e),i=new Uint8Array(new TextEncoder().encode(r)).slice(0,16),o=new TextEncoder().encode(n),s=yield window.crypto.subtle.encrypt({name:"AES-CBC",iv:i},t,o);return btoa(String.fromCharCode(...new Uint8Array(s)))}catch(t){return H.catch("Error in encrypt: ",t),n}}),q7=(n,e,r)=>I(null,null,function*(){try{let t=yield K7(e),i=new Uint8Array(new TextEncoder().encode(r)).slice(0,16),o=new Uint8Array(atob(n).split("").map(a=>a.charCodeAt(0))),s=yield window.crypto.subtle.decrypt({name:"AES-CBC",iv:i},t,o);return new TextDecoder().decode(s)}catch(t){return H.catch("Error in decrypt: ",t),n}}),K7=n=>I(null,null,function*(){try{let e=new TextEncoder().encode(n),r=new Uint8Array(32);return r.fill(0),r.set(e.slice(0,32)),yield window.crypto.subtle.importKey("raw",r,"AES-CBC",!1,["decrypt"])}catch(e){throw H.catch("Error in importDecryptKey:",e),e}}),il=(n,e)=>I(null,null,function*(){try{let r="Velt"+e;return yield z7(JSON.stringify(n),r,Fi(r))}catch(r){return H.catch("Error in encryptData: ",r),n}}),NC=(n,e)=>I(null,null,function*(){try{let r="Velt"+e,t=yield q7(n,r,Fi(r));return JSON.parse(t)}catch(r){return H.catch("Error in decryptData: ",r),null}}),$T=n=>{try{switch(n?.region){case"asiaSouthEast1":return"asiaSouthEast1";case"asiaNorthEast1":return"asiaNorthEast1";case"europeWest1":return"europeWest1";case"australiaSouthEast1":return"australiaSouthEast1";default:return"usCentral1"}}catch(e){return H.catch("Error in getRegion: ",e),"usCentral1"}},Y7=n=>I(null,null,function*(){try{let e=new TextEncoder().encode(n),r=new Uint8Array(32);return r.fill(0),r.set(e.slice(0,32)),yield window.crypto.subtle.importKey("raw",r,"AES-CBC",!1,["encrypt"])}catch(e){throw H.catch("Error in importKey:",e),e}}),BOe=n=>{try{if(n&&typeof n=="object"){let e=Sd(n);return Tr(JSON.stringify(e))}else return null}catch(e){return H.catch("Error in utils generateLocationId: ",e),null}},bo=(n,e=[])=>(n?.tagName?.toLowerCase().indexOf("velt-")>=0&&![v.TAGS.VELT_VIDEO_PLAYER.toLowerCase()].includes(n?.tagName?.toLowerCase())||n?.tagName?.toLowerCase().indexOf("snippyly-")>=0||n?.className?.split&&(n?.className?.split(" ")?.indexOf("snippyly-overlay-panel")>=0||n?.className?.split(" ")?.indexOf("cdk-overlay-container")>=0))&&!e?.includes(n?.tagName?.toLowerCase())?!0:n?.parentNode&&bo(n?.parentNode,e),GOe=(n,e=[])=>{try{let r=typeof n.composedPath=="function"?n.composedPath():[],t=r.length>0?r:[n?.target];for(let i of t){let o=i;if(!(!o||typeof o.tagName!="string")&&bo(o,e))return!0}}catch(r){H.catch("Error in utils isSnippylyEventTarget: ",r)}return!1},Rg=n=>{try{return!!document?.body?.contains(n)}catch(e){return H.catch("Error in utils isElementInsideBody: ",e),!1}};var ki=(n,e)=>{try{return Object.prototype.toString.call(n)===Object.prototype.toString.call(e)?Object.prototype.toString.call(n)==="[object Object]"||Object.prototype.toString.call(n)==="[object Array]"?Object.keys(n).length!==Object.keys(e).length?!1:Object.keys(n).every(r=>ki(n[r],e[r])):n===e:!1}catch(r){return H.catch("Error in utils deepCompare: ",r),!1}},$Oe=(n,e,r=1)=>{try{if(e){let t=DV(e.textContent,n,r);if(t>=0){let i=e.querySelector("script")!==null,o=(e?.ownerDocument).createNodeIterator(e,NodeFilter.SHOW_TEXT,i?{acceptNode:g=>g.parentElement?.tagName==="SCRIPT"?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}:null),s,a=[];for(;s=o.nextNode();)a.push(s);let c=t;if(i){let g=a.reduce((_,T)=>_+(T.textContent||""),""),p=DV(g,n,r);if(p<0)return[];c=p}let l=[],u=n.length,d=c+u,f=0;for(let g=0;g<a.length;g++){let p=a[g],_=f;if(f+=p.textContent?.length,f>=c&&!l.length?l.push({textNode:p,startOffset:c-_}):f>=c&&f<d&&l.push({textNode:p}),f>=d){if(l.length===1&&l[0].textNode===p){l.push({textNode:p,endOffset:c-_+n.length});break}let T=u;l.forEach(D=>{T-=D.textNode.textContent?.length-(D.startOffset||0)}),l.push({textNode:p,endOffset:T});break}}return l}}return[]}catch(t){return H.catch("Error in utils calculateNodes: ",t),[]}},DV=(n,e,r=1)=>{try{if(n?.includes(e)){let t=n.split(e,r);return t.length===r?t.join(e).length:-1}else return-1}catch(t){return H.catch("Error in utils getTextPosition: ",t),-1}},OC=(n,e,r,t,i)=>{try{let o=new Range;o.setStart(n,e),o.setEnd(r,t);let s=o.commonAncestorContainer,c=(s.nodeType===Node.ELEMENT_NODE?s:s.parentElement)?.querySelector("script")!==null,l;if(c){let d=o.cloneContents();d.querySelectorAll("script").forEach(f=>f.remove()),l=d.textContent||""}else l=o.toString();let u=0;if(n.nodeType===Node.TEXT_NODE){let d=n,f="";if(d)for(;d=d.previousSibling;)if(c){if(d.nodeType===Node.ELEMENT_NODE&&d.tagName==="SCRIPT")continue;if(d.nodeType===Node.ELEMENT_NODE){let g=d;if(g.querySelector("script")){let p=g.cloneNode(!0);p.querySelectorAll("script").forEach(_=>_.remove()),f=(p.textContent||"")+f}else f=(d.textContent||"")+f}else d.parentElement?.tagName!=="SCRIPT"&&(f=(d.textContent||"")+f)}else f=(d.textContent||"")+f;if(f){let g=new RegExp(rl(i),"g");u=(f.match(g)||[]).length}}if(l){let d=new RegExp(rl(i),"g");return(l.match(d)||[]).length+u}else return u}catch(o){return H.catch("Error in utils getSelectedTextOccurrenceInRange: ",o),0}},rl=n=>{try{return n&&typeof n=="string"?n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"):n}catch(e){return H.catch("Error in utils escapeRegExp: ",e),n}},Q7=n=>{try{return n==null?null:n.scrollHeight>n.clientHeight?n:Q7(n?.parentNode)}catch(e){return H.catch("Error in utils getScrollableParent: ",e),null}},VT=n=>{try{return n==null?[]:n.scrollHeight>n.clientHeight||n.scrollWidth>n.clientWidth?[n,...VT(n?.parentNode)]:VT(n?.parentNode)}catch(e){return H.catch("Error in utils getScrollableParents: ",e),[]}};function jOe(n){try{if(!n)return[];let e=VT(n),r=n;for(;r;){let t=r.getRootNode();if(t instanceof ShadowRoot)e.push(...VT(t.host)),r=t.host;else break}return e}catch(e){return H.catch("Error in utils getScrollableParentsCrossingShadowBoundary: ",e),[]}}var HOe=(n,e)=>{try{if(n&&e){let r=n.getBoundingClientRect(),t=e.getBoundingClientRect(),i=r.top-t.top+(e.tagName?.toLowerCase()==="html"?0:e.scrollTop),o=r.left-t.left;return{top:i,left:o}}else return null}catch(r){return H.catch("Error in utils getRelativeTopLeftPosition: ",r),null}},PV=(n,e)=>`${Tr(n+"_"+e)}`,Cg=n=>{try{let e=wT(n),r=new bt(!1);return e&&Object.assign(r,e),r.url=e?.url??window.location.href,r.path=e?.path??window.location.pathname,r.queryParams=e?.queryParams??window.location.search,r.baseUrl=e?.baseUrl??window.location.origin,r.title=e?.title??document.title,r}catch(e){H.catch("Error in utils getPageInfo: ",e);return}},X7=n=>{try{return n?n?.hasAttribute&&n?.hasAttribute(v.ATTRIBUTES.VELT_COMMENT_DISABLED)?!0:X7(n?.parentElement):!1}catch(e){return H.catch("Error in utils isCommentDisabledOnElement: ",e),!1}},J7=n=>{try{return n?n?.hasAttribute&&n?.hasAttribute(v.ATTRIBUTES.VELT_TAG_DISABLED)?!0:J7(n?.parentElement):!1}catch(e){return H.catch("Error in utils isTagDisabledOnElement: ",e),!1}},Z7=n=>{try{return n?n?.hasAttribute&&n?.hasAttribute(v.ATTRIBUTES.VELT_ARROW_DISABLED)?!0:Z7(n?.parentElement):!1}catch(e){return H.catch("Error in utils isArrowDisabledOnElement: ",e),!1}},eQ=n=>{try{return n?n?.hasAttribute&&n?.hasAttribute(v.ATTRIBUTES.VELT_AREA_DISABLED)?!0:eQ(n?.parentElement):!1}catch(e){return H.catch("Error in utils isAreaDisabledOnElement: ",e),!1}},tQ=n=>{try{return n?n?.hasAttribute&&n?.hasAttribute(v.ATTRIBUTES.VELT_RECORDER_DISABLED)?!0:tQ(n?.parentElement):!1}catch(e){return H.catch("Error in utils isRecorderDisabledOnElement: ",e),!1}};var jr=()=>{try{return window?.Snippyly?.version}catch(n){return H.catch("Error in utils getSdkVersion: ",n),null}},jT=n=>{try{return Object.fromEntries(Object.entries(n).filter(([e,r])=>r!==void 0))}catch(e){return H.catch("Error in utils removeUndefinedKeys: ",e),n}},HT=n=>{try{let e=new URL(n);return Object.values(v.URL_PARAMS).forEach(r=>{e.searchParams.delete(r)}),e.href}catch(e){return H.catch("Error in utils excludeSnippylyParamsFromUrl: ",e),n}},WOe=n=>{try{navigator.clipboard.writeText(n)}catch(e){H.catch("Error in copyToClipboard: ",e)}},RC=n=>{try{let e=xV(n);return e&&typeof e=="string"&&e.includes("/svg")&&(e=e.split("/svg")[0]+"/*[name()='svg']"),e}catch(e){H.catch("Error in utils getXPath:",e)}},xV=n=>{try{if(n){if(typeof n=="string")return document.evaluate(n,document,null,0,null);if(!n||n.nodeType!=1)return"";if(n.id&&n?.tagName?.toLowerCase()!=="svg"&&document.querySelectorAll(`[id='${n.id}']`)?.length===1)return"//*[@id='"+n.id+"']";let e=[].filter.call(n.parentNode?.children?n.parentNode?.children:[],function(r){return r.tagName==n.tagName});return xV(n.parentNode)+"/"+n.tagName.toLowerCase()+(e.length>1?"["+([].indexOf.call(e,n)+1)+"]":"")}}catch(e){H.catch("Error in utils calculateXPath:",e)}},zOe=n=>{try{let e=[];return n.forEach(r=>{let t={};t.commonAncestorContainer=nQ(r.commonAncestorContainer),t.text=r.toString(),t.occurrence=OC(r.commonAncestorContainer,0,r.startContainer,r.startOffset,r.toString())+1,e.push(t)}),e}catch{return[]}},nQ=n=>{try{if(n.nodeType===Node.TEXT_NODE){let e=1,r=n.previousSibling;for(;r;)r.nodeType===Node.TEXT_NODE&&e++,r=r.previousSibling;return RC(n.parentElement)}else return RC(n)}catch(e){return H.catch("Error in utils getXPathForText: ",e),RC(n)}},rQ=(n,e)=>{try{return n?n?.hasAttribute&&(e&&n.hasAttribute("contenteditable")||n?.getAttribute(v.ATTRIBUTES.VELT_LIVE_SELECTION_ENABLED)==="true")?n:rQ(n?.parentElement,e):null}catch(r){return H.catch("Error in utils getSelectionEnabledElement: ",r),null}},qOe=n=>{try{let e,r=[],t=document.createTreeWalker(n,NodeFilter.SHOW_TEXT,null);for(;e=t.nextNode();)r.push(e);return r}catch(e){return H.catch("Error in utils getTextNodesInsideElement: ",e),[]}},KOe=n=>{try{return n<576||n>=576&&n<767?"Mobile":n>=768&&n<992?"Tablet":n>=992&&n<1520?"Desktop":"Monitor"}catch(e){return H.catch("Error in utils getDeviceTypeFromDeviceWidth: ",e),""}},FV=n=>new Promise(e=>setTimeout(e,n)),YOe=(n,e=0)=>new Promise((r,t)=>{let i=document.createElement("video"),o=navigator.userAgent.includes("Firefox");o&&(i.preload="auto"),i.setAttribute("src",URL.createObjectURL(n)),i.load(),i.addEventListener("error",s=>{t("error when loading video file: "+s)}),i.addEventListener("loadedmetadata",()=>{let s=()=>{if(i.duration<e){t("video is too short.");return}setTimeout(()=>{i.currentTime=e},200),i.addEventListener("seeked",()=>{let a=document.createElement("canvas");a.width=i.videoWidth,a.height=i.videoHeight;let c=a.getContext("2d");c.drawImage(i,0,0,a.width,a.height),c.canvas.toBlob(l=>{i.remove(),r(l)},"image/jpeg",.75)})};if(o&&i.duration>0&&i.duration<10&&n.size>1e6){setTimeout(()=>{i.duration<e&&(e=Math.max(.1,i.duration/2)),s()},1e3);return}s()})}),QOe=n=>{try{return new Promise((e,r)=>{let t=new FileReader;t.onloadend=()=>e(t.result),t.readAsDataURL(n)})}catch(e){return H.catch("Error in utils blobToBase64: ",e),Promise.resolve("")}},XOe=(n,e="image/jpeg")=>{try{let r=atob(n.split(",")[1]),t=new ArrayBuffer(r.length),i=new Uint8Array(t);for(let o=0;o<r.length;o++)i[o]=r.charCodeAt(o);return new Blob([t],{type:e})}catch(r){return H.catch("Error in utils base64ToBlob: ",r),null}},JOe=(n,e,r=20)=>new Promise((t,i)=>{let o=new Image;o.crossOrigin="Anonymous",o.onload=()=>{let s=o.width,a=o.height,c=600,l=a/s*c,u="http://www.w3.org/2000/svg",d=document.createElementNS(u,"svg");d.setAttribute("xmlns",u),d.setAttribute("width",c.toString()),d.setAttribute("height",l.toString()),d.setAttribute("viewBox",`0 0 ${c} ${l}`);let f=document.createElementNS(u,"circle"),g=document.createElementNS(u,"polygon"),p=16,_=p+16,T=c/2,D=l/2;if(f.setAttribute("cx",T.toString()),f.setAttribute("cy",D.toString()),f.setAttribute("r",_.toString()),f.setAttribute("fill","lightgrey"),g.setAttribute("points",`${T-p/2},${D-p} ${T-p/2},${D+p} ${T+p},${D}`),g.setAttribute("fill","#ffffff"),d.appendChild(f),d.appendChild(g),e){let S=e.length*16-10,A=16*1.5,C=(c-S)/2,O=l-A-10,P=document.createElementNS(u,"rect");P.setAttribute("x",C.toString()),P.setAttribute("y",O.toString()),P.setAttribute("width",S.toString()),P.setAttribute("height",A.toString()),P.setAttribute("fill","#353945b3"),P.setAttribute("rx","12"),d.appendChild(P);let F=document.createElementNS(u,"text");F.textContent=e,F.setAttribute("x",(c/2).toString()),F.setAttribute("y",(O+16).toString()),F.setAttribute("font-size","16"),F.setAttribute("text-anchor","middle"),F.setAttribute("fill","white"),d.appendChild(F)}let b=new XMLSerializer().serializeToString(d),G=new Image,M=new Blob([b],{type:"image/svg+xml;charset=utf-8"}),U=URL.createObjectURL(M);G.onload=()=>{let k=document.createElement("canvas");k.width=c,k.height=l;let S=k.getContext("2d");S.beginPath(),S.moveTo(r,0),S.lineTo(c-r,0),S.quadraticCurveTo(c,0,c,r),S.lineTo(c,l-r),S.quadraticCurveTo(c,l,c-r,l),S.lineTo(r,l),S.quadraticCurveTo(0,l,0,l-r),S.lineTo(0,r),S.quadraticCurveTo(0,0,r,0),S.closePath(),S.clip(),S.drawImage(o,0,0,c,l),S.drawImage(G,0,0,c,l);let A=k.toDataURL("image/png");t(A)},G.onerror=i,G.src=U},o.onerror=i,o.src=n});var ZOe=n=>{try{return n?.replace(/[\n\t\u200D]/g,"")?.split(/\s+/)?.filter(t=>t?.trim()?.length)||[]}catch(e){return H.catch("Error in utils getWords: ",e),[]}},ewe=(n,e=[])=>{try{let r=e.map(t=>`[${t}="${n}"]`).join(",");return document.querySelector(r)}catch(r){return H.catch("Error in utils getElementByAttributes: ",r),null}},twe=(n,e=[])=>{try{let r=e.map(t=>`[${t}="${n}"]`).join(",");return document.querySelectorAll(r)}catch(r){return H.catch("Error in utils getElementsByAttributes: ",r),[]}},UT=n=>{try{let e=Math.floor(n/3600),r=Math.floor((n-e*3600)/60),t=Math.floor(n-e*3600-r*60);return e&&e<10&&(e="0"+e),r<10&&(r="0"+r),t<10&&(t="0"+t),(e?e+":":"")+r+":"+t}catch{return""}},iQ=10,nwe=n=>{try{if(typeof n!="number"||!isFinite(n))return 0;let e=1e3/iQ;return Math.round(n*e)/e}catch{return n}},rwe=n=>{try{if(!n||typeof n!="object")return;let e={videoPlayerId:n.videoPlayerId,currentMediaPosition:n.currentMediaPosition,locationName:n.locationName};return n.version?.id&&n.version?.name&&(e.version={id:n.version.id,name:n.version.name}),e}catch{return}},iwe=(n,e=10)=>{try{if(!n||!n.currentTime)throw new Error("Invalid video element reference provided");let r=n.currentTime,t=Math.floor(r/e)*e,i=t+e;return{startSlot:UT(t),endSlot:UT(i),timeSlot:UT(t)+" - "+UT(i)}}catch{return null}},owe=(n,e=["@"])=>{try{let r="",t,i=n.getRootNode();if(i instanceof ShadowRoot?t=i?.getSelection():t=window.getSelection(),t?.rangeCount){let o=t.getRangeAt(0),s=o.startOffset,a=o.endOffset,c=o?.commonAncestorContainer?.textContent;c?r=oQ(c,a,e):r=""}return r}catch(r){return H.catch("Error in utils getWordAtCursor: ",r),""}};var oQ=(n,e,r=["@"])=>{try{let t=-1,i=!1;for(let o of r){let s=n.lastIndexOf(o,e),a=s>0?n.lastIndexOf(o,s-1):-1;if(s>t){let c=BT(n,s,e),l=GT(n,s,e);if(c||l){if(a!==-1){let u=BT(n,a,s),d=GT(n,a,s);!u&&!d&&(t=a,i=!0)}}else t=s,i=!0}}return t!==-1&&i?n.substring(t,e):""}catch(t){return H.catch("Error in utils getStringFromLastAtSymbol: ",t),""}},BT=(n,e,r)=>{try{if(e===0)return!1;let t=n.charAt(e-1);return!(t===" "||t==="\xA0"||t===`
124
- `||t===" "||[",",":",";"].includes(t))}catch(t){return H.catch("Error in utils isHotkeyDisabledForAutocomplete: ",t),!1}},GT=(n,e,r)=>{try{return!!n.substring(e+1,r).startsWith(" ")}catch(t){return H.catch("Error in utils isHotkeyFollowedBySpace: ",t),!1}},swe=(n,e,r=["@"])=>{try{let t=sQ(n),i=null;try{t&&typeof t.getSelection=="function"&&(i=t.getSelection())}catch{}if(i||(i=window.getSelection()),i?.rangeCount){let o=i.getRangeAt(0),s=o.startOffset,a=o?.commonAncestorContainer?.textContent;if(a){let c=-1;for(let l of r){let u=a.lastIndexOf(l,s),d=u>0?a.lastIndexOf(l,u-1):-1;if(u>c){let f=BT(a,u,s),g=GT(a,u,s);if(f||g){if(d!==-1){let p=BT(a,d,u),_=GT(a,d,u);!p&&!_&&(c=d)}}else c=u}}if(c!==-1){let l=a.substring(0,c),u=a.substring(o.endOffset),d=document.createElement("span");d.textContent=e,d.style.color="var(--velt-accent)";let f=e.startsWith("@")?e.substring(1):e;d.classList.add("velt-mention"),d.classList.add(f.includes("@")?"velt-mention--email":"velt-mention--name");let g=Date.now()+"_"+Math.random().toString(36).substr(2,9);d.setAttribute("data-recently-added",g),setTimeout(()=>{d.hasAttribute("data-recently-added")&&d.removeAttribute("data-recently-added")},5e3);let p=o.commonAncestorContainer;if(p.nodeType===Node.TEXT_NODE){let _=p.parentNode;if(_){let T=document.createTextNode(l),D=document.createTextNode(u);_.replaceChild(D,p),_.insertBefore(d,D),_.insertBefore(T,d);try{let b=document.createRange();b.setStartAfter(d),b.collapse(!0),i?.removeAllRanges(),i?.addRange(b)}catch(b){H.catch("Error positioning cursor after span:",b);try{let G=document.createRange();G.selectNodeContents(n),G.collapse(!1),i?.removeAllRanges(),i?.addRange(G)}catch(G){H.catch("Error with fallback cursor positioning:",G)}}}}}}}}catch(t){H.catch("Error in utils replaceWordAtCursor: ",t)}},awe=()=>{try{let e=window.getSelection()?.getRangeAt(0),r=e?.commonAncestorContainer,t=e?.startContainer,i=e?.endContainer,o=[];o.push(r),o.push(t),o.push(i);let s=!1;for(let a of o)if(a&&bo(a,[v.TAGS.SNIPPYLY_TEXT_HIGHLIGHT,v.TAGS.SNIPPYLY_COMMENT_TEXT_PORTAL,v.TAGS.SNIPPYLY_HIGHLIGHT_USER_TEXT,v.TAGS.SNIPPYLY_COMMENT_TEXT])){s=!0;break}return s}catch(n){return H.catch("Error in utils isTextSelectionIncludesSnippylyElement: ",n),!1}},kV=(n,e,r)=>{try{let t=document.querySelector(`[id=${n}]`);if(t)t.name=e,t.content=r;else{let i=document.createElement("meta");i.id=n,i.name=e,i.content=r,document.getElementsByTagName("head")[0].appendChild(i)}}catch{}},UV=n=>{try{if(n){let e=document.querySelector(`[id=${n}]`);e&&e.remove()}}catch{}},VV=()=>{try{let e=new Date().getTimezoneOffset(),r=Math.floor(Math.abs(e)/60),t=Math.abs(e)%60;return`UTC${e>0?"-":"+"}${r?.toString()?.padStart(2,"0")}:${t?.toString()?.padStart(2,"0")}`}catch(n){return H.catch("Error in utils getTimezone: ",n),""}},cwe=()=>{try{let n=[];return document.querySelectorAll("*").forEach(r=>{(r.scrollHeight>r.clientHeight||r.scrollWidth>r.clientWidth||["auto","scroll"].includes(getComputedStyle(r).overflow))&&n.push(r)}),n}catch(n){return H.catch("Error in utils getScrollableElements: ",n),[]}},BV=(n,e)=>Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2),lwe=(n,e={x:window.innerWidth/2,y:window.innerHeight/2})=>{try{let r=n;for(;r.children.length>0;){let t=null,i=Number.MAX_SAFE_INTEGER;for(let o=0;o<r.children.length;o++){let s=r.children[o],a=s.getBoundingClientRect(),c={x:a.left+a.width/2,y:a.top+a.height/2},l=BV(c,e);(a.top>=0||a.bottom<=window.innerHeight)&&a.width>0&&a.height>0&&l<=i&&(t=s,i=l)}if(t===null)break;r=t}return r}catch(r){return H.catch("Error in utils getInnermostElement: ",r),null}},uwe=n=>{try{let{offsetWidth:e,offsetHeight:r,scrollTop:t}=n,i=n,o={x:e/2,y:t+r/2};for(;i.children.length>0;){let s=null,a=Number.MAX_SAFE_INTEGER;for(let c=0;c<i.children.length;c++){let l=i.children[c],u={x:l.offsetLeft+l.offsetWidth/2,y:l.offsetTop+l.offsetHeight/2},d=BV(u,o);l.offsetTop>=0&&l.offsetWidth>0&&l.offsetHeight>0&&d<=a&&(s=l,a=d)}if(s===null)break;i=s}return i}catch(e){return H.catch("Error in utils getNestedInnermostElement: ",e),null}},dwe=()=>{try{let n=window.innerWidth/2,e=window.innerHeight/2,r=document.elementFromPoint(n,e);for(;r&&r.tagName==="BODY";)e+=2,r=document.elementFromPoint(n,e);return r}catch(n){return H.catch("Error in utils getCenteredBackgroundElement: ",n),null}},hwe=(n,e,r=!1)=>{try{let t=n.getBoundingClientRect(),i=e.getBoundingClientRect(),o=e.offsetTop;r&&(o=o-t.height/2+i.height/2),n.scrollTo({top:o,behavior:"smooth"})}catch(t){H.catch("Error in utils nestedScrollIntoView: ",t)}},fwe=(n,e=!0)=>{try{let r=document.body.getBoundingClientRect(),t=n.getBoundingClientRect(),i=t.top-r.top,o=window.innerHeight,s=i;e&&(s=s-o/2+t.height/2),window.scrollTo({top:s,behavior:"smooth"})}catch(r){H.catch("Error in utils scrollIntoView: ",r)}},gwe=(n=!1)=>{try{let e=!0;return n&&(e=/\sChrome\/[\d.]+ Mobile\s/.test(navigator.userAgent)),"ontouchstart"in window||navigator.maxTouchPoints>0||e}catch(e){return H.catch("Error in utils isTouchDevice: ",e),!1}},mwe=(n,e,r)=>{try{return(1-r)*n+r*e}catch(t){H.catch("Error in utils lerp: ",t)}return 0},pwe=(n,e)=>{try{if(n===void 0)return n;if(n=n.replace("#",""),n.length===6){let r=parseInt(n,16),t=(r>>16)+e;t>255&&(t=255),t<0&&(t=0);let i=(r&255)+e;i>255&&(i=255),i<0&&(i=0);let o=(r>>8&255)+e;return o>255&&(o=255),o<0&&(o=0),`#${(i|o<<8|t<<16).toString(16)}`}else return n}catch(r){H.catch("Error in utils multiplyColor: ",r)}return n},Ewe=n=>{try{return n in v.TEXT_COLOR_MAP?v.TEXT_COLOR_MAP[n]:"#141416"}catch(e){return H.catch("Error in generateUserColor:",e),"#141416"}},_we=()=>{try{let n=localStorage.getItem(v.LOCAL_STORAGE.SNIPPYLY_DEFAULT_MEDIA_SOURCE_OPTIONS);if(n)return JSON.parse(n)}catch(n){return H.catch("Error in getDefaultMediaStreamOptions:",n),{}}},Twe=(n,e)=>{try{let r=e*(Math.PI/180),t=Math.cos(r);return t?n/t:n}catch(r){return H.catch("Error in calculateHypotenuse:",r),0}},Iwe=(n,e,r=!0)=>{try{let t=[],i=r?n:n.parentNode;for(;i;)t.push(i),i=i.parentNode;let o=r?e:e.parentNode;for(;o;){if(t.indexOf(o)!==-1)return o;o=o.parentNode}return null}catch(t){return H.catch("Error in utils findCommonParent: ",t),null}},vwe=(n,e,r,t,i=!1)=>{try{let o,s;if(i){let a=r,c=t;if(a===c)o=n,s=e;else{let l=0,u=0,d=a;for(;d&&d!==c;)l+=d.offsetLeft,u+=d.offsetTop,d=d.parentElement;o=l+n,s=u+e}}else{let a=r.getBoundingClientRect(),c=t.getBoundingClientRect(),l=a.left+n,u=a.top+e;o=l-c.left,s=u-c.top}return{x:o,y:s}}catch(o){return H.catch("Error in utils calculateParentCoordinates: ",o),{x:n,y:e}}},ywe=n=>{try{let e={height:0,width:0};if(typeof n?.getBBox=="function"){let r=n?.getBBox(),t=n?.getBoundingClientRect();e.height=parseFloat(t?.height||r.height||0),e.width=parseFloat(t?.width||r.width||0)}else{let r=window.getComputedStyle(n);if(e.height=n?.clientHeight||parseFloat(r.getPropertyValue("height"))||0,e.width=n?.clientWidth||parseFloat(r.getPropertyValue("width"))||0,n?.getBoundingClientRect&&typeof n?.getBoundingClientRect=="function"){let t=n?.getBoundingClientRect();e?.height||(e.height=t?.height||n?.clientHeight||n?.offsetHeight||0),e?.width||(e.width=t?.width||n?.clientWidth||n?.offsetWidth||0)}}return e}catch(e){return H.catch("Error in utils getElementDimensions: ",e),{height:0,width:0}}},Swe=n=>{try{let e=n;for(;e;){if(window?.getComputedStyle(e)?.getPropertyValue("background-clip")=="text")return!0;e=e?.parentElement}return!1}catch(e){return H.catch("Error in utils hasParentWithBackgroundClip: ",e),!1}},sQ=n=>{try{let e=n;for(;e;){if(e.toString()==="[object ShadowRoot]")return e;e=e.parentNode}}catch(e){H.catch("Error in utils findShadowRoot: ",e)}return null},Awe=n=>{try{let e=["attachment","attachments","chunkUrls","transcription","color","position","positionX","positionY","resolved","inProgress","screenWidth","screenHeight","screenScrollHeight","screenScrollTop","taggedElementPath","taggedElementRect","targetElement","documentParamsId","documentParams","ghostComment","areaAnnotationId","iam","commentSource"],r=JSON.parse(JSON.stringify(n)),t={};return Object.keys(r).forEach(i=>{e.includes(i)||(t[i]=r[i])}),JSON.parse(JSON.stringify(t))}catch(e){return H.catch("Error in utils getRecorderAnnotationForClient: ",e),null}},Dwe=n=>n===null||typeof n>"u",Rwe=(n,e)=>{try{return!!n?.closest(`[${e}]`)}catch(r){return H.catch("Error in utils hasParentWithAttribute: ",r),!1}},aQ=(n,e=!0)=>{try{let r=[];if(!n||!(n instanceof HTMLElement))return[];e&&r.push(n);for(let t=0;t<n.children.length;t++){let i=n.children[t];r=r.concat(aQ(i))}return r}catch(r){return H.catch("Error in utils getAllNestedChildren: ",r),[]}},Cwe=()=>{try{return document.visibilityState==="hidden"?!1:document.hasFocus()}catch(n){return H.catch("Error in utils isTabActive: ",n),!1}},Nwe=n=>{try{let e="",r=n?.getAttribute("src");if(r)e=`${Tr(r)}`;else{let t=n?.querySelectorAll("source");if(t&&t.length>0){let o=t[0]?.getAttribute("src");o&&(e=`${Tr(o)}`)}}return e}catch{return""}},Owe=n=>{try{return!(n&&(n?.children?.length>0||n?.textContent?.trim()?.length>0))}catch(e){return H.catch("Error in utils isTemplateEmpty: ",e),!0}},RV=(n,e)=>{try{if(!n||!e)return;let r=[],t="",i=0;for(let c=0;c<e.length;c++){let l=e[c];l==="["?(i++,i===1&&t&&(r.push(t),t=""),t+=l):l==="]"?(i--,t+=l,i===0&&(r.push(t),t="")):l==="."&&i===0?t&&(r.push(t),t=""):t+=l}t&&r.push(t);let o,s=x({},n),a=r.reduce((c,l)=>{if(c==null)return;To(c)&&(o=c,c=c());let u=l.match(/^\[([^\[\]]+|(\[[^\[\]]*\]))\]$/);if(u){let f=u[1];if(/^\d+$/.test(f)){let g=parseInt(f,10);return Array.isArray(c)?c[g]:void 0}if(f.startsWith("'")&&f.endsWith("'")||f.startsWith('"')&&f.endsWith('"')){let g=f.slice(1,-1);return c[g]}if(f.includes(".")||f.includes("[")){let g=RV(s,f);To(g)&&(g=g());let p=g?.toString()||"";return c[p]}if(s[f]!==void 0){let g=s[f];return To(g)&&(g=g()),c[g]}return c[f]}let d=l;return(l.startsWith("'")&&l.endsWith("'")||l.startsWith('"')&&l.endsWith('"'))&&(d=l.slice(1,-1)),d==="length"&&Array.isArray(c)?c.length:c[d]},n);return o?ig(()=>{try{let c=x({},n);return r.reduce((l,u)=>{if(l==null)return;To(l)&&(l=l());let d=u.match(/^\[([^\[\]]+|(\[[^\[\]]*\]))\]$/);if(d){let g=d[1];if(/^\d+$/.test(g)){let p=parseInt(g,10);return Array.isArray(l)?l[p]:void 0}if(g.startsWith("'")&&g.endsWith("'")||g.startsWith('"')&&g.endsWith('"')){let p=g.slice(1,-1);return l[p]}if(g.includes(".")||g.includes("[")){let p=RV(c,g);To(p)&&(p=p());let _=p?.toString()||"";return l[_]}if(c[g]!==void 0){let p=c[g];return To(p)&&(p=p()),l[p]}return l[g]}let f=u;return(u.startsWith("'")&&u.endsWith("'")||u.startsWith('"')&&u.endsWith('"'))&&(f=u.slice(1,-1)),l[f]},n)}catch{return""}}):a}catch{return""}},wwe=(n,e)=>{try{return!!(n?.locationId&&(n.locationId===e?.locationId||e?.location?.id===String(n.locationId))||n?.location?.id&&(n.location.id===e?.location?.id||n.location.id===String(e?.locationId)))}catch(r){return H.catch("Error in utils isLocationSame: ",r),!1}},bwe=()=>{try{let n=document.activeElement,e=new Set,r=10,t=0;for(;n&&n.shadowRoot&&!(e.has(n)||(e.add(n),n=n.shadowRoot.activeElement,t++,t>r)););return n}catch(n){return H.catch("Error in utils getActiveElement: ",n),null}},Ft=(n,e)=>{try{return typeof n=="object"&&typeof e=="object"?JSON.stringify(n)===JSON.stringify(e):n===e}catch{return!1}},Cn=(n,e=0)=>{try{let r=JSON.parse(JSON.stringify(n));return n?.clientDocumentId&&(r.documentId=n.clientDocumentId),n?.clientOrganizationId&&(r.organizationId=n.clientOrganizationId),n?.documentMetadata&&e<5&&(r.documentMetadata=Cn(n.documentMetadata,e+1)),delete r?.clientDocumentId,delete r?.clientOrganizationId,delete r?.veltFolderId,delete r?.parentVeltFolderId,delete r?.pageInfo,r}catch{return n}},Lwe=n=>{try{if(!n.some(s=>s?.value?.data))return{};let e=null,r=n.reduce((s,a)=>Math.max(s,a.timestamp),0),t=n.find(s=>s.timestamp===r);if(!t)return{};t?.value?.operation?.type==="removed"&&(e=t?.value?.operation);let o=n.map(s=>s.value).reduce((s,a)=>({data:x(x({},s?.data??{}),a?.data??{})}),{});return o.operation=e,o}catch{return{}}},kt=(n,e,r)=>I(null,null,function*(){try{let t=0;for(;t<=(r.retryCount||0);)try{let i=yield n();if(!i)return{success:!1,statusCode:400,message:`${e} failed: No response received`};if(i.statusCode===void 0)return{success:!1,statusCode:400,message:`${e} failed: Response missing statusCode`};if(i.statusCode!==200){if(t++,t>(r.retryCount||0))return{success:!1,statusCode:i.statusCode,message:`${e} failed after ${t} attempts with status code ${i.statusCode}`};r.retryDelay&&(yield new Promise(o=>setTimeout(o,r.retryDelay)));continue}return i}catch(i){if(t++,t>(r.retryCount||0))return{success:!1,statusCode:500,message:`${e} failed with error: ${i instanceof Error?i.message:"Unknown error"}`};r.retryDelay&&(yield new Promise(o=>setTimeout(o,r.retryDelay)))}return{success:!1,statusCode:500,message:`${e} failed: Maximum retry attempts exceeded`}}catch(t){return{success:!1,statusCode:500,message:`${e} failed with unexpected error: ${t instanceof Error?t.message:"Unknown error"}`}}}),Ht=(n,e,r,t,i)=>I(null,null,function*(){try{let o=typeof e=="function"?yield e():e||{},a=x(x({},{"Content-Type":"application/json"}),o),c=yield fetch(n,x({method:"POST",headers:a,body:JSON.stringify(r)},i?{credentials:i}:{}));if(!c.ok)return H.catch(`Error in makeConfigBasedRequest: ${c.status} ${c.statusText}`),t?{data:{},success:!1,statusCode:c.status}:{success:!1,statusCode:c.status};let l=yield c.json();return t?{data:l?.data??{},success:!0,statusCode:200}:{success:!0,statusCode:200}}catch(o){return H.catch("Error in makeConfigBasedRequest:",o),t?{data:{},success:!1,statusCode:500}:{success:!1,statusCode:500}}}),GV=n=>{try{return!n||!n?.access?[]:Object.keys(n.access).sort().map(i=>n.access?.[i]?.map(o=>`${i}:${o}`)??[]).reduce((i,o)=>i.flatMap(s=>o.map(a=>[...s,a])),[[]]).map(i=>i.join("_"))}catch(e){return H.catch("Error in utils generateProcessedContext: ",e),[]}},Mwe=n=>{try{if(!n||!n?.access)return[];let e=Object.keys(n.access).sort(),t=(o=>{let s=[],a=Math.pow(2,o.length);for(let c=1;c<a;c++){let l=[];for(let u=0;u<o.length;u++)c&1<<u&&l.push(o[u]);s.push(l)}return s})(e),i=[];for(let o of t){let s=o.map(a=>{let c=n.access?.[a];return c==null?null:`${a}:${c}`}).filter(a=>a!==null);s.length>0&&i.push(s.join("_"))}return[...new Set(i)]}catch(e){return H.catch("Error in utils generateAllContextCombos: ",e),[]}},$V=({input:n})=>{try{if(!n||!n?.access)return[];let e=n?.access,r=Object.keys(e).sort(),t=[];for(let o of r){let s=e[o];s!=null&&Array.isArray(s)&&s.length>0&&t.push({key:o,values:s})}return t.length===0?[]:t.reduce((o,{key:s,values:a})=>o.length===0?a.map(c=>[{key:s,value:c}]):o.flatMap(c=>a.map(l=>[...c,{key:s,value:l}])),[]).map(o=>{let s={};return o.forEach(({key:a,value:c})=>{s[a]=c}),{access:s}})}catch(e){return H.catch("Error in utils expandContextArraysToSingleValues: ",e),[]}},jV=({input:n})=>{try{if(!n||n.length===0)return{access:{}};let e=new Set;n.forEach(t=>{t?.access&&Object.keys(t.access).forEach(i=>e.add(i))});let r={};for(let t of Array.from(e).sort()){let i=new Set;n.forEach(o=>{if(o?.access){let s=o.access[t];s!=null&&i.add(s)}}),r[t]=i.size>0?Array.from(i).sort():null}return{access:r}}catch(e){return H.catch("Error in utils combineContextsToArrays: ",e),{access:{}}}},Ad=i=>I(null,[i],function*({data:n,getSdkProxy:e,userId:r,methodName:t}){try{let o="sdkproxyencryptionanddecryptiononsdk"+(r??""),s=yield cQ({data:n,key:o}),a=(yield e({veltData:s}))?.data?.data?.veltData||{};return yield NC(a,o)}catch(o){return H.catch("Error in utils sdkProxyEncryptDecrypt: "+(t??""),o),n}}),cQ=r=>I(null,[r],function*({data:n,key:e}){try{return yield il(n,e)}catch{return n}}),wC=(n,e)=>I(null,null,function*(){try{let r=0;for(;r<=(e.retryCount||0);)try{let t=yield n();if(!t)throw new Error("No response received");return t}catch{if(r++,r>=(e.retryCount||0))return null;e.retryDelay&&(yield new Promise(i=>setTimeout(i,e.retryDelay)))}return null}catch{return null}}),bC=n=>{try{if(n&&typeof n=="object"){let e=JSON.parse(JSON.stringify(n));return e?.clientOrganizationId&&(e.organizationId=e.clientOrganizationId,delete e.clientOrganizationId),e?.clientGroupId&&(e.groupId=e.clientGroupId,delete e.clientGroupId),e?.userSnippylyId&&delete e.userSnippylyId,delete e?.email_lowercase,delete e?.name_lowercase,e}else return null}catch(e){return H.catch("Error in utils getUserForClient: ",e),null}},Ir=({url:n,apiProxyDomain:e})=>{try{if(e){let r=new URL(n);r.origin&&(n=n.replace(r.origin,e))}return n}catch(r){return H.catch("Error in utils getResolvedApiUrl: ",r),n}},Pwe=(n,e)=>{try{if(!n||!(n instanceof Element))return!1;let r,t;if(e&&typeof e.x=="number"&&typeof e.y=="number")r=e.x,t=e.y;else{let o=n.getBoundingClientRect();r=o.left+o.width/2,t=o.top+o.height/2}let i=document.elementFromPoint(r,t);return!(!i||i===n||n.contains(i))}catch{return!1}};function CV(n,e){if(n==null||typeof n!="object"||Array.isArray(n))return n;let r={};for(let t of e)Object.prototype.hasOwnProperty.call(n,t)&&(r[t]=n[t]);return r}function NV(n){return n!=null&&typeof n=="object"&&!Array.isArray(n)}function yd(n,e){switch(e.kind){case"type":return CV(n,e.safeKeys);case"array":return Array.isArray(n)?n.map(r=>yd(r,e.item)):n;case"record":{if(!NV(n))return n;let r={};for(let t of Object.keys(n))r[t]=yd(n[t],e.value);return r}case"object":{if(!NV(n))return n;let r=e.selfKeys?CV(n,e.selfKeys):x({},n);for(let t of Object.keys(e.fields))Object.prototype.hasOwnProperty.call(r,t)&&(r[t]=yd(r[t],e.fields[t]));return r}default:return n}}var _r={kind:"type",safeKeys:_V},lQ={kind:"type",safeKeys:TV},uQ={kind:"type",safeKeys:yV},dQ={kind:"type",safeKeys:vV},Dg={kind:"type",safeKeys:IV};function hQ(n){return{kind:"object",selfKeys:mV,fields:{from:_r,to:{kind:"array",item:_r},attachments:{kind:"array",item:n},recorders:{kind:"array",item:uQ},taggedUserContacts:{kind:"array",item:{kind:"object",fields:{contact:_r}}}}}}function HV(n){return{kind:"object",selfKeys:gV,fields:{from:_r,assignedTo:_r,resolvedByUser:_r,viewedBy:{kind:"array",item:_r},subscribedUsers:{kind:"record",value:{kind:"object",fields:{user:_r}}},unsubscribedUsers:{kind:"record",value:{kind:"object",fields:{user:_r}}},suggestion:{kind:"object",fields:{resolvedBy:_r}},targetTextRange:lQ,comments:{kind:"array",item:hQ(n)}}}}var fQ=HV(dQ),gQ=HV(Dg),mQ={kind:"object",selfKeys:pV,fields:{from:_r,reactions:{kind:"array",item:{kind:"object",fields:{from:_r}}}}},pQ={kind:"object",selfKeys:EV,fields:{from:_r,attachment:Dg,attachments:{kind:"array",item:Dg},recordingEditVersions:{kind:"record",value:{kind:"object",fields:{from:_r,attachment:Dg,attachments:{kind:"array",item:Dg}}}}}};function WV(n,e){let r=e?.stripAttachmentFiles?fQ:gQ;return yd(n,r)}function zV(n){return yd(n,mQ)}function qV(n){return yd(n,pQ)}var KV=()=>{};var MC={NODE_CLIENT:!1,NODE_ADMIN:!1,SDK_VERSION:"${JSCORE_VERSION}"};var ee=function(n,e){if(!n)throw ol(e)},ol=function(n){return new Error("Firebase Database ("+MC.SDK_VERSION+") INTERNAL ASSERT FAILED: "+n)};var XV=function(n){let e=[],r=0;for(let t=0;t<n.length;t++){let i=n.charCodeAt(t);i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):(i&64512)===55296&&t+1<n.length&&(n.charCodeAt(t+1)&64512)===56320?(i=65536+((i&1023)<<10)+(n.charCodeAt(++t)&1023),e[r++]=i>>18|240,e[r++]=i>>12&63|128,e[r++]=i>>6&63|128,e[r++]=i&63|128):(e[r++]=i>>12|224,e[r++]=i>>6&63|128,e[r++]=i&63|128)}return e},EQ=function(n){let e=[],r=0,t=0;for(;r<n.length;){let i=n[r++];if(i<128)e[t++]=String.fromCharCode(i);else if(i>191&&i<224){let o=n[r++];e[t++]=String.fromCharCode((i&31)<<6|o&63)}else if(i>239&&i<365){let o=n[r++],s=n[r++],a=n[r++],c=((i&7)<<18|(o&63)<<12|(s&63)<<6|a&63)-65536;e[t++]=String.fromCharCode(55296+(c>>10)),e[t++]=String.fromCharCode(56320+(c&1023))}else{let o=n[r++],s=n[r++];e[t++]=String.fromCharCode((i&15)<<12|(o&63)<<6|s&63)}}return e.join("")},Cd={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:typeof atob=="function",encodeByteArray(n,e){if(!Array.isArray(n))throw Error("encodeByteArray takes an array as a parameter");this.init_();let r=e?this.byteToCharMapWebSafe_:this.byteToCharMap_,t=[];for(let i=0;i<n.length;i+=3){let o=n[i],s=i+1<n.length,a=s?n[i+1]:0,c=i+2<n.length,l=c?n[i+2]:0,u=o>>2,d=(o&3)<<4|a>>4,f=(a&15)<<2|l>>6,g=l&63;c||(g=64,s||(f=64)),t.push(r[u],r[d],r[f],r[g])}return t.join("")},encodeString(n,e){return this.HAS_NATIVE_SUPPORT&&!e?btoa(n):this.encodeByteArray(XV(n),e)},decodeString(n,e){return this.HAS_NATIVE_SUPPORT&&!e?atob(n):EQ(this.decodeStringToByteArray(n,e))},decodeStringToByteArray(n,e){this.init_();let r=e?this.charToByteMapWebSafe_:this.charToByteMap_,t=[];for(let i=0;i<n.length;){let o=r[n.charAt(i++)],a=i<n.length?r[n.charAt(i)]:0;++i;let l=i<n.length?r[n.charAt(i)]:64;++i;let d=i<n.length?r[n.charAt(i)]:64;if(++i,o==null||a==null||l==null||d==null)throw new PC;let f=o<<2|a>>4;if(t.push(f),l!==64){let g=a<<4&240|l>>2;if(t.push(g),d!==64){let p=l<<6&192|d;t.push(p)}}}return t},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let n=0;n<this.ENCODED_VALS.length;n++)this.byteToCharMap_[n]=this.ENCODED_VALS.charAt(n),this.charToByteMap_[this.byteToCharMap_[n]]=n,this.byteToCharMapWebSafe_[n]=this.ENCODED_VALS_WEBSAFE.charAt(n),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[n]]=n,n>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(n)]=n,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(n)]=n)}}},PC=class extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}},FC=function(n){let e=XV(n);return Cd.encodeByteArray(e,!0)},Og=function(n){return FC(n).replace(/\./g,"")},Dd=function(n){try{return Cd.decodeString(n,!0)}catch(e){console.error("base64Decode failed: ",e)}return null};function JV(n){return ZV(void 0,n)}function ZV(n,e){if(!(e instanceof Object))return e;switch(e.constructor){case Date:let r=e;return new Date(r.getTime());case Object:n===void 0&&(n={});break;case Array:n=[];break;default:return e}for(let r in e)!e.hasOwnProperty(r)||!_Q(r)||(n[r]=ZV(n[r],e[r]));return n}function _Q(n){return n!=="__proto__"}function zT(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("Unable to locate global object.")}var TQ=()=>zT().__FIREBASE_DEFAULTS__,IQ=()=>{if(typeof process>"u"||typeof process.env>"u")return;let n=process.env.__FIREBASE_DEFAULTS__;if(n)return JSON.parse(n)},vQ=()=>{if(typeof document>"u")return;let n;try{n=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}let e=n&&Dd(n[1]);return e&&JSON.parse(e)},qT=()=>{try{return KV()||TQ()||IQ()||vQ()}catch(n){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${n}`);return}},eB=n=>{var e,r;return(r=(e=qT())===null||e===void 0?void 0:e.emulatorHosts)===null||r===void 0?void 0:r[n]},Nd=n=>{let e=eB(n);if(!e)return;let r=e.lastIndexOf(":");if(r<=0||r+1===e.length)throw new Error(`Invalid host ${e} with no separate hostname and port!`);let t=parseInt(e.substring(r+1),10);return e[0]==="["?[e.substring(1,r-1),t]:[e.substring(0,r),t]},kC=()=>{var n;return(n=qT())===null||n===void 0?void 0:n.config},tB=n=>{var e;return(e=qT())===null||e===void 0?void 0:e[`_${n}`]};var Nn=class{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((e,r)=>{this.resolve=e,this.reject=r})}wrapCallback(e){return(r,t)=>{r?this.reject(r):this.resolve(t),typeof e=="function"&&(this.promise.catch(()=>{}),e.length===1?e(r):e(r,t))}}};function Hr(n){try{return(n.startsWith("http://")||n.startsWith("https://")?new URL(n).hostname:n).endsWith(".cloudworkstations.dev")}catch{return!1}}function ha(n){return I(this,null,function*(){return(yield fetch(n,{credentials:"include"})).ok})}function KT(n,e){if(n.uid)throw new Error('The "uid" field is no longer supported by mockUserToken. Please use "sub" instead for Firebase Auth User ID.');let r={alg:"none",type:"JWT"},t=e||"demo-project",i=n.iat||0,o=n.sub||n.user_id;if(!o)throw new Error("mockUserToken must contain 'sub' or 'user_id' field!");let s=Object.assign({iss:`https://securetoken.google.com/${t}`,aud:t,iat:i,exp:i+3600,auth_time:i,sub:o,user_id:o,firebase:{sign_in_provider:"custom",identities:{}}},n);return[Og(JSON.stringify(r)),Og(JSON.stringify(s)),""].join(".")}var Ng={};function yQ(){let n={prod:[],emulator:[]};for(let e of Object.keys(Ng))Ng[e]?n.emulator.push(e):n.prod.push(e);return n}function SQ(n){let e=document.getElementById(n),r=!1;return e||(e=document.createElement("div"),e.setAttribute("id",n),r=!0),{created:r,element:e}}var YV=!1;function sl(n,e){if(typeof window>"u"||typeof document>"u"||!Hr(window.location.host)||Ng[n]===e||Ng[n]||YV)return;Ng[n]=e;function r(f){return`__firebase__banner__${f}`}let t="__firebase__banner",o=yQ().prod.length>0;function s(){let f=document.getElementById(t);f&&f.remove()}function a(f){f.style.display="flex",f.style.background="#7faaf0",f.style.position="fixed",f.style.bottom="5px",f.style.left="5px",f.style.padding=".5em",f.style.borderRadius="5px",f.style.alignItems="center"}function c(f,g){f.setAttribute("width","24"),f.setAttribute("id",g),f.setAttribute("height","24"),f.setAttribute("viewBox","0 0 24 24"),f.setAttribute("fill","none"),f.style.marginLeft="-6px"}function l(){let f=document.createElement("span");return f.style.cursor="pointer",f.style.marginLeft="16px",f.style.fontSize="24px",f.innerHTML=" &times;",f.onclick=()=>{YV=!0,s()},f}function u(f,g){f.setAttribute("id",g),f.innerText="Learn more",f.href="https://firebase.google.com/docs/studio/preview-apps#preview-backend",f.setAttribute("target","__blank"),f.style.paddingLeft="5px",f.style.textDecoration="underline"}function d(){let f=SQ(t),g=r("text"),p=document.getElementById(g)||document.createElement("span"),_=r("learnmore"),T=document.getElementById(_)||document.createElement("a"),D=r("preprendIcon"),b=document.getElementById(D)||document.createElementNS("http://www.w3.org/2000/svg","svg");if(f.created){let G=f.element;a(G),u(T,_);let M=l();c(b,D),G.append(b,p,T,M),document.body.appendChild(G)}o?(p.innerText="Preview backend disconnected.",b.innerHTML=`<g clip-path="url(#clip0_6013_33858)">
125
- <path d="M4.8 17.6L12 5.6L19.2 17.6H4.8ZM6.91667 16.4H17.0833L12 7.93333L6.91667 16.4ZM12 15.6C12.1667 15.6 12.3056 15.5444 12.4167 15.4333C12.5389 15.3111 12.6 15.1667 12.6 15C12.6 14.8333 12.5389 14.6944 12.4167 14.5833C12.3056 14.4611 12.1667 14.4 12 14.4C11.8333 14.4 11.6889 14.4611 11.5667 14.5833C11.4556 14.6944 11.4 14.8333 11.4 15C11.4 15.1667 11.4556 15.3111 11.5667 15.4333C11.6889 15.5444 11.8333 15.6 12 15.6ZM11.4 13.6H12.6V10.4H11.4V13.6Z" fill="#212121"/>
126
- </g>
127
- <defs>
128
- <clipPath id="clip0_6013_33858">
129
- <rect width="24" height="24" fill="white"/>
130
- </clipPath>
131
- </defs>`):(b.innerHTML=`<g clip-path="url(#clip0_6083_34804)">
132
- <path d="M11.4 15.2H12.6V11.2H11.4V15.2ZM12 10C12.1667 10 12.3056 9.94444 12.4167 9.83333C12.5389 9.71111 12.6 9.56667 12.6 9.4C12.6 9.23333 12.5389 9.09444 12.4167 8.98333C12.3056 8.86111 12.1667 8.8 12 8.8C11.8333 8.8 11.6889 8.86111 11.5667 8.98333C11.4556 9.09444 11.4 9.23333 11.4 9.4C11.4 9.56667 11.4556 9.71111 11.5667 9.83333C11.6889 9.94444 11.8333 10 12 10ZM12 18.4C11.1222 18.4 10.2944 18.2333 9.51667 17.9C8.73889 17.5667 8.05556 17.1111 7.46667 16.5333C6.88889 15.9444 6.43333 15.2611 6.1 14.4833C5.76667 13.7056 5.6 12.8778 5.6 12C5.6 11.1111 5.76667 10.2833 6.1 9.51667C6.43333 8.73889 6.88889 8.06111 7.46667 7.48333C8.05556 6.89444 8.73889 6.43333 9.51667 6.1C10.2944 5.76667 11.1222 5.6 12 5.6C12.8889 5.6 13.7167 5.76667 14.4833 6.1C15.2611 6.43333 15.9389 6.89444 16.5167 7.48333C17.1056 8.06111 17.5667 8.73889 17.9 9.51667C18.2333 10.2833 18.4 11.1111 18.4 12C18.4 12.8778 18.2333 13.7056 17.9 14.4833C17.5667 15.2611 17.1056 15.9444 16.5167 16.5333C15.9389 17.1111 15.2611 17.5667 14.4833 17.9C13.7167 18.2333 12.8889 18.4 12 18.4ZM12 17.2C13.4444 17.2 14.6722 16.6944 15.6833 15.6833C16.6944 14.6722 17.2 13.4444 17.2 12C17.2 10.5556 16.6944 9.32778 15.6833 8.31667C14.6722 7.30555 13.4444 6.8 12 6.8C10.5556 6.8 9.32778 7.30555 8.31667 8.31667C7.30556 9.32778 6.8 10.5556 6.8 12C6.8 13.4444 7.30556 14.6722 8.31667 15.6833C9.32778 16.6944 10.5556 17.2 12 17.2Z" fill="#212121"/>
133
- </g>
134
- <defs>
135
- <clipPath id="clip0_6083_34804">
136
- <rect width="24" height="24" fill="white"/>
137
- </clipPath>
138
- </defs>`,p.innerText="Preview backend running in this workspace."),p.setAttribute("id",g)}document.readyState==="loading"?window.addEventListener("DOMContentLoaded",d):d()}function En(){return typeof navigator<"u"&&typeof navigator.userAgent=="string"?navigator.userAgent:""}function wg(){return typeof window<"u"&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(En())}function nB(){var n;let e=(n=qT())===null||n===void 0?void 0:n.forceEnvironment;if(e==="node")return!0;if(e==="browser")return!1;try{return Object.prototype.toString.call(global.process)==="[object process]"}catch{return!1}}function rB(){return typeof navigator<"u"&&navigator.userAgent==="Cloudflare-Workers"}function iB(){let n=typeof chrome=="object"?chrome.runtime:typeof browser=="object"?browser.runtime:void 0;return typeof n=="object"&&n.id!==void 0}function YT(){return typeof navigator=="object"&&navigator.product==="ReactNative"}function oB(){let n=En();return n.indexOf("MSIE ")>=0||n.indexOf("Trident/")>=0}function Lo(){return MC.NODE_CLIENT===!0||MC.NODE_ADMIN===!0}function UC(){return!nB()&&!!navigator.userAgent&&navigator.userAgent.includes("Safari")&&!navigator.userAgent.includes("Chrome")}function VC(){return!nB()&&!!navigator.userAgent&&(navigator.userAgent.includes("Safari")||navigator.userAgent.includes("WebKit"))&&!navigator.userAgent.includes("Chrome")}function Od(){try{return typeof indexedDB=="object"}catch{return!1}}function sB(){return new Promise((n,e)=>{try{let r=!0,t="validate-browser-context-for-indexeddb-analytics-module",i=self.indexedDB.open(t);i.onsuccess=()=>{i.result.close(),r||self.indexedDB.deleteDatabase(t),n(!0)},i.onupgradeneeded=()=>{r=!1},i.onerror=()=>{var o;e(((o=i.error)===null||o===void 0?void 0:o.message)||"")}}catch(r){e(r)}})}var AQ="FirebaseError",vr=class n extends Error{constructor(e,r,t){super(r),this.code=e,this.customData=t,this.name=AQ,Object.setPrototypeOf(this,n.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,Ui.prototype.create)}},Ui=class{constructor(e,r,t){this.service=e,this.serviceName=r,this.errors=t}create(e,...r){let t=r[0]||{},i=`${this.service}/${e}`,o=this.errors[e],s=o?DQ(o,t):"Error",a=`${this.serviceName}: ${s} (${i}).`;return new vr(i,a,t)}};function DQ(n,e){return n.replace(RQ,(r,t)=>{let i=e[t];return i!=null?String(i):`<${t}?>`})}var RQ=/\{\$([^}]+)}/g;function Rd(n){return JSON.parse(n)}function rn(n){return JSON.stringify(n)}var aB=function(n){let e={},r={},t={},i="";try{let o=n.split(".");e=Rd(Dd(o[0])||""),r=Rd(Dd(o[1])||""),i=o[2],t=r.d||{},delete r.d}catch{}return{header:e,claims:r,data:t,signature:i}};var cB=function(n){let e=aB(n),r=e.claims;return!!r&&typeof r=="object"&&r.hasOwnProperty("iat")},lB=function(n){let e=aB(n).claims;return typeof e=="object"&&e.admin===!0};function hi(n,e){return Object.prototype.hasOwnProperty.call(n,e)}function fa(n,e){if(Object.prototype.hasOwnProperty.call(n,e))return n[e]}function bg(n){for(let e in n)if(Object.prototype.hasOwnProperty.call(n,e))return!1;return!0}function Lg(n,e,r){let t={};for(let i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=e.call(r,n[i],i,n));return t}function Vi(n,e){if(n===e)return!0;let r=Object.keys(n),t=Object.keys(e);for(let i of r){if(!t.includes(i))return!1;let o=n[i],s=e[i];if(QV(o)&&QV(s)){if(!Vi(o,s))return!1}else if(o!==s)return!1}for(let i of t)if(!r.includes(i))return!1;return!0}function QV(n){return n!==null&&typeof n=="object"}function Mg(n){let e=[];for(let[r,t]of Object.entries(n))Array.isArray(t)?t.forEach(i=>{e.push(encodeURIComponent(r)+"="+encodeURIComponent(i))}):e.push(encodeURIComponent(r)+"="+encodeURIComponent(t));return e.length?"&"+e.join("&"):""}var WT=class{constructor(){this.chain_=[],this.buf_=[],this.W_=[],this.pad_=[],this.inbuf_=0,this.total_=0,this.blockSize=512/8,this.pad_[0]=128;for(let e=1;e<this.blockSize;++e)this.pad_[e]=0;this.reset()}reset(){this.chain_[0]=1732584193,this.chain_[1]=4023233417,this.chain_[2]=2562383102,this.chain_[3]=271733878,this.chain_[4]=3285377520,this.inbuf_=0,this.total_=0}compress_(e,r){r||(r=0);let t=this.W_;if(typeof e=="string")for(let d=0;d<16;d++)t[d]=e.charCodeAt(r)<<24|e.charCodeAt(r+1)<<16|e.charCodeAt(r+2)<<8|e.charCodeAt(r+3),r+=4;else for(let d=0;d<16;d++)t[d]=e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3],r+=4;for(let d=16;d<80;d++){let f=t[d-3]^t[d-8]^t[d-14]^t[d-16];t[d]=(f<<1|f>>>31)&4294967295}let i=this.chain_[0],o=this.chain_[1],s=this.chain_[2],a=this.chain_[3],c=this.chain_[4],l,u;for(let d=0;d<80;d++){d<40?d<20?(l=a^o&(s^a),u=1518500249):(l=o^s^a,u=1859775393):d<60?(l=o&s|a&(o|s),u=2400959708):(l=o^s^a,u=3395469782);let f=(i<<5|i>>>27)+l+c+u+t[d]&4294967295;c=a,a=s,s=(o<<30|o>>>2)&4294967295,o=i,i=f}this.chain_[0]=this.chain_[0]+i&4294967295,this.chain_[1]=this.chain_[1]+o&4294967295,this.chain_[2]=this.chain_[2]+s&4294967295,this.chain_[3]=this.chain_[3]+a&4294967295,this.chain_[4]=this.chain_[4]+c&4294967295}update(e,r){if(e==null)return;r===void 0&&(r=e.length);let t=r-this.blockSize,i=0,o=this.buf_,s=this.inbuf_;for(;i<r;){if(s===0)for(;i<=t;)this.compress_(e,i),i+=this.blockSize;if(typeof e=="string"){for(;i<r;)if(o[s]=e.charCodeAt(i),++s,++i,s===this.blockSize){this.compress_(o),s=0;break}}else for(;i<r;)if(o[s]=e[i],++s,++i,s===this.blockSize){this.compress_(o),s=0;break}}this.inbuf_=s,this.total_+=r}digest(){let e=[],r=this.total_*8;this.inbuf_<56?this.update(this.pad_,56-this.inbuf_):this.update(this.pad_,this.blockSize-(this.inbuf_-56));for(let i=this.blockSize-1;i>=56;i--)this.buf_[i]=r&255,r/=256;this.compress_(this.buf_);let t=0;for(let i=0;i<5;i++)for(let o=24;o>=0;o-=8)e[t]=this.chain_[i]>>o&255,++t;return e}};function uB(n,e){let r=new xC(n,e);return r.subscribe.bind(r)}var xC=class{constructor(e,r){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=r,this.task.then(()=>{e(this)}).catch(t=>{this.error(t)})}next(e){this.forEachObserver(r=>{r.next(e)})}error(e){this.forEachObserver(r=>{r.error(e)}),this.close(e)}complete(){this.forEachObserver(e=>{e.complete()}),this.close()}subscribe(e,r,t){let i;if(e===void 0&&r===void 0&&t===void 0)throw new Error("Missing Observer.");CQ(e,["next","error","complete"])?i=e:i={next:e,error:r,complete:t},i.next===void 0&&(i.next=LC),i.error===void 0&&(i.error=LC),i.complete===void 0&&(i.complete=LC);let o=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then(()=>{try{this.finalError?i.error(this.finalError):i.complete()}catch{}}),this.observers.push(i),o}unsubscribeOne(e){this.observers===void 0||this.observers[e]===void 0||(delete this.observers[e],this.observerCount-=1,this.observerCount===0&&this.onNoObservers!==void 0&&this.onNoObservers(this))}forEachObserver(e){if(!this.finalized)for(let r=0;r<this.observers.length;r++)this.sendOne(r,e)}sendOne(e,r){this.task.then(()=>{if(this.observers!==void 0&&this.observers[e]!==void 0)try{r(this.observers[e])}catch(t){typeof console<"u"&&console.error&&console.error(t)}})}close(e){this.finalized||(this.finalized=!0,e!==void 0&&(this.finalError=e),this.task.then(()=>{this.observers=void 0,this.onNoObservers=void 0}))}};function CQ(n,e){if(typeof n!="object"||n===null)return!1;for(let r of e)if(r in n&&typeof n[r]=="function")return!0;return!1}function LC(){}function ga(n,e){return`${n} failed: ${e} argument `}var dB=function(n){let e=[],r=0;for(let t=0;t<n.length;t++){let i=n.charCodeAt(t);if(i>=55296&&i<=56319){let o=i-55296;t++,ee(t<n.length,"Surrogate pair missing trail surrogate.");let s=n.charCodeAt(t)-56320;i=65536+(o<<10)+s}i<128?e[r++]=i:i<2048?(e[r++]=i>>6|192,e[r++]=i&63|128):i<65536?(e[r++]=i>>12|224,e[r++]=i>>6&63|128,e[r++]=i&63|128):(e[r++]=i>>18|240,e[r++]=i>>12&63|128,e[r++]=i>>6&63|128,e[r++]=i&63|128)}return e},Pg=function(n){let e=0;for(let r=0;r<n.length;r++){let t=n.charCodeAt(r);t<128?e++:t<2048?e+=2:t>=55296&&t<=56319?(e+=4,r++):e+=3}return e};var Vwe=14400*1e3;function Ge(n){return n&&n._delegate?n._delegate:n}var _n=class{constructor(e,r,t){this.name=e,this.instanceFactory=r,this.type=t,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}};var al="[DEFAULT]";var QT=class{constructor(e,r){this.name=e,this.container=r,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(e){let r=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(r)){let t=new Nn;if(this.instancesDeferred.set(r,t),this.isInitialized(r)||this.shouldAutoInitialize())try{let i=this.getOrInitializeService({instanceIdentifier:r});i&&t.resolve(i)}catch{}}return this.instancesDeferred.get(r).promise}getImmediate(e){var r;let t=this.normalizeInstanceIdentifier(e?.identifier),i=(r=e?.optional)!==null&&r!==void 0?r:!1;if(this.isInitialized(t)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:t})}catch(o){if(i)return null;throw o}else{if(i)return null;throw Error(`Service ${this.name} is not available`)}}getComponent(){return this.component}setComponent(e){if(e.name!==this.name)throw Error(`Mismatching Component ${e.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=e,!!this.shouldAutoInitialize()){if(OQ(e))try{this.getOrInitializeService({instanceIdentifier:al})}catch{}for(let[r,t]of this.instancesDeferred.entries()){let i=this.normalizeInstanceIdentifier(r);try{let o=this.getOrInitializeService({instanceIdentifier:i});t.resolve(o)}catch{}}}}clearInstance(e=al){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}delete(){return I(this,null,function*(){let e=Array.from(this.instances.values());yield Promise.all([...e.filter(r=>"INTERNAL"in r).map(r=>r.INTERNAL.delete()),...e.filter(r=>"_delete"in r).map(r=>r._delete())])})}isComponentSet(){return this.component!=null}isInitialized(e=al){return this.instances.has(e)}getOptions(e=al){return this.instancesOptions.get(e)||{}}initialize(e={}){let{options:r={}}=e,t=this.normalizeInstanceIdentifier(e.instanceIdentifier);if(this.isInitialized(t))throw Error(`${this.name}(${t}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);let i=this.getOrInitializeService({instanceIdentifier:t,options:r});for(let[o,s]of this.instancesDeferred.entries()){let a=this.normalizeInstanceIdentifier(o);t===a&&s.resolve(i)}return i}onInit(e,r){var t;let i=this.normalizeInstanceIdentifier(r),o=(t=this.onInitCallbacks.get(i))!==null&&t!==void 0?t:new Set;o.add(e),this.onInitCallbacks.set(i,o);let s=this.instances.get(i);return s&&e(s,i),()=>{o.delete(e)}}invokeOnInitCallbacks(e,r){let t=this.onInitCallbacks.get(r);if(t)for(let i of t)try{i(e,r)}catch{}}getOrInitializeService({instanceIdentifier:e,options:r={}}){let t=this.instances.get(e);if(!t&&this.component&&(t=this.component.instanceFactory(this.container,{instanceIdentifier:NQ(e),options:r}),this.instances.set(e,t),this.instancesOptions.set(e,r),this.invokeOnInitCallbacks(t,e),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,e,t)}catch{}return t||null}normalizeInstanceIdentifier(e=al){return this.component?this.component.multipleInstances?e:al:e}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!=="EXPLICIT"}};function NQ(n){return n===al?void 0:n}function OQ(n){return n.instantiationMode==="EAGER"}var xg=class{constructor(e){this.name=e,this.providers=new Map}addComponent(e){let r=this.getProvider(e.name);if(r.isComponentSet())throw new Error(`Component ${e.name} has already been registered with ${this.name}`);r.setComponent(e)}addOrOverwriteComponent(e){this.getProvider(e.name).isComponentSet()&&this.providers.delete(e.name),this.addComponent(e)}getProvider(e){if(this.providers.has(e))return this.providers.get(e);let r=new QT(e,this);return this.providers.set(e,r),r}getProviders(){return Array.from(this.providers.values())}};var hB=[],Fe=(function(n){return n[n.DEBUG=0]="DEBUG",n[n.VERBOSE=1]="VERBOSE",n[n.INFO=2]="INFO",n[n.WARN=3]="WARN",n[n.ERROR=4]="ERROR",n[n.SILENT=5]="SILENT",n})(Fe||{}),wQ={debug:Fe.DEBUG,verbose:Fe.VERBOSE,info:Fe.INFO,warn:Fe.WARN,error:Fe.ERROR,silent:Fe.SILENT},bQ=Fe.INFO,LQ={[Fe.DEBUG]:"log",[Fe.VERBOSE]:"log",[Fe.INFO]:"info",[Fe.WARN]:"warn",[Fe.ERROR]:"error"},MQ=(n,e,...r)=>{if(e<n.logLevel)return;let t=new Date().toISOString(),i=LQ[e];if(i)console[i](`[${t}] ${n.name}:`,...r);else throw new Error(`Attempted to log a message with an invalid logType (value: ${e})`)},fi=class{constructor(e){this.name=e,this._logLevel=bQ,this._logHandler=MQ,this._userLogHandler=null,hB.push(this)}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in Fe))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel=typeof e=="string"?wQ[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if(typeof e!="function")throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,Fe.DEBUG,...e),this._logHandler(this,Fe.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,Fe.VERBOSE,...e),this._logHandler(this,Fe.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,Fe.INFO,...e),this._logHandler(this,Fe.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,Fe.WARN,...e),this._logHandler(this,Fe.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,Fe.ERROR,...e),this._logHandler(this,Fe.ERROR,...e)}};function fB(n){hB.forEach(e=>{e.setLogLevel(n)})}var PQ=(n,e)=>e.some(r=>n instanceof r),gB,mB;function xQ(){return gB||(gB=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function FQ(){return mB||(mB=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}var pB=new WeakMap,GC=new WeakMap,EB=new WeakMap,BC=new WeakMap,jC=new WeakMap;function kQ(n){let e=new Promise((r,t)=>{let i=()=>{n.removeEventListener("success",o),n.removeEventListener("error",s)},o=()=>{r(Mo(n.result)),i()},s=()=>{t(n.error),i()};n.addEventListener("success",o),n.addEventListener("error",s)});return e.then(r=>{r instanceof IDBCursor&&pB.set(r,n)}).catch(()=>{}),jC.set(e,n),e}function UQ(n){if(GC.has(n))return;let e=new Promise((r,t)=>{let i=()=>{n.removeEventListener("complete",o),n.removeEventListener("error",s),n.removeEventListener("abort",s)},o=()=>{r(),i()},s=()=>{t(n.error||new DOMException("AbortError","AbortError")),i()};n.addEventListener("complete",o),n.addEventListener("error",s),n.addEventListener("abort",s)});GC.set(n,e)}var $C={get(n,e,r){if(n instanceof IDBTransaction){if(e==="done")return GC.get(n);if(e==="objectStoreNames")return n.objectStoreNames||EB.get(n);if(e==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Mo(n[e])},set(n,e,r){return n[e]=r,!0},has(n,e){return n instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in n}};function _B(n){$C=n($C)}function VQ(n){return n===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...r){let t=n.call(XT(this),e,...r);return EB.set(t,e.sort?e.sort():[e]),Mo(t)}:FQ().includes(n)?function(...e){return n.apply(XT(this),e),Mo(pB.get(this))}:function(...e){return Mo(n.apply(XT(this),e))}}function BQ(n){return typeof n=="function"?VQ(n):(n instanceof IDBTransaction&&UQ(n),PQ(n,xQ())?new Proxy(n,$C):n)}function Mo(n){if(n instanceof IDBRequest)return kQ(n);if(BC.has(n))return BC.get(n);let e=BQ(n);return e!==n&&(BC.set(n,e),jC.set(e,n)),e}var XT=n=>jC.get(n);function IB(n,e,{blocked:r,upgrade:t,blocking:i,terminated:o}={}){let s=indexedDB.open(n,e),a=Mo(s);return t&&s.addEventListener("upgradeneeded",c=>{t(Mo(s.result),c.oldVersion,c.newVersion,Mo(s.transaction),c)}),r&&s.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),a.then(c=>{o&&c.addEventListener("close",()=>o()),i&&c.addEventListener("versionchange",l=>i(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}var GQ=["get","getKey","getAll","getAllKeys","count"],$Q=["put","add","delete","clear"],HC=new Map;function TB(n,e){if(!(n instanceof IDBDatabase&&!(e in n)&&typeof e=="string"))return;if(HC.get(e))return HC.get(e);let r=e.replace(/FromIndex$/,""),t=e!==r,i=$Q.includes(r);if(!(r in(t?IDBIndex:IDBObjectStore).prototype)||!(i||GQ.includes(r)))return;let o=function(s,...a){return I(this,null,function*(){let c=this.transaction(s,i?"readwrite":"readonly"),l=c.store;return t&&(l=l.index(a.shift())),(yield Promise.all([l[r](...a),i&&c.done]))[0]})};return HC.set(e,o),o}_B(n=>le(x({},n),{get:(e,r,t)=>TB(e,r)||n.get(e,r,t),has:(e,r)=>!!TB(e,r)||n.has(e,r)}));var zC=class{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(r=>{if(jQ(r)){let t=r.getImmediate();return`${t.library}/${t.version}`}else return null}).filter(r=>r).join(" ")}};function jQ(n){let e=n.getComponent();return e?.type==="VERSION"}var qC="@firebase/app",vB="0.13.2";var Is=new fi("@firebase/app"),HQ="@firebase/app-compat",WQ="@firebase/analytics-compat",zQ="@firebase/analytics",qQ="@firebase/app-check-compat",KQ="@firebase/app-check",YQ="@firebase/auth",QQ="@firebase/auth-compat",XQ="@firebase/database",JQ="@firebase/data-connect",ZQ="@firebase/database-compat",eX="@firebase/functions",tX="@firebase/functions-compat",nX="@firebase/installations",rX="@firebase/installations-compat",iX="@firebase/messaging",oX="@firebase/messaging-compat",sX="@firebase/performance",aX="@firebase/performance-compat",cX="@firebase/remote-config",lX="@firebase/remote-config-compat",uX="@firebase/storage",dX="@firebase/storage-compat",hX="@firebase/firestore",fX="@firebase/ai",gX="@firebase/firestore-compat",mX="firebase",pX="11.10.0";var KC="[DEFAULT]",EX={[qC]:"fire-core",[HQ]:"fire-core-compat",[zQ]:"fire-analytics",[WQ]:"fire-analytics-compat",[KQ]:"fire-app-check",[qQ]:"fire-app-check-compat",[YQ]:"fire-auth",[QQ]:"fire-auth-compat",[XQ]:"fire-rtdb",[JQ]:"fire-data-connect",[ZQ]:"fire-rtdb-compat",[eX]:"fire-fn",[tX]:"fire-fn-compat",[nX]:"fire-iid",[rX]:"fire-iid-compat",[iX]:"fire-fcm",[oX]:"fire-fcm-compat",[sX]:"fire-perf",[aX]:"fire-perf-compat",[cX]:"fire-rc",[lX]:"fire-rc-compat",[uX]:"fire-gcs",[dX]:"fire-gcs-compat",[hX]:"fire-fst",[gX]:"fire-fst-compat",[fX]:"fire-vertex","fire-js":"fire-js",[mX]:"fire-js-all"};var Fg=new Map,_X=new Map,YC=new Map;function yB(n,e){try{n.container.addComponent(e)}catch(r){Is.debug(`Component ${e.name} failed to register with FirebaseApp ${n.name}`,r)}}function ur(n){let e=n.name;if(YC.has(e))return Is.debug(`There were multiple attempts to register component ${e}.`),!1;YC.set(e,n);for(let r of Fg.values())yB(r,n);for(let r of _X.values())yB(r,n);return!0}function Po(n,e){let r=n.container.getProvider("heartbeat").getImmediate({optional:!0});return r&&r.triggerHeartbeat(),n.container.getProvider(e)}function yr(n){return n==null?!1:n.settings!==void 0}var TX={"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}'","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","server-app-deleted":"Firebase Server App has been deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invalid-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.","finalization-registry-not-supported":"FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.","invalid-server-app-environment":"FirebaseServerApp is not for use in browser environments."},ma=new Ui("app","Firebase",TX);var QC=class{constructor(e,r,t){this._isDeleted=!1,this._options=Object.assign({},e),this._config=Object.assign({},r),this._name=r.name,this._automaticDataCollectionEnabled=r.automaticDataCollectionEnabled,this._container=t,this.container.addComponent(new _n("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw ma.create("app-deleted",{appName:this._name})}};var pa=pX;function ZC(n,e={}){let r=n;typeof e!="object"&&(e={name:e});let t=Object.assign({name:KC,automaticDataCollectionEnabled:!0},e),i=t.name;if(typeof i!="string"||!i)throw ma.create("bad-app-name",{appName:String(i)});if(r||(r=kC()),!r)throw ma.create("no-options");let o=Fg.get(i);if(o){if(Vi(r,o.options)&&Vi(t,o.config))return o;throw ma.create("duplicate-app",{appName:i})}let s=new xg(i);for(let c of YC.values())s.addComponent(c);let a=new QC(r,t,s);return Fg.set(i,a),a}function Sr(n=KC){let e=Fg.get(n);if(!e&&n===KC&&kC())return ZC();if(!e)throw ma.create("no-app",{appName:n});return e}function JT(){return Array.from(Fg.values())}function Qe(n,e,r){var t;let i=(t=EX[n])!==null&&t!==void 0?t:n;r&&(i+=`-${r}`);let o=i.match(/\s|\//),s=e.match(/\s|\//);if(o||s){let a=[`Unable to register library "${i}" with version "${e}":`];o&&a.push(`library name "${i}" contains illegal characters (whitespace or "/")`),o&&s&&a.push("and"),s&&a.push(`version name "${e}" contains illegal characters (whitespace or "/")`),Is.warn(a.join(" "));return}ur(new _n(`${i}-version`,()=>({library:i,version:e}),"VERSION"))}function IX(n){fB(n)}var vX="firebase-heartbeat-database",yX=1,kg="firebase-heartbeat-store",WC=null;function RB(){return WC||(WC=IB(vX,yX,{upgrade:(n,e)=>{switch(e){case 0:try{n.createObjectStore(kg)}catch(r){console.warn(r)}}}}).catch(n=>{throw ma.create("idb-open",{originalErrorMessage:n.message})})),WC}function SX(n){return I(this,null,function*(){try{let r=(yield RB()).transaction(kg),t=yield r.objectStore(kg).get(CB(n));return yield r.done,t}catch(e){if(e instanceof vr)Is.warn(e.message);else{let r=ma.create("idb-get",{originalErrorMessage:e?.message});Is.warn(r.message)}}})}function SB(n,e){return I(this,null,function*(){try{let t=(yield RB()).transaction(kg,"readwrite");yield t.objectStore(kg).put(e,CB(n)),yield t.done}catch(r){if(r instanceof vr)Is.warn(r.message);else{let t=ma.create("idb-set",{originalErrorMessage:r?.message});Is.warn(t.message)}}})}function CB(n){return`${n.name}!${n.options.appId}`}var AX=1024,DX=30,XC=class{constructor(e){this.container=e,this._heartbeatsCache=null;let r=this.container.getProvider("app").getImmediate();this._storage=new JC(r),this._heartbeatsCachePromise=this._storage.read().then(t=>(this._heartbeatsCache=t,t))}triggerHeartbeat(){return I(this,null,function*(){var e,r;try{let i=this.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),o=AB();if(((e=this._heartbeatsCache)===null||e===void 0?void 0:e.heartbeats)==null&&(this._heartbeatsCache=yield this._heartbeatsCachePromise,((r=this._heartbeatsCache)===null||r===void 0?void 0:r.heartbeats)==null)||this._heartbeatsCache.lastSentHeartbeatDate===o||this._heartbeatsCache.heartbeats.some(s=>s.date===o))return;if(this._heartbeatsCache.heartbeats.push({date:o,agent:i}),this._heartbeatsCache.heartbeats.length>DX){let s=CX(this._heartbeatsCache.heartbeats);this._heartbeatsCache.heartbeats.splice(s,1)}return this._storage.overwrite(this._heartbeatsCache)}catch(t){Is.warn(t)}})}getHeartbeatsHeader(){return I(this,null,function*(){var e;try{if(this._heartbeatsCache===null&&(yield this._heartbeatsCachePromise),((e=this._heartbeatsCache)===null||e===void 0?void 0:e.heartbeats)==null||this._heartbeatsCache.heartbeats.length===0)return"";let r=AB(),{heartbeatsToSend:t,unsentEntries:i}=RX(this._heartbeatsCache.heartbeats),o=Og(JSON.stringify({version:2,heartbeats:t}));return this._heartbeatsCache.lastSentHeartbeatDate=r,i.length>0?(this._heartbeatsCache.heartbeats=i,yield this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),o}catch(r){return Is.warn(r),""}})}};function AB(){return new Date().toISOString().substring(0,10)}function RX(n,e=AX){let r=[],t=n.slice();for(let i of n){let o=r.find(s=>s.agent===i.agent);if(o){if(o.dates.push(i.date),DB(r)>e){o.dates.pop();break}}else if(r.push({agent:i.agent,dates:[i.date]}),DB(r)>e){r.pop();break}t=t.slice(1)}return{heartbeatsToSend:r,unsentEntries:t}}var JC=class{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}runIndexedDBEnvironmentCheck(){return I(this,null,function*(){return Od()?sB().then(()=>!0).catch(()=>!1):!1})}read(){return I(this,null,function*(){if(yield this._canUseIndexedDBPromise){let r=yield SX(this.app);return r?.heartbeats?r:{heartbeats:[]}}else return{heartbeats:[]}})}overwrite(e){return I(this,null,function*(){var r;if(yield this._canUseIndexedDBPromise){let i=yield this.read();return SB(this.app,{lastSentHeartbeatDate:(r=e.lastSentHeartbeatDate)!==null&&r!==void 0?r:i.lastSentHeartbeatDate,heartbeats:e.heartbeats})}else return})}add(e){return I(this,null,function*(){var r;if(yield this._canUseIndexedDBPromise){let i=yield this.read();return SB(this.app,{lastSentHeartbeatDate:(r=e.lastSentHeartbeatDate)!==null&&r!==void 0?r:i.lastSentHeartbeatDate,heartbeats:[...i.heartbeats,...e.heartbeats]})}else return})}};function DB(n){return Og(JSON.stringify({version:2,heartbeats:n})).length}function CX(n){if(n.length===0)return-1;let e=0,r=n[0].date;for(let t=1;t<n.length;t++)n[t].date<r&&(r=n[t].date,e=t);return e}function NX(n){ur(new _n("platform-logger",e=>new zC(e),"PRIVATE")),ur(new _n("heartbeat",e=>new XC(e),"PRIVATE")),Qe(qC,vB,n),Qe(qC,vB,"esm2017"),Qe("fire-js","")}NX("");var OX="firebase",wX="11.10.0";Qe(OX,wX,"app");function pbe(n){n||(n=ne(cr));let e=new ge(r=>{if(n.destroyed){r.next();return}return n.onDestroy(r.next.bind(r))});return r=>r.pipe(qs(e))}function Ebe(n,e){let r=e?.injector??ne(St),t=new Ac(1),i=xR(()=>{let o;try{o=n()}catch(s){rg(()=>t.error(s));return}rg(()=>t.next(o))},{injector:r,manualCleanup:!0});return r.get(cr).onDestroy(()=>{i.destroy(),t.complete()}),t.asObservable()}function _be(n,e){let t=!e?.manualCleanup?e?.injector?.get(cr)??ne(cr):null,i=bX(e?.equal),o;e?.requireSync?o=jc({kind:0},{equal:i}):o=jc({kind:1,value:e?.initialValue},{equal:i});let s,a=n.subscribe({next:c=>o.set({kind:1,value:c}),error:c=>{o.set({kind:2,error:c}),s?.()},complete:()=>{s?.()}});if(e?.requireSync&&o().kind===0)throw new oe(601,!1);return s=t?.onDestroy(a.unsubscribe.bind(a)),ig(()=>{let c=o();switch(c.kind){case 1:return c.value;case 2:throw c.error;case 0:throw new oe(601,!1)}},{equal:e?.equal})}function bX(n=Object.is){return(e,r)=>e.kind===1&&r.kind===1&&n(e.value,r.value)}function NB(n){n===void 0&&(n=ne(St));let e=n.get(Io);return r=>new ge(t=>{let i=e.add(),o=!1;function s(){o||(i(),o=!0)}let a=r.subscribe({next:c=>{t.next(c),s()},complete:()=>{t.complete(),s()},error:c=>{t.error(c),s()}});return a.add(()=>{t.unsubscribe(),s()}),a})}var Bi=new Oc("ANGULARFIRE2_VERSION");function Ea(n,e,r){if(e){if(e.length===1)return e[0];let o=e.filter(s=>s.app===r);if(o.length===1)return o[0]}return r.container.getProvider(n).getImmediate({optional:!0})}var vs=(n,e)=>{let r=e?[e]:JT(),t=[];return r.forEach(i=>{i.container.getProvider(n).instances.forEach(s=>{t.includes(s)||t.push(s)})}),t},wd=(function(n){return n[n.SILENT=0]="SILENT",n[n.WARN=1]="WARN",n[n.VERBOSE=2]="VERBOSE",n})(wd||{}),OB=zR()&&typeof Zone<"u"?wd.WARN:wd.SILENT;var ZT=class{zone;delegate;constructor(e,r=BS){this.zone=e,this.delegate=r}now(){return this.delegate.now()}schedule(e,r,t){let i=this.zone,o=function(s){i?i.runGuarded(()=>{e.apply(this,[s])}):e.apply(this,[s])};return this.delegate.schedule(o,r,t)}},Gi=(()=>{class n{outsideAngular;insideAngular;constructor(){let r=ne(Le);this.outsideAngular=r.runOutsideAngular(()=>new ZT(typeof Zone>"u"?void 0:Zone.current)),this.insideAngular=r.run(()=>new ZT(typeof Zone>"u"?void 0:Zone.current,Hn))}static \u0275fac=function(t){return new(t||n)};static \u0275prov=K({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),wB=!1;function LX(n,e){!wB&&(OB>wd.SILENT||zR())&&(wB=!0,console.warn("Calling Firebase APIs outside of an Injection context may destabilize your application leading to subtle change-detection and hydration bugs. Find more at https://github.com/angular/angularfire/blob/main/docs/zones.md")),OB>=e&&console.warn(`Firebase API called outside injection context: ${n.name}`)}function MX(n){let e=ne(Le,{optional:!0});return e?e.runOutsideAngular(()=>n()):n()}function cl(n){let e=ne(Le,{optional:!0});return e?e.run(()=>n()):n()}var PX=(n,e,r)=>(...t)=>(e&&setTimeout(e,0),fo(r,()=>cl(()=>n.apply(void 0,t)))),pe=(n,e,r)=>(r||=e?wd.WARN:wd.VERBOSE,function(){let t,i=arguments,o,s,a;try{o=ne(Gi),s=ne(Io),a=ne(Kn)}catch{return LX(n,r),n.apply(this,i)}for(let l=0;l<arguments.length;l++)typeof i[l]=="function"&&(e&&(t||=cl(()=>s.add())),i[l]=PX(i[l],t,a));let c=MX(()=>n.apply(this,i));return e?c instanceof ge?c.pipe(Ws(o.outsideAngular),Hs(o.insideAngular),NB(a)):c instanceof Promise?cl(()=>{let l=s.add();return new Promise((u,d)=>{c.then(f=>fo(a,()=>cl(()=>u(f))),f=>fo(a,()=>cl(()=>d(f)))).finally(l)})}):typeof c=="function"&&t?function(){return setTimeout(t,0),c.apply(this,arguments)}:cl(()=>c):c instanceof ge?c.pipe(Ws(o.outsideAngular),Hs(o.insideAngular)):cl(()=>c)});var $i=class{constructor(e){return e}},ys=class{constructor(){return JT()}};function xX(n){return n&&n.length===1?n[0]:new $i(Sr())}var eN=new Z("angularfire2._apps"),FX={provide:$i,useFactory:xX,deps:[[new pn,eN]]},kX={provide:ys,deps:[[new pn,eN]]};function UX(n){return(e,r)=>{let t=r.get(hs);Qe("angularfire",Bi.full,"core"),Qe("angularfire",Bi.full,"app"),Qe("angular",ZS.full,t.toString());let i=e.runOutsideAngular(()=>n(r));return new $i(i)}}function Fbe(n,...e){return pr([FX,kX,{provide:eN,useFactory:UX(n),multi:!0,deps:[Le,St,Gi,...e]}])}var kbe=pe(Sr,!0);var Ube=pe(ZC,!0);var VX=new Map,BX={activated:!1,tokenObservers:[]},GX={initialized:!1,enabled:!1};function ji(n){return VX.get(n)||Object.assign({},BX)}function PB(){return GX}var $X="https://content-firebaseappcheck.googleapis.com/v1";var jX="exchangeDebugToken",bB={OFFSET_DURATION:300*1e3,RETRIAL_MIN_WAIT:30*1e3,RETRIAL_MAX_WAIT:960*1e3},qbe=1440*60*1e3;var rN=class{constructor(e,r,t,i,o){if(this.operation=e,this.retryPolicy=r,this.getWaitDuration=t,this.lowerBound=i,this.upperBound=o,this.pending=null,this.nextErrorWaitInterval=i,i>o)throw new Error("Proactive refresh lower bound greater than upper bound!")}start(){this.nextErrorWaitInterval=this.lowerBound,this.process(!0).catch(()=>{})}stop(){this.pending&&(this.pending.reject("cancelled"),this.pending=null)}isRunning(){return!!this.pending}process(e){return I(this,null,function*(){this.stop();try{this.pending=new Nn,this.pending.promise.catch(r=>{}),yield HX(this.getNextRun(e)),this.pending.resolve(),yield this.pending.promise,this.pending=new Nn,this.pending.promise.catch(r=>{}),yield this.operation(),this.pending.resolve(),yield this.pending.promise,this.process(!0).catch(()=>{})}catch(r){this.retryPolicy(r)?this.process(!1).catch(()=>{}):this.stop()}})}getNextRun(e){if(e)return this.nextErrorWaitInterval=this.lowerBound,this.getWaitDuration();{let r=this.nextErrorWaitInterval;return this.nextErrorWaitInterval*=2,this.nextErrorWaitInterval>this.upperBound&&(this.nextErrorWaitInterval=this.upperBound),r}}};function HX(n){return new Promise(e=>{setTimeout(e,n)})}var WX={"already-initialized":"You have already called initializeAppCheck() for FirebaseApp {$appName} with different options. To avoid this error, call initializeAppCheck() with the same options as when it was originally called. This will return the already initialized instance.","use-before-activation":"App Check is being used before initializeAppCheck() is called for FirebaseApp {$appName}. Call initializeAppCheck() before instantiating other Firebase services.","fetch-network-error":"Fetch failed to connect to a network. Check Internet connection. Original error: {$originalErrorMessage}.","fetch-parse-error":"Fetch client could not parse response. Original error: {$originalErrorMessage}.","fetch-status-error":"Fetch server returned an HTTP error status. HTTP status: {$httpStatus}.","storage-open":"Error thrown when opening storage. Original error: {$originalErrorMessage}.","storage-get":"Error thrown when reading from storage. Original error: {$originalErrorMessage}.","storage-set":"Error thrown when writing to storage. Original error: {$originalErrorMessage}.","recaptcha-error":"ReCAPTCHA error.","initial-throttle":"{$httpStatus} error. Attempts allowed again after {$time}",throttled:"Requests throttled due to previous {$httpStatus} error. Attempts allowed again after {$time}"},_a=new Ui("appCheck","AppCheck",WX);function xB(n){if(!ji(n).activated)throw _a.create("use-before-activation",{appName:n.name})}function FB(t,i){return I(this,arguments,function*({url:n,body:e},r){let o={"Content-Type":"application/json"},s=r.getImmediate({optional:!0});if(s){let g=yield s.getHeartbeatsHeader();g&&(o["X-Firebase-Client"]=g)}let a={method:"POST",body:JSON.stringify(e),headers:o},c;try{c=yield fetch(n,a)}catch(g){throw _a.create("fetch-network-error",{originalErrorMessage:g?.message})}if(c.status!==200)throw _a.create("fetch-status-error",{httpStatus:c.status});let l;try{l=yield c.json()}catch(g){throw _a.create("fetch-parse-error",{originalErrorMessage:g?.message})}let u=l.ttl.match(/^([\d.]+)(s)$/);if(!u||!u[2]||isNaN(Number(u[1])))throw _a.create("fetch-parse-error",{originalErrorMessage:`ttl field (timeToLive) is not in standard Protobuf Duration format: ${l.ttl}`});let d=Number(u[1])*1e3,f=Date.now();return{token:l.token,expireTimeMillis:f+d,issuedAtTimeMillis:f}})}function kB(n,e){let{projectId:r,appId:t,apiKey:i}=n.options;return{url:`${$X}/projects/${r}/apps/${t}:${jX}?key=${i}`,body:{debug_token:e}}}var zX="firebase-app-check-database",qX=1,iN="firebase-app-check-store";var eI=null;function KX(){return eI||(eI=new Promise((n,e)=>{try{let r=indexedDB.open(zX,qX);r.onsuccess=t=>{n(t.target.result)},r.onerror=t=>{var i;e(_a.create("storage-open",{originalErrorMessage:(i=t.target.error)===null||i===void 0?void 0:i.message}))},r.onupgradeneeded=t=>{let i=t.target.result;t.oldVersion===0&&i.createObjectStore(iN,{keyPath:"compositeKey"})}}catch(r){e(_a.create("storage-open",{originalErrorMessage:r?.message}))}}),eI)}function YX(n,e){return QX(XX(n),e)}function QX(n,e){return I(this,null,function*(){let t=(yield KX()).transaction(iN,"readwrite"),o=t.objectStore(iN).put({compositeKey:n,value:e});return new Promise((s,a)=>{o.onsuccess=c=>{s()},t.onerror=c=>{var l;a(_a.create("storage-set",{originalErrorMessage:(l=c.target.error)===null||l===void 0?void 0:l.message}))}})})}function XX(n){return`${n.options.appId}-${n.name}`}var Ug=new fi("@firebase/app-check");function tN(n,e){return Od()?YX(n,e).catch(r=>{Ug.warn(`Failed to write token to IndexedDB. Error: ${r}`)}):Promise.resolve()}function UB(){return PB().enabled}function VB(){return I(this,null,function*(){let n=PB();if(n.enabled&&n.token)return n.token.promise;throw Error(`
139
- Can't get debug token in production mode.
140
- `)})}var JX={error:"UNKNOWN_ERROR"};function ZX(n){return Cd.encodeString(JSON.stringify(n),!1)}function oN(n,e=!1,r=!1){return I(this,null,function*(){let t=n.app;xB(t);let i=ji(t),o=i.token,s;if(o&&!Vg(o)&&(i.token=void 0,o=void 0),!o){let l=yield i.cachedTokenPromise;l&&(Vg(l)?o=l:yield tN(t,void 0))}if(!e&&o&&Vg(o))return{token:o.token};let a=!1;if(UB())try{i.exchangeTokenPromise||(i.exchangeTokenPromise=FB(kB(t,yield VB()),n.heartbeatServiceProvider).finally(()=>{i.exchangeTokenPromise=void 0}),a=!0);let l=yield i.exchangeTokenPromise;return yield tN(t,l),i.token=l,{token:l.token}}catch(l){return l.code==="appCheck/throttled"||l.code==="appCheck/initial-throttle"?Ug.warn(l.message):r&&Ug.error(l),nN(l)}try{i.exchangeTokenPromise||(i.exchangeTokenPromise=i.provider.getToken().finally(()=>{i.exchangeTokenPromise=void 0}),a=!0),o=yield ji(t).exchangeTokenPromise}catch(l){l.code==="appCheck/throttled"||l.code==="appCheck/initial-throttle"?Ug.warn(l.message):r&&Ug.error(l),s=l}let c;return o?s?Vg(o)?c={token:o.token,internalError:s}:c=nN(s):(c={token:o.token},i.token=o,yield tN(t,o)):c=nN(s),a&&rJ(t,c),c})}function eJ(n){return I(this,null,function*(){let e=n.app;xB(e);let{provider:r}=ji(e);if(UB()){let t=yield VB(),{token:i}=yield FB(kB(e,t),n.heartbeatServiceProvider);return{token:i}}else{let{token:t}=yield r.getToken();return{token:t}}})}function tJ(n,e,r,t){let{app:i}=n,o=ji(i),s={next:r,error:t,type:e};if(o.tokenObservers=[...o.tokenObservers,s],o.token&&Vg(o.token)){let a=o.token;Promise.resolve().then(()=>{r({token:a.token}),LB(n)}).catch(()=>{})}o.cachedTokenPromise.then(()=>LB(n))}function BB(n,e){let r=ji(n),t=r.tokenObservers.filter(i=>i.next!==e);t.length===0&&r.tokenRefresher&&r.tokenRefresher.isRunning()&&r.tokenRefresher.stop(),r.tokenObservers=t}function LB(n){let{app:e}=n,r=ji(e),t=r.tokenRefresher;t||(t=nJ(n),r.tokenRefresher=t),!t.isRunning()&&r.isTokenAutoRefreshEnabled&&t.start()}function nJ(n){let{app:e}=n;return new rN(()=>I(null,null,function*(){let r=ji(e),t;if(r.token?t=yield oN(n,!0):t=yield oN(n),t.error)throw t.error;if(t.internalError)throw t.internalError}),()=>!0,()=>{let r=ji(e);if(r.token){let t=r.token.issuedAtTimeMillis+(r.token.expireTimeMillis-r.token.issuedAtTimeMillis)*.5+3e5,i=r.token.expireTimeMillis-300*1e3;return t=Math.min(t,i),Math.max(0,t-Date.now())}else return 0},bB.RETRIAL_MIN_WAIT,bB.RETRIAL_MAX_WAIT)}function rJ(n,e){let r=ji(n).tokenObservers;for(let t of r)try{t.type==="EXTERNAL"&&e.error!=null?t.error(e.error):t.next(e)}catch{}}function Vg(n){return n.expireTimeMillis-Date.now()>0}function nN(n){return{token:ZX(JX),error:n}}var sN=class{constructor(e,r){this.app=e,this.heartbeatServiceProvider=r}_delete(){let{tokenObservers:e}=ji(this.app);for(let r of e)BB(this.app,r.next);return Promise.resolve()}};function iJ(n,e){return new sN(n,e)}function oJ(n){return{getToken:e=>oN(n,e),getLimitedUseToken:()=>eJ(n),addTokenListener:e=>tJ(n,"INTERNAL",e),removeTokenListener:e=>BB(n.app,e)}}var sJ="@firebase/app-check",aJ="0.10.1";var cJ="app-check",MB="app-check-internal";function lJ(){ur(new _n(cJ,n=>{let e=n.getProvider("app").getImmediate(),r=n.getProvider("heartbeat");return iJ(e,r)},"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback((n,e,r)=>{n.getProvider(MB).initialize()})),ur(new _n(MB,n=>{let e=n.getProvider("app-check").getImmediate();return oJ(e)},"PUBLIC").setInstantiationMode("EXPLICIT")),Qe(sJ,aJ)}lJ();var uJ="app-check";var Ta=class{constructor(){return vs(uJ)}};var dJ=["localhost","0.0.0.0","127.0.0.1"],sLe=typeof window<"u"&&dJ.includes(window.location.hostname);function XB(){return{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}}var JB=XB,ZB=new Ui("auth","Firebase",XB());var rI=new fi("@firebase/auth");function hJ(n,...e){rI.logLevel<=Fe.WARN&&rI.warn(`Auth (${pa}): ${n}`,...e)}function nI(n,...e){rI.logLevel<=Fe.ERROR&&rI.error(`Auth (${pa}): ${n}`,...e)}function iI(n,...e){throw vN(n,...e)}function IN(n,...e){return vN(n,...e)}function eG(n,e,r){let t=Object.assign(Object.assign({},JB()),{[e]:r});return new Ui("auth","Firebase",t).create(e,{appName:n.name})}function Bg(n){return eG(n,"operation-not-supported-in-this-environment","Operations that alter the current user are not supported in conjunction with FirebaseServerApp")}function vN(n,...e){if(typeof n!="string"){let r=e[0],t=[...e.slice(1)];return t[0]&&(t[0].appName=n.name),n._errorFactory.create(r,...t)}return ZB.create(n,...e)}function Xe(n,e,...r){if(!n)throw vN(e,...r)}function Gg(n){let e="INTERNAL ASSERTION FAILED: "+n;throw nI(e),new Error(e)}function oI(n,e){n||Gg(e)}function fJ(){return GB()==="http:"||GB()==="https:"}function GB(){var n;return typeof self<"u"&&((n=self.location)===null||n===void 0?void 0:n.protocol)||null}function gJ(){return typeof navigator<"u"&&navigator&&"onLine"in navigator&&typeof navigator.onLine=="boolean"&&(fJ()||iB()||"connection"in navigator)?navigator.onLine:!0}function mJ(){if(typeof navigator>"u")return null;let n=navigator;return n.languages&&n.languages[0]||n.language||null}var ul=class{constructor(e,r){this.shortDelay=e,this.longDelay=r,oI(r>e,"Short delay should be less than long delay!"),this.isMobile=wg()||YT()}get(){return gJ()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}};function pJ(n,e){oI(n.emulator,"Emulator should always be set here");let{url:r}=n.emulator;return e?`${r}${e.startsWith("/")?e.slice(1):e}`:r}var sI=class{static initialize(e,r,t){this.fetchImpl=e,r&&(this.headersImpl=r),t&&(this.responseImpl=t)}static fetch(){if(this.fetchImpl)return this.fetchImpl;if(typeof self<"u"&&"fetch"in self)return self.fetch;if(typeof globalThis<"u"&&globalThis.fetch)return globalThis.fetch;if(typeof fetch<"u")return fetch;Gg("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){if(this.headersImpl)return this.headersImpl;if(typeof self<"u"&&"Headers"in self)return self.Headers;if(typeof globalThis<"u"&&globalThis.Headers)return globalThis.Headers;if(typeof Headers<"u")return Headers;Gg("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){if(this.responseImpl)return this.responseImpl;if(typeof self<"u"&&"Response"in self)return self.Response;if(typeof globalThis<"u"&&globalThis.Response)return globalThis.Response;if(typeof Response<"u")return Response;Gg("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}};var EJ={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"missing-password",INVALID_LOGIN_CREDENTIALS:"invalid-credential",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",PASSWORD_DOES_NOT_MEET_REQUIREMENTS:"password-does-not-meet-requirements",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error",RECAPTCHA_NOT_ENABLED:"recaptcha-not-enabled",MISSING_RECAPTCHA_TOKEN:"missing-recaptcha-token",INVALID_RECAPTCHA_TOKEN:"invalid-recaptcha-token",INVALID_RECAPTCHA_ACTION:"invalid-recaptcha-action",MISSING_CLIENT_TYPE:"missing-client-type",MISSING_RECAPTCHA_VERSION:"missing-recaptcha-version",INVALID_RECAPTCHA_VERSION:"invalid-recaptcha-version",INVALID_REQ_TYPE:"invalid-req-type"};var _J=["/v1/accounts:signInWithCustomToken","/v1/accounts:signInWithEmailLink","/v1/accounts:signInWithIdp","/v1/accounts:signInWithPassword","/v1/accounts:signInWithPhoneNumber","/v1/token"],TJ=new ul(3e4,6e4);function yN(n,e){return n.tenantId&&!e.tenantId?Object.assign(Object.assign({},e),{tenantId:n.tenantId}):e}function Wg(o,s,a,c){return I(this,arguments,function*(n,e,r,t,i={}){return tG(n,i,()=>I(null,null,function*(){let l={},u={};t&&(e==="GET"?u=t:l={body:JSON.stringify(t)});let d=Mg(Object.assign({key:n.config.apiKey},u)).slice(1),f=yield n._getAdditionalHeaders();f["Content-Type"]="application/json",n.languageCode&&(f["X-Firebase-Locale"]=n.languageCode);let g=Object.assign({method:e,headers:f},l);return rB()||(g.referrerPolicy="no-referrer"),n.emulatorConfig&&Hr(n.emulatorConfig.host)&&(g.credentials="include"),sI.fetch()(yield nG(n,n.config.apiHost,r,d),g)}))})}function tG(n,e,r){return I(this,null,function*(){n._canInitEmulator=!1;let t=Object.assign(Object.assign({},EJ),e);try{let i=new lN(n),o=yield Promise.race([r(),i.promise]);i.clearNetworkTimeout();let s=yield o.json();if("needConfirmation"in s)throw tI(n,"account-exists-with-different-credential",s);if(o.ok&&!("errorMessage"in s))return s;{let a=o.ok?s.errorMessage:s.error.message,[c,l]=a.split(" : ");if(c==="FEDERATED_USER_ID_ALREADY_LINKED")throw tI(n,"credential-already-in-use",s);if(c==="EMAIL_EXISTS")throw tI(n,"email-already-in-use",s);if(c==="USER_DISABLED")throw tI(n,"user-disabled",s);let u=t[c]||c.toLowerCase().replace(/[_\s]+/g,"-");if(l)throw eG(n,u,l);iI(n,u)}}catch(i){if(i instanceof vr)throw i;iI(n,"network-request-failed",{message:String(i)})}})}function IJ(o,s,a,c){return I(this,arguments,function*(n,e,r,t,i={}){let l=yield Wg(n,e,r,t,i);return"mfaPendingCredential"in l&&iI(n,"multi-factor-auth-required",{_serverResponse:l}),l})}function nG(n,e,r,t){return I(this,null,function*(){let i=`${e}${r}?${t}`,o=n,s=o.config.emulator?pJ(n.config,i):`${n.config.apiScheme}://${i}`;return _J.includes(r)&&(yield o._persistenceManagerAvailable,o._getPersistenceType()==="COOKIE")?o._getPersistence()._getFinalTarget(s).toString():s})}var lN=class{clearNetworkTimeout(){clearTimeout(this.timer)}constructor(e){this.auth=e,this.timer=null,this.promise=new Promise((r,t)=>{this.timer=setTimeout(()=>t(IN(this.auth,"network-request-failed")),TJ.get())})}};function tI(n,e,r){let t={appName:n.name};r.email&&(t.email=r.email),r.phoneNumber&&(t.phoneNumber=r.phoneNumber);let i=IN(n,e,t);return i.customData._tokenResponse=r,i}function vJ(n,e){return I(this,null,function*(){return Wg(n,"POST","/v1/accounts:delete",e)})}function aI(n,e){return I(this,null,function*(){return Wg(n,"POST","/v1/accounts:lookup",e)})}function $g(n){if(n)try{let e=new Date(Number(n));if(!isNaN(e.getTime()))return e.toUTCString()}catch{}}function gI(n,e=!1){return I(this,null,function*(){let r=Ge(n),t=yield r.getIdToken(e),i=rG(t);Xe(i&&i.exp&&i.auth_time&&i.iat,r.auth,"internal-error");let o=typeof i.firebase=="object"?i.firebase:void 0,s=o?.sign_in_provider;return{claims:i,token:t,authTime:$g(aN(i.auth_time)),issuedAtTime:$g(aN(i.iat)),expirationTime:$g(aN(i.exp)),signInProvider:s||null,signInSecondFactor:o?.sign_in_second_factor||null}})}function aN(n){return Number(n)*1e3}function rG(n){let[e,r,t]=n.split(".");if(e===void 0||r===void 0||t===void 0)return nI("JWT malformed, contained fewer than 3 sections"),null;try{let i=Dd(r);return i?JSON.parse(i):(nI("Failed to decode base64 JWT payload"),null)}catch(i){return nI("Caught error parsing JWT payload as JSON",i?.toString()),null}}function $B(n){let e=rG(n);return Xe(e,"internal-error"),Xe(typeof e.exp<"u","internal-error"),Xe(typeof e.iat<"u","internal-error"),Number(e.exp)-Number(e.iat)}function uN(n,e,r=!1){return I(this,null,function*(){if(r)return e;try{return yield e}catch(t){throw t instanceof vr&&yJ(t)&&n.auth.currentUser===n&&(yield n.auth.signOut()),t}})}function yJ({code:n}){return n==="auth/user-disabled"||n==="auth/user-token-expired"}var dN=class{constructor(e){this.user=e,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,this.timerId!==null&&clearTimeout(this.timerId))}getInterval(e){var r;if(e){let t=this.errorBackoff;return this.errorBackoff=Math.min(this.errorBackoff*2,96e4),t}else{this.errorBackoff=3e4;let i=((r=this.user.stsTokenManager.expirationTime)!==null&&r!==void 0?r:0)-Date.now()-3e5;return Math.max(0,i)}}schedule(e=!1){if(!this.isRunning)return;let r=this.getInterval(e);this.timerId=setTimeout(()=>I(this,null,function*(){yield this.iteration()}),r)}iteration(){return I(this,null,function*(){try{yield this.user.getIdToken(!0)}catch(e){e?.code==="auth/network-request-failed"&&this.schedule(!0);return}this.schedule()})}};var Hg=class{constructor(e,r){this.createdAt=e,this.lastLoginAt=r,this._initializeTime()}_initializeTime(){this.lastSignInTime=$g(this.lastLoginAt),this.creationTime=$g(this.createdAt)}_copy(e){this.createdAt=e.createdAt,this.lastLoginAt=e.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}};function cI(n){return I(this,null,function*(){var e;let r=n.auth,t=yield n.getIdToken(),i=yield uN(n,aI(r,{idToken:t}));Xe(i?.users.length,r,"internal-error");let o=i.users[0];n._notifyReloadListener(o);let s=!((e=o.providerUserInfo)===null||e===void 0)&&e.length?iG(o.providerUserInfo):[],a=SJ(n.providerData,s),c=n.isAnonymous,l=!(n.email&&o.passwordHash)&&!a?.length,u=c?l:!1,d={uid:o.localId,displayName:o.displayName||null,photoURL:o.photoUrl||null,email:o.email||null,emailVerified:o.emailVerified||!1,phoneNumber:o.phoneNumber||null,tenantId:o.tenantId||null,providerData:a,metadata:new Hg(o.createdAt,o.lastLoginAt),isAnonymous:u};Object.assign(n,d)})}function SN(n){return I(this,null,function*(){let e=Ge(n);yield cI(e),yield e.auth._persistUserIfCurrent(e),e.auth._notifyListenersIfCurrent(e)})}function SJ(n,e){return[...n.filter(t=>!e.some(i=>i.providerId===t.providerId)),...e]}function iG(n){return n.map(e=>{var{providerId:r}=e,t=TS(e,["providerId"]);return{providerId:r,uid:t.rawId||"",displayName:t.displayName||null,email:t.email||null,phoneNumber:t.phoneNumber||null,photoURL:t.photoUrl||null}})}function AJ(n,e){return I(this,null,function*(){let r=yield tG(n,{},()=>I(null,null,function*(){let t=Mg({grant_type:"refresh_token",refresh_token:e}).slice(1),{tokenApiHost:i,apiKey:o}=n.config,s=yield nG(n,i,"/v1/token",`key=${o}`),a=yield n._getAdditionalHeaders();a["Content-Type"]="application/x-www-form-urlencoded";let c={method:"POST",headers:a,body:t};return n.emulatorConfig&&Hr(n.emulatorConfig.host)&&(c.credentials="include"),sI.fetch()(s,c)}));return{accessToken:r.access_token,expiresIn:r.expires_in,refreshToken:r.refresh_token}})}function DJ(n,e){return I(this,null,function*(){return Wg(n,"POST","/v2/accounts:revokeToken",yN(n,e))})}var jg=class n{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(e){Xe(e.idToken,"internal-error"),Xe(typeof e.idToken<"u","internal-error"),Xe(typeof e.refreshToken<"u","internal-error");let r="expiresIn"in e&&typeof e.expiresIn<"u"?Number(e.expiresIn):$B(e.idToken);this.updateTokensAndExpiration(e.idToken,e.refreshToken,r)}updateFromIdToken(e){Xe(e.length!==0,"internal-error");let r=$B(e);this.updateTokensAndExpiration(e,null,r)}getToken(e,r=!1){return I(this,null,function*(){return!r&&this.accessToken&&!this.isExpired?this.accessToken:(Xe(this.refreshToken,e,"user-token-expired"),this.refreshToken?(yield this.refresh(e,this.refreshToken),this.accessToken):null)})}clearRefreshToken(){this.refreshToken=null}refresh(e,r){return I(this,null,function*(){let{accessToken:t,refreshToken:i,expiresIn:o}=yield AJ(e,r);this.updateTokensAndExpiration(t,i,Number(o))})}updateTokensAndExpiration(e,r,t){this.refreshToken=r||null,this.accessToken=e||null,this.expirationTime=Date.now()+t*1e3}static fromJSON(e,r){let{refreshToken:t,accessToken:i,expirationTime:o}=r,s=new n;return t&&(Xe(typeof t=="string","internal-error",{appName:e}),s.refreshToken=t),i&&(Xe(typeof i=="string","internal-error",{appName:e}),s.accessToken=i),o&&(Xe(typeof o=="number","internal-error",{appName:e}),s.expirationTime=o),s}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(e){this.accessToken=e.accessToken,this.refreshToken=e.refreshToken,this.expirationTime=e.expirationTime}_clone(){return Object.assign(new n,this.toJSON())}_performRefresh(){return Gg("not implemented")}};function Ia(n,e){Xe(typeof n=="string"||typeof n>"u","internal-error",{appName:e})}var va=class n{constructor(e){var{uid:r,auth:t,stsTokenManager:i}=e,o=TS(e,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.proactiveRefresh=new dN(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=r,this.auth=t,this.stsTokenManager=i,this.accessToken=i.accessToken,this.displayName=o.displayName||null,this.email=o.email||null,this.emailVerified=o.emailVerified||!1,this.phoneNumber=o.phoneNumber||null,this.photoURL=o.photoURL||null,this.isAnonymous=o.isAnonymous||!1,this.tenantId=o.tenantId||null,this.providerData=o.providerData?[...o.providerData]:[],this.metadata=new Hg(o.createdAt||void 0,o.lastLoginAt||void 0)}getIdToken(e){return I(this,null,function*(){let r=yield uN(this,this.stsTokenManager.getToken(this.auth,e));return Xe(r,this.auth,"internal-error"),this.accessToken!==r&&(this.accessToken=r,yield this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),r})}getIdTokenResult(e){return gI(this,e)}reload(){return SN(this)}_assign(e){this!==e&&(Xe(this.uid===e.uid,this.auth,"internal-error"),this.displayName=e.displayName,this.photoURL=e.photoURL,this.email=e.email,this.emailVerified=e.emailVerified,this.phoneNumber=e.phoneNumber,this.isAnonymous=e.isAnonymous,this.tenantId=e.tenantId,this.providerData=e.providerData.map(r=>Object.assign({},r)),this.metadata._copy(e.metadata),this.stsTokenManager._assign(e.stsTokenManager))}_clone(e){let r=new n(Object.assign(Object.assign({},this),{auth:e,stsTokenManager:this.stsTokenManager._clone()}));return r.metadata._copy(this.metadata),r}_onReload(e){Xe(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=e,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(e){this.reloadListener?this.reloadListener(e):this.reloadUserInfo=e}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}_updateTokensIfNecessary(e,r=!1){return I(this,null,function*(){let t=!1;e.idToken&&e.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(e),t=!0),r&&(yield cI(this)),yield this.auth._persistUserIfCurrent(this),t&&this.auth._notifyListenersIfCurrent(this)})}delete(){return I(this,null,function*(){if(yr(this.auth.app))return Promise.reject(Bg(this.auth));let e=yield this.getIdToken();return yield uN(this,vJ(this.auth,{idToken:e})),this.stsTokenManager.clearRefreshToken(),this.auth.signOut()})}toJSON(){return Object.assign(Object.assign({uid:this.uid,email:this.email||void 0,emailVerified:this.emailVerified,displayName:this.displayName||void 0,isAnonymous:this.isAnonymous,photoURL:this.photoURL||void 0,phoneNumber:this.phoneNumber||void 0,tenantId:this.tenantId||void 0,providerData:this.providerData.map(e=>Object.assign({},e)),stsTokenManager:this.stsTokenManager.toJSON(),_redirectEventId:this._redirectEventId},this.metadata.toJSON()),{apiKey:this.auth.config.apiKey,appName:this.auth.name})}get refreshToken(){return this.stsTokenManager.refreshToken||""}static _fromJSON(e,r){var t,i,o,s,a,c,l,u;let d=(t=r.displayName)!==null&&t!==void 0?t:void 0,f=(i=r.email)!==null&&i!==void 0?i:void 0,g=(o=r.phoneNumber)!==null&&o!==void 0?o:void 0,p=(s=r.photoURL)!==null&&s!==void 0?s:void 0,_=(a=r.tenantId)!==null&&a!==void 0?a:void 0,T=(c=r._redirectEventId)!==null&&c!==void 0?c:void 0,D=(l=r.createdAt)!==null&&l!==void 0?l:void 0,b=(u=r.lastLoginAt)!==null&&u!==void 0?u:void 0,{uid:G,emailVerified:M,isAnonymous:U,providerData:k,stsTokenManager:S}=r;Xe(G&&S,e,"internal-error");let A=jg.fromJSON(this.name,S);Xe(typeof G=="string",e,"internal-error"),Ia(d,e.name),Ia(f,e.name),Xe(typeof M=="boolean",e,"internal-error"),Xe(typeof U=="boolean",e,"internal-error"),Ia(g,e.name),Ia(p,e.name),Ia(_,e.name),Ia(T,e.name),Ia(D,e.name),Ia(b,e.name);let C=new n({uid:G,auth:e,email:f,emailVerified:M,displayName:d,isAnonymous:U,photoURL:p,phoneNumber:g,tenantId:_,stsTokenManager:A,createdAt:D,lastLoginAt:b});return k&&Array.isArray(k)&&(C.providerData=k.map(O=>Object.assign({},O))),T&&(C._redirectEventId=T),C}static _fromIdTokenResponse(e,r,t=!1){return I(this,null,function*(){let i=new jg;i.updateFromServerResponse(r);let o=new n({uid:r.localId,auth:e,stsTokenManager:i,isAnonymous:t});return yield cI(o),o})}static _fromGetAccountInfoResponse(e,r,t){return I(this,null,function*(){let i=r.users[0];Xe(i.localId!==void 0,"internal-error");let o=i.providerUserInfo!==void 0?iG(i.providerUserInfo):[],s=!(i.email&&i.passwordHash)&&!o?.length,a=new jg;a.updateFromIdToken(t);let c=new n({uid:i.localId,auth:e,stsTokenManager:a,isAnonymous:s}),l={uid:i.localId,displayName:i.displayName||null,photoURL:i.photoUrl||null,email:i.email||null,emailVerified:i.emailVerified||!1,phoneNumber:i.phoneNumber||null,tenantId:i.tenantId||null,providerData:o,metadata:new Hg(i.createdAt,i.lastLoginAt),isAnonymous:!(i.email&&i.passwordHash)&&!o?.length};return Object.assign(c,l),c})}};var jB=new Map;function ll(n){oI(n instanceof Function,"Expected a class definition");let e=jB.get(n);return e?(oI(e instanceof n,"Instance stored in cache mismatched with class"),e):(e=new n,jB.set(n,e),e)}var RJ=(()=>{class n{constructor(){this.type="NONE",this.storage={}}_isAvailable(){return I(this,null,function*(){return!0})}_set(r,t){return I(this,null,function*(){this.storage[r]=t})}_get(r){return I(this,null,function*(){let t=this.storage[r];return t===void 0?null:t})}_remove(r){return I(this,null,function*(){delete this.storage[r]})}_addListener(r,t){}_removeListener(r,t){}}return n.type="NONE",n})(),hN=RJ;function cN(n,e,r){return`firebase:${n}:${e}:${r}`}var lI=class n{constructor(e,r,t){this.persistence=e,this.auth=r,this.userKey=t;let{config:i,name:o}=this.auth;this.fullUserKey=cN(this.userKey,i.apiKey,o),this.fullPersistenceKey=cN("persistence",i.apiKey,o),this.boundEventHandler=r._onStorageEvent.bind(r),this.persistence._addListener(this.fullUserKey,this.boundEventHandler)}setCurrentUser(e){return this.persistence._set(this.fullUserKey,e.toJSON())}getCurrentUser(){return I(this,null,function*(){let e=yield this.persistence._get(this.fullUserKey);if(!e)return null;if(typeof e=="string"){let r=yield aI(this.auth,{idToken:e}).catch(()=>{});return r?va._fromGetAccountInfoResponse(this.auth,r,e):null}return va._fromJSON(this.auth,e)})}removeCurrentUser(){return this.persistence._remove(this.fullUserKey)}savePersistenceForRedirect(){return this.persistence._set(this.fullPersistenceKey,this.persistence.type)}setPersistence(e){return I(this,null,function*(){if(this.persistence===e)return;let r=yield this.getCurrentUser();if(yield this.removeCurrentUser(),this.persistence=e,r)return this.setCurrentUser(r)})}delete(){this.persistence._removeListener(this.fullUserKey,this.boundEventHandler)}static create(e,r,t="authUser"){return I(this,null,function*(){if(!r.length)return new n(ll(hN),e,t);let i=(yield Promise.all(r.map(l=>I(null,null,function*(){if(yield l._isAvailable())return l})))).filter(l=>l),o=i[0]||ll(hN),s=cN(t,e.config.apiKey,e.name),a=null;for(let l of r)try{let u=yield l._get(s);if(u){let d;if(typeof u=="string"){let f=yield aI(e,{idToken:u}).catch(()=>{});if(!f)break;d=yield va._fromGetAccountInfoResponse(e,f,u)}else d=va._fromJSON(e,u);l!==o&&(a=d),o=l;break}}catch{}let c=i.filter(l=>l._shouldAllowMigration);return!o._shouldAllowMigration||!c.length?new n(o,e,t):(o=c[0],a&&(yield o._set(s,a.toJSON())),yield Promise.all(r.map(l=>I(null,null,function*(){if(l!==o)try{yield l._remove(s)}catch{}}))),new n(o,e,t))})}};function HB(n){let e=n.toLowerCase();if(e.includes("opera/")||e.includes("opr/")||e.includes("opios/"))return"Opera";if(oG(e))return"IEMobile";if(e.includes("msie")||e.includes("trident/"))return"IE";if(e.includes("edge/"))return"Edge";if(CJ(e))return"Firefox";if(e.includes("silk/"))return"Silk";if(aG(e))return"Blackberry";if(cG(e))return"Webos";if(NJ(e))return"Safari";if((e.includes("chrome/")||OJ(e))&&!e.includes("edge/"))return"Chrome";if(sG(e))return"Android";{let r=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,t=n.match(r);if(t?.length===2)return t[1]}return"Other"}function CJ(n=En()){return/firefox\//i.test(n)}function NJ(n=En()){let e=n.toLowerCase();return e.includes("safari/")&&!e.includes("chrome/")&&!e.includes("crios/")&&!e.includes("android")}function OJ(n=En()){return/crios\//i.test(n)}function oG(n=En()){return/iemobile/i.test(n)}function sG(n=En()){return/android/i.test(n)}function aG(n=En()){return/blackberry/i.test(n)}function cG(n=En()){return/webos/i.test(n)}function wJ(n=En()){return/iphone|ipad|ipod/i.test(n)||/macintosh/i.test(n)&&/mobile/i.test(n)}function bJ(){return oB()&&document.documentMode===10}function LJ(n=En()){return wJ(n)||sG(n)||cG(n)||aG(n)||/windows phone/i.test(n)||oG(n)}function lG(n,e=[]){let r;switch(n){case"Browser":r=HB(En());break;case"Worker":r=`${HB(En())}-${n}`;break;default:r=n}let t=e.length?e.join(","):"FirebaseCore-web";return`${r}/JsCore/${pa}/${t}`}var fN=class{constructor(e){this.auth=e,this.queue=[]}pushCallback(e,r){let t=o=>new Promise((s,a)=>{try{let c=e(o);s(c)}catch(c){a(c)}});t.onAbort=r,this.queue.push(t);let i=this.queue.length-1;return()=>{this.queue[i]=()=>Promise.resolve()}}runMiddleware(e){return I(this,null,function*(){if(this.auth.currentUser===e)return;let r=[];try{for(let t of this.queue)yield t(e),t.onAbort&&r.push(t.onAbort)}catch(t){r.reverse();for(let i of r)try{i()}catch{}throw this.auth._errorFactory.create("login-blocked",{originalMessage:t?.message})}})}};function MJ(r){return I(this,arguments,function*(n,e={}){return Wg(n,"GET","/v2/passwordPolicy",yN(n,e))})}var PJ=6,gN=class{constructor(e){var r,t,i,o;let s=e.customStrengthOptions;this.customStrengthOptions={},this.customStrengthOptions.minPasswordLength=(r=s.minPasswordLength)!==null&&r!==void 0?r:PJ,s.maxPasswordLength&&(this.customStrengthOptions.maxPasswordLength=s.maxPasswordLength),s.containsLowercaseCharacter!==void 0&&(this.customStrengthOptions.containsLowercaseLetter=s.containsLowercaseCharacter),s.containsUppercaseCharacter!==void 0&&(this.customStrengthOptions.containsUppercaseLetter=s.containsUppercaseCharacter),s.containsNumericCharacter!==void 0&&(this.customStrengthOptions.containsNumericCharacter=s.containsNumericCharacter),s.containsNonAlphanumericCharacter!==void 0&&(this.customStrengthOptions.containsNonAlphanumericCharacter=s.containsNonAlphanumericCharacter),this.enforcementState=e.enforcementState,this.enforcementState==="ENFORCEMENT_STATE_UNSPECIFIED"&&(this.enforcementState="OFF"),this.allowedNonAlphanumericCharacters=(i=(t=e.allowedNonAlphanumericCharacters)===null||t===void 0?void 0:t.join(""))!==null&&i!==void 0?i:"",this.forceUpgradeOnSignin=(o=e.forceUpgradeOnSignin)!==null&&o!==void 0?o:!1,this.schemaVersion=e.schemaVersion}validatePassword(e){var r,t,i,o,s,a;let c={isValid:!0,passwordPolicy:this};return this.validatePasswordLengthOptions(e,c),this.validatePasswordCharacterOptions(e,c),c.isValid&&(c.isValid=(r=c.meetsMinPasswordLength)!==null&&r!==void 0?r:!0),c.isValid&&(c.isValid=(t=c.meetsMaxPasswordLength)!==null&&t!==void 0?t:!0),c.isValid&&(c.isValid=(i=c.containsLowercaseLetter)!==null&&i!==void 0?i:!0),c.isValid&&(c.isValid=(o=c.containsUppercaseLetter)!==null&&o!==void 0?o:!0),c.isValid&&(c.isValid=(s=c.containsNumericCharacter)!==null&&s!==void 0?s:!0),c.isValid&&(c.isValid=(a=c.containsNonAlphanumericCharacter)!==null&&a!==void 0?a:!0),c}validatePasswordLengthOptions(e,r){let t=this.customStrengthOptions.minPasswordLength,i=this.customStrengthOptions.maxPasswordLength;t&&(r.meetsMinPasswordLength=e.length>=t),i&&(r.meetsMaxPasswordLength=e.length<=i)}validatePasswordCharacterOptions(e,r){this.updatePasswordCharacterOptionsStatuses(r,!1,!1,!1,!1);let t;for(let i=0;i<e.length;i++)t=e.charAt(i),this.updatePasswordCharacterOptionsStatuses(r,t>="a"&&t<="z",t>="A"&&t<="Z",t>="0"&&t<="9",this.allowedNonAlphanumericCharacters.includes(t))}updatePasswordCharacterOptionsStatuses(e,r,t,i,o){this.customStrengthOptions.containsLowercaseLetter&&(e.containsLowercaseLetter||(e.containsLowercaseLetter=r)),this.customStrengthOptions.containsUppercaseLetter&&(e.containsUppercaseLetter||(e.containsUppercaseLetter=t)),this.customStrengthOptions.containsNumericCharacter&&(e.containsNumericCharacter||(e.containsNumericCharacter=i)),this.customStrengthOptions.containsNonAlphanumericCharacter&&(e.containsNonAlphanumericCharacter||(e.containsNonAlphanumericCharacter=o))}};var mN=class{constructor(e,r,t,i){this.app=e,this.heartbeatServiceProvider=r,this.appCheckServiceProvider=t,this.config=i,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new uI(this),this.idTokenSubscription=new uI(this),this.beforeStateQueue=new fN(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION=1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=ZB,this._agentRecaptchaConfig=null,this._tenantRecaptchaConfigs={},this._projectPasswordPolicy=null,this._tenantPasswordPolicies={},this._resolvePersistenceManagerAvailable=void 0,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=e.name,this.clientVersion=i.sdkClientVersion,this._persistenceManagerAvailable=new Promise(o=>this._resolvePersistenceManagerAvailable=o)}_initializeWithPersistence(e,r){return r&&(this._popupRedirectResolver=ll(r)),this._initializationPromise=this.queue(()=>I(this,null,function*(){var t,i,o;if(!this._deleted&&(this.persistenceManager=yield lI.create(this,e),(t=this._resolvePersistenceManagerAvailable)===null||t===void 0||t.call(this),!this._deleted)){if(!((i=this._popupRedirectResolver)===null||i===void 0)&&i._shouldInitProactively)try{yield this._popupRedirectResolver._initialize(this)}catch{}yield this.initializeCurrentUser(r),this.lastNotifiedUid=((o=this.currentUser)===null||o===void 0?void 0:o.uid)||null,!this._deleted&&(this._isInitialized=!0)}})),this._initializationPromise}_onStorageEvent(){return I(this,null,function*(){if(this._deleted)return;let e=yield this.assertedPersistence.getCurrentUser();if(!(!this.currentUser&&!e)){if(this.currentUser&&e&&this.currentUser.uid===e.uid){this._currentUser._assign(e),yield this.currentUser.getIdToken();return}yield this._updateCurrentUser(e,!0)}})}initializeCurrentUserFromIdToken(e){return I(this,null,function*(){try{let r=yield aI(this,{idToken:e}),t=yield va._fromGetAccountInfoResponse(this,r,e);yield this.directlySetCurrentUser(t)}catch(r){console.warn("FirebaseServerApp could not login user with provided authIdToken: ",r),yield this.directlySetCurrentUser(null)}})}initializeCurrentUser(e){return I(this,null,function*(){var r;if(yr(this.app)){let s=this.app.settings.authIdToken;return s?new Promise(a=>{setTimeout(()=>this.initializeCurrentUserFromIdToken(s).then(a,a))}):this.directlySetCurrentUser(null)}let t=yield this.assertedPersistence.getCurrentUser(),i=t,o=!1;if(e&&this.config.authDomain){yield this.getOrInitRedirectPersistenceManager();let s=(r=this.redirectUser)===null||r===void 0?void 0:r._redirectEventId,a=i?._redirectEventId,c=yield this.tryRedirectSignIn(e);(!s||s===a)&&c?.user&&(i=c.user,o=!0)}if(!i)return this.directlySetCurrentUser(null);if(!i._redirectEventId){if(o)try{yield this.beforeStateQueue.runMiddleware(i)}catch(s){i=t,this._popupRedirectResolver._overrideRedirectResult(this,()=>Promise.reject(s))}return i?this.reloadAndSetCurrentUserOrClear(i):this.directlySetCurrentUser(null)}return Xe(this._popupRedirectResolver,this,"argument-error"),yield this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===i._redirectEventId?this.directlySetCurrentUser(i):this.reloadAndSetCurrentUserOrClear(i)})}tryRedirectSignIn(e){return I(this,null,function*(){let r=null;try{r=yield this._popupRedirectResolver._completeRedirectFn(this,e,!0)}catch{yield this._setRedirectUser(null)}return r})}reloadAndSetCurrentUserOrClear(e){return I(this,null,function*(){try{yield cI(e)}catch(r){if(r?.code!=="auth/network-request-failed")return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(e)})}useDeviceLanguage(){this.languageCode=mJ()}_delete(){return I(this,null,function*(){this._deleted=!0})}updateCurrentUser(e){return I(this,null,function*(){if(yr(this.app))return Promise.reject(Bg(this));let r=e?Ge(e):null;return r&&Xe(r.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(r&&r._clone(this))})}_updateCurrentUser(e,r=!1){return I(this,null,function*(){if(!this._deleted)return e&&Xe(this.tenantId===e.tenantId,this,"tenant-id-mismatch"),r||(yield this.beforeStateQueue.runMiddleware(e)),this.queue(()=>I(this,null,function*(){yield this.directlySetCurrentUser(e),this.notifyAuthListeners()}))})}signOut(){return I(this,null,function*(){return yr(this.app)?Promise.reject(Bg(this)):(yield this.beforeStateQueue.runMiddleware(null),(this.redirectPersistenceManager||this._popupRedirectResolver)&&(yield this._setRedirectUser(null)),this._updateCurrentUser(null,!0))})}setPersistence(e){return yr(this.app)?Promise.reject(Bg(this)):this.queue(()=>I(this,null,function*(){yield this.assertedPersistence.setPersistence(ll(e))}))}_getRecaptchaConfig(){return this.tenantId==null?this._agentRecaptchaConfig:this._tenantRecaptchaConfigs[this.tenantId]}validatePassword(e){return I(this,null,function*(){this._getPasswordPolicyInternal()||(yield this._updatePasswordPolicy());let r=this._getPasswordPolicyInternal();return r.schemaVersion!==this.EXPECTED_PASSWORD_POLICY_SCHEMA_VERSION?Promise.reject(this._errorFactory.create("unsupported-password-policy-schema-version",{})):r.validatePassword(e)})}_getPasswordPolicyInternal(){return this.tenantId===null?this._projectPasswordPolicy:this._tenantPasswordPolicies[this.tenantId]}_updatePasswordPolicy(){return I(this,null,function*(){let e=yield MJ(this),r=new gN(e);this.tenantId===null?this._projectPasswordPolicy=r:this._tenantPasswordPolicies[this.tenantId]=r})}_getPersistenceType(){return this.assertedPersistence.persistence.type}_getPersistence(){return this.assertedPersistence.persistence}_updateErrorMap(e){this._errorFactory=new Ui("auth","Firebase",e())}onAuthStateChanged(e,r,t){return this.registerStateListener(this.authStateSubscription,e,r,t)}beforeAuthStateChanged(e,r){return this.beforeStateQueue.pushCallback(e,r)}onIdTokenChanged(e,r,t){return this.registerStateListener(this.idTokenSubscription,e,r,t)}authStateReady(){return new Promise((e,r)=>{if(this.currentUser)e();else{let t=this.onAuthStateChanged(()=>{t(),e()},r)}})}revokeAccessToken(e){return I(this,null,function*(){if(this.currentUser){let r=yield this.currentUser.getIdToken(),t={providerId:"apple.com",tokenType:"ACCESS_TOKEN",token:e,idToken:r};this.tenantId!=null&&(t.tenantId=this.tenantId),yield DJ(this,t)}})}toJSON(){var e;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:(e=this._currentUser)===null||e===void 0?void 0:e.toJSON()}}_setRedirectUser(e,r){return I(this,null,function*(){let t=yield this.getOrInitRedirectPersistenceManager(r);return e===null?t.removeCurrentUser():t.setCurrentUser(e)})}getOrInitRedirectPersistenceManager(e){return I(this,null,function*(){if(!this.redirectPersistenceManager){let r=e&&ll(e)||this._popupRedirectResolver;Xe(r,this,"argument-error"),this.redirectPersistenceManager=yield lI.create(this,[ll(r._redirectPersistence)],"redirectUser"),this.redirectUser=yield this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager})}_redirectUserForId(e){return I(this,null,function*(){var r,t;return this._isInitialized&&(yield this.queue(()=>I(this,null,function*(){}))),((r=this._currentUser)===null||r===void 0?void 0:r._redirectEventId)===e?this._currentUser:((t=this.redirectUser)===null||t===void 0?void 0:t._redirectEventId)===e?this.redirectUser:null})}_persistUserIfCurrent(e){return I(this,null,function*(){if(e===this.currentUser)return this.queue(()=>I(this,null,function*(){return this.directlySetCurrentUser(e)}))})}_notifyListenersIfCurrent(e){e===this.currentUser&&this.notifyAuthListeners()}_key(){return`${this.config.authDomain}:${this.config.apiKey}:${this.name}`}_startProactiveRefresh(){this.isProactiveRefreshEnabled=!0,this.currentUser&&this._currentUser._startProactiveRefresh()}_stopProactiveRefresh(){this.isProactiveRefreshEnabled=!1,this.currentUser&&this._currentUser._stopProactiveRefresh()}get _currentUser(){return this.currentUser}notifyAuthListeners(){var e,r;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);let t=(r=(e=this.currentUser)===null||e===void 0?void 0:e.uid)!==null&&r!==void 0?r:null;this.lastNotifiedUid!==t&&(this.lastNotifiedUid=t,this.authStateSubscription.next(this.currentUser))}registerStateListener(e,r,t,i){if(this._deleted)return()=>{};let o=typeof r=="function"?r:r.next.bind(r),s=!1,a=this._isInitialized?Promise.resolve():this._initializationPromise;if(Xe(a,this,"internal-error"),a.then(()=>{s||o(this.currentUser)}),typeof r=="function"){let c=e.addObserver(r,t,i);return()=>{s=!0,c()}}else{let c=e.addObserver(r);return()=>{s=!0,c()}}}directlySetCurrentUser(e){return I(this,null,function*(){this.currentUser&&this.currentUser!==e&&this._currentUser._stopProactiveRefresh(),e&&this.isProactiveRefreshEnabled&&e._startProactiveRefresh(),this.currentUser=e,e?yield this.assertedPersistence.setCurrentUser(e):yield this.assertedPersistence.removeCurrentUser()})}queue(e){return this.operations=this.operations.then(e,e),this.operations}get assertedPersistence(){return Xe(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(e){!e||this.frameworks.includes(e)||(this.frameworks.push(e),this.frameworks.sort(),this.clientVersion=lG(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}_getAdditionalHeaders(){return I(this,null,function*(){var e;let r={"X-Client-Version":this.clientVersion};this.app.options.appId&&(r["X-Firebase-gmpid"]=this.app.options.appId);let t=yield(e=this.heartbeatServiceProvider.getImmediate({optional:!0}))===null||e===void 0?void 0:e.getHeartbeatsHeader();t&&(r["X-Firebase-Client"]=t);let i=yield this._getAppCheckToken();return i&&(r["X-Firebase-AppCheck"]=i),r})}_getAppCheckToken(){return I(this,null,function*(){var e;if(yr(this.app)&&this.app.settings.appCheckToken)return this.app.settings.appCheckToken;let r=yield(e=this.appCheckServiceProvider.getImmediate({optional:!0}))===null||e===void 0?void 0:e.getToken();return r?.error&&hJ(`Error while retrieving App Check token: ${r.error}`),r?.token})}};function uG(n){return Ge(n)}var uI=class{constructor(e){this.auth=e,this.observer=null,this.addObserver=uB(r=>this.observer=r)}get next(){return Xe(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}};var xJ={loadJS(){return I(this,null,function*(){throw new Error("Unable to load external scripts")})},recaptchaV2Script:"",recaptchaEnterpriseScript:"",gapiScript:""};function FJ(n){xJ=n}function kJ(n){return`__${n}${Math.floor(Math.random()*1e6)}`}function AN(n,e){let r=Po(n,"auth");if(r.isInitialized()){let i=r.getImmediate(),o=r.getOptions();if(Vi(o,e??{}))return i;iI(i,"already-initialized")}return r.initialize({options:e})}function UJ(n,e){let r=e?.persistence||[],t=(Array.isArray(r)?r:[r]).map(ll);e?.errorMap&&n._updateErrorMap(e.errorMap),n._initializeWithPersistence(t,e?.popupRedirectResolver)}var pN=class n{constructor(e){this.user=e.user,this.providerId=e.providerId,this._tokenResponse=e._tokenResponse,this.operationType=e.operationType}static _fromIdTokenResponse(e,r,t,i=!1){return I(this,null,function*(){let o=yield va._fromIdTokenResponse(e,t,i),s=WB(t);return new n({user:o,providerId:s,_tokenResponse:t,operationType:r})})}static _forOperation(e,r,t){return I(this,null,function*(){yield e._updateTokensIfNecessary(t,!0);let i=WB(t);return new n({user:e,providerId:i,_tokenResponse:t,operationType:r})})}};function WB(n){return n.providerId?n.providerId:"phoneNumber"in n?"phone":null}function VJ(n,e){return I(this,null,function*(){return IJ(n,"POST","/v1/accounts:signInWithCustomToken",yN(n,e))})}function DN(n,e){return I(this,null,function*(){if(yr(n.app))return Promise.reject(Bg(n));let r=uG(n),t=yield VJ(r,{token:e,returnSecureToken:!0}),i=yield pN._fromIdTokenResponse(r,"signIn",t);return yield r._updateCurrentUser(i.user),i})}function mI(n,e,r,t){return Ge(n).onAuthStateChanged(e,r,t)}function RN(n){return Ge(n).signOut()}var dI="__sak";var hI=class{constructor(e,r){this.storageRetriever=e,this.type=r}_isAvailable(){try{return this.storage?(this.storage.setItem(dI,"1"),this.storage.removeItem(dI),Promise.resolve(!0)):Promise.resolve(!1)}catch{return Promise.resolve(!1)}}_set(e,r){return this.storage.setItem(e,JSON.stringify(r)),Promise.resolve()}_get(e){let r=this.storage.getItem(e);return Promise.resolve(r?JSON.parse(r):null)}_remove(e){return this.storage.removeItem(e),Promise.resolve()}get storage(){return this.storageRetriever()}};var BJ=1e3,GJ=10,$J=(()=>{class n extends hI{constructor(){super(()=>window.localStorage,"LOCAL"),this.boundEventHandler=(r,t)=>this.onStorageEvent(r,t),this.listeners={},this.localCache={},this.pollTimer=null,this.fallbackToPolling=LJ(),this._shouldAllowMigration=!0}forAllChangedKeys(r){for(let t of Object.keys(this.listeners)){let i=this.storage.getItem(t),o=this.localCache[t];i!==o&&r(t,o,i)}}onStorageEvent(r,t=!1){if(!r.key){this.forAllChangedKeys((a,c,l)=>{this.notifyListeners(a,l)});return}let i=r.key;t?this.detachListener():this.stopPolling();let o=()=>{let a=this.storage.getItem(i);!t&&this.localCache[i]===a||this.notifyListeners(i,a)},s=this.storage.getItem(i);bJ()&&s!==r.newValue&&r.newValue!==r.oldValue?setTimeout(o,GJ):o()}notifyListeners(r,t){this.localCache[r]=t;let i=this.listeners[r];if(i)for(let o of Array.from(i))o(t&&JSON.parse(t))}startPolling(){this.stopPolling(),this.pollTimer=setInterval(()=>{this.forAllChangedKeys((r,t,i)=>{this.onStorageEvent(new StorageEvent("storage",{key:r,oldValue:t,newValue:i}),!0)})},BJ)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(r,t){Object.keys(this.listeners).length===0&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[r]||(this.listeners[r]=new Set,this.localCache[r]=this.storage.getItem(r)),this.listeners[r].add(t)}_removeListener(r,t){this.listeners[r]&&(this.listeners[r].delete(t),this.listeners[r].size===0&&delete this.listeners[r]),Object.keys(this.listeners).length===0&&(this.detachListener(),this.stopPolling())}_set(r,t){return I(this,null,function*(){yield pc(n.prototype,this,"_set").call(this,r,t),this.localCache[r]=JSON.stringify(t)})}_get(r){return I(this,null,function*(){let t=yield pc(n.prototype,this,"_get").call(this,r);return this.localCache[r]=JSON.stringify(t),t})}_remove(r){return I(this,null,function*(){yield pc(n.prototype,this,"_remove").call(this,r),delete this.localCache[r]})}}return n.type="LOCAL",n})(),jJ=$J;var HJ=(()=>{class n extends hI{constructor(){super(()=>window.sessionStorage,"SESSION")}_addListener(r,t){}_removeListener(r,t){}}return n.type="SESSION",n})(),WJ=HJ;function zJ(n){return Promise.all(n.map(e=>I(null,null,function*(){try{return{fulfilled:!0,value:yield e}}catch(r){return{fulfilled:!1,reason:r}}})))}var qJ=(()=>{class n{constructor(r){this.eventTarget=r,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(r){let t=this.receivers.find(o=>o.isListeningto(r));if(t)return t;let i=new n(r);return this.receivers.push(i),i}isListeningto(r){return this.eventTarget===r}handleEvent(r){return I(this,null,function*(){let t=r,{eventId:i,eventType:o,data:s}=t.data,a=this.handlersMap[o];if(!a?.size)return;t.ports[0].postMessage({status:"ack",eventId:i,eventType:o});let c=Array.from(a).map(u=>I(this,null,function*(){return u(t.origin,s)})),l=yield zJ(c);t.ports[0].postMessage({status:"done",eventId:i,eventType:o,response:l})})}_subscribe(r,t){Object.keys(this.handlersMap).length===0&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[r]||(this.handlersMap[r]=new Set),this.handlersMap[r].add(t)}_unsubscribe(r,t){this.handlersMap[r]&&t&&this.handlersMap[r].delete(t),(!t||this.handlersMap[r].size===0)&&delete this.handlersMap[r],Object.keys(this.handlersMap).length===0&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}}n.receivers=[];return n})();function KJ(n="",e=10){let r="";for(let t=0;t<e;t++)r+=Math.floor(Math.random()*10);return n+r}var EN=class{constructor(e){this.target=e,this.handlers=new Set}removeMessageHandler(e){e.messageChannel&&(e.messageChannel.port1.removeEventListener("message",e.onMessage),e.messageChannel.port1.close()),this.handlers.delete(e)}_send(e,r,t=50){return I(this,null,function*(){let i=typeof MessageChannel<"u"?new MessageChannel:null;if(!i)throw new Error("connection_unavailable");let o,s;return new Promise((a,c)=>{let l=KJ("",20);i.port1.start();let u=setTimeout(()=>{c(new Error("unsupported_event"))},t);s={messageChannel:i,onMessage(d){let f=d;if(f.data.eventId===l)switch(f.data.status){case"ack":clearTimeout(u),o=setTimeout(()=>{c(new Error("timeout"))},3e3);break;case"done":clearTimeout(o),a(f.data.response);break;default:clearTimeout(u),clearTimeout(o),c(new Error("invalid_response"));break}}},this.handlers.add(s),i.port1.addEventListener("message",s.onMessage),this.target.postMessage({eventType:e,eventId:l,data:r},[i.port2])}).finally(()=>{s&&this.removeMessageHandler(s)})})}};function zB(){return window}function dG(){return typeof zB().WorkerGlobalScope<"u"&&typeof zB().importScripts=="function"}function YJ(){return I(this,null,function*(){if(!navigator?.serviceWorker)return null;try{return(yield navigator.serviceWorker.ready).active}catch{return null}})}function QJ(){var n;return((n=navigator?.serviceWorker)===null||n===void 0?void 0:n.controller)||null}function XJ(){return dG()?self:null}var hG="firebaseLocalStorageDb",JJ=1,fI="firebaseLocalStorage",fG="fbase_key",dl=class{constructor(e){this.request=e}toPromise(){return new Promise((e,r)=>{this.request.addEventListener("success",()=>{e(this.request.result)}),this.request.addEventListener("error",()=>{r(this.request.error)})})}};function pI(n,e){return n.transaction([fI],e?"readwrite":"readonly").objectStore(fI)}function ZJ(){let n=indexedDB.deleteDatabase(hG);return new dl(n).toPromise()}function _N(){let n=indexedDB.open(hG,JJ);return new Promise((e,r)=>{n.addEventListener("error",()=>{r(n.error)}),n.addEventListener("upgradeneeded",()=>{let t=n.result;try{t.createObjectStore(fI,{keyPath:fG})}catch(i){r(i)}}),n.addEventListener("success",()=>I(null,null,function*(){let t=n.result;t.objectStoreNames.contains(fI)?e(t):(t.close(),yield ZJ(),e(yield _N()))}))})}function qB(n,e,r){return I(this,null,function*(){let t=pI(n,!0).put({[fG]:e,value:r});return new dl(t).toPromise()})}function eZ(n,e){return I(this,null,function*(){let r=pI(n,!1).get(e),t=yield new dl(r).toPromise();return t===void 0?null:t.value})}function KB(n,e){let r=pI(n,!0).delete(e);return new dl(r).toPromise()}var tZ=800,nZ=3,rZ=(()=>{class n{constructor(){this.type="LOCAL",this._shouldAllowMigration=!0,this.listeners={},this.localCache={},this.pollTimer=null,this.pendingWrites=0,this.receiver=null,this.sender=null,this.serviceWorkerReceiverAvailable=!1,this.activeServiceWorker=null,this._workerInitializationPromise=this.initializeServiceWorkerMessaging().then(()=>{},()=>{})}_openDb(){return I(this,null,function*(){return this.db?this.db:(this.db=yield _N(),this.db)})}_withRetries(r){return I(this,null,function*(){let t=0;for(;;)try{let i=yield this._openDb();return yield r(i)}catch(i){if(t++>nZ)throw i;this.db&&(this.db.close(),this.db=void 0)}})}initializeServiceWorkerMessaging(){return I(this,null,function*(){return dG()?this.initializeReceiver():this.initializeSender()})}initializeReceiver(){return I(this,null,function*(){this.receiver=qJ._getInstance(XJ()),this.receiver._subscribe("keyChanged",(r,t)=>I(this,null,function*(){return{keyProcessed:(yield this._poll()).includes(t.key)}})),this.receiver._subscribe("ping",(r,t)=>I(this,null,function*(){return["keyChanged"]}))})}initializeSender(){return I(this,null,function*(){var r,t;if(this.activeServiceWorker=yield YJ(),!this.activeServiceWorker)return;this.sender=new EN(this.activeServiceWorker);let i=yield this.sender._send("ping",{},800);i&&!((r=i[0])===null||r===void 0)&&r.fulfilled&&!((t=i[0])===null||t===void 0)&&t.value.includes("keyChanged")&&(this.serviceWorkerReceiverAvailable=!0)})}notifyServiceWorker(r){return I(this,null,function*(){if(!(!this.sender||!this.activeServiceWorker||QJ()!==this.activeServiceWorker))try{yield this.sender._send("keyChanged",{key:r},this.serviceWorkerReceiverAvailable?800:50)}catch{}})}_isAvailable(){return I(this,null,function*(){try{if(!indexedDB)return!1;let r=yield _N();return yield qB(r,dI,"1"),yield KB(r,dI),!0}catch{}return!1})}_withPendingWrite(r){return I(this,null,function*(){this.pendingWrites++;try{yield r()}finally{this.pendingWrites--}})}_set(r,t){return I(this,null,function*(){return this._withPendingWrite(()=>I(this,null,function*(){return yield this._withRetries(i=>qB(i,r,t)),this.localCache[r]=t,this.notifyServiceWorker(r)}))})}_get(r){return I(this,null,function*(){let t=yield this._withRetries(i=>eZ(i,r));return this.localCache[r]=t,t})}_remove(r){return I(this,null,function*(){return this._withPendingWrite(()=>I(this,null,function*(){return yield this._withRetries(t=>KB(t,r)),delete this.localCache[r],this.notifyServiceWorker(r)}))})}_poll(){return I(this,null,function*(){let r=yield this._withRetries(o=>{let s=pI(o,!1).getAll();return new dl(s).toPromise()});if(!r)return[];if(this.pendingWrites!==0)return[];let t=[],i=new Set;if(r.length!==0)for(let{fbase_key:o,value:s}of r)i.add(o),JSON.stringify(this.localCache[o])!==JSON.stringify(s)&&(this.notifyListeners(o,s),t.push(o));for(let o of Object.keys(this.localCache))this.localCache[o]&&!i.has(o)&&(this.notifyListeners(o,null),t.push(o));return t})}notifyListeners(r,t){this.localCache[r]=t;let i=this.listeners[r];if(i)for(let o of Array.from(i))o(t)}startPolling(){this.stopPolling(),this.pollTimer=setInterval(()=>I(this,null,function*(){return this._poll()}),tZ)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(r,t){Object.keys(this.listeners).length===0&&this.startPolling(),this.listeners[r]||(this.listeners[r]=new Set,this._get(r)),this.listeners[r].add(t)}_removeListener(r,t){this.listeners[r]&&(this.listeners[r].delete(t),this.listeners[r].size===0&&delete this.listeners[r]),Object.keys(this.listeners).length===0&&this.stopPolling()}}return n.type="LOCAL",n})(),iZ=rZ;var pLe=kJ("rcb"),ELe=new ul(3e4,6e4);var _Le=new ul(2e3,1e4);var TLe=600*1e3;var ILe=new ul(3e4,6e4);var vLe=new ul(5e3,15e3);var yLe=encodeURIComponent("fac");var YB="@firebase/auth",QB="1.10.8";var TN=class{constructor(e){this.auth=e,this.internalListeners=new Map}getUid(){var e;return this.assertAuthConfigured(),((e=this.auth.currentUser)===null||e===void 0?void 0:e.uid)||null}getToken(e){return I(this,null,function*(){return this.assertAuthConfigured(),yield this.auth._initializationPromise,this.auth.currentUser?{accessToken:yield this.auth.currentUser.getIdToken(e)}:null})}addAuthTokenListener(e){if(this.assertAuthConfigured(),this.internalListeners.has(e))return;let r=this.auth.onIdTokenChanged(t=>{e(t?.stsTokenManager.accessToken||null)});this.internalListeners.set(e,r),this.updateProactiveRefresh()}removeAuthTokenListener(e){this.assertAuthConfigured();let r=this.internalListeners.get(e);r&&(this.internalListeners.delete(e),r(),this.updateProactiveRefresh())}assertAuthConfigured(){Xe(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}};function oZ(n){switch(n){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";case"WebExtension":return"web-extension";default:return}}function sZ(n){ur(new _n("auth",(e,{options:r})=>{let t=e.getProvider("app").getImmediate(),i=e.getProvider("heartbeat"),o=e.getProvider("app-check-internal"),{apiKey:s,authDomain:a}=t.options;Xe(s&&!s.includes(":"),"invalid-api-key",{appName:t.name});let c={apiKey:s,authDomain:a,clientPlatform:n,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:lG(n)},l=new mN(t,i,o,c);return UJ(l,r),l},"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback((e,r,t)=>{e.getProvider("auth-internal").initialize()})),ur(new _n("auth-internal",e=>{let r=uG(e.getProvider("auth").getImmediate());return(t=>new TN(t))(r)},"PRIVATE").setInstantiationMode("EXPLICIT")),Qe(YB,QB,oZ(n)),Qe(YB,QB,"esm2017")}var aZ=300,SLe=tB("authIdTokenMaxAge")||aZ;function cZ(){var n,e;return(e=(n=document.getElementsByTagName("head"))===null||n===void 0?void 0:n[0])!==null&&e!==void 0?e:document}FJ({loadJS(n){return new Promise((e,r)=>{let t=document.createElement("script");t.setAttribute("src",n),t.onload=e,t.onerror=i=>{let o=IN("internal-error");o.customData=i,r(o)},t.type="text/javascript",t.charset="UTF-8",cZ().appendChild(t)})},gapiScript:"https://apis.google.com/js/api.js",recaptchaV2Script:"https://www.google.com/recaptcha/api.js",recaptchaEnterpriseScript:"https://www.google.com/recaptcha/enterprise.js?render="});sZ("Browser");function pG(n){return new ge(function(e){var r=mI(n,e.next.bind(e),e.error.bind(e),e.complete.bind(e));return{unsubscribe:r}})}var EG="auth",hl=class{constructor(e){return e}},fl=class{constructor(){return vs(EG)}};var CN=new Z("angularfire2.auth-instances");function eee(n,e){let r=Ea(EG,n,e);return r&&new hl(r)}function tee(n){return(e,r)=>{let t=e.runOutsideAngular(()=>n(r));return new hl(t)}}var nee={provide:fl,deps:[[new pn,CN]]},ree={provide:hl,useFactory:eee,deps:[[new pn,CN],$i]};function IMe(n,...e){return Qe("angularfire",Bi.full,"auth"),pr([ree,nee,{provide:CN,useFactory:tee(n),multi:!0,deps:[Le,St,Gi,ys,[new pn,Ta],...e]}])}var bd=pe(pG,!0);var EI=pe(gI,!0);var vMe=pe(AN,!0);var _G=pe(DN,!0,2);var TG=pe(RN,!0,2);var oee="type.googleapis.com/google.protobuf.Int64Value",see="type.googleapis.com/google.protobuf.UInt64Value";function SG(n,e){let r={};for(let t in n)n.hasOwnProperty(t)&&(r[t]=e(n[t]));return r}function _I(n){if(n==null)return null;if(n instanceof Number&&(n=n.valueOf()),typeof n=="number"&&isFinite(n)||n===!0||n===!1||Object.prototype.toString.call(n)==="[object String]")return n;if(n instanceof Date)return n.toISOString();if(Array.isArray(n))return n.map(e=>_I(e));if(typeof n=="function"||typeof n=="object")return SG(n,e=>_I(e));throw new Error("Data cannot be encoded in JSON: "+n)}function Ld(n){if(n==null)return n;if(n["@type"])switch(n["@type"]){case oee:case see:{let e=Number(n.value);if(isNaN(e))throw new Error("Data cannot be decoded from JSON: "+n);return e}default:throw new Error("Data cannot be decoded from JSON: "+n)}return Array.isArray(n)?n.map(e=>Ld(e)):typeof n=="function"||typeof n=="object"?SG(n,e=>Ld(e)):n}var bN="functions";var IG={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"},Ar=class n extends vr{constructor(e,r,t){super(`${bN}/${e}`,r||""),this.details=t,Object.setPrototypeOf(this,n.prototype)}};function aee(n){if(n>=200&&n<300)return"ok";switch(n){case 0:return"internal";case 400:return"invalid-argument";case 401:return"unauthenticated";case 403:return"permission-denied";case 404:return"not-found";case 409:return"aborted";case 429:return"resource-exhausted";case 499:return"cancelled";case 500:return"internal";case 501:return"unimplemented";case 503:return"unavailable";case 504:return"deadline-exceeded"}return"unknown"}function TI(n,e){let r=aee(n),t=r,i;try{let o=e&&e.error;if(o){let s=o.status;if(typeof s=="string"){if(!IG[s])return new Ar("internal","internal");r=IG[s],t=s}let a=o.message;typeof a=="string"&&(t=a),i=o.details,i!==void 0&&(i=Ld(i))}}catch{}return r==="ok"?null:new Ar(r,t,i)}var NN=class{constructor(e,r,t,i){this.app=e,this.auth=null,this.messaging=null,this.appCheck=null,this.serverAppAppCheckToken=null,yr(e)&&e.settings.appCheckToken&&(this.serverAppAppCheckToken=e.settings.appCheckToken),this.auth=r.getImmediate({optional:!0}),this.messaging=t.getImmediate({optional:!0}),this.auth||r.get().then(o=>this.auth=o,()=>{}),this.messaging||t.get().then(o=>this.messaging=o,()=>{}),this.appCheck||i?.get().then(o=>this.appCheck=o,()=>{})}getAuthToken(){return I(this,null,function*(){if(this.auth)try{let e=yield this.auth.getToken();return e?.accessToken}catch{return}})}getMessagingToken(){return I(this,null,function*(){if(!(!this.messaging||!("Notification"in self)||Notification.permission!=="granted"))try{return yield this.messaging.getToken()}catch{return}})}getAppCheckToken(e){return I(this,null,function*(){if(this.serverAppAppCheckToken)return this.serverAppAppCheckToken;if(this.appCheck){let r=e?yield this.appCheck.getLimitedUseToken():yield this.appCheck.getToken();return r.error?null:r.token}return null})}getContext(e){return I(this,null,function*(){let r=yield this.getAuthToken(),t=yield this.getMessagingToken(),i=yield this.getAppCheckToken(e);return{authToken:r,messagingToken:t,appCheckToken:i}})}};var ON="us-central1",cee=/^data: (.*?)(?:\n|$)/;function lee(n){let e=null;return{promise:new Promise((r,t)=>{e=setTimeout(()=>{t(new Ar("deadline-exceeded","deadline-exceeded"))},n)}),cancel:()=>{e&&clearTimeout(e)}}}var wN=class{constructor(e,r,t,i,o=ON,s=(...a)=>fetch(...a)){this.app=e,this.fetchImpl=s,this.emulatorOrigin=null,this.contextProvider=new NN(e,r,t,i),this.cancelAllRequests=new Promise(a=>{this.deleteService=()=>Promise.resolve(a())});try{let a=new URL(o);this.customDomain=a.origin+(a.pathname==="/"?"":a.pathname),this.region=ON}catch{this.customDomain=null,this.region=o}}_delete(){return this.deleteService()}_url(e){let r=this.app.options.projectId;return this.emulatorOrigin!==null?`${this.emulatorOrigin}/${r}/${this.region}/${e}`:this.customDomain!==null?`${this.customDomain}/${e}`:`https://${this.region}-${r}.cloudfunctions.net/${e}`}};function uee(n,e,r){let t=Hr(e);n.emulatorOrigin=`http${t?"s":""}://${e}:${r}`,t&&(ha(n.emulatorOrigin),sl("Functions",!0))}function dee(n,e,r){let t=i=>fee(n,e,i,r||{});return t.stream=(i,o)=>gee(n,e,i,o||{}),t}function hee(n,e,r,t){return I(this,null,function*(){r["Content-Type"]="application/json";let i;try{i=yield t(n,{method:"POST",body:JSON.stringify(e),headers:r})}catch{return{status:0,json:null}}let o=null;try{o=yield i.json()}catch{}return{status:i.status,json:o}})}function AG(n,e){return I(this,null,function*(){let r={},t=yield n.contextProvider.getContext(e.limitedUseAppCheckTokens);return t.authToken&&(r.Authorization="Bearer "+t.authToken),t.messagingToken&&(r["Firebase-Instance-ID-Token"]=t.messagingToken),t.appCheckToken!==null&&(r["X-Firebase-AppCheck"]=t.appCheckToken),r})}function fee(n,e,r,t){return I(this,null,function*(){r=_I(r);let i={data:r},o=yield AG(n,t),s=t.timeout||7e4,a=lee(s),c=yield Promise.race([hee(e,i,o,n.fetchImpl),a.promise,n.cancelAllRequests]);if(a.cancel(),!c)throw new Ar("cancelled","Firebase Functions instance was deleted.");let l=TI(c.status,c.json);if(l)throw l;if(!c.json)throw new Ar("internal","Response is not valid JSON object.");let u=c.json.data;if(typeof u>"u"&&(u=c.json.result),typeof u>"u")throw new Ar("internal","Response is missing data field.");return{data:Ld(u)}})}function gee(n,e,r,t){return I(this,null,function*(){var i;r=_I(r);let o={data:r},s=yield AG(n,t);s["Content-Type"]="application/json",s.Accept="text/event-stream";let a;try{a=yield n.fetchImpl(e,{method:"POST",body:JSON.stringify(o),headers:s,signal:t?.signal})}catch(g){if(g instanceof Error&&g.name==="AbortError"){let _=new Ar("cancelled","Request was cancelled.");return{data:Promise.reject(_),stream:{[Symbol.asyncIterator](){return{next(){return Promise.reject(_)}}}}}}let p=TI(0,null);return{data:Promise.reject(p),stream:{[Symbol.asyncIterator](){return{next(){return Promise.reject(p)}}}}}}let c,l,u=new Promise((g,p)=>{c=g,l=p});(i=t?.signal)===null||i===void 0||i.addEventListener("abort",()=>{let g=new Ar("cancelled","Request was cancelled.");l(g)});let d=a.body.getReader(),f=mee(d,c,l,t?.signal);return{stream:{[Symbol.asyncIterator](){let g=f.getReader();return{next(){return I(this,null,function*(){let{value:_,done:T}=yield g.read();return{value:_,done:T}})},return(){return I(this,null,function*(){return yield g.cancel(),{done:!0,value:void 0}})}}}},data:u}})}function mee(n,e,r,t){let i=(s,a)=>{let c=s.match(cee);if(!c)return;let l=c[1];try{let u=JSON.parse(l);if("result"in u){e(Ld(u.result));return}if("message"in u){a.enqueue(Ld(u.message));return}if("error"in u){let d=TI(0,u);a.error(d),r(d);return}}catch(u){if(u instanceof Ar){a.error(u),r(u);return}}},o=new TextDecoder;return new ReadableStream({start(s){let a="";return c();function c(){return I(this,null,function*(){if(t?.aborted){let l=new Ar("cancelled","Request was cancelled");return s.error(l),r(l),Promise.resolve()}try{let{value:l,done:u}=yield n.read();if(u){a.trim()&&i(a.trim(),s),s.close();return}if(t?.aborted){let f=new Ar("cancelled","Request was cancelled");s.error(f),r(f),yield n.cancel();return}a+=o.decode(l,{stream:!0});let d=a.split(`
141
- `);a=d.pop()||"";for(let f of d)f.trim()&&i(f.trim(),s);return c()}catch(l){let u=l instanceof Ar?l:TI(0,null);s.error(u),r(u)}})}},cancel(){return n.cancel()}})}var vG="@firebase/functions",yG="0.12.9";var pee="auth-internal",Eee="app-check-internal",_ee="messaging-internal";function Tee(n){let e=(r,{instanceIdentifier:t})=>{let i=r.getProvider("app").getImmediate(),o=r.getProvider(pee),s=r.getProvider(_ee),a=r.getProvider(Eee);return new wN(i,o,s,a,t)};ur(new _n(bN,e,"PUBLIC").setMultipleInstances(!0)),Qe(vG,yG,n),Qe(vG,yG,"esm2017")}function DG(n=Sr(),e=ON){let t=Po(Ge(n),bN).getImmediate({identifier:e}),i=Nd("functions");return i&&LN(t,...i),t}function LN(n,e,r){uee(Ge(n),e,r)}function RG(n,e,r){return dee(Ge(n),e,r)}Tee();var dr=class{constructor(e){return e}},CG="functions",MN=class{constructor(){return vs(CG)}};var PN=new Z("angularfire2.functions-instances");function Iee(n,e){let r=Ea(CG,n,e);return r&&new dr(r)}function vee(n){return(e,r)=>{let t=e.runOutsideAngular(()=>n(r));return new dr(t)}}var yee={provide:MN,deps:[[new pn,PN]]},See={provide:dr,useFactory:Iee,deps:[[new pn,PN],$i]};function VMe(n,...e){return Qe("angularfire",Bi.full,"fn"),pr([See,yee,{provide:PN,useFactory:vee(n),multi:!0,deps:[Le,St,Gi,ys,[new pn,fl],[new pn,Ta],...e]}])}var BMe=pe(LN,!0),GMe=pe(DG,!0);var Dr=pe(RG,!0);var Lt=(()=>{let e=class e{constructor(t,i){this.functions=t,this.serviceBook=i,this.sf=!1,this.defaultProperties={},this.draftEvents=[],this.liveStateSyncEvents=Object.values(L.Events.LiveStateSync||{}),this.eventRateLimitCache={},this.EVENT_LIMIT=50,this.TIME_WINDOW_MS=60*1e3,this.analyticsQueue=[],this.batchTimer=null,this.BATCH_WINDOW_MS=5*1e3,this.MAX_BATCH_SIZE=50,this.liveStateService=null;try{this.updateDefaultProperties({sdkVersion:jr()}),window?.location?.href&&(this.defaultProperties.pageUrl=window.location.href),this.serviceBook.observe(pd).subscribe(o=>{this.commentService=o??void 0}),this.serviceBook.observe(DT).subscribe(o=>{this.reactionService=o??void 0}),this.serviceBook.observe(RT).subscribe(o=>{this.areaService=o??void 0}),this.serviceBook.observe(F1).subscribe(o=>{this.liveStateService=o??null})}catch(o){H.catch("Error in AnalyticsService constructor: ",o)}}updateDefaultProperties(t={}){this.defaultProperties=x(x({},this.defaultProperties),t)}setInstalledFeature(t){try{this.defaultProperties?.installedFeatures||(this.defaultProperties.installedFeatures=[]),this.defaultProperties.installedFeatures.includes(t)||this.defaultProperties.installedFeatures.push(t)}catch(i){H.catch("Error in AnalyticsService setInstalledFeature: ",i)}}setFeatureConfig({feature:t,config:i}){try{this.defaultProperties.featureConfigs||(this.defaultProperties.featureConfigs={}),this.defaultProperties.featureConfigs[t]||(this.defaultProperties.featureConfigs[t]={}),this.defaultProperties.featureConfigs[t]=x(x({},this.defaultProperties.featureConfigs[t]),i)}catch(o){H.catch("Error in AnalyticsService setFeatureConfig: ",o)}}setSF(t){try{this.sf=t}catch(i){H.catch("Error in AnalyticsService setSF: ",i)}}setAuthService(t){try{this.authService=t}catch(i){H.catch("Error in AnalyticsService setAuthService: ",i)}}setCommentService(t){try{this.commentService=t}catch(i){H.catch("Error in AnalyticsService setCommentService: ",i)}}setConfigService(t){try{this.configService=t}catch(i){H.catch("Error in AnalyticsService setConfigService: ",i)}}setDomService(t){try{this.domService=t}catch(i){H.catch("Error in AnalyticsService setDomService: ",i)}}setUserService(t){try{this.userService=t}catch(i){H.catch("Error in AnalyticsService setUserService: ",i)}}identifyUser(t,i,o={}){try{this.userId=t;let s=typeof i=="object"?JSON.parse(JSON.stringify(i)):i;this.userService?.externalUserDataProviderAvailable()&&s?.userId&&(s={userId:s.userId}),this.user=s;let a=this.defaultProperties?this.defaultProperties.apiKey:null;if(st.production||st.staging){let c=Date.now(),l={userId:t,clientUserId:this.user?.userId,traits:le(x({},s),{apiKey:a,forceReset:o?.forceReset,eventTimestamp:c}),properties:le(x({},this.defaultProperties),{eventTimestamp:c}),sf:this.sf,context:this.getContext(),eventTimestamp:c};this.setAnalytics("identify",l)}if(this.userId&&this.draftEvents?.length){let c=this.draftEvents?.slice();this.draftEvents=[],c?.forEach(l=>{l.type==="track"&&l?.data?.eventName&&this.trackEvent(l.data.eventName,l.data.properties,l.data.mergeDefaultProperties,l.data.userId,l.data.clientUserId)})}}catch(s){H.catch("Error in AnalyticsService identifyUser: ",s)}}trackPage(t,i="",o={}){try{if((st.production||st.staging)&&this.userId){let s={userId:this.userId,clientUserId:this.user?.userId,name:t,properties:o,sf:this.sf,context:this.getContext()};this.setAnalytics("page",s)}}catch(s){H.catch("Error in AnalyticsService trackPage: ",s)}}trackEvent(c){return I(this,arguments,function*(t,i={},o=!0,s,a){try{if(this.sf&&k1.includes(t))return Promise.resolve();if(st.production||st.staging)if(this.userId||s){if(this.eventRateLimitCache[t]?.blockedForSession)return Promise.resolve();let l=Date.now();if(this.eventRateLimitCache[t]&&l-this.eventRateLimitCache[t].timestamp<this.TIME_WINDOW_MS){if(this.eventRateLimitCache[t].count>=this.EVENT_LIMIT){if(!this.eventRateLimitCache[t].rateLimitExceededEventTriggered){this.eventRateLimitCache[t].rateLimitExceededEventTriggered=!0,this.eventRateLimitCache[t].blockedForSession=!0;let u=x({eventName:t},i||{});this.triggerTrackEvent(L.Events.Core.SDK_EVENT_RATE_LIMIT_EXCEEDED,u,o,s,a)}return Promise.resolve()}this.eventRateLimitCache[t].count++}else this.eventRateLimitCache[t]={count:1,timestamp:l,rateLimitExceededEventTriggered:!1,blockedForSession:!1};return this.triggerTrackEvent(t,i,o,s,a)}else return i?.eventTimestamp||(i.eventTimestamp=Date.now()),this.draftEvents.push({type:"track",data:{eventName:t,properties:i,mergeDefaultProperties:o,userId:s,clientUserId:a}}),Promise.resolve();return Promise.resolve()}catch(l){return H.catch("Error in AnalyticsService trackEvent: ",l),Promise.resolve()}})}triggerTrackEvent(c){return I(this,arguments,function*(t,i={},o=!0,s,a){try{o&&(i||(i={}),i=x(x({},i),this.defaultProperties));let l;if(i?.annotationId){let d=i.annotationId;if(!l&&this.commentService){let f=this.commentService.getAnnotationById(d);f?.metadata&&(l=f.metadata),f?.targetElementId&&(i.targetElementId=f.targetElementId);let g=this.commentService.getMultiThreadAnnotationById(d);g?.metadata&&(l=g.metadata),g?.targetElementId&&(i.targetElementId=g.targetElementId)}if(!l){let f=this.serviceBook.get(AT)?.getAnnotationById(d);f?.metadata&&(l=f.metadata)}if(!l&&this.reactionService){let f=this.reactionService.getAnnotationById(d);f?.metadata&&(l=f.metadata),f?.targetElementId&&(i.targetElementId=f.targetElementId)}if(!l&&this.areaService){let f=this.areaService.getAnnotationById(d);f?.metadata&&(l=f.metadata)}}if(l&&typeof l=="object"&&(i=x(x({},i),l)),i&&typeof i=="object"&&(i=le(x({},i),{userId:this.userId||s,clientUserId:this.user?.userId||a}),i?.eventTimestamp||(i.eventTimestamp=Date.now()),i?.sessionTabId||(i.sessionTabId=this.domService?.getTabId()),this.liveStateSyncEvents.includes(t))){let d=this.liveStateService?.getSemStats();d&&!i?.semStats&&(i.semStats=d)}let u={userId:this.userId||s,clientUserId:this.user?.userId||a,event:t,properties:i,sf:this.sf,context:this.getContext(),eventTimestamp:i?.eventTimestamp};return this.setAnalytics("track",u)}catch(l){return H.catch("Error in AnalyticsService triggerTrackEvent: ",l),Promise.resolve()}})}setAnalytics(t,i){return I(this,null,function*(){try{return navigator.onLine?new Promise((o,s)=>{this.analyticsQueue.push({type:t,body:i,resolve:o,reject:s}),this.analyticsQueue.length>=this.MAX_BATCH_SIZE?this.flushAnalyticsQueue():this.scheduleBatchFlush()}):void 0}catch(o){return H.catch("Error in AnalyticsService setAnalytics: ",o),Promise.resolve()}})}scheduleBatchFlush(){try{this.batchTimer||(this.batchTimer=setTimeout(()=>{this.batchTimer=null,this.flushAnalyticsQueue()},this.BATCH_WINDOW_MS))}catch(t){H.catch("Error in AnalyticsService scheduleBatchFlush: ",t)}}flushAnalyticsQueue(){return I(this,null,function*(){try{if(this.batchTimer&&(clearTimeout(this.batchTimer),this.batchTimer=null),this.analyticsQueue.length===0||!navigator.onLine)return;let t=[...this.analyticsQueue];this.analyticsQueue=[];try{let i=Dr(this.functions,Ir({url:st.cloudFunction.sa,apiProxyDomain:this.configService?.getApiProxyDomain()}),{timeout:12e5}),o=t.map(s=>({type:s.type,data:s.body}));try{yield i({type:"batch",data:o}),t.forEach(s=>{try{s.resolve&&s.resolve()}catch(a){H.warn("Error resolving analytics promise: ",a)}})}catch(s){H.warn("Error in AnalyticsService batch flush: ",s),t.forEach(a=>{try{a.reject&&a.reject(s)}catch(c){H.warn("Error rejecting analytics promise: ",c)}})}}catch(i){H.catch("Error in AnalyticsService flushAnalyticsQueue: ",i),t.forEach(o=>{try{o.reject&&o.reject(i)}catch(s){H.warn("Error rejecting analytics promise: ",s)}})}}catch(t){H.catch("Error in AnalyticsService flushAnalyticsQueue: ",t)}})}trackAuthenticatedEvent(t,i={},o=!0){try{this.authService?.getUser$&&typeof this.authService?.getUser$()?.subscribe=="function"&&(this.authService.getUser()?this.trackEvent(t,i,o):((!i||typeof i!="object")&&(i={}),i?.eventTimestamp||(i.eventTimestamp=Date.now()),this.authService?.getUser$()?.pipe(Ct(s=>!!s),Nt(1))?.subscribe(()=>{this.trackEvent(t,i,o)})))}catch(s){H.catch("Error in AnalyticsService trackAuthenticatedEvent: ",s)}}getContext(){try{let t={},i=Cg();return t.os={name:i?.deviceInfo?.osName,version:i?.deviceInfo?.osVersion},t.page={path:i?.path,title:i?.title,url:i?.url},t.screen={height:i?.deviceInfo?.screenHeight,width:i?.deviceInfo?.screenWidth},t.app={name:i?.deviceInfo?.browserName,version:i?.deviceInfo?.browserVersion},t.device={type:i?.deviceInfo?.deviceType},t.timezone=VV(),t.userAgent=i?.deviceInfo?.userAgent,t}catch(t){H.catch("Error in AnalyticsService getContext: ",t)}}};e.\u0275fac=function(i){return new(i||e)(w(dr),w(li))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var _e=(()=>{let e=class e{get debugMode(){return LV()}get debugContextMode(){return MV()}get logsEnabled(){return this.logsEnabled$.value}constructor(t){this.analyticsService=t,this.logsEnabled$=new Y(!0),this.log("%c[WB] Creating SERVICE LoggingService","color: blue;")}enableLogs(){try{if(this.logsEnabled$.value===!0)return;this.logsEnabled$.next(!0)}catch(t){this.catch("Error in LoggingService enableLogs: ",t)}}disableLogs(){try{if(this.logsEnabled$.value===!1)return;this.logsEnabled$.next(!1)}catch(t){this.catch("Error in LoggingService disableLogs: ",t)}}log(t,...i){this.debugMode&&console.log(t,...i)}logContext(t,...i){this.debugContextMode&&console.log(t,...i)}warn(t,...i){this.debugMode&&console.warn(t,...i)}error(t,...i){this.debugMode&&console.error(t,...i)}debug(t,...i){this.debugMode&&console.debug(t,...i)}info(t,...i){this.debugMode&&console.info(t,...i)}catch(t,i,o,s=!1){try{let a=i?.message;this.logsEnabled$.value&&(a?.toLowerCase()?.includes("permission denied")||a?.toLowerCase()?.includes("permission_denied")||(i!==void 0?console.warn("Velt: ",t,i):console.warn("Velt: ",t))),s||this.analyticsService.trackEvent(L.Events.Core.SDK_ERROR,x({sourceMethod:t,message:(i?.message?i?.message:i)||t,clientUserId:this.analyticsService?.user?.userId,snippylyUserId:this.analyticsService?.user?.userSnippylyId,source:"sdk"},o||{}))}catch{}}};e.\u0275fac=function(i){return new(i||e)(w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var NG="@firebase/database",OG="1.0.20";var BO="";function Aee(n){BO=n}var $N=class{constructor(e){this.domStorage_=e,this.prefix_="firebase:"}set(e,r){r==null?this.domStorage_.removeItem(this.prefixedName_(e)):this.domStorage_.setItem(this.prefixedName_(e),rn(r))}get(e){let r=this.domStorage_.getItem(this.prefixedName_(e));return r==null?null:Rd(r)}remove(e){this.domStorage_.removeItem(this.prefixedName_(e))}prefixedName_(e){return this.prefix_+e}toString(){return this.domStorage_.toString()}};var jN=class{constructor(){this.cache_={},this.isInMemoryStorage=!0}set(e,r){r==null?delete this.cache_[e]:this.cache_[e]=r}get(e){return hi(this.cache_,e)?this.cache_[e]:null}remove(e){delete this.cache_[e]}};var a$=function(n){try{if(typeof window<"u"&&typeof window[n]<"u"){let e=window[n];return e.setItem("firebase:sentinel","cache"),e.removeItem("firebase:sentinel"),new $N(e)}}catch{}return new jN},ml=a$("localStorage"),HN=a$("sessionStorage");var Fd=new fi("@firebase/database"),c$=(function(){let n=1;return function(){return n++}})(),l$=function(n){let e=dB(n),r=new WT;r.update(e);let t=r.digest();return Cd.encodeByteArray(t)},gm=function(...n){let e="";for(let r=0;r<n.length;r++){let t=n[r];Array.isArray(t)||t&&typeof t=="object"&&typeof t.length=="number"?e+=gm.apply(null,t):typeof t=="object"?e+=rn(t):e+=t,e+=" "}return e},pl=null,wG=!0,Dee=function(n,e){ee(!e||n===!0||n===!1,"Can't turn on custom loggers persistently."),n===!0?(Fd.logLevel=Fe.VERBOSE,pl=Fd.log.bind(Fd),e&&HN.set("logging_enabled",!0)):typeof n=="function"?pl=n:(pl=null,HN.remove("logging_enabled"))},On=function(...n){if(wG===!0&&(wG=!1,pl===null&&HN.get("logging_enabled")===!0&&Dee(!0)),pl){let e=gm.apply(null,n);pl(e)}},mm=function(n){return function(...e){On(n,...e)}},WN=function(...n){let e="FIREBASE INTERNAL ERROR: "+gm(...n);Fd.error(e)},Ss=function(...n){let e=`FIREBASE FATAL ERROR: ${gm(...n)}`;throw Fd.error(e),new Error(e)},Zn=function(...n){let e="FIREBASE WARNING: "+gm(...n);Fd.warn(e)},Ree=function(){typeof window<"u"&&window.location&&window.location.protocol&&window.location.protocol.indexOf("https:")!==-1&&Zn("Insecure Firebase access from a secure page. Please use https in calls to new Firebase().")},zI=function(n){return typeof n=="number"&&(n!==n||n===Number.POSITIVE_INFINITY||n===Number.NEGATIVE_INFINITY)},Cee=function(n){if(Lo()||document.readyState==="complete")n();else{let e=!1,r=function(){if(!document.body){setTimeout(r,Math.floor(10));return}e||(e=!0,n())};document.addEventListener?(document.addEventListener("DOMContentLoaded",r,!1),window.addEventListener("load",r,!1)):document.attachEvent&&(document.attachEvent("onreadystatechange",()=>{document.readyState==="complete"&&r()}),window.attachEvent("onload",r))}},_l="[MIN_NAME]",Ra="[MAX_NAME]",Al=function(n,e){if(n===e)return 0;if(n===_l||e===Ra)return-1;if(e===_l||n===Ra)return 1;{let r=bG(n),t=bG(e);return r!==null?t!==null?r-t===0?n.length-e.length:r-t:-1:t!==null?1:n<e?-1:1}},Nee=function(n,e){return n===e?0:n<e?-1:1},qg=function(n,e){if(e&&n in e)return e[n];throw new Error("Missing required key ("+n+") in object: "+rn(e))},GO=function(n){if(typeof n!="object"||n===null)return rn(n);let e=[];for(let t in n)e.push(t);e.sort();let r="{";for(let t=0;t<e.length;t++)t!==0&&(r+=","),r+=rn(e[t]),r+=":",r+=GO(n[e[t]]);return r+="}",r},u$=function(n,e){let r=n.length;if(r<=e)return[n];let t=[];for(let i=0;i<r;i+=e)i+e>r?t.push(n.substring(i,r)):t.push(n.substring(i,i+e));return t};function wn(n,e){for(let r in n)n.hasOwnProperty(r)&&e(r,n[r])}var d$=function(n){ee(!zI(n),"Invalid JSON number");let e=11,r=52,t=(1<<e-1)-1,i,o,s,a,c;n===0?(o=0,s=0,i=1/n===-1/0?1:0):(i=n<0,n=Math.abs(n),n>=Math.pow(2,1-t)?(a=Math.min(Math.floor(Math.log(n)/Math.LN2),t),o=a+t,s=Math.round(n*Math.pow(2,r-a)-Math.pow(2,r))):(o=0,s=Math.round(n/Math.pow(2,1-t-r))));let l=[];for(c=r;c;c-=1)l.push(s%2?1:0),s=Math.floor(s/2);for(c=e;c;c-=1)l.push(o%2?1:0),o=Math.floor(o/2);l.push(i?1:0),l.reverse();let u=l.join(""),d="";for(c=0;c<64;c+=8){let f=parseInt(u.substr(c,8),2).toString(16);f.length===1&&(f="0"+f),d=d+f}return d.toLowerCase()},Oee=function(){return!!(typeof window=="object"&&window.chrome&&window.chrome.extension&&!/^chrome/.test(window.location.href))},wee=function(){return typeof Windows=="object"&&typeof Windows.UI=="object"};function bee(n,e){let r="Unknown Error";n==="too_big"?r="The data requested exceeds the maximum size that can be accessed with a single request.":n==="permission_denied"?r="Client doesn't have permission to access the desired data.":n==="unavailable"&&(r="The service is unavailable");let t=new Error(n+" at "+e._path.toString()+": "+r);return t.code=n.toUpperCase(),t}var Lee=new RegExp("^-?(0*)\\d{1,10}$"),Mee=-2147483648,Pee=2147483647,bG=function(n){if(Lee.test(n)){let e=Number(n);if(e>=Mee&&e<=Pee)return e}return null},Wd=function(n){try{n()}catch(e){setTimeout(()=>{let r=e.stack||"";throw Zn("Exception was thrown by user callback.",r),e},Math.floor(0))}},xee=function(){return(typeof window=="object"&&window.navigator&&window.navigator.userAgent||"").search(/googlebot|google webmaster tools|bingbot|yahoo! slurp|baiduspider|yandexbot|duckduckbot/i)>=0},Xg=function(n,e){let r=setTimeout(n,e);return typeof r=="number"&&typeof Deno<"u"&&Deno.unrefTimer?Deno.unrefTimer(r):typeof r=="object"&&r.unref&&r.unref(),r};var zN=class{constructor(e,r){this.appCheckProvider=r,this.appName=e.name,yr(e)&&e.settings.appCheckToken&&(this.serverAppAppCheckToken=e.settings.appCheckToken),this.appCheck=r?.getImmediate({optional:!0}),this.appCheck||r?.get().then(t=>this.appCheck=t)}getToken(e){if(this.serverAppAppCheckToken){if(e)throw new Error("Attempted reuse of `FirebaseServerApp.appCheckToken` after previous usage failed.");return Promise.resolve({token:this.serverAppAppCheckToken})}return this.appCheck?this.appCheck.getToken(e):new Promise((r,t)=>{setTimeout(()=>{this.appCheck?this.getToken(e).then(r,t):r(null)},0)})}addTokenChangeListener(e){var r;(r=this.appCheckProvider)===null||r===void 0||r.get().then(t=>t.addTokenListener(e))}notifyForInvalidToken(){Zn(`Provided AppCheck credentials for the app named "${this.appName}" are invalid. This usually indicates your app was not initialized correctly.`)}};var qN=class{constructor(e,r,t){this.appName_=e,this.firebaseOptions_=r,this.authProvider_=t,this.auth_=null,this.auth_=t.getImmediate({optional:!0}),this.auth_||t.onInit(i=>this.auth_=i)}getToken(e){return this.auth_?this.auth_.getToken(e).catch(r=>r&&r.code==="auth/token-not-initialized"?(On("Got auth/token-not-initialized error. Treating as null token."),null):Promise.reject(r)):new Promise((r,t)=>{setTimeout(()=>{this.auth_?this.getToken(e).then(r,t):r(null)},0)})}addTokenChangeListener(e){this.auth_?this.auth_.addAuthTokenListener(e):this.authProvider_.get().then(r=>r.addAuthTokenListener(e))}removeTokenChangeListener(e){this.authProvider_.get().then(r=>r.removeAuthTokenListener(e))}notifyForInvalidToken(){let e='Provided authentication credentials for the app named "'+this.appName_+'" are invalid. This usually indicates your app was not initialized correctly. ';"credential"in this.firebaseOptions_?e+='Make sure the "credential" property provided to initializeApp() is authorized to access the specified "databaseURL" and is from the correct project.':"serviceAccount"in this.firebaseOptions_?e+='Make sure the "serviceAccount" property provided to initializeApp() is authorized to access the specified "databaseURL" and is from the correct project.':e+='Make sure the "apiKey" and "databaseURL" properties provided to initializeApp() match the values provided for your app at https://console.firebase.google.com/.',Zn(e)}},Jg=(()=>{class n{constructor(r){this.accessToken=r}getToken(r){return Promise.resolve({accessToken:this.accessToken})}addTokenChangeListener(r){r(this.accessToken)}removeTokenChangeListener(r){}notifyForInvalidToken(){}}n.OWNER="owner";return n})(),vI="5",h$="v",f$="s",g$="r",m$="f",p$=/(console\.firebase|firebase-console-\w+\.corp|firebase\.corp)\.google\.com/,E$="ls",_$="p",KN="ac",T$="websocket",I$="long_polling";var yI=class{constructor(e,r,t,i,o=!1,s="",a=!1,c=!1,l=null){this.secure=r,this.namespace=t,this.webSocketOnly=i,this.nodeAdmin=o,this.persistenceKey=s,this.includeNamespaceInQueryParams=a,this.isUsingEmulator=c,this.emulatorOptions=l,this._host=e.toLowerCase(),this._domain=this._host.substr(this._host.indexOf(".")+1),this.internalHost=ml.get("host:"+e)||this._host}isCacheableHost(){return this.internalHost.substr(0,2)==="s-"}isCustomHost(){return this._domain!=="firebaseio.com"&&this._domain!=="firebaseio-demo.com"}get host(){return this._host}set host(e){e!==this.internalHost&&(this.internalHost=e,this.isCacheableHost()&&ml.set("host:"+this._host,this.internalHost))}toString(){let e=this.toURLString();return this.persistenceKey&&(e+="<"+this.persistenceKey+">"),e}toURLString(){let e=this.secure?"https://":"http://",r=this.includeNamespaceInQueryParams?`?ns=${this.namespace}`:"";return`${e}${this.host}/${r}`}};function Fee(n){return n.host!==n.internalHost||n.isCustomHost()||n.includeNamespaceInQueryParams}function v$(n,e,r){ee(typeof e=="string","typeof type must == string"),ee(typeof r=="object","typeof params must == object");let t;if(e===T$)t=(n.secure?"wss://":"ws://")+n.internalHost+"/.ws?";else if(e===I$)t=(n.secure?"https://":"http://")+n.internalHost+"/.lp?";else throw new Error("Unknown connection type: "+e);Fee(n)&&(r.ns=n.namespace);let i=[];return wn(r,(o,s)=>{i.push(o+"="+s)}),t+i.join("&")}var YN=class{constructor(){this.counters_={}}incrementCounter(e,r=1){hi(this.counters_,e)||(this.counters_[e]=0),this.counters_[e]+=r}get(){return JV(this.counters_)}};var xN={},FN={};function $O(n){let e=n.toString();return xN[e]||(xN[e]=new YN),xN[e]}function kee(n,e){let r=n.toString();return FN[r]||(FN[r]=e()),FN[r]}var QN=class{constructor(e){this.onMessage_=e,this.pendingResponses=[],this.currentResponseNum=0,this.closeAfterResponse=-1,this.onClose=null}closeAfter(e,r){this.closeAfterResponse=e,this.onClose=r,this.closeAfterResponse<this.currentResponseNum&&(this.onClose(),this.onClose=null)}handleResponse(e,r){for(this.pendingResponses[e]=r;this.pendingResponses[this.currentResponseNum];){let t=this.pendingResponses[this.currentResponseNum];delete this.pendingResponses[this.currentResponseNum];for(let i=0;i<t.length;++i)t[i]&&Wd(()=>{this.onMessage_(t[i])});if(this.currentResponseNum===this.closeAfterResponse){this.onClose&&(this.onClose(),this.onClose=null);break}this.currentResponseNum++}}};var LG="start",Uee="close",Vee="pLPCommand",Bee="pRTLPCB",y$="id",S$="pw",A$="ser",Gee="cb",$ee="seg",jee="ts",Hee="d",Wee="dframe",D$=1870,R$=30,zee=D$-R$,qee=25e3,Kee=3e4,SI=class n{constructor(e,r,t,i,o,s,a){this.connId=e,this.repoInfo=r,this.applicationId=t,this.appCheckToken=i,this.authToken=o,this.transportSessionId=s,this.lastSessionId=a,this.bytesSent=0,this.bytesReceived=0,this.everConnected_=!1,this.log_=mm(e),this.stats_=$O(r),this.urlFn=c=>(this.appCheckToken&&(c[KN]=this.appCheckToken),v$(r,I$,c))}open(e,r){this.curSegmentNum=0,this.onDisconnect_=r,this.myPacketOrderer=new QN(e),this.isClosed_=!1,this.connectTimeoutTimer_=setTimeout(()=>{this.log_("Timed out trying to connect."),this.onClosed_(),this.connectTimeoutTimer_=null},Math.floor(Kee)),Cee(()=>{if(this.isClosed_)return;this.scriptTagHolder=new XN((...o)=>{let[s,a,c,l,u]=o;if(this.incrementIncomingBytes_(o),!!this.scriptTagHolder)if(this.connectTimeoutTimer_&&(clearTimeout(this.connectTimeoutTimer_),this.connectTimeoutTimer_=null),this.everConnected_=!0,s===LG)this.id=a,this.password=c;else if(s===Uee)a?(this.scriptTagHolder.sendNewPolls=!1,this.myPacketOrderer.closeAfter(a,()=>{this.onClosed_()})):this.onClosed_();else throw new Error("Unrecognized command received: "+s)},(...o)=>{let[s,a]=o;this.incrementIncomingBytes_(o),this.myPacketOrderer.handleResponse(s,a)},()=>{this.onClosed_()},this.urlFn);let t={};t[LG]="t",t[A$]=Math.floor(Math.random()*1e8),this.scriptTagHolder.uniqueCallbackIdentifier&&(t[Gee]=this.scriptTagHolder.uniqueCallbackIdentifier),t[h$]=vI,this.transportSessionId&&(t[f$]=this.transportSessionId),this.lastSessionId&&(t[E$]=this.lastSessionId),this.applicationId&&(t[_$]=this.applicationId),this.appCheckToken&&(t[KN]=this.appCheckToken),typeof location<"u"&&location.hostname&&p$.test(location.hostname)&&(t[g$]=m$);let i=this.urlFn(t);this.log_("Connecting via long-poll to "+i),this.scriptTagHolder.addTag(i,()=>{})})}start(){this.scriptTagHolder.startLongPoll(this.id,this.password),this.addDisconnectPingFrame(this.id,this.password)}static forceAllow(){n.forceAllow_=!0}static forceDisallow(){n.forceDisallow_=!0}static isAvailable(){return Lo()?!1:n.forceAllow_?!0:!n.forceDisallow_&&typeof document<"u"&&document.createElement!=null&&!Oee()&&!wee()}markConnectionHealthy(){}shutdown_(){this.isClosed_=!0,this.scriptTagHolder&&(this.scriptTagHolder.close(),this.scriptTagHolder=null),this.myDisconnFrame&&(document.body.removeChild(this.myDisconnFrame),this.myDisconnFrame=null),this.connectTimeoutTimer_&&(clearTimeout(this.connectTimeoutTimer_),this.connectTimeoutTimer_=null)}onClosed_(){this.isClosed_||(this.log_("Longpoll is closing itself"),this.shutdown_(),this.onDisconnect_&&(this.onDisconnect_(this.everConnected_),this.onDisconnect_=null))}close(){this.isClosed_||(this.log_("Longpoll is being closed."),this.shutdown_())}send(e){let r=rn(e);this.bytesSent+=r.length,this.stats_.incrementCounter("bytes_sent",r.length);let t=FC(r),i=u$(t,zee);for(let o=0;o<i.length;o++)this.scriptTagHolder.enqueueSegment(this.curSegmentNum,i.length,i[o]),this.curSegmentNum++}addDisconnectPingFrame(e,r){if(Lo())return;this.myDisconnFrame=document.createElement("iframe");let t={};t[Wee]="t",t[y$]=e,t[S$]=r,this.myDisconnFrame.src=this.urlFn(t),this.myDisconnFrame.style.display="none",document.body.appendChild(this.myDisconnFrame)}incrementIncomingBytes_(e){let r=rn(e).length;this.bytesReceived+=r,this.stats_.incrementCounter("bytes_received",r)}},XN=class n{constructor(e,r,t,i){if(this.onDisconnect=t,this.urlFn=i,this.outstandingRequests=new Set,this.pendingSegs=[],this.currentSerial=Math.floor(Math.random()*1e8),this.sendNewPolls=!0,Lo())this.commandCB=e,this.onMessageCB=r;else{this.uniqueCallbackIdentifier=c$(),window[Vee+this.uniqueCallbackIdentifier]=e,window[Bee+this.uniqueCallbackIdentifier]=r,this.myIFrame=n.createIFrame_();let o="";this.myIFrame.src&&this.myIFrame.src.substr(0,11)==="javascript:"&&(o='<script>document.domain="'+document.domain+'";<\/script>');let s="<html><body>"+o+"</body></html>";try{this.myIFrame.doc.open(),this.myIFrame.doc.write(s),this.myIFrame.doc.close()}catch(a){On("frame writing exception"),a.stack&&On(a.stack),On(a)}}}static createIFrame_(){let e=document.createElement("iframe");if(e.style.display="none",document.body){document.body.appendChild(e);try{e.contentWindow.document||On("No IE domain setting required")}catch{let t=document.domain;e.src="javascript:void((function(){document.open();document.domain='"+t+"';document.close();})())"}}else throw"Document body has not initialized. Wait to initialize Firebase until after the document is ready.";return e.contentDocument?e.doc=e.contentDocument:e.contentWindow?e.doc=e.contentWindow.document:e.document&&(e.doc=e.document),e}close(){this.alive=!1,this.myIFrame&&(this.myIFrame.doc.body.textContent="",setTimeout(()=>{this.myIFrame!==null&&(document.body.removeChild(this.myIFrame),this.myIFrame=null)},Math.floor(0)));let e=this.onDisconnect;e&&(this.onDisconnect=null,e())}startLongPoll(e,r){for(this.myID=e,this.myPW=r,this.alive=!0;this.newRequest_(););}newRequest_(){if(this.alive&&this.sendNewPolls&&this.outstandingRequests.size<(this.pendingSegs.length>0?2:1)){this.currentSerial++;let e={};e[y$]=this.myID,e[S$]=this.myPW,e[A$]=this.currentSerial;let r=this.urlFn(e),t="",i=0;for(;this.pendingSegs.length>0&&this.pendingSegs[0].d.length+R$+t.length<=D$;){let s=this.pendingSegs.shift();t=t+"&"+$ee+i+"="+s.seg+"&"+jee+i+"="+s.ts+"&"+Hee+i+"="+s.d,i++}return r=r+t,this.addLongPollTag_(r,this.currentSerial),!0}else return!1}enqueueSegment(e,r,t){this.pendingSegs.push({seg:e,ts:r,d:t}),this.alive&&this.newRequest_()}addLongPollTag_(e,r){this.outstandingRequests.add(r);let t=()=>{this.outstandingRequests.delete(r),this.newRequest_()},i=setTimeout(t,Math.floor(qee)),o=()=>{clearTimeout(i),t()};this.addTag(e,o)}addTag(e,r){Lo()?this.doNodeLongPoll(e,r):setTimeout(()=>{try{if(!this.sendNewPolls)return;let t=this.myIFrame.doc.createElement("script");t.type="text/javascript",t.async=!0,t.src=e,t.onload=t.onreadystatechange=function(){let i=t.readyState;(!i||i==="loaded"||i==="complete")&&(t.onload=t.onreadystatechange=null,t.parentNode&&t.parentNode.removeChild(t),r())},t.onerror=()=>{On("Long-poll script failed to load: "+e),this.sendNewPolls=!1,this.close()},this.myIFrame.doc.body.appendChild(t)}catch{}},Math.floor(1))}};var Yee=16384,Qee=45e3,AI=null;typeof MozWebSocket<"u"?AI=MozWebSocket:typeof WebSocket<"u"&&(AI=WebSocket);var Pd=(()=>{class n{constructor(r,t,i,o,s,a,c){this.connId=r,this.applicationId=i,this.appCheckToken=o,this.authToken=s,this.keepaliveTimer=null,this.frames=null,this.totalFrames=0,this.bytesSent=0,this.bytesReceived=0,this.log_=mm(this.connId),this.stats_=$O(t),this.connURL=n.connectionURL_(t,a,c,o,i),this.nodeAdmin=t.nodeAdmin}static connectionURL_(r,t,i,o,s){let a={};return a[h$]=vI,!Lo()&&typeof location<"u"&&location.hostname&&p$.test(location.hostname)&&(a[g$]=m$),t&&(a[f$]=t),i&&(a[E$]=i),o&&(a[KN]=o),s&&(a[_$]=s),v$(r,T$,a)}open(r,t){this.onDisconnect=t,this.onMessage=r,this.log_("Websocket connecting to "+this.connURL),this.everConnected_=!1,ml.set("previous_websocket_failure",!0);try{let i;if(Lo()){let o=this.nodeAdmin?"AdminNode":"Node";i={headers:{"User-Agent":`Firebase/${vI}/${BO}/${process.platform}/${o}`,"X-Firebase-GMPID":this.applicationId||""}},this.authToken&&(i.headers.Authorization=`Bearer ${this.authToken}`),this.appCheckToken&&(i.headers["X-Firebase-AppCheck"]=this.appCheckToken);let s=process.env,a=this.connURL.indexOf("wss://")===0?s.HTTPS_PROXY||s.https_proxy:s.HTTP_PROXY||s.http_proxy;a&&(i.proxy={origin:a})}this.mySock=new AI(this.connURL,[],i)}catch(i){this.log_("Error instantiating WebSocket.");let o=i.message||i.data;o&&this.log_(o),this.onClosed_();return}this.mySock.onopen=()=>{this.log_("Websocket connected."),this.everConnected_=!0},this.mySock.onclose=()=>{this.log_("Websocket connection was disconnected."),this.mySock=null,this.onClosed_()},this.mySock.onmessage=i=>{this.handleIncomingFrame(i)},this.mySock.onerror=i=>{this.log_("WebSocket error. Closing connection.");let o=i.message||i.data;o&&this.log_(o),this.onClosed_()}}start(){}static forceDisallow(){n.forceDisallow_=!0}static isAvailable(){let r=!1;if(typeof navigator<"u"&&navigator.userAgent){let t=/Android ([0-9]{0,}\.[0-9]{0,})/,i=navigator.userAgent.match(t);i&&i.length>1&&parseFloat(i[1])<4.4&&(r=!0)}return!r&&AI!==null&&!n.forceDisallow_}static previouslyFailed(){return ml.isInMemoryStorage||ml.get("previous_websocket_failure")===!0}markConnectionHealthy(){ml.remove("previous_websocket_failure")}appendFrame_(r){if(this.frames.push(r),this.frames.length===this.totalFrames){let t=this.frames.join("");this.frames=null;let i=Rd(t);this.onMessage(i)}}handleNewFrameCount_(r){this.totalFrames=r,this.frames=[]}extractFrameCount_(r){if(ee(this.frames===null,"We already have a frame buffer"),r.length<=6){let t=Number(r);if(!isNaN(t))return this.handleNewFrameCount_(t),null}return this.handleNewFrameCount_(1),r}handleIncomingFrame(r){if(this.mySock===null)return;let t=r.data;if(this.bytesReceived+=t.length,this.stats_.incrementCounter("bytes_received",t.length),this.resetKeepAlive(),this.frames!==null)this.appendFrame_(t);else{let i=this.extractFrameCount_(t);i!==null&&this.appendFrame_(i)}}send(r){this.resetKeepAlive();let t=rn(r);this.bytesSent+=t.length,this.stats_.incrementCounter("bytes_sent",t.length);let i=u$(t,Yee);i.length>1&&this.sendString_(String(i.length));for(let o=0;o<i.length;o++)this.sendString_(i[o])}shutdown_(){this.isClosed_=!0,this.keepaliveTimer&&(clearInterval(this.keepaliveTimer),this.keepaliveTimer=null),this.mySock&&(this.mySock.close(),this.mySock=null)}onClosed_(){this.isClosed_||(this.log_("WebSocket is closing itself"),this.shutdown_(),this.onDisconnect&&(this.onDisconnect(this.everConnected_),this.onDisconnect=null))}close(){this.isClosed_||(this.log_("WebSocket is being closed"),this.shutdown_())}resetKeepAlive(){clearInterval(this.keepaliveTimer),this.keepaliveTimer=setInterval(()=>{this.mySock&&this.sendString_("0"),this.resetKeepAlive()},Math.floor(Qee))}sendString_(r){try{this.mySock.send(r)}catch(t){this.log_("Exception thrown from WebSocket.send():",t.message||t.data,"Closing connection."),setTimeout(this.onClosed_.bind(this),0)}}}n.responsesRequiredToBeHealthy=2,n.healthyTimeout=3e4;return n})(),C$=(()=>{class n{static get ALL_TRANSPORTS(){return[SI,Pd]}static get IS_TRANSPORT_INITIALIZED(){return this.globalTransportInitialized_}constructor(r){this.initTransports_(r)}initTransports_(r){let t=Pd&&Pd.isAvailable(),i=t&&!Pd.previouslyFailed();if(r.webSocketOnly&&(t||Zn("wss:// URL used, but browser isn't known to support websockets. Trying anyway."),i=!0),i)this.transports_=[Pd];else{let o=this.transports_=[];for(let s of n.ALL_TRANSPORTS)s&&s.isAvailable()&&o.push(s);n.globalTransportInitialized_=!0}}initialTransport(){if(this.transports_.length>0)return this.transports_[0];throw new Error("No transports available")}upgradeTransport(){return this.transports_.length>1?this.transports_[1]:null}}n.globalTransportInitialized_=!1;return n})(),Xee=6e4,Jee=5e3,Zee=10*1024,ete=100*1024,kN="t",MG="d",tte="s",PG="r",nte="e",xG="o",FG="a",kG="n",UG="p",rte="h",JN=class{constructor(e,r,t,i,o,s,a,c,l,u){this.id=e,this.repoInfo_=r,this.applicationId_=t,this.appCheckToken_=i,this.authToken_=o,this.onMessage_=s,this.onReady_=a,this.onDisconnect_=c,this.onKill_=l,this.lastSessionId=u,this.connectionCount=0,this.pendingDataMessages=[],this.state_=0,this.log_=mm("c:"+this.id+":"),this.transportManager_=new C$(r),this.log_("Connection created"),this.start_()}start_(){let e=this.transportManager_.initialTransport();this.conn_=new e(this.nextTransportId_(),this.repoInfo_,this.applicationId_,this.appCheckToken_,this.authToken_,null,this.lastSessionId),this.primaryResponsesRequired_=e.responsesRequiredToBeHealthy||0;let r=this.connReceiver_(this.conn_),t=this.disconnReceiver_(this.conn_);this.tx_=this.conn_,this.rx_=this.conn_,this.secondaryConn_=null,this.isHealthy_=!1,setTimeout(()=>{this.conn_&&this.conn_.open(r,t)},Math.floor(0));let i=e.healthyTimeout||0;i>0&&(this.healthyTimeout_=Xg(()=>{this.healthyTimeout_=null,this.isHealthy_||(this.conn_&&this.conn_.bytesReceived>ete?(this.log_("Connection exceeded healthy timeout but has received "+this.conn_.bytesReceived+" bytes. Marking connection healthy."),this.isHealthy_=!0,this.conn_.markConnectionHealthy()):this.conn_&&this.conn_.bytesSent>Zee?this.log_("Connection exceeded healthy timeout but has sent "+this.conn_.bytesSent+" bytes. Leaving connection alive."):(this.log_("Closing unhealthy connection after timeout."),this.close()))},Math.floor(i)))}nextTransportId_(){return"c:"+this.id+":"+this.connectionCount++}disconnReceiver_(e){return r=>{e===this.conn_?this.onConnectionLost_(r):e===this.secondaryConn_?(this.log_("Secondary connection lost."),this.onSecondaryConnectionLost_()):this.log_("closing an old connection")}}connReceiver_(e){return r=>{this.state_!==2&&(e===this.rx_?this.onPrimaryMessageReceived_(r):e===this.secondaryConn_?this.onSecondaryMessageReceived_(r):this.log_("message on old connection"))}}sendRequest(e){let r={t:"d",d:e};this.sendData_(r)}tryCleanupConnection(){this.tx_===this.secondaryConn_&&this.rx_===this.secondaryConn_&&(this.log_("cleaning up and promoting a connection: "+this.secondaryConn_.connId),this.conn_=this.secondaryConn_,this.secondaryConn_=null)}onSecondaryControl_(e){if(kN in e){let r=e[kN];r===FG?this.upgradeIfSecondaryHealthy_():r===PG?(this.log_("Got a reset on secondary, closing it"),this.secondaryConn_.close(),(this.tx_===this.secondaryConn_||this.rx_===this.secondaryConn_)&&this.close()):r===xG&&(this.log_("got pong on secondary."),this.secondaryResponsesRequired_--,this.upgradeIfSecondaryHealthy_())}}onSecondaryMessageReceived_(e){let r=qg("t",e),t=qg("d",e);if(r==="c")this.onSecondaryControl_(t);else if(r==="d")this.pendingDataMessages.push(t);else throw new Error("Unknown protocol layer: "+r)}upgradeIfSecondaryHealthy_(){this.secondaryResponsesRequired_<=0?(this.log_("Secondary connection is healthy."),this.isHealthy_=!0,this.secondaryConn_.markConnectionHealthy(),this.proceedWithUpgrade_()):(this.log_("sending ping on secondary."),this.secondaryConn_.send({t:"c",d:{t:UG,d:{}}}))}proceedWithUpgrade_(){this.secondaryConn_.start(),this.log_("sending client ack on secondary"),this.secondaryConn_.send({t:"c",d:{t:FG,d:{}}}),this.log_("Ending transmission on primary"),this.conn_.send({t:"c",d:{t:kG,d:{}}}),this.tx_=this.secondaryConn_,this.tryCleanupConnection()}onPrimaryMessageReceived_(e){let r=qg("t",e),t=qg("d",e);r==="c"?this.onControl_(t):r==="d"&&this.onDataMessage_(t)}onDataMessage_(e){this.onPrimaryResponse_(),this.onMessage_(e)}onPrimaryResponse_(){this.isHealthy_||(this.primaryResponsesRequired_--,this.primaryResponsesRequired_<=0&&(this.log_("Primary connection is healthy."),this.isHealthy_=!0,this.conn_.markConnectionHealthy()))}onControl_(e){let r=qg(kN,e);if(MG in e){let t=e[MG];if(r===rte){let i=Object.assign({},t);this.repoInfo_.isUsingEmulator&&(i.h=this.repoInfo_.host),this.onHandshake_(i)}else if(r===kG){this.log_("recvd end transmission on primary"),this.rx_=this.secondaryConn_;for(let i=0;i<this.pendingDataMessages.length;++i)this.onDataMessage_(this.pendingDataMessages[i]);this.pendingDataMessages=[],this.tryCleanupConnection()}else r===tte?this.onConnectionShutdown_(t):r===PG?this.onReset_(t):r===nte?WN("Server Error: "+t):r===xG?(this.log_("got pong on primary."),this.onPrimaryResponse_(),this.sendPingOnPrimaryIfNecessary_()):WN("Unknown control packet command: "+r)}}onHandshake_(e){let r=e.ts,t=e.v,i=e.h;this.sessionId=e.s,this.repoInfo_.host=i,this.state_===0&&(this.conn_.start(),this.onConnectionEstablished_(this.conn_,r),vI!==t&&Zn("Protocol version mismatch detected"),this.tryStartUpgrade_())}tryStartUpgrade_(){let e=this.transportManager_.upgradeTransport();e&&this.startUpgrade_(e)}startUpgrade_(e){this.secondaryConn_=new e(this.nextTransportId_(),this.repoInfo_,this.applicationId_,this.appCheckToken_,this.authToken_,this.sessionId),this.secondaryResponsesRequired_=e.responsesRequiredToBeHealthy||0;let r=this.connReceiver_(this.secondaryConn_),t=this.disconnReceiver_(this.secondaryConn_);this.secondaryConn_.open(r,t),Xg(()=>{this.secondaryConn_&&(this.log_("Timed out trying to upgrade."),this.secondaryConn_.close())},Math.floor(Xee))}onReset_(e){this.log_("Reset packet received. New host: "+e),this.repoInfo_.host=e,this.state_===1?this.close():(this.closeConnections_(),this.start_())}onConnectionEstablished_(e,r){this.log_("Realtime connection established."),this.conn_=e,this.state_=1,this.onReady_&&(this.onReady_(r,this.sessionId),this.onReady_=null),this.primaryResponsesRequired_===0?(this.log_("Primary connection is healthy."),this.isHealthy_=!0):Xg(()=>{this.sendPingOnPrimaryIfNecessary_()},Math.floor(Jee))}sendPingOnPrimaryIfNecessary_(){!this.isHealthy_&&this.state_===1&&(this.log_("sending ping on primary."),this.sendData_({t:"c",d:{t:UG,d:{}}}))}onSecondaryConnectionLost_(){let e=this.secondaryConn_;this.secondaryConn_=null,(this.tx_===e||this.rx_===e)&&this.close()}onConnectionLost_(e){this.conn_=null,!e&&this.state_===0?(this.log_("Realtime connection failed."),this.repoInfo_.isCacheableHost()&&(ml.remove("host:"+this.repoInfo_.host),this.repoInfo_.internalHost=this.repoInfo_.host)):this.state_===1&&this.log_("Realtime connection lost."),this.close()}onConnectionShutdown_(e){this.log_("Connection shutdown command received. Shutting down..."),this.onKill_&&(this.onKill_(e),this.onKill_=null),this.onDisconnect_=null,this.close()}sendData_(e){if(this.state_!==1)throw"Connection is not connected";this.tx_.send(e)}close(){this.state_!==2&&(this.log_("Closing realtime connection."),this.state_=2,this.closeConnections_(),this.onDisconnect_&&(this.onDisconnect_(),this.onDisconnect_=null))}closeConnections_(){this.log_("Shutting down all connections"),this.conn_&&(this.conn_.close(),this.conn_=null),this.secondaryConn_&&(this.secondaryConn_.close(),this.secondaryConn_=null),this.healthyTimeout_&&(clearTimeout(this.healthyTimeout_),this.healthyTimeout_=null)}};var DI=class{put(e,r,t,i){}merge(e,r,t,i){}refreshAuthToken(e){}refreshAppCheckToken(e){}onDisconnectPut(e,r,t){}onDisconnectMerge(e,r,t){}onDisconnectCancel(e,r){}reportStats(e){}};var RI=class{constructor(e){this.allowedEvents_=e,this.listeners_={},ee(Array.isArray(e)&&e.length>0,"Requires a non-empty array")}trigger(e,...r){if(Array.isArray(this.listeners_[e])){let t=[...this.listeners_[e]];for(let i=0;i<t.length;i++)t[i].callback.apply(t[i].context,r)}}on(e,r,t){this.validateEventType_(e),this.listeners_[e]=this.listeners_[e]||[],this.listeners_[e].push({callback:r,context:t});let i=this.getInitialEvent(e);i&&r.apply(t,i)}off(e,r,t){this.validateEventType_(e);let i=this.listeners_[e]||[];for(let o=0;o<i.length;o++)if(i[o].callback===r&&(!t||t===i[o].context)){i.splice(o,1);return}}validateEventType_(e){ee(this.allowedEvents_.find(r=>r===e),"Unknown event: "+e)}};var CI=class n extends RI{static getInstance(){return new n}constructor(){super(["online"]),this.online_=!0,typeof window<"u"&&typeof window.addEventListener<"u"&&!wg()&&(window.addEventListener("online",()=>{this.online_||(this.online_=!0,this.trigger("online",!0))},!1),window.addEventListener("offline",()=>{this.online_&&(this.online_=!1,this.trigger("online",!1))},!1))}getInitialEvent(e){return ee(e==="online","Unknown event type: "+e),[this.online_]}currentlyOnline(){return this.online_}};var VG=32,BG=768,Ke=class{constructor(e,r){if(r===void 0){this.pieces_=e.split("/");let t=0;for(let i=0;i<this.pieces_.length;i++)this.pieces_[i].length>0&&(this.pieces_[t]=this.pieces_[i],t++);this.pieces_.length=t,this.pieceNum_=0}else this.pieces_=e,this.pieceNum_=r}toString(){let e="";for(let r=this.pieceNum_;r<this.pieces_.length;r++)this.pieces_[r]!==""&&(e+="/"+this.pieces_[r]);return e||"/"}};function qe(){return new Ke("")}function ke(n){return n.pieceNum_>=n.pieces_.length?null:n.pieces_[n.pieceNum_]}function Ca(n){return n.pieces_.length-n.pieceNum_}function ht(n){let e=n.pieceNum_;return e<n.pieces_.length&&e++,new Ke(n.pieces_,e)}function jO(n){return n.pieceNum_<n.pieces_.length?n.pieces_[n.pieces_.length-1]:null}function ite(n){let e="";for(let r=n.pieceNum_;r<n.pieces_.length;r++)n.pieces_[r]!==""&&(e+="/"+encodeURIComponent(String(n.pieces_[r])));return e||"/"}function nm(n,e=0){return n.pieces_.slice(n.pieceNum_+e)}function N$(n){if(n.pieceNum_>=n.pieces_.length)return null;let e=[];for(let r=n.pieceNum_;r<n.pieces_.length-1;r++)e.push(n.pieces_[r]);return new Ke(e,0)}function Vt(n,e){let r=[];for(let t=n.pieceNum_;t<n.pieces_.length;t++)r.push(n.pieces_[t]);if(e instanceof Ke)for(let t=e.pieceNum_;t<e.pieces_.length;t++)r.push(e.pieces_[t]);else{let t=e.split("/");for(let i=0;i<t.length;i++)t[i].length>0&&r.push(t[i])}return new Ke(r,0)}function Ue(n){return n.pieceNum_>=n.pieces_.length}function hr(n,e){let r=ke(n),t=ke(e);if(r===null)return e;if(r===t)return hr(ht(n),ht(e));throw new Error("INTERNAL ERROR: innerPath ("+e+") is not within outerPath ("+n+")")}function ote(n,e){let r=nm(n,0),t=nm(e,0);for(let i=0;i<r.length&&i<t.length;i++){let o=Al(r[i],t[i]);if(o!==0)return o}return r.length===t.length?0:r.length<t.length?-1:1}function HO(n,e){if(Ca(n)!==Ca(e))return!1;for(let r=n.pieceNum_,t=e.pieceNum_;r<=n.pieces_.length;r++,t++)if(n.pieces_[r]!==e.pieces_[t])return!1;return!0}function mi(n,e){let r=n.pieceNum_,t=e.pieceNum_;if(Ca(n)>Ca(e))return!1;for(;r<n.pieces_.length;){if(n.pieces_[r]!==e.pieces_[t])return!1;++r,++t}return!0}var ZN=class{constructor(e,r){this.errorPrefix_=r,this.parts_=nm(e,0),this.byteLength_=Math.max(1,this.parts_.length);for(let t=0;t<this.parts_.length;t++)this.byteLength_+=Pg(this.parts_[t]);O$(this)}};function ste(n,e){n.parts_.length>0&&(n.byteLength_+=1),n.parts_.push(e),n.byteLength_+=Pg(e),O$(n)}function ate(n){let e=n.parts_.pop();n.byteLength_-=Pg(e),n.parts_.length>0&&(n.byteLength_-=1)}function O$(n){if(n.byteLength_>BG)throw new Error(n.errorPrefix_+"has a key path longer than "+BG+" bytes ("+n.byteLength_+").");if(n.parts_.length>VG)throw new Error(n.errorPrefix_+"path specified exceeds the maximum depth that can be written ("+VG+") or object contains a cycle "+gl(n))}function gl(n){return n.parts_.length===0?"":"in property '"+n.parts_.join(".")+"'"}var eO=class n extends RI{static getInstance(){return new n}constructor(){super(["visible"]);let e,r;typeof document<"u"&&typeof document.addEventListener<"u"&&(typeof document.hidden<"u"?(r="visibilitychange",e="hidden"):typeof document.mozHidden<"u"?(r="mozvisibilitychange",e="mozHidden"):typeof document.msHidden<"u"?(r="msvisibilitychange",e="msHidden"):typeof document.webkitHidden<"u"&&(r="webkitvisibilitychange",e="webkitHidden")),this.visible_=!0,r&&document.addEventListener(r,()=>{let t=!document[e];t!==this.visible_&&(this.visible_=t,this.trigger("visible",t))},!1)}getInitialEvent(e){return ee(e==="visible","Unknown event type: "+e),[this.visible_]}};var Kg=1e3,cte=300*1e3,GG=30*1e3,lte=1.3,ute=3e4,dte="server_kill",$G=3,WO=(()=>{class n extends DI{constructor(r,t,i,o,s,a,c,l){if(super(),this.repoInfo_=r,this.applicationId_=t,this.onDataUpdate_=i,this.onConnectStatus_=o,this.onServerInfoUpdate_=s,this.authTokenProvider_=a,this.appCheckTokenProvider_=c,this.authOverride_=l,this.id=n.nextPersistentConnectionId_++,this.log_=mm("p:"+this.id+":"),this.interruptReasons_={},this.listens=new Map,this.outstandingPuts_=[],this.outstandingGets_=[],this.outstandingPutCount_=0,this.outstandingGetCount_=0,this.onDisconnectRequestQueue_=[],this.connected_=!1,this.reconnectDelay_=Kg,this.maxReconnectDelay_=cte,this.securityDebugCallback_=null,this.lastSessionId=null,this.establishConnectionTimer_=null,this.visible_=!1,this.requestCBHash_={},this.requestNumber_=0,this.realtime_=null,this.authToken_=null,this.appCheckToken_=null,this.forceTokenRefresh_=!1,this.invalidAuthTokenCount_=0,this.invalidAppCheckTokenCount_=0,this.firstConnection_=!0,this.lastConnectionAttemptTime_=null,this.lastConnectionEstablishedTime_=null,l&&!Lo())throw new Error("Auth override specified in options, but not supported on non Node.js platforms");eO.getInstance().on("visible",this.onVisible_,this),r.host.indexOf("fblocal")===-1&&CI.getInstance().on("online",this.onOnline_,this)}sendRequest(r,t,i){let o=++this.requestNumber_,s={r:o,a:r,b:t};this.log_(rn(s)),ee(this.connected_,"sendRequest call when we're not connected not allowed."),this.realtime_.sendRequest(s),i&&(this.requestCBHash_[o]=i)}get(r){this.initConnection_();let t=new Nn,o={action:"g",request:{p:r._path.toString(),q:r._queryObject},onComplete:a=>{let c=a.d;a.s==="ok"?t.resolve(c):t.reject(c)}};this.outstandingGets_.push(o),this.outstandingGetCount_++;let s=this.outstandingGets_.length-1;return this.connected_&&this.sendGet_(s),t.promise}listen(r,t,i,o){this.initConnection_();let s=r._queryIdentifier,a=r._path.toString();this.log_("Listen called for "+a+" "+s),this.listens.has(a)||this.listens.set(a,new Map),ee(r._queryParams.isDefault()||!r._queryParams.loadsAllData(),"listen() called for non-default but complete query"),ee(!this.listens.get(a).has(s),"listen() called twice for same path/queryId.");let c={onComplete:o,hashFn:t,query:r,tag:i};this.listens.get(a).set(s,c),this.connected_&&this.sendListen_(c)}sendGet_(r){let t=this.outstandingGets_[r];this.sendRequest("g",t.request,i=>{delete this.outstandingGets_[r],this.outstandingGetCount_--,this.outstandingGetCount_===0&&(this.outstandingGets_=[]),t.onComplete&&t.onComplete(i)})}sendListen_(r){let t=r.query,i=t._path.toString(),o=t._queryIdentifier;this.log_("Listen on "+i+" for "+o);let s={p:i},a="q";r.tag&&(s.q=t._queryObject,s.t=r.tag),s.h=r.hashFn(),this.sendRequest(a,s,c=>{let l=c.d,u=c.s;n.warnOnListenWarnings_(l,t),(this.listens.get(i)&&this.listens.get(i).get(o))===r&&(this.log_("listen response",c),u!=="ok"&&this.removeListen_(i,o),r.onComplete&&r.onComplete(u,l))})}static warnOnListenWarnings_(r,t){if(r&&typeof r=="object"&&hi(r,"w")){let i=fa(r,"w");if(Array.isArray(i)&&~i.indexOf("no_index")){let o='".indexOn": "'+t._queryParams.getIndex().toString()+'"',s=t._path.toString();Zn(`Using an unspecified index. Your data will be downloaded and filtered on the client. Consider adding ${o} at ${s} to your security rules for better performance.`)}}}refreshAuthToken(r){this.authToken_=r,this.log_("Auth token refreshed"),this.authToken_?this.tryAuth():this.connected_&&this.sendRequest("unauth",{},()=>{}),this.reduceReconnectDelayIfAdminCredential_(r)}reduceReconnectDelayIfAdminCredential_(r){(r&&r.length===40||lB(r))&&(this.log_("Admin auth credential detected. Reducing max reconnect time."),this.maxReconnectDelay_=GG)}refreshAppCheckToken(r){this.appCheckToken_=r,this.log_("App check token refreshed"),this.appCheckToken_?this.tryAppCheck():this.connected_&&this.sendRequest("unappeck",{},()=>{})}tryAuth(){if(this.connected_&&this.authToken_){let r=this.authToken_,t=cB(r)?"auth":"gauth",i={cred:r};this.authOverride_===null?i.noauth=!0:typeof this.authOverride_=="object"&&(i.authvar=this.authOverride_),this.sendRequest(t,i,o=>{let s=o.s,a=o.d||"error";this.authToken_===r&&(s==="ok"?this.invalidAuthTokenCount_=0:this.onAuthRevoked_(s,a))})}}tryAppCheck(){this.connected_&&this.appCheckToken_&&this.sendRequest("appcheck",{token:this.appCheckToken_},r=>{let t=r.s,i=r.d||"error";t==="ok"?this.invalidAppCheckTokenCount_=0:this.onAppCheckRevoked_(t,i)})}unlisten(r,t){let i=r._path.toString(),o=r._queryIdentifier;this.log_("Unlisten called for "+i+" "+o),ee(r._queryParams.isDefault()||!r._queryParams.loadsAllData(),"unlisten() called for non-default but complete query"),this.removeListen_(i,o)&&this.connected_&&this.sendUnlisten_(i,o,r._queryObject,t)}sendUnlisten_(r,t,i,o){this.log_("Unlisten on "+r+" for "+t);let s={p:r},a="n";o&&(s.q=i,s.t=o),this.sendRequest(a,s)}onDisconnectPut(r,t,i){this.initConnection_(),this.connected_?this.sendOnDisconnect_("o",r,t,i):this.onDisconnectRequestQueue_.push({pathString:r,action:"o",data:t,onComplete:i})}onDisconnectMerge(r,t,i){this.initConnection_(),this.connected_?this.sendOnDisconnect_("om",r,t,i):this.onDisconnectRequestQueue_.push({pathString:r,action:"om",data:t,onComplete:i})}onDisconnectCancel(r,t){this.initConnection_(),this.connected_?this.sendOnDisconnect_("oc",r,null,t):this.onDisconnectRequestQueue_.push({pathString:r,action:"oc",data:null,onComplete:t})}sendOnDisconnect_(r,t,i,o){let s={p:t,d:i};this.log_("onDisconnect "+r,s),this.sendRequest(r,s,a=>{o&&setTimeout(()=>{o(a.s,a.d)},Math.floor(0))})}put(r,t,i,o){this.putInternal("p",r,t,i,o)}merge(r,t,i,o){this.putInternal("m",r,t,i,o)}putInternal(r,t,i,o,s){this.initConnection_();let a={p:t,d:i};s!==void 0&&(a.h=s),this.outstandingPuts_.push({action:r,request:a,onComplete:o}),this.outstandingPutCount_++;let c=this.outstandingPuts_.length-1;this.connected_?this.sendPut_(c):this.log_("Buffering put: "+t)}sendPut_(r){let t=this.outstandingPuts_[r].action,i=this.outstandingPuts_[r].request,o=this.outstandingPuts_[r].onComplete;this.outstandingPuts_[r].queued=this.connected_,this.sendRequest(t,i,s=>{this.log_(t+" response",s),delete this.outstandingPuts_[r],this.outstandingPutCount_--,this.outstandingPutCount_===0&&(this.outstandingPuts_=[]),o&&o(s.s,s.d)})}reportStats(r){if(this.connected_){let t={c:r};this.log_("reportStats",t),this.sendRequest("s",t,i=>{if(i.s!=="ok"){let s=i.d;this.log_("reportStats","Error sending stats: "+s)}})}}onDataMessage_(r){if("r"in r){this.log_("from server: "+rn(r));let t=r.r,i=this.requestCBHash_[t];i&&(delete this.requestCBHash_[t],i(r.b))}else{if("error"in r)throw"A server-side error has occurred: "+r.error;"a"in r&&this.onDataPush_(r.a,r.b)}}onDataPush_(r,t){this.log_("handleServerMessage",r,t),r==="d"?this.onDataUpdate_(t.p,t.d,!1,t.t):r==="m"?this.onDataUpdate_(t.p,t.d,!0,t.t):r==="c"?this.onListenRevoked_(t.p,t.q):r==="ac"?this.onAuthRevoked_(t.s,t.d):r==="apc"?this.onAppCheckRevoked_(t.s,t.d):r==="sd"?this.onSecurityDebugPacket_(t):WN("Unrecognized action received from server: "+rn(r)+`
142
- Are you using the latest client?`)}onReady_(r,t){this.log_("connection ready"),this.connected_=!0,this.lastConnectionEstablishedTime_=new Date().getTime(),this.handleTimestamp_(r),this.lastSessionId=t,this.firstConnection_&&this.sendConnectStats_(),this.restoreState_(),this.firstConnection_=!1,this.onConnectStatus_(!0)}scheduleConnect_(r){ee(!this.realtime_,"Scheduling a connect when we're already connected/ing?"),this.establishConnectionTimer_&&clearTimeout(this.establishConnectionTimer_),this.establishConnectionTimer_=setTimeout(()=>{this.establishConnectionTimer_=null,this.establishConnection_()},Math.floor(r))}initConnection_(){!this.realtime_&&this.firstConnection_&&this.scheduleConnect_(0)}onVisible_(r){r&&!this.visible_&&this.reconnectDelay_===this.maxReconnectDelay_&&(this.log_("Window became visible. Reducing delay."),this.reconnectDelay_=Kg,this.realtime_||this.scheduleConnect_(0)),this.visible_=r}onOnline_(r){r?(this.log_("Browser went online."),this.reconnectDelay_=Kg,this.realtime_||this.scheduleConnect_(0)):(this.log_("Browser went offline. Killing connection."),this.realtime_&&this.realtime_.close())}onRealtimeDisconnect_(){if(this.log_("data client disconnected"),this.connected_=!1,this.realtime_=null,this.cancelSentTransactions_(),this.requestCBHash_={},this.shouldReconnect_()){this.visible_?this.lastConnectionEstablishedTime_&&(new Date().getTime()-this.lastConnectionEstablishedTime_>ute&&(this.reconnectDelay_=Kg),this.lastConnectionEstablishedTime_=null):(this.log_("Window isn't visible. Delaying reconnect."),this.reconnectDelay_=this.maxReconnectDelay_,this.lastConnectionAttemptTime_=new Date().getTime());let r=Math.max(0,new Date().getTime()-this.lastConnectionAttemptTime_),t=Math.max(0,this.reconnectDelay_-r);t=Math.random()*t,this.log_("Trying to reconnect in "+t+"ms"),this.scheduleConnect_(t),this.reconnectDelay_=Math.min(this.maxReconnectDelay_,this.reconnectDelay_*lte)}this.onConnectStatus_(!1)}establishConnection_(){return I(this,null,function*(){if(this.shouldReconnect_()){this.log_("Making a connection attempt"),this.lastConnectionAttemptTime_=new Date().getTime(),this.lastConnectionEstablishedTime_=null;let r=this.onDataMessage_.bind(this),t=this.onReady_.bind(this),i=this.onRealtimeDisconnect_.bind(this),o=this.id+":"+n.nextConnectionId_++,s=this.lastSessionId,a=!1,c=null,l=function(){c?c.close():(a=!0,i())},u=function(f){ee(c,"sendRequest call when we're not connected not allowed."),c.sendRequest(f)};this.realtime_={close:l,sendRequest:u};let d=this.forceTokenRefresh_;this.forceTokenRefresh_=!1;try{let[f,g]=yield Promise.all([this.authTokenProvider_.getToken(d),this.appCheckTokenProvider_.getToken(d)]);a?On("getToken() completed but was canceled"):(On("getToken() completed. Creating connection."),this.authToken_=f&&f.accessToken,this.appCheckToken_=g&&g.token,c=new JN(o,this.repoInfo_,this.applicationId_,this.appCheckToken_,this.authToken_,r,t,i,p=>{Zn(p+" ("+this.repoInfo_.toString()+")"),this.interrupt(dte)},s))}catch(f){this.log_("Failed to get token: "+f),a||(this.repoInfo_.nodeAdmin&&Zn(f),l())}}})}interrupt(r){On("Interrupting connection for reason: "+r),this.interruptReasons_[r]=!0,this.realtime_?this.realtime_.close():(this.establishConnectionTimer_&&(clearTimeout(this.establishConnectionTimer_),this.establishConnectionTimer_=null),this.connected_&&this.onRealtimeDisconnect_())}resume(r){On("Resuming connection for reason: "+r),delete this.interruptReasons_[r],bg(this.interruptReasons_)&&(this.reconnectDelay_=Kg,this.realtime_||this.scheduleConnect_(0))}handleTimestamp_(r){let t=r-new Date().getTime();this.onServerInfoUpdate_({serverTimeOffset:t})}cancelSentTransactions_(){for(let r=0;r<this.outstandingPuts_.length;r++){let t=this.outstandingPuts_[r];t&&"h"in t.request&&t.queued&&(t.onComplete&&t.onComplete("disconnect"),delete this.outstandingPuts_[r],this.outstandingPutCount_--)}this.outstandingPutCount_===0&&(this.outstandingPuts_=[])}onListenRevoked_(r,t){let i;t?i=t.map(s=>GO(s)).join("$"):i="default";let o=this.removeListen_(r,i);o&&o.onComplete&&o.onComplete("permission_denied")}removeListen_(r,t){let i=new Ke(r).toString(),o;if(this.listens.has(i)){let s=this.listens.get(i);o=s.get(t),s.delete(t),s.size===0&&this.listens.delete(i)}else o=void 0;return o}onAuthRevoked_(r,t){On("Auth token revoked: "+r+"/"+t),this.authToken_=null,this.forceTokenRefresh_=!0,this.realtime_.close(),(r==="invalid_token"||r==="permission_denied")&&(this.invalidAuthTokenCount_++,this.invalidAuthTokenCount_>=$G&&(this.reconnectDelay_=GG,this.authTokenProvider_.notifyForInvalidToken()))}onAppCheckRevoked_(r,t){On("App check token revoked: "+r+"/"+t),this.appCheckToken_=null,this.forceTokenRefresh_=!0,(r==="invalid_token"||r==="permission_denied")&&(this.invalidAppCheckTokenCount_++,this.invalidAppCheckTokenCount_>=$G&&this.appCheckTokenProvider_.notifyForInvalidToken())}onSecurityDebugPacket_(r){this.securityDebugCallback_?this.securityDebugCallback_(r):"msg"in r&&console.log("FIREBASE: "+r.msg.replace(`
143
- `,`
144
- FIREBASE: `))}restoreState_(){this.tryAuth(),this.tryAppCheck();for(let r of this.listens.values())for(let t of r.values())this.sendListen_(t);for(let r=0;r<this.outstandingPuts_.length;r++)this.outstandingPuts_[r]&&this.sendPut_(r);for(;this.onDisconnectRequestQueue_.length;){let r=this.onDisconnectRequestQueue_.shift();this.sendOnDisconnect_(r.action,r.pathString,r.data,r.onComplete)}for(let r=0;r<this.outstandingGets_.length;r++)this.outstandingGets_[r]&&this.sendGet_(r)}sendConnectStats_(){let r={},t="js";Lo()&&(this.repoInfo_.nodeAdmin?t="admin_node":t="node"),r["sdk."+t+"."+BO.replace(/\./g,"-")]=1,wg()?r["framework.cordova"]=1:YT()&&(r["framework.reactnative"]=1),this.reportStats(r)}shouldReconnect_(){let r=CI.getInstance().currentlyOnline();return bg(this.interruptReasons_)&&r}}n.nextPersistentConnectionId_=0,n.nextConnectionId_=0;return n})(),Be=class n{constructor(e,r){this.name=e,this.node=r}static Wrap(e,r){return new n(e,r)}};var kd=class{getCompare(){return this.compare.bind(this)}indexedValueChanged(e,r){let t=new Be(_l,e),i=new Be(_l,r);return this.compare(t,i)!==0}minPost(){return Be.MIN}};var II,NI=class extends kd{static get __EMPTY_NODE(){return II}static set __EMPTY_NODE(e){II=e}compare(e,r){return Al(e.name,r.name)}isDefinedOn(e){throw ol("KeyIndex.isDefinedOn not expected to be called.")}indexedValueChanged(e,r){return!1}minPost(){return Be.MIN}maxPost(){return new Be(Ra,II)}makePost(e,r){return ee(typeof e=="string","KeyIndex indexValue must always be a string."),new Be(e,II)}toString(){return".key"}},El=new NI;var xd=class{constructor(e,r,t,i,o=null){this.isReverse_=i,this.resultGenerator_=o,this.nodeStack_=[];let s=1;for(;!e.isEmpty();)if(e=e,s=r?t(e.key,r):1,i&&(s*=-1),s<0)this.isReverse_?e=e.left:e=e.right;else if(s===0){this.nodeStack_.push(e);break}else this.nodeStack_.push(e),this.isReverse_?e=e.right:e=e.left}getNext(){if(this.nodeStack_.length===0)return null;let e=this.nodeStack_.pop(),r;if(this.resultGenerator_?r=this.resultGenerator_(e.key,e.value):r={key:e.key,value:e.value},this.isReverse_)for(e=e.left;!e.isEmpty();)this.nodeStack_.push(e),e=e.right;else for(e=e.right;!e.isEmpty();)this.nodeStack_.push(e),e=e.left;return r}hasNext(){return this.nodeStack_.length>0}peek(){if(this.nodeStack_.length===0)return null;let e=this.nodeStack_[this.nodeStack_.length-1];return this.resultGenerator_?this.resultGenerator_(e.key,e.value):{key:e.key,value:e.value}}},Hi=(()=>{class n{constructor(r,t,i,o,s){this.key=r,this.value=t,this.color=i??n.RED,this.left=o??pi.EMPTY_NODE,this.right=s??pi.EMPTY_NODE}copy(r,t,i,o,s){return new n(r??this.key,t??this.value,i??this.color,o??this.left,s??this.right)}count(){return this.left.count()+1+this.right.count()}isEmpty(){return!1}inorderTraversal(r){return this.left.inorderTraversal(r)||!!r(this.key,this.value)||this.right.inorderTraversal(r)}reverseTraversal(r){return this.right.reverseTraversal(r)||r(this.key,this.value)||this.left.reverseTraversal(r)}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(r,t,i){let o=this,s=i(r,o.key);return s<0?o=o.copy(null,null,null,o.left.insert(r,t,i),null):s===0?o=o.copy(null,t,null,null,null):o=o.copy(null,null,null,null,o.right.insert(r,t,i)),o.fixUp_()}removeMin_(){if(this.left.isEmpty())return pi.EMPTY_NODE;let r=this;return!r.left.isRed_()&&!r.left.left.isRed_()&&(r=r.moveRedLeft_()),r=r.copy(null,null,null,r.left.removeMin_(),null),r.fixUp_()}remove(r,t){let i,o;if(i=this,t(r,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(r,t),null);else{if(i.left.isRed_()&&(i=i.rotateRight_()),!i.right.isEmpty()&&!i.right.isRed_()&&!i.right.left.isRed_()&&(i=i.moveRedRight_()),t(r,i.key)===0){if(i.right.isEmpty())return pi.EMPTY_NODE;o=i.right.min_(),i=i.copy(o.key,o.value,null,null,i.right.removeMin_())}i=i.copy(null,null,null,null,i.right.remove(r,t))}return i.fixUp_()}isRed_(){return this.color}fixUp_(){let r=this;return r.right.isRed_()&&!r.left.isRed_()&&(r=r.rotateLeft_()),r.left.isRed_()&&r.left.left.isRed_()&&(r=r.rotateRight_()),r.left.isRed_()&&r.right.isRed_()&&(r=r.colorFlip_()),r}moveRedLeft_(){let r=this.colorFlip_();return r.right.left.isRed_()&&(r=r.copy(null,null,null,null,r.right.rotateRight_()),r=r.rotateLeft_(),r=r.colorFlip_()),r}moveRedRight_(){let r=this.colorFlip_();return r.left.left.isRed_()&&(r=r.rotateRight_(),r=r.colorFlip_()),r}rotateLeft_(){let r=this.copy(null,null,n.RED,null,this.right.left);return this.right.copy(null,null,this.color,r,null)}rotateRight_(){let r=this.copy(null,null,n.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,r)}colorFlip_(){let r=this.left.copy(null,null,!this.left.color,null,null),t=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,r,t)}checkMaxDepth_(){let r=this.check_();return Math.pow(2,r)<=this.count()+1}check_(){if(this.isRed_()&&this.left.isRed_())throw new Error("Red node has red child("+this.key+","+this.value+")");if(this.right.isRed_())throw new Error("Right child of ("+this.key+","+this.value+") is red");let r=this.left.check_();if(r!==this.right.check_())throw new Error("Black depths differ");return r+(this.isRed_()?0:1)}}return n.RED=!0,n.BLACK=!1,n})(),tO=class{copy(e,r,t,i,o){return this}insert(e,r,t){return new Hi(e,r,null)}remove(e,r){return this}count(){return 0}isEmpty(){return!0}inorderTraversal(e){return!1}reverseTraversal(e){return!1}minKey(){return null}maxKey(){return null}check_(){return 0}isRed_(){return!1}},pi=class n{constructor(e,r=n.EMPTY_NODE){this.comparator_=e,this.root_=r}insert(e,r){return new n(this.comparator_,this.root_.insert(e,r,this.comparator_).copy(null,null,Hi.BLACK,null,null))}remove(e){return new n(this.comparator_,this.root_.remove(e,this.comparator_).copy(null,null,Hi.BLACK,null,null))}get(e){let r,t=this.root_;for(;!t.isEmpty();){if(r=this.comparator_(e,t.key),r===0)return t.value;r<0?t=t.left:r>0&&(t=t.right)}return null}getPredecessorKey(e){let r,t=this.root_,i=null;for(;!t.isEmpty();)if(r=this.comparator_(e,t.key),r===0){if(t.left.isEmpty())return i?i.key:null;for(t=t.left;!t.right.isEmpty();)t=t.right;return t.key}else r<0?t=t.left:r>0&&(i=t,t=t.right);throw new Error("Attempted to find predecessor key for a nonexistent key. What gives?")}isEmpty(){return this.root_.isEmpty()}count(){return this.root_.count()}minKey(){return this.root_.minKey()}maxKey(){return this.root_.maxKey()}inorderTraversal(e){return this.root_.inorderTraversal(e)}reverseTraversal(e){return this.root_.reverseTraversal(e)}getIterator(e){return new xd(this.root_,null,this.comparator_,!1,e)}getIteratorFrom(e,r){return new xd(this.root_,e,this.comparator_,!1,r)}getReverseIteratorFrom(e,r){return new xd(this.root_,e,this.comparator_,!0,r)}getReverseIterator(e){return new xd(this.root_,null,this.comparator_,!0,e)}};pi.EMPTY_NODE=new tO;function hte(n,e){return Al(n.name,e.name)}function zO(n,e){return Al(n,e)}var nO;function fte(n){nO=n}var w$=function(n){return typeof n=="number"?"number:"+d$(n):"string:"+n},b$=function(n){if(n.isLeafNode()){let e=n.val();ee(typeof e=="string"||typeof e=="number"||typeof e=="object"&&hi(e,".sv"),"Priority must be a string or number.")}else ee(n===nO||n.isEmpty(),"priority of unexpected type.");ee(n===nO||n.getPriority().isEmpty(),"Priority nodes can't have a priority of their own.")};var jG,Ud=(()=>{class n{static set __childrenNodeConstructor(r){jG=r}static get __childrenNodeConstructor(){return jG}constructor(r,t=n.__childrenNodeConstructor.EMPTY_NODE){this.value_=r,this.priorityNode_=t,this.lazyHash_=null,ee(this.value_!==void 0&&this.value_!==null,"LeafNode shouldn't be created with null/undefined value."),b$(this.priorityNode_)}isLeafNode(){return!0}getPriority(){return this.priorityNode_}updatePriority(r){return new n(this.value_,r)}getImmediateChild(r){return r===".priority"?this.priorityNode_:n.__childrenNodeConstructor.EMPTY_NODE}getChild(r){return Ue(r)?this:ke(r)===".priority"?this.priorityNode_:n.__childrenNodeConstructor.EMPTY_NODE}hasChild(){return!1}getPredecessorChildName(r,t){return null}updateImmediateChild(r,t){return r===".priority"?this.updatePriority(t):t.isEmpty()&&r!==".priority"?this:n.__childrenNodeConstructor.EMPTY_NODE.updateImmediateChild(r,t).updatePriority(this.priorityNode_)}updateChild(r,t){let i=ke(r);return i===null?t:t.isEmpty()&&i!==".priority"?this:(ee(i!==".priority"||Ca(r)===1,".priority must be the last token in a path"),this.updateImmediateChild(i,n.__childrenNodeConstructor.EMPTY_NODE.updateChild(ht(r),t)))}isEmpty(){return!1}numChildren(){return 0}forEachChild(r,t){return!1}val(r){return r&&!this.getPriority().isEmpty()?{".value":this.getValue(),".priority":this.getPriority().val()}:this.getValue()}hash(){if(this.lazyHash_===null){let r="";this.priorityNode_.isEmpty()||(r+="priority:"+w$(this.priorityNode_.val())+":");let t=typeof this.value_;r+=t+":",t==="number"?r+=d$(this.value_):r+=this.value_,this.lazyHash_=l$(r)}return this.lazyHash_}getValue(){return this.value_}compareTo(r){return r===n.__childrenNodeConstructor.EMPTY_NODE?1:r instanceof n.__childrenNodeConstructor?-1:(ee(r.isLeafNode(),"Unknown node type"),this.compareToLeafNode_(r))}compareToLeafNode_(r){let t=typeof r.value_,i=typeof this.value_,o=n.VALUE_TYPE_ORDER.indexOf(t),s=n.VALUE_TYPE_ORDER.indexOf(i);return ee(o>=0,"Unknown leaf type: "+t),ee(s>=0,"Unknown leaf type: "+i),o===s?i==="object"?0:this.value_<r.value_?-1:this.value_===r.value_?0:1:s-o}withIndex(){return this}isIndexed(){return!0}equals(r){if(r===this)return!0;if(r.isLeafNode()){let t=r;return this.value_===t.value_&&this.priorityNode_.equals(t.priorityNode_)}else return!1}}n.VALUE_TYPE_ORDER=["object","boolean","number","string"];return n})(),L$,M$;function gte(n){L$=n}function mte(n){M$=n}var rO=class extends kd{compare(e,r){let t=e.node.getPriority(),i=r.node.getPriority(),o=t.compareTo(i);return o===0?Al(e.name,r.name):o}isDefinedOn(e){return!e.getPriority().isEmpty()}indexedValueChanged(e,r){return!e.getPriority().equals(r.getPriority())}minPost(){return Be.MIN}maxPost(){return new Be(Ra,new Ud("[PRIORITY-POST]",M$))}makePost(e,r){let t=L$(e);return new Be(r,new Ud("[PRIORITY-POST]",t))}toString(){return".priority"}},At=new rO;var pte=Math.log(2),iO=class{constructor(e){let r=o=>parseInt(Math.log(o)/pte,10),t=o=>parseInt(Array(o+1).join("1"),2);this.count=r(e+1),this.current_=this.count-1;let i=t(this.count);this.bits_=e+1&i}nextBitIsOne(){let e=!(this.bits_&1<<this.current_);return this.current_--,e}},OI=function(n,e,r,t){n.sort(e);let i=function(c,l){let u=l-c,d,f;if(u===0)return null;if(u===1)return d=n[c],f=r?r(d):d,new Hi(f,d.node,Hi.BLACK,null,null);{let g=parseInt(u/2,10)+c,p=i(c,g),_=i(g+1,l);return d=n[g],f=r?r(d):d,new Hi(f,d.node,Hi.BLACK,p,_)}},o=function(c){let l=null,u=null,d=n.length,f=function(p,_){let T=d-p,D=d;d-=p;let b=i(T+1,D),G=n[T],M=r?r(G):G;g(new Hi(M,G.node,_,null,b))},g=function(p){l?(l.left=p,l=p):(u=p,l=p)};for(let p=0;p<c.count;++p){let _=c.nextBitIsOne(),T=Math.pow(2,c.count-(p+1));_?f(T,Hi.BLACK):(f(T,Hi.BLACK),f(T,Hi.RED))}return u},s=new iO(n.length),a=o(s);return new pi(t||e,a)};var UN,Md={},Vd=class n{static get Default(){return ee(Md&&At,"ChildrenNode.ts has not been loaded"),UN=UN||new n({".priority":Md},{".priority":At}),UN}constructor(e,r){this.indexes_=e,this.indexSet_=r}get(e){let r=fa(this.indexes_,e);if(!r)throw new Error("No index defined for "+e);return r instanceof pi?r:null}hasIndex(e){return hi(this.indexSet_,e.toString())}addIndex(e,r){ee(e!==El,"KeyIndex always exists and isn't meant to be added to the IndexMap.");let t=[],i=!1,o=r.getIterator(Be.Wrap),s=o.getNext();for(;s;)i=i||e.isDefinedOn(s.node),t.push(s),s=o.getNext();let a;i?a=OI(t,e.getCompare()):a=Md;let c=e.toString(),l=Object.assign({},this.indexSet_);l[c]=e;let u=Object.assign({},this.indexes_);return u[c]=a,new n(u,l)}addToIndexes(e,r){let t=Lg(this.indexes_,(i,o)=>{let s=fa(this.indexSet_,o);if(ee(s,"Missing index implementation for "+o),i===Md)if(s.isDefinedOn(e.node)){let a=[],c=r.getIterator(Be.Wrap),l=c.getNext();for(;l;)l.name!==e.name&&a.push(l),l=c.getNext();return a.push(e),OI(a,s.getCompare())}else return Md;else{let a=r.get(e.name),c=i;return a&&(c=c.remove(new Be(e.name,a))),c.insert(e,e.node)}});return new n(t,this.indexSet_)}removeFromIndexes(e,r){let t=Lg(this.indexes_,i=>{if(i===Md)return i;{let o=r.get(e.name);return o?i.remove(new Be(e.name,o)):i}});return new n(t,this.indexSet_)}};var Yg,Oe=(()=>{class n{static get EMPTY_NODE(){return Yg||(Yg=new n(new pi(zO),null,Vd.Default))}constructor(r,t,i){this.children_=r,this.priorityNode_=t,this.indexMap_=i,this.lazyHash_=null,this.priorityNode_&&b$(this.priorityNode_),this.children_.isEmpty()&&ee(!this.priorityNode_||this.priorityNode_.isEmpty(),"An empty node cannot have a priority")}isLeafNode(){return!1}getPriority(){return this.priorityNode_||Yg}updatePriority(r){return this.children_.isEmpty()?this:new n(this.children_,r,this.indexMap_)}getImmediateChild(r){if(r===".priority")return this.getPriority();{let t=this.children_.get(r);return t===null?Yg:t}}getChild(r){let t=ke(r);return t===null?this:this.getImmediateChild(t).getChild(ht(r))}hasChild(r){return this.children_.get(r)!==null}updateImmediateChild(r,t){if(ee(t,"We should always be passing snapshot nodes"),r===".priority")return this.updatePriority(t);{let i=new Be(r,t),o,s;t.isEmpty()?(o=this.children_.remove(r),s=this.indexMap_.removeFromIndexes(i,this.children_)):(o=this.children_.insert(r,t),s=this.indexMap_.addToIndexes(i,this.children_));let a=o.isEmpty()?Yg:this.priorityNode_;return new n(o,a,s)}}updateChild(r,t){let i=ke(r);if(i===null)return t;{ee(ke(r)!==".priority"||Ca(r)===1,".priority must be the last token in a path");let o=this.getImmediateChild(i).updateChild(ht(r),t);return this.updateImmediateChild(i,o)}}isEmpty(){return this.children_.isEmpty()}numChildren(){return this.children_.count()}val(r){if(this.isEmpty())return null;let t={},i=0,o=0,s=!0;if(this.forEachChild(At,(a,c)=>{t[a]=c.val(r),i++,s&&n.INTEGER_REGEXP_.test(a)?o=Math.max(o,Number(a)):s=!1}),!r&&s&&o<2*i){let a=[];for(let c in t)a[c]=t[c];return a}else return r&&!this.getPriority().isEmpty()&&(t[".priority"]=this.getPriority().val()),t}hash(){if(this.lazyHash_===null){let r="";this.getPriority().isEmpty()||(r+="priority:"+w$(this.getPriority().val())+":"),this.forEachChild(At,(t,i)=>{let o=i.hash();o!==""&&(r+=":"+t+":"+o)}),this.lazyHash_=r===""?"":l$(r)}return this.lazyHash_}getPredecessorChildName(r,t,i){let o=this.resolveIndex_(i);if(o){let s=o.getPredecessorKey(new Be(r,t));return s?s.name:null}else return this.children_.getPredecessorKey(r)}getFirstChildName(r){let t=this.resolveIndex_(r);if(t){let i=t.minKey();return i&&i.name}else return this.children_.minKey()}getFirstChild(r){let t=this.getFirstChildName(r);return t?new Be(t,this.children_.get(t)):null}getLastChildName(r){let t=this.resolveIndex_(r);if(t){let i=t.maxKey();return i&&i.name}else return this.children_.maxKey()}getLastChild(r){let t=this.getLastChildName(r);return t?new Be(t,this.children_.get(t)):null}forEachChild(r,t){let i=this.resolveIndex_(r);return i?i.inorderTraversal(o=>t(o.name,o.node)):this.children_.inorderTraversal(t)}getIterator(r){return this.getIteratorFrom(r.minPost(),r)}getIteratorFrom(r,t){let i=this.resolveIndex_(t);if(i)return i.getIteratorFrom(r,o=>o);{let o=this.children_.getIteratorFrom(r.name,Be.Wrap),s=o.peek();for(;s!=null&&t.compare(s,r)<0;)o.getNext(),s=o.peek();return o}}getReverseIterator(r){return this.getReverseIteratorFrom(r.maxPost(),r)}getReverseIteratorFrom(r,t){let i=this.resolveIndex_(t);if(i)return i.getReverseIteratorFrom(r,o=>o);{let o=this.children_.getReverseIteratorFrom(r.name,Be.Wrap),s=o.peek();for(;s!=null&&t.compare(s,r)>0;)o.getNext(),s=o.peek();return o}}compareTo(r){return this.isEmpty()?r.isEmpty()?0:-1:r.isLeafNode()||r.isEmpty()?1:r===pm?-1:0}withIndex(r){if(r===El||this.indexMap_.hasIndex(r))return this;{let t=this.indexMap_.addIndex(r,this.children_);return new n(this.children_,this.priorityNode_,t)}}isIndexed(r){return r===El||this.indexMap_.hasIndex(r)}equals(r){if(r===this)return!0;if(r.isLeafNode())return!1;{let t=r;if(this.getPriority().equals(t.getPriority()))if(this.children_.count()===t.children_.count()){let i=this.getIterator(At),o=t.getIterator(At),s=i.getNext(),a=o.getNext();for(;s&&a;){if(s.name!==a.name||!s.node.equals(a.node))return!1;s=i.getNext(),a=o.getNext()}return s===null&&a===null}else return!1;else return!1}}resolveIndex_(r){return r===El?null:this.indexMap_.get(r.toString())}}return n.INTEGER_REGEXP_=/^(0|[1-9]\d*)$/,n})(),oO=class extends Oe{constructor(){super(new pi(zO),Oe.EMPTY_NODE,Vd.Default)}compareTo(e){return e===this?0:1}equals(e){return e===this}getPriority(){return this}getImmediateChild(e){return Oe.EMPTY_NODE}isEmpty(){return!1}},pm=new oO;Object.defineProperties(Be,{MIN:{value:new Be(_l,Oe.EMPTY_NODE)},MAX:{value:new Be(Ra,pm)}});NI.__EMPTY_NODE=Oe.EMPTY_NODE;Ud.__childrenNodeConstructor=Oe;fte(pm);mte(pm);var Ete=!0;function Ut(n,e=null){if(n===null)return Oe.EMPTY_NODE;if(typeof n=="object"&&".priority"in n&&(e=n[".priority"]),ee(e===null||typeof e=="string"||typeof e=="number"||typeof e=="object"&&".sv"in e,"Invalid priority type found: "+typeof e),typeof n=="object"&&".value"in n&&n[".value"]!==null&&(n=n[".value"]),typeof n!="object"||".sv"in n){let r=n;return new Ud(r,Ut(e))}if(!(n instanceof Array)&&Ete){let r=[],t=!1;if(wn(n,(s,a)=>{if(s.substring(0,1)!=="."){let c=Ut(a);c.isEmpty()||(t=t||!c.getPriority().isEmpty(),r.push(new Be(s,c)))}}),r.length===0)return Oe.EMPTY_NODE;let o=OI(r,hte,s=>s.name,zO);if(t){let s=OI(r,At.getCompare());return new Oe(o,Ut(e),new Vd({".priority":s},{".priority":At}))}else return new Oe(o,Ut(e),Vd.Default)}else{let r=Oe.EMPTY_NODE;return wn(n,(t,i)=>{if(hi(n,t)&&t.substring(0,1)!=="."){let o=Ut(i);(o.isLeafNode()||!o.isEmpty())&&(r=r.updateImmediateChild(t,o))}}),r.updatePriority(Ut(e))}}gte(Ut);var rm=class extends kd{constructor(e){super(),this.indexPath_=e,ee(!Ue(e)&&ke(e)!==".priority","Can't create PathIndex with empty path or .priority key")}extractChild(e){return e.getChild(this.indexPath_)}isDefinedOn(e){return!e.getChild(this.indexPath_).isEmpty()}compare(e,r){let t=this.extractChild(e.node),i=this.extractChild(r.node),o=t.compareTo(i);return o===0?Al(e.name,r.name):o}makePost(e,r){let t=Ut(e),i=Oe.EMPTY_NODE.updateChild(this.indexPath_,t);return new Be(r,i)}maxPost(){let e=Oe.EMPTY_NODE.updateChild(this.indexPath_,pm);return new Be(Ra,e)}toString(){return nm(this.indexPath_,0).join("/")}};var sO=class extends kd{compare(e,r){let t=e.node.compareTo(r.node);return t===0?Al(e.name,r.name):t}isDefinedOn(e){return!0}indexedValueChanged(e,r){return!e.equals(r)}minPost(){return Be.MIN}maxPost(){return Be.MAX}makePost(e,r){let t=Ut(e);return new Be(r,t)}toString(){return".value"}},P$=new sO;function x$(n){return{type:"value",snapshotNode:n}}function Bd(n,e){return{type:"child_added",snapshotNode:e,childName:n}}function im(n,e){return{type:"child_removed",snapshotNode:e,childName:n}}function om(n,e,r){return{type:"child_changed",snapshotNode:e,childName:n,oldSnap:r}}function _te(n,e){return{type:"child_moved",snapshotNode:e,childName:n}}var sm=class{constructor(e){this.index_=e}updateChild(e,r,t,i,o,s){ee(e.isIndexed(this.index_),"A node must be indexed if only a child is updated");let a=e.getImmediateChild(r);return a.getChild(i).equals(t.getChild(i))&&a.isEmpty()===t.isEmpty()||(s!=null&&(t.isEmpty()?e.hasChild(r)?s.trackChildChange(im(r,a)):ee(e.isLeafNode(),"A child remove without an old child only makes sense on a leaf node"):a.isEmpty()?s.trackChildChange(Bd(r,t)):s.trackChildChange(om(r,t,a))),e.isLeafNode()&&t.isEmpty())?e:e.updateImmediateChild(r,t).withIndex(this.index_)}updateFullNode(e,r,t){return t!=null&&(e.isLeafNode()||e.forEachChild(At,(i,o)=>{r.hasChild(i)||t.trackChildChange(im(i,o))}),r.isLeafNode()||r.forEachChild(At,(i,o)=>{if(e.hasChild(i)){let s=e.getImmediateChild(i);s.equals(o)||t.trackChildChange(om(i,o,s))}else t.trackChildChange(Bd(i,o))})),r.withIndex(this.index_)}updatePriority(e,r){return e.isEmpty()?Oe.EMPTY_NODE:e.updatePriority(r)}filtersNodes(){return!1}getIndexedFilter(){return this}getIndex(){return this.index_}};var wI=class n{constructor(e){this.indexedFilter_=new sm(e.getIndex()),this.index_=e.getIndex(),this.startPost_=n.getStartPost_(e),this.endPost_=n.getEndPost_(e),this.startIsInclusive_=!e.startAfterSet_,this.endIsInclusive_=!e.endBeforeSet_}getStartPost(){return this.startPost_}getEndPost(){return this.endPost_}matches(e){let r=this.startIsInclusive_?this.index_.compare(this.getStartPost(),e)<=0:this.index_.compare(this.getStartPost(),e)<0,t=this.endIsInclusive_?this.index_.compare(e,this.getEndPost())<=0:this.index_.compare(e,this.getEndPost())<0;return r&&t}updateChild(e,r,t,i,o,s){return this.matches(new Be(r,t))||(t=Oe.EMPTY_NODE),this.indexedFilter_.updateChild(e,r,t,i,o,s)}updateFullNode(e,r,t){r.isLeafNode()&&(r=Oe.EMPTY_NODE);let i=r.withIndex(this.index_);i=i.updatePriority(Oe.EMPTY_NODE);let o=this;return r.forEachChild(At,(s,a)=>{o.matches(new Be(s,a))||(i=i.updateImmediateChild(s,Oe.EMPTY_NODE))}),this.indexedFilter_.updateFullNode(e,i,t)}updatePriority(e,r){return e}filtersNodes(){return!0}getIndexedFilter(){return this.indexedFilter_}getIndex(){return this.index_}static getStartPost_(e){if(e.hasStart()){let r=e.getIndexStartName();return e.getIndex().makePost(e.getIndexStartValue(),r)}else return e.getIndex().minPost()}static getEndPost_(e){if(e.hasEnd()){let r=e.getIndexEndName();return e.getIndex().makePost(e.getIndexEndValue(),r)}else return e.getIndex().maxPost()}};var aO=class{constructor(e){this.withinDirectionalStart=r=>this.reverse_?this.withinEndPost(r):this.withinStartPost(r),this.withinDirectionalEnd=r=>this.reverse_?this.withinStartPost(r):this.withinEndPost(r),this.withinStartPost=r=>{let t=this.index_.compare(this.rangedFilter_.getStartPost(),r);return this.startIsInclusive_?t<=0:t<0},this.withinEndPost=r=>{let t=this.index_.compare(r,this.rangedFilter_.getEndPost());return this.endIsInclusive_?t<=0:t<0},this.rangedFilter_=new wI(e),this.index_=e.getIndex(),this.limit_=e.getLimit(),this.reverse_=!e.isViewFromLeft(),this.startIsInclusive_=!e.startAfterSet_,this.endIsInclusive_=!e.endBeforeSet_}updateChild(e,r,t,i,o,s){return this.rangedFilter_.matches(new Be(r,t))||(t=Oe.EMPTY_NODE),e.getImmediateChild(r).equals(t)?e:e.numChildren()<this.limit_?this.rangedFilter_.getIndexedFilter().updateChild(e,r,t,i,o,s):this.fullLimitUpdateChild_(e,r,t,o,s)}updateFullNode(e,r,t){let i;if(r.isLeafNode()||r.isEmpty())i=Oe.EMPTY_NODE.withIndex(this.index_);else if(this.limit_*2<r.numChildren()&&r.isIndexed(this.index_)){i=Oe.EMPTY_NODE.withIndex(this.index_);let o;this.reverse_?o=r.getReverseIteratorFrom(this.rangedFilter_.getEndPost(),this.index_):o=r.getIteratorFrom(this.rangedFilter_.getStartPost(),this.index_);let s=0;for(;o.hasNext()&&s<this.limit_;){let a=o.getNext();if(this.withinDirectionalStart(a))if(this.withinDirectionalEnd(a))i=i.updateImmediateChild(a.name,a.node),s++;else break;else continue}}else{i=r.withIndex(this.index_),i=i.updatePriority(Oe.EMPTY_NODE);let o;this.reverse_?o=i.getReverseIterator(this.index_):o=i.getIterator(this.index_);let s=0;for(;o.hasNext();){let a=o.getNext();s<this.limit_&&this.withinDirectionalStart(a)&&this.withinDirectionalEnd(a)?s++:i=i.updateImmediateChild(a.name,Oe.EMPTY_NODE)}}return this.rangedFilter_.getIndexedFilter().updateFullNode(e,i,t)}updatePriority(e,r){return e}filtersNodes(){return!0}getIndexedFilter(){return this.rangedFilter_.getIndexedFilter()}getIndex(){return this.index_}fullLimitUpdateChild_(e,r,t,i,o){let s;if(this.reverse_){let d=this.index_.getCompare();s=(f,g)=>d(g,f)}else s=this.index_.getCompare();let a=e;ee(a.numChildren()===this.limit_,"");let c=new Be(r,t),l=this.reverse_?a.getFirstChild(this.index_):a.getLastChild(this.index_),u=this.rangedFilter_.matches(c);if(a.hasChild(r)){let d=a.getImmediateChild(r),f=i.getChildAfterChild(this.index_,l,this.reverse_);for(;f!=null&&(f.name===r||a.hasChild(f.name));)f=i.getChildAfterChild(this.index_,f,this.reverse_);let g=f==null?1:s(f,c);if(u&&!t.isEmpty()&&g>=0)return o?.trackChildChange(om(r,t,d)),a.updateImmediateChild(r,t);{o?.trackChildChange(im(r,d));let _=a.updateImmediateChild(r,Oe.EMPTY_NODE);return f!=null&&this.rangedFilter_.matches(f)?(o?.trackChildChange(Bd(f.name,f.node)),_.updateImmediateChild(f.name,f.node)):_}}else return t.isEmpty()?e:u&&s(l,c)>=0?(o!=null&&(o.trackChildChange(im(l.name,l.node)),o.trackChildChange(Bd(r,t))),a.updateImmediateChild(r,t).updateImmediateChild(l.name,Oe.EMPTY_NODE)):e}};var cO=class n{constructor(){this.limitSet_=!1,this.startSet_=!1,this.startNameSet_=!1,this.startAfterSet_=!1,this.endSet_=!1,this.endNameSet_=!1,this.endBeforeSet_=!1,this.limit_=0,this.viewFrom_="",this.indexStartValue_=null,this.indexStartName_="",this.indexEndValue_=null,this.indexEndName_="",this.index_=At}hasStart(){return this.startSet_}isViewFromLeft(){return this.viewFrom_===""?this.startSet_:this.viewFrom_==="l"}getIndexStartValue(){return ee(this.startSet_,"Only valid if start has been set"),this.indexStartValue_}getIndexStartName(){return ee(this.startSet_,"Only valid if start has been set"),this.startNameSet_?this.indexStartName_:_l}hasEnd(){return this.endSet_}getIndexEndValue(){return ee(this.endSet_,"Only valid if end has been set"),this.indexEndValue_}getIndexEndName(){return ee(this.endSet_,"Only valid if end has been set"),this.endNameSet_?this.indexEndName_:Ra}hasLimit(){return this.limitSet_}hasAnchoredLimit(){return this.limitSet_&&this.viewFrom_!==""}getLimit(){return ee(this.limitSet_,"Only valid if limit has been set"),this.limit_}getIndex(){return this.index_}loadsAllData(){return!(this.startSet_||this.endSet_||this.limitSet_)}isDefault(){return this.loadsAllData()&&this.index_===At}copy(){let e=new n;return e.limitSet_=this.limitSet_,e.limit_=this.limit_,e.startSet_=this.startSet_,e.startAfterSet_=this.startAfterSet_,e.indexStartValue_=this.indexStartValue_,e.startNameSet_=this.startNameSet_,e.indexStartName_=this.indexStartName_,e.endSet_=this.endSet_,e.endBeforeSet_=this.endBeforeSet_,e.indexEndValue_=this.indexEndValue_,e.endNameSet_=this.endNameSet_,e.indexEndName_=this.indexEndName_,e.index_=this.index_,e.viewFrom_=this.viewFrom_,e}};function Tte(n){return n.loadsAllData()?new sm(n.getIndex()):n.hasLimit()?new aO(n):new wI(n)}function Ite(n,e){let r=n.copy();return r.limitSet_=!0,r.limit_=e,r.viewFrom_="r",r}function vte(n,e,r){let t=n.copy();return t.startSet_=!0,e===void 0&&(e=null),t.indexStartValue_=e,r!=null?(t.startNameSet_=!0,t.indexStartName_=r):(t.startNameSet_=!1,t.indexStartName_=""),t}function yte(n,e,r){let t=n.copy();return t.endSet_=!0,e===void 0&&(e=null),t.indexEndValue_=e,r!==void 0?(t.endNameSet_=!0,t.indexEndName_=r):(t.endNameSet_=!1,t.indexEndName_=""),t}function Ste(n,e){let r=n.copy();return r.index_=e,r}function HG(n){let e={};if(n.isDefault())return e;let r;if(n.index_===At?r="$priority":n.index_===P$?r="$value":n.index_===El?r="$key":(ee(n.index_ instanceof rm,"Unrecognized index type!"),r=n.index_.toString()),e.orderBy=rn(r),n.startSet_){let t=n.startAfterSet_?"startAfter":"startAt";e[t]=rn(n.indexStartValue_),n.startNameSet_&&(e[t]+=","+rn(n.indexStartName_))}if(n.endSet_){let t=n.endBeforeSet_?"endBefore":"endAt";e[t]=rn(n.indexEndValue_),n.endNameSet_&&(e[t]+=","+rn(n.indexEndName_))}return n.limitSet_&&(n.isViewFromLeft()?e.limitToFirst=n.limit_:e.limitToLast=n.limit_),e}function WG(n){let e={};if(n.startSet_&&(e.sp=n.indexStartValue_,n.startNameSet_&&(e.sn=n.indexStartName_),e.sin=!n.startAfterSet_),n.endSet_&&(e.ep=n.indexEndValue_,n.endNameSet_&&(e.en=n.indexEndName_),e.ein=!n.endBeforeSet_),n.limitSet_){e.l=n.limit_;let r=n.viewFrom_;r===""&&(n.isViewFromLeft()?r="l":r="r"),e.vf=r}return n.index_!==At&&(e.i=n.index_.toString()),e}var lO=class n extends DI{reportStats(e){throw new Error("Method not implemented.")}static getListenId_(e,r){return r!==void 0?"tag$"+r:(ee(e._queryParams.isDefault(),"should have a tag if it's not a default query."),e._path.toString())}constructor(e,r,t,i){super(),this.repoInfo_=e,this.onDataUpdate_=r,this.authTokenProvider_=t,this.appCheckTokenProvider_=i,this.log_=mm("p:rest:"),this.listens_={}}listen(e,r,t,i){let o=e._path.toString();this.log_("Listen called for "+o+" "+e._queryIdentifier);let s=n.getListenId_(e,t),a={};this.listens_[s]=a;let c=HG(e._queryParams);this.restRequest_(o+".json",c,(l,u)=>{let d=u;if(l===404&&(d=null,l=null),l===null&&this.onDataUpdate_(o,d,!1,t),fa(this.listens_,s)===a){let f;l?l===401?f="permission_denied":f="rest_error:"+l:f="ok",i(f,null)}})}unlisten(e,r){let t=n.getListenId_(e,r);delete this.listens_[t]}get(e){let r=HG(e._queryParams),t=e._path.toString(),i=new Nn;return this.restRequest_(t+".json",r,(o,s)=>{let a=s;o===404&&(a=null,o=null),o===null?(this.onDataUpdate_(t,a,!1,null),i.resolve(a)):i.reject(new Error(a))}),i.promise}refreshAuthToken(e){}restRequest_(e,r={},t){return r.format="export",Promise.all([this.authTokenProvider_.getToken(!1),this.appCheckTokenProvider_.getToken(!1)]).then(([i,o])=>{i&&i.accessToken&&(r.auth=i.accessToken),o&&o.token&&(r.ac=o.token);let s=(this.repoInfo_.secure?"https://":"http://")+this.repoInfo_.host+e+"?ns="+this.repoInfo_.namespace+Mg(r);this.log_("Sending REST request for "+s);let a=new XMLHttpRequest;a.onreadystatechange=()=>{if(t&&a.readyState===4){this.log_("REST Response for "+s+" received. status:",a.status,"response:",a.responseText);let c=null;if(a.status>=200&&a.status<300){try{c=Rd(a.responseText)}catch{Zn("Failed to parse JSON response for "+s+": "+a.responseText)}t(null,c)}else a.status!==401&&a.status!==404&&Zn("Got unsuccessful REST response for "+s+" Status: "+a.status),t(a.status);t=null}},a.open("GET",s,!0),a.send()})}};var uO=class{constructor(){this.rootNode_=Oe.EMPTY_NODE}getNode(e){return this.rootNode_.getChild(e)}updateSnapshot(e,r){this.rootNode_=this.rootNode_.updateChild(e,r)}};function bI(){return{value:null,children:new Map}}function zd(n,e,r){if(Ue(e))n.value=r,n.children.clear();else if(n.value!==null)n.value=n.value.updateChild(e,r);else{let t=ke(e);n.children.has(t)||n.children.set(t,bI());let i=n.children.get(t);e=ht(e),zd(i,e,r)}}function dO(n,e){if(Ue(e))return n.value=null,n.children.clear(),!0;if(n.value!==null){if(n.value.isLeafNode())return!1;{let r=n.value;return n.value=null,r.forEachChild(At,(t,i)=>{zd(n,new Ke(t),i)}),dO(n,e)}}else if(n.children.size>0){let r=ke(e);return e=ht(e),n.children.has(r)&&dO(n.children.get(r),e)&&n.children.delete(r),n.children.size===0}else return!0}function hO(n,e,r){n.value!==null?r(e,n.value):Ate(n,(t,i)=>{let o=new Ke(e.toString()+"/"+t);hO(i,o,r)})}function Ate(n,e){n.children.forEach((r,t)=>{e(t,r)})}var fO=class{constructor(e){this.collection_=e,this.last_=null}get(){let e=this.collection_.get(),r=Object.assign({},e);return this.last_&&wn(this.last_,(t,i)=>{r[t]=r[t]-i}),this.last_=e,r}};var zG=10*1e3,Dte=30*1e3,Rte=300*1e3,gO=class{constructor(e,r){this.server_=r,this.statsToReport_={},this.statsListener_=new fO(e);let t=zG+(Dte-zG)*Math.random();Xg(this.reportStats_.bind(this),Math.floor(t))}reportStats_(){let e=this.statsListener_.get(),r={},t=!1;wn(e,(i,o)=>{o>0&&hi(this.statsToReport_,i)&&(r[i]=o,t=!0)}),t&&this.server_.reportStats(r),Xg(this.reportStats_.bind(this),Math.floor(Math.random()*2*Rte))}};var xo=(function(n){return n[n.OVERWRITE=0]="OVERWRITE",n[n.MERGE=1]="MERGE",n[n.ACK_USER_WRITE=2]="ACK_USER_WRITE",n[n.LISTEN_COMPLETE=3]="LISTEN_COMPLETE",n})(xo||{});function qO(){return{fromUser:!0,fromServer:!1,queryId:null,tagged:!1}}function KO(){return{fromUser:!1,fromServer:!0,queryId:null,tagged:!1}}function YO(n){return{fromUser:!1,fromServer:!0,queryId:n,tagged:!0}}var mO=class n{constructor(e,r,t){this.path=e,this.affectedTree=r,this.revert=t,this.type=xo.ACK_USER_WRITE,this.source=qO()}operationForChild(e){if(Ue(this.path)){if(this.affectedTree.value!=null)return ee(this.affectedTree.children.isEmpty(),"affectedTree should not have overlapping affected paths."),this;{let r=this.affectedTree.subtree(new Ke(e));return new n(qe(),r,this.revert)}}else return ee(ke(this.path)===e,"operationForChild called for unrelated child."),new n(ht(this.path),this.affectedTree,this.revert)}};var LI=class n{constructor(e,r){this.source=e,this.path=r,this.type=xo.LISTEN_COMPLETE}operationForChild(e){return Ue(this.path)?new n(this.source,qe()):new n(this.source,ht(this.path))}};var Gd=class n{constructor(e,r,t){this.source=e,this.path=r,this.snap=t,this.type=xo.OVERWRITE}operationForChild(e){return Ue(this.path)?new n(this.source,qe(),this.snap.getImmediateChild(e)):new n(this.source,ht(this.path),this.snap)}};var am=class n{constructor(e,r,t){this.source=e,this.path=r,this.children=t,this.type=xo.MERGE}operationForChild(e){if(Ue(this.path)){let r=this.children.subtree(new Ke(e));return r.isEmpty()?null:r.value?new Gd(this.source,qe(),r.value):new n(this.source,qe(),r)}else return ee(ke(this.path)===e,"Can't get a merge for a child not on the path of the operation"),new n(this.source,ht(this.path),this.children)}toString(){return"Operation("+this.path+": "+this.source.toString()+" merge: "+this.children.toString()+")"}};var Fo=class{constructor(e,r,t){this.node_=e,this.fullyInitialized_=r,this.filtered_=t}isFullyInitialized(){return this.fullyInitialized_}isFiltered(){return this.filtered_}isCompleteForPath(e){if(Ue(e))return this.isFullyInitialized()&&!this.filtered_;let r=ke(e);return this.isCompleteForChild(r)}isCompleteForChild(e){return this.isFullyInitialized()&&!this.filtered_||this.node_.hasChild(e)}getNode(){return this.node_}};var pO=class{constructor(e){this.query_=e,this.index_=this.query_._queryParams.getIndex()}};function Cte(n,e,r,t){let i=[],o=[];return e.forEach(s=>{s.type==="child_changed"&&n.index_.indexedValueChanged(s.oldSnap,s.snapshotNode)&&o.push(_te(s.childName,s.snapshotNode))}),Qg(n,i,"child_removed",e,t,r),Qg(n,i,"child_added",e,t,r),Qg(n,i,"child_moved",o,t,r),Qg(n,i,"child_changed",e,t,r),Qg(n,i,"value",e,t,r),i}function Qg(n,e,r,t,i,o){let s=t.filter(a=>a.type===r);s.sort((a,c)=>Ote(n,a,c)),s.forEach(a=>{let c=Nte(n,a,o);i.forEach(l=>{l.respondsTo(a.type)&&e.push(l.createEvent(c,n.query_))})})}function Nte(n,e,r){return e.type==="value"||e.type==="child_removed"||(e.prevName=r.getPredecessorChildName(e.childName,e.snapshotNode,n.index_)),e}function Ote(n,e,r){if(e.childName==null||r.childName==null)throw ol("Should only compare child_ events.");let t=new Be(e.childName,e.snapshotNode),i=new Be(r.childName,r.snapshotNode);return n.index_.compare(t,i)}function qI(n,e){return{eventCache:n,serverCache:e}}function Zg(n,e,r,t){return qI(new Fo(e,r,t),n.serverCache)}function F$(n,e,r,t){return qI(n.eventCache,new Fo(e,r,t))}function MI(n){return n.eventCache.isFullyInitialized()?n.eventCache.getNode():null}function Tl(n){return n.serverCache.isFullyInitialized()?n.serverCache.getNode():null}var VN,wte=()=>(VN||(VN=new pi(Nee)),VN),fr=class n{static fromObject(e){let r=new n(null);return wn(e,(t,i)=>{r=r.set(new Ke(t),i)}),r}constructor(e,r=wte()){this.value=e,this.children=r}isEmpty(){return this.value===null&&this.children.isEmpty()}findRootMostMatchingPathAndValue(e,r){if(this.value!=null&&r(this.value))return{path:qe(),value:this.value};if(Ue(e))return null;{let t=ke(e),i=this.children.get(t);if(i!==null){let o=i.findRootMostMatchingPathAndValue(ht(e),r);return o!=null?{path:Vt(new Ke(t),o.path),value:o.value}:null}else return null}}findRootMostValueAndPath(e){return this.findRootMostMatchingPathAndValue(e,()=>!0)}subtree(e){if(Ue(e))return this;{let r=ke(e),t=this.children.get(r);return t!==null?t.subtree(ht(e)):new n(null)}}set(e,r){if(Ue(e))return new n(r,this.children);{let t=ke(e),o=(this.children.get(t)||new n(null)).set(ht(e),r),s=this.children.insert(t,o);return new n(this.value,s)}}remove(e){if(Ue(e))return this.children.isEmpty()?new n(null):new n(null,this.children);{let r=ke(e),t=this.children.get(r);if(t){let i=t.remove(ht(e)),o;return i.isEmpty()?o=this.children.remove(r):o=this.children.insert(r,i),this.value===null&&o.isEmpty()?new n(null):new n(this.value,o)}else return this}}get(e){if(Ue(e))return this.value;{let r=ke(e),t=this.children.get(r);return t?t.get(ht(e)):null}}setTree(e,r){if(Ue(e))return r;{let t=ke(e),o=(this.children.get(t)||new n(null)).setTree(ht(e),r),s;return o.isEmpty()?s=this.children.remove(t):s=this.children.insert(t,o),new n(this.value,s)}}fold(e){return this.fold_(qe(),e)}fold_(e,r){let t={};return this.children.inorderTraversal((i,o)=>{t[i]=o.fold_(Vt(e,i),r)}),r(e,this.value,t)}findOnPath(e,r){return this.findOnPath_(e,qe(),r)}findOnPath_(e,r,t){let i=this.value?t(r,this.value):!1;if(i)return i;if(Ue(e))return null;{let o=ke(e),s=this.children.get(o);return s?s.findOnPath_(ht(e),Vt(r,o),t):null}}foreachOnPath(e,r){return this.foreachOnPath_(e,qe(),r)}foreachOnPath_(e,r,t){if(Ue(e))return this;{this.value&&t(r,this.value);let i=ke(e),o=this.children.get(i);return o?o.foreachOnPath_(ht(e),Vt(r,i),t):new n(null)}}foreach(e){this.foreach_(qe(),e)}foreach_(e,r){this.children.inorderTraversal((t,i)=>{i.foreach_(Vt(e,t),r)}),this.value&&r(e,this.value)}foreachChild(e){this.children.inorderTraversal((r,t)=>{t.value&&e(r,t.value)})}};var Wi=class n{constructor(e){this.writeTree_=e}static empty(){return new n(new fr(null))}};function em(n,e,r){if(Ue(e))return new Wi(new fr(r));{let t=n.writeTree_.findRootMostValueAndPath(e);if(t!=null){let i=t.path,o=t.value,s=hr(i,e);return o=o.updateChild(s,r),new Wi(n.writeTree_.set(i,o))}else{let i=new fr(r),o=n.writeTree_.setTree(e,i);return new Wi(o)}}}function EO(n,e,r){let t=n;return wn(r,(i,o)=>{t=em(t,Vt(e,i),o)}),t}function qG(n,e){if(Ue(e))return Wi.empty();{let r=n.writeTree_.setTree(e,new fr(null));return new Wi(r)}}function _O(n,e){return Dl(n,e)!=null}function Dl(n,e){let r=n.writeTree_.findRootMostValueAndPath(e);return r!=null?n.writeTree_.get(r.path).getChild(hr(r.path,e)):null}function KG(n){let e=[],r=n.writeTree_.value;return r!=null?r.isLeafNode()||r.forEachChild(At,(t,i)=>{e.push(new Be(t,i))}):n.writeTree_.children.inorderTraversal((t,i)=>{i.value!=null&&e.push(new Be(t,i.value))}),e}function Aa(n,e){if(Ue(e))return n;{let r=Dl(n,e);return r!=null?new Wi(new fr(r)):new Wi(n.writeTree_.subtree(e))}}function TO(n){return n.writeTree_.isEmpty()}function $d(n,e){return k$(qe(),n.writeTree_,e)}function k$(n,e,r){if(e.value!=null)return r.updateChild(n,e.value);{let t=null;return e.children.inorderTraversal((i,o)=>{i===".priority"?(ee(o.value!==null,"Priority writes must always be leaf nodes"),t=o.value):r=k$(Vt(n,i),o,r)}),!r.getChild(n).isEmpty()&&t!==null&&(r=r.updateChild(Vt(n,".priority"),t)),r}}function KI(n,e){return G$(e,n)}function bte(n,e,r,t,i){ee(t>n.lastWriteId,"Stacking an older write on top of newer ones"),i===void 0&&(i=!0),n.allWrites.push({path:e,snap:r,writeId:t,visible:i}),i&&(n.visibleWrites=em(n.visibleWrites,e,r)),n.lastWriteId=t}function Lte(n,e,r,t){ee(t>n.lastWriteId,"Stacking an older merge on top of newer ones"),n.allWrites.push({path:e,children:r,writeId:t,visible:!0}),n.visibleWrites=EO(n.visibleWrites,e,r),n.lastWriteId=t}function Mte(n,e){for(let r=0;r<n.allWrites.length;r++){let t=n.allWrites[r];if(t.writeId===e)return t}return null}function Pte(n,e){let r=n.allWrites.findIndex(a=>a.writeId===e);ee(r>=0,"removeWrite called with nonexistent writeId.");let t=n.allWrites[r];n.allWrites.splice(r,1);let i=t.visible,o=!1,s=n.allWrites.length-1;for(;i&&s>=0;){let a=n.allWrites[s];a.visible&&(s>=r&&xte(a,t.path)?i=!1:mi(t.path,a.path)&&(o=!0)),s--}if(i){if(o)return Fte(n),!0;if(t.snap)n.visibleWrites=qG(n.visibleWrites,t.path);else{let a=t.children;wn(a,c=>{n.visibleWrites=qG(n.visibleWrites,Vt(t.path,c))})}return!0}else return!1}function xte(n,e){if(n.snap)return mi(n.path,e);for(let r in n.children)if(n.children.hasOwnProperty(r)&&mi(Vt(n.path,r),e))return!0;return!1}function Fte(n){n.visibleWrites=U$(n.allWrites,kte,qe()),n.allWrites.length>0?n.lastWriteId=n.allWrites[n.allWrites.length-1].writeId:n.lastWriteId=-1}function kte(n){return n.visible}function U$(n,e,r){let t=Wi.empty();for(let i=0;i<n.length;++i){let o=n[i];if(e(o)){let s=o.path,a;if(o.snap)mi(r,s)?(a=hr(r,s),t=em(t,a,o.snap)):mi(s,r)&&(a=hr(s,r),t=em(t,qe(),o.snap.getChild(a)));else if(o.children){if(mi(r,s))a=hr(r,s),t=EO(t,a,o.children);else if(mi(s,r))if(a=hr(s,r),Ue(a))t=EO(t,qe(),o.children);else{let c=fa(o.children,ke(a));if(c){let l=c.getChild(ht(a));t=em(t,qe(),l)}}}else throw ol("WriteRecord should have .snap or .children")}}return t}function V$(n,e,r,t,i){if(!t&&!i){let o=Dl(n.visibleWrites,e);if(o!=null)return o;{let s=Aa(n.visibleWrites,e);if(TO(s))return r;if(r==null&&!_O(s,qe()))return null;{let a=r||Oe.EMPTY_NODE;return $d(s,a)}}}else{let o=Aa(n.visibleWrites,e);if(!i&&TO(o))return r;if(!i&&r==null&&!_O(o,qe()))return null;{let s=function(l){return(l.visible||i)&&(!t||!~t.indexOf(l.writeId))&&(mi(l.path,e)||mi(e,l.path))},a=U$(n.allWrites,s,e),c=r||Oe.EMPTY_NODE;return $d(a,c)}}}function Ute(n,e,r){let t=Oe.EMPTY_NODE,i=Dl(n.visibleWrites,e);if(i)return i.isLeafNode()||i.forEachChild(At,(o,s)=>{t=t.updateImmediateChild(o,s)}),t;if(r){let o=Aa(n.visibleWrites,e);return r.forEachChild(At,(s,a)=>{let c=$d(Aa(o,new Ke(s)),a);t=t.updateImmediateChild(s,c)}),KG(o).forEach(s=>{t=t.updateImmediateChild(s.name,s.node)}),t}else{let o=Aa(n.visibleWrites,e);return KG(o).forEach(s=>{t=t.updateImmediateChild(s.name,s.node)}),t}}function Vte(n,e,r,t,i){ee(t||i,"Either existingEventSnap or existingServerSnap must exist");let o=Vt(e,r);if(_O(n.visibleWrites,o))return null;{let s=Aa(n.visibleWrites,o);return TO(s)?i.getChild(r):$d(s,i.getChild(r))}}function Bte(n,e,r,t){let i=Vt(e,r),o=Dl(n.visibleWrites,i);if(o!=null)return o;if(t.isCompleteForChild(r)){let s=Aa(n.visibleWrites,i);return $d(s,t.getNode().getImmediateChild(r))}else return null}function Gte(n,e){return Dl(n.visibleWrites,e)}function $te(n,e,r,t,i,o,s){let a,c=Aa(n.visibleWrites,e),l=Dl(c,qe());if(l!=null)a=l;else if(r!=null)a=$d(c,r);else return[];if(a=a.withIndex(s),!a.isEmpty()&&!a.isLeafNode()){let u=[],d=s.getCompare(),f=o?a.getReverseIteratorFrom(t,s):a.getIteratorFrom(t,s),g=f.getNext();for(;g&&u.length<i;)d(g,t)!==0&&u.push(g),g=f.getNext();return u}else return[]}function jte(){return{visibleWrites:Wi.empty(),allWrites:[],lastWriteId:-1}}function PI(n,e,r,t){return V$(n.writeTree,n.treePath,e,r,t)}function QO(n,e){return Ute(n.writeTree,n.treePath,e)}function YG(n,e,r,t){return Vte(n.writeTree,n.treePath,e,r,t)}function xI(n,e){return Gte(n.writeTree,Vt(n.treePath,e))}function Hte(n,e,r,t,i,o){return $te(n.writeTree,n.treePath,e,r,t,i,o)}function XO(n,e,r){return Bte(n.writeTree,n.treePath,e,r)}function B$(n,e){return G$(Vt(n.treePath,e),n.writeTree)}function G$(n,e){return{treePath:n,writeTree:e}}var IO=class{constructor(){this.changeMap=new Map}trackChildChange(e){let r=e.type,t=e.childName;ee(r==="child_added"||r==="child_changed"||r==="child_removed","Only child changes supported for tracking"),ee(t!==".priority","Only non-priority child changes can be tracked.");let i=this.changeMap.get(t);if(i){let o=i.type;if(r==="child_added"&&o==="child_removed")this.changeMap.set(t,om(t,e.snapshotNode,i.snapshotNode));else if(r==="child_removed"&&o==="child_added")this.changeMap.delete(t);else if(r==="child_removed"&&o==="child_changed")this.changeMap.set(t,im(t,i.oldSnap));else if(r==="child_changed"&&o==="child_added")this.changeMap.set(t,Bd(t,e.snapshotNode));else if(r==="child_changed"&&o==="child_changed")this.changeMap.set(t,om(t,e.snapshotNode,i.oldSnap));else throw ol("Illegal combination of changes: "+e+" occurred after "+i)}else this.changeMap.set(t,e)}getChanges(){return Array.from(this.changeMap.values())}};var vO=class{getCompleteChild(e){return null}getChildAfterChild(e,r,t){return null}},$$=new vO,cm=class{constructor(e,r,t=null){this.writes_=e,this.viewCache_=r,this.optCompleteServerCache_=t}getCompleteChild(e){let r=this.viewCache_.eventCache;if(r.isCompleteForChild(e))return r.getNode().getImmediateChild(e);{let t=this.optCompleteServerCache_!=null?new Fo(this.optCompleteServerCache_,!0,!1):this.viewCache_.serverCache;return XO(this.writes_,e,t)}}getChildAfterChild(e,r,t){let i=this.optCompleteServerCache_!=null?this.optCompleteServerCache_:Tl(this.viewCache_),o=Hte(this.writes_,i,r,1,t,e);return o.length===0?null:o[0]}};function Wte(n){return{filter:n}}function zte(n,e){ee(e.eventCache.getNode().isIndexed(n.filter.getIndex()),"Event snap not indexed"),ee(e.serverCache.getNode().isIndexed(n.filter.getIndex()),"Server snap not indexed")}function qte(n,e,r,t,i){let o=new IO,s,a;if(r.type===xo.OVERWRITE){let l=r;l.source.fromUser?s=yO(n,e,l.path,l.snap,t,i,o):(ee(l.source.fromServer,"Unknown source."),a=l.source.tagged||e.serverCache.isFiltered()&&!Ue(l.path),s=FI(n,e,l.path,l.snap,t,i,a,o))}else if(r.type===xo.MERGE){let l=r;l.source.fromUser?s=Yte(n,e,l.path,l.children,t,i,o):(ee(l.source.fromServer,"Unknown source."),a=l.source.tagged||e.serverCache.isFiltered(),s=SO(n,e,l.path,l.children,t,i,a,o))}else if(r.type===xo.ACK_USER_WRITE){let l=r;l.revert?s=Jte(n,e,l.path,t,i,o):s=Qte(n,e,l.path,l.affectedTree,t,i,o)}else if(r.type===xo.LISTEN_COMPLETE)s=Xte(n,e,r.path,t,o);else throw ol("Unknown operation type: "+r.type);let c=o.getChanges();return Kte(e,s,c),{viewCache:s,changes:c}}function Kte(n,e,r){let t=e.eventCache;if(t.isFullyInitialized()){let i=t.getNode().isLeafNode()||t.getNode().isEmpty(),o=MI(n);(r.length>0||!n.eventCache.isFullyInitialized()||i&&!t.getNode().equals(o)||!t.getNode().getPriority().equals(o.getPriority()))&&r.push(x$(MI(e)))}}function j$(n,e,r,t,i,o){let s=e.eventCache;if(xI(t,r)!=null)return e;{let a,c;if(Ue(r))if(ee(e.serverCache.isFullyInitialized(),"If change path is empty, we must have complete server data"),e.serverCache.isFiltered()){let l=Tl(e),u=l instanceof Oe?l:Oe.EMPTY_NODE,d=QO(t,u);a=n.filter.updateFullNode(e.eventCache.getNode(),d,o)}else{let l=PI(t,Tl(e));a=n.filter.updateFullNode(e.eventCache.getNode(),l,o)}else{let l=ke(r);if(l===".priority"){ee(Ca(r)===1,"Can't have a priority with additional path components");let u=s.getNode();c=e.serverCache.getNode();let d=YG(t,r,u,c);d!=null?a=n.filter.updatePriority(u,d):a=s.getNode()}else{let u=ht(r),d;if(s.isCompleteForChild(l)){c=e.serverCache.getNode();let f=YG(t,r,s.getNode(),c);f!=null?d=s.getNode().getImmediateChild(l).updateChild(u,f):d=s.getNode().getImmediateChild(l)}else d=XO(t,l,e.serverCache);d!=null?a=n.filter.updateChild(s.getNode(),l,d,u,i,o):a=s.getNode()}}return Zg(e,a,s.isFullyInitialized()||Ue(r),n.filter.filtersNodes())}}function FI(n,e,r,t,i,o,s,a){let c=e.serverCache,l,u=s?n.filter:n.filter.getIndexedFilter();if(Ue(r))l=u.updateFullNode(c.getNode(),t,null);else if(u.filtersNodes()&&!c.isFiltered()){let g=c.getNode().updateChild(r,t);l=u.updateFullNode(c.getNode(),g,null)}else{let g=ke(r);if(!c.isCompleteForPath(r)&&Ca(r)>1)return e;let p=ht(r),T=c.getNode().getImmediateChild(g).updateChild(p,t);g===".priority"?l=u.updatePriority(c.getNode(),T):l=u.updateChild(c.getNode(),g,T,p,$$,null)}let d=F$(e,l,c.isFullyInitialized()||Ue(r),u.filtersNodes()),f=new cm(i,d,o);return j$(n,d,r,i,f,a)}function yO(n,e,r,t,i,o,s){let a=e.eventCache,c,l,u=new cm(i,e,o);if(Ue(r))l=n.filter.updateFullNode(e.eventCache.getNode(),t,s),c=Zg(e,l,!0,n.filter.filtersNodes());else{let d=ke(r);if(d===".priority")l=n.filter.updatePriority(e.eventCache.getNode(),t),c=Zg(e,l,a.isFullyInitialized(),a.isFiltered());else{let f=ht(r),g=a.getNode().getImmediateChild(d),p;if(Ue(f))p=t;else{let _=u.getCompleteChild(d);_!=null?jO(f)===".priority"&&_.getChild(N$(f)).isEmpty()?p=_:p=_.updateChild(f,t):p=Oe.EMPTY_NODE}if(g.equals(p))c=e;else{let _=n.filter.updateChild(a.getNode(),d,p,f,u,s);c=Zg(e,_,a.isFullyInitialized(),n.filter.filtersNodes())}}}return c}function QG(n,e){return n.eventCache.isCompleteForChild(e)}function Yte(n,e,r,t,i,o,s){let a=e;return t.foreach((c,l)=>{let u=Vt(r,c);QG(e,ke(u))&&(a=yO(n,a,u,l,i,o,s))}),t.foreach((c,l)=>{let u=Vt(r,c);QG(e,ke(u))||(a=yO(n,a,u,l,i,o,s))}),a}function XG(n,e,r){return r.foreach((t,i)=>{e=e.updateChild(t,i)}),e}function SO(n,e,r,t,i,o,s,a){if(e.serverCache.getNode().isEmpty()&&!e.serverCache.isFullyInitialized())return e;let c=e,l;Ue(r)?l=t:l=new fr(null).setTree(r,t);let u=e.serverCache.getNode();return l.children.inorderTraversal((d,f)=>{if(u.hasChild(d)){let g=e.serverCache.getNode().getImmediateChild(d),p=XG(n,g,f);c=FI(n,c,new Ke(d),p,i,o,s,a)}}),l.children.inorderTraversal((d,f)=>{let g=!e.serverCache.isCompleteForChild(d)&&f.value===null;if(!u.hasChild(d)&&!g){let p=e.serverCache.getNode().getImmediateChild(d),_=XG(n,p,f);c=FI(n,c,new Ke(d),_,i,o,s,a)}}),c}function Qte(n,e,r,t,i,o,s){if(xI(i,r)!=null)return e;let a=e.serverCache.isFiltered(),c=e.serverCache;if(t.value!=null){if(Ue(r)&&c.isFullyInitialized()||c.isCompleteForPath(r))return FI(n,e,r,c.getNode().getChild(r),i,o,a,s);if(Ue(r)){let l=new fr(null);return c.getNode().forEachChild(El,(u,d)=>{l=l.set(new Ke(u),d)}),SO(n,e,r,l,i,o,a,s)}else return e}else{let l=new fr(null);return t.foreach((u,d)=>{let f=Vt(r,u);c.isCompleteForPath(f)&&(l=l.set(u,c.getNode().getChild(f)))}),SO(n,e,r,l,i,o,a,s)}}function Xte(n,e,r,t,i){let o=e.serverCache,s=F$(e,o.getNode(),o.isFullyInitialized()||Ue(r),o.isFiltered());return j$(n,s,r,t,$$,i)}function Jte(n,e,r,t,i,o){let s;if(xI(t,r)!=null)return e;{let a=new cm(t,e,i),c=e.eventCache.getNode(),l;if(Ue(r)||ke(r)===".priority"){let u;if(e.serverCache.isFullyInitialized())u=PI(t,Tl(e));else{let d=e.serverCache.getNode();ee(d instanceof Oe,"serverChildren would be complete if leaf node"),u=QO(t,d)}u=u,l=n.filter.updateFullNode(c,u,o)}else{let u=ke(r),d=XO(t,u,e.serverCache);d==null&&e.serverCache.isCompleteForChild(u)&&(d=c.getImmediateChild(u)),d!=null?l=n.filter.updateChild(c,u,d,ht(r),a,o):e.eventCache.getNode().hasChild(u)?l=n.filter.updateChild(c,u,Oe.EMPTY_NODE,ht(r),a,o):l=c,l.isEmpty()&&e.serverCache.isFullyInitialized()&&(s=PI(t,Tl(e)),s.isLeafNode()&&(l=n.filter.updateFullNode(l,s,o)))}return s=e.serverCache.isFullyInitialized()||xI(t,qe())!=null,Zg(e,l,s,n.filter.filtersNodes())}}var AO=class{constructor(e,r){this.query_=e,this.eventRegistrations_=[];let t=this.query_._queryParams,i=new sm(t.getIndex()),o=Tte(t);this.processor_=Wte(o);let s=r.serverCache,a=r.eventCache,c=i.updateFullNode(Oe.EMPTY_NODE,s.getNode(),null),l=o.updateFullNode(Oe.EMPTY_NODE,a.getNode(),null),u=new Fo(c,s.isFullyInitialized(),i.filtersNodes()),d=new Fo(l,a.isFullyInitialized(),o.filtersNodes());this.viewCache_=qI(d,u),this.eventGenerator_=new pO(this.query_)}get query(){return this.query_}};function Zte(n){return n.viewCache_.serverCache.getNode()}function ene(n){return MI(n.viewCache_)}function tne(n,e){let r=Tl(n.viewCache_);return r&&(n.query._queryParams.loadsAllData()||!Ue(e)&&!r.getImmediateChild(ke(e)).isEmpty())?r.getChild(e):null}function JG(n){return n.eventRegistrations_.length===0}function nne(n,e){n.eventRegistrations_.push(e)}function ZG(n,e,r){let t=[];if(r){ee(e==null,"A cancel should cancel all event registrations.");let i=n.query._path;n.eventRegistrations_.forEach(o=>{let s=o.createCancelEvent(r,i);s&&t.push(s)})}if(e){let i=[];for(let o=0;o<n.eventRegistrations_.length;++o){let s=n.eventRegistrations_[o];if(!s.matches(e))i.push(s);else if(e.hasAnyCallback()){i=i.concat(n.eventRegistrations_.slice(o+1));break}}n.eventRegistrations_=i}else n.eventRegistrations_=[];return t}function e$(n,e,r,t){e.type===xo.MERGE&&e.source.queryId!==null&&(ee(Tl(n.viewCache_),"We should always have a full cache before handling merges"),ee(MI(n.viewCache_),"Missing event cache, even though we have a server cache"));let i=n.viewCache_,o=qte(n.processor_,i,e,r,t);return zte(n.processor_,o.viewCache),ee(o.viewCache.serverCache.isFullyInitialized()||!i.serverCache.isFullyInitialized(),"Once a server snap is complete, it should never go back"),n.viewCache_=o.viewCache,H$(n,o.changes,o.viewCache.eventCache.getNode(),null)}function rne(n,e){let r=n.viewCache_.eventCache,t=[];return r.getNode().isLeafNode()||r.getNode().forEachChild(At,(o,s)=>{t.push(Bd(o,s))}),r.isFullyInitialized()&&t.push(x$(r.getNode())),H$(n,t,r.getNode(),e)}function H$(n,e,r,t){let i=t?[t]:n.eventRegistrations_;return Cte(n.eventGenerator_,e,r,i)}var kI,UI=class{constructor(){this.views=new Map}};function ine(n){ee(!kI,"__referenceConstructor has already been defined"),kI=n}function one(){return ee(kI,"Reference.ts has not been loaded"),kI}function sne(n){return n.views.size===0}function JO(n,e,r,t){let i=e.source.queryId;if(i!==null){let o=n.views.get(i);return ee(o!=null,"SyncTree gave us an op for an invalid query."),e$(o,e,r,t)}else{let o=[];for(let s of n.views.values())o=o.concat(e$(s,e,r,t));return o}}function W$(n,e,r,t,i){let o=e._queryIdentifier,s=n.views.get(o);if(!s){let a=PI(r,i?t:null),c=!1;a?c=!0:t instanceof Oe?(a=QO(r,t),c=!1):(a=Oe.EMPTY_NODE,c=!1);let l=qI(new Fo(a,c,!1),new Fo(t,i,!1));return new AO(e,l)}return s}function ane(n,e,r,t,i,o){let s=W$(n,e,t,i,o);return n.views.has(e._queryIdentifier)||n.views.set(e._queryIdentifier,s),nne(s,r),rne(s,r)}function cne(n,e,r,t){let i=e._queryIdentifier,o=[],s=[],a=Na(n);if(i==="default")for(let[c,l]of n.views.entries())s=s.concat(ZG(l,r,t)),JG(l)&&(n.views.delete(c),l.query._queryParams.loadsAllData()||o.push(l.query));else{let c=n.views.get(i);c&&(s=s.concat(ZG(c,r,t)),JG(c)&&(n.views.delete(i),c.query._queryParams.loadsAllData()||o.push(c.query)))}return a&&!Na(n)&&o.push(new(one())(e._repo,e._path)),{removed:o,events:s}}function z$(n){let e=[];for(let r of n.views.values())r.query._queryParams.loadsAllData()||e.push(r);return e}function Da(n,e){let r=null;for(let t of n.views.values())r=r||tne(t,e);return r}function q$(n,e){if(e._queryParams.loadsAllData())return YI(n);{let t=e._queryIdentifier;return n.views.get(t)}}function K$(n,e){return q$(n,e)!=null}function Na(n){return YI(n)!=null}function YI(n){for(let e of n.views.values())if(e.query._queryParams.loadsAllData())return e;return null}var VI;function lne(n){ee(!VI,"__referenceConstructor has already been defined"),VI=n}function une(){return ee(VI,"Reference.ts has not been loaded"),VI}var dne=1,BI=class{constructor(e){this.listenProvider_=e,this.syncPointTree_=new fr(null),this.pendingWriteTree_=jte(),this.tagToQueryMap=new Map,this.queryToTagMap=new Map}};function ZO(n,e,r,t,i){return bte(n.pendingWriteTree_,e,r,t,i),i?qd(n,new Gd(qO(),e,r)):[]}function hne(n,e,r,t){Lte(n.pendingWriteTree_,e,r,t);let i=fr.fromObject(r);return qd(n,new am(qO(),e,i))}function ya(n,e,r=!1){let t=Mte(n.pendingWriteTree_,e);if(Pte(n.pendingWriteTree_,e)){let o=new fr(null);return t.snap!=null?o=o.set(qe(),!0):wn(t.children,s=>{o=o.set(new Ke(s),!0)}),qd(n,new mO(t.path,o,r))}else return[]}function Em(n,e,r){return qd(n,new Gd(KO(),e,r))}function fne(n,e,r){let t=fr.fromObject(r);return qd(n,new am(KO(),e,t))}function gne(n,e){return qd(n,new LI(KO(),e))}function mne(n,e,r){let t=ew(n,r);if(t){let i=tw(t),o=i.path,s=i.queryId,a=hr(o,e),c=new LI(YO(s),a);return nw(n,o,c)}else return[]}function GI(n,e,r,t,i=!1){let o=e._path,s=n.syncPointTree_.get(o),a=[];if(s&&(e._queryIdentifier==="default"||K$(s,e))){let c=cne(s,e,r,t);sne(s)&&(n.syncPointTree_=n.syncPointTree_.remove(o));let l=c.removed;if(a=c.events,!i){let u=l.findIndex(f=>f._queryParams.loadsAllData())!==-1,d=n.syncPointTree_.findOnPath(o,(f,g)=>Na(g));if(u&&!d){let f=n.syncPointTree_.subtree(o);if(!f.isEmpty()){let g=_ne(f);for(let p=0;p<g.length;++p){let _=g[p],T=_.query,D=J$(n,_);n.listenProvider_.startListening(tm(T),lm(n,T),D.hashFn,D.onComplete)}}}!d&&l.length>0&&!t&&(u?n.listenProvider_.stopListening(tm(e),null):l.forEach(f=>{let g=n.queryToTagMap.get(XI(f));n.listenProvider_.stopListening(tm(f),g)}))}Tne(n,l)}return a}function Y$(n,e,r,t){let i=ew(n,t);if(i!=null){let o=tw(i),s=o.path,a=o.queryId,c=hr(s,e),l=new Gd(YO(a),c,r);return nw(n,s,l)}else return[]}function pne(n,e,r,t){let i=ew(n,t);if(i){let o=tw(i),s=o.path,a=o.queryId,c=hr(s,e),l=fr.fromObject(r),u=new am(YO(a),c,l);return nw(n,s,u)}else return[]}function DO(n,e,r,t=!1){let i=e._path,o=null,s=!1;n.syncPointTree_.foreachOnPath(i,(f,g)=>{let p=hr(f,i);o=o||Da(g,p),s=s||Na(g)});let a=n.syncPointTree_.get(i);a?(s=s||Na(a),o=o||Da(a,qe())):(a=new UI,n.syncPointTree_=n.syncPointTree_.set(i,a));let c;o!=null?c=!0:(c=!1,o=Oe.EMPTY_NODE,n.syncPointTree_.subtree(i).foreachChild((g,p)=>{let _=Da(p,qe());_&&(o=o.updateImmediateChild(g,_))}));let l=K$(a,e);if(!l&&!e._queryParams.loadsAllData()){let f=XI(e);ee(!n.queryToTagMap.has(f),"View does not exist, but we have a tag");let g=Ine();n.queryToTagMap.set(f,g),n.tagToQueryMap.set(g,f)}let u=KI(n.pendingWriteTree_,i),d=ane(a,e,r,u,o,c);if(!l&&!s&&!t){let f=q$(a,e);d=d.concat(vne(n,e,f))}return d}function QI(n,e,r){let i=n.pendingWriteTree_,o=n.syncPointTree_.findOnPath(e,(s,a)=>{let c=hr(s,e),l=Da(a,c);if(l)return l});return V$(i,e,o,r,!0)}function Ene(n,e){let r=e._path,t=null;n.syncPointTree_.foreachOnPath(r,(l,u)=>{let d=hr(l,r);t=t||Da(u,d)});let i=n.syncPointTree_.get(r);i?t=t||Da(i,qe()):(i=new UI,n.syncPointTree_=n.syncPointTree_.set(r,i));let o=t!=null,s=o?new Fo(t,!0,!1):null,a=KI(n.pendingWriteTree_,e._path),c=W$(i,e,a,o?s.getNode():Oe.EMPTY_NODE,o);return ene(c)}function qd(n,e){return Q$(e,n.syncPointTree_,null,KI(n.pendingWriteTree_,qe()))}function Q$(n,e,r,t){if(Ue(n.path))return X$(n,e,r,t);{let i=e.get(qe());r==null&&i!=null&&(r=Da(i,qe()));let o=[],s=ke(n.path),a=n.operationForChild(s),c=e.children.get(s);if(c&&a){let l=r?r.getImmediateChild(s):null,u=B$(t,s);o=o.concat(Q$(a,c,l,u))}return i&&(o=o.concat(JO(i,n,t,r))),o}}function X$(n,e,r,t){let i=e.get(qe());r==null&&i!=null&&(r=Da(i,qe()));let o=[];return e.children.inorderTraversal((s,a)=>{let c=r?r.getImmediateChild(s):null,l=B$(t,s),u=n.operationForChild(s);u&&(o=o.concat(X$(u,a,c,l)))}),i&&(o=o.concat(JO(i,n,t,r))),o}function J$(n,e){let r=e.query,t=lm(n,r);return{hashFn:()=>(Zte(e)||Oe.EMPTY_NODE).hash(),onComplete:i=>{if(i==="ok")return t?mne(n,r._path,t):gne(n,r._path);{let o=bee(i,r);return GI(n,r,null,o)}}}}function lm(n,e){let r=XI(e);return n.queryToTagMap.get(r)}function XI(n){return n._path.toString()+"$"+n._queryIdentifier}function ew(n,e){return n.tagToQueryMap.get(e)}function tw(n){let e=n.indexOf("$");return ee(e!==-1&&e<n.length-1,"Bad queryKey."),{queryId:n.substr(e+1),path:new Ke(n.substr(0,e))}}function nw(n,e,r){let t=n.syncPointTree_.get(e);ee(t,"Missing sync point for query tag that we're tracking");let i=KI(n.pendingWriteTree_,e);return JO(t,r,i,null)}function _ne(n){return n.fold((e,r,t)=>{if(r&&Na(r))return[YI(r)];{let i=[];return r&&(i=z$(r)),wn(t,(o,s)=>{i=i.concat(s)}),i}})}function tm(n){return n._queryParams.loadsAllData()&&!n._queryParams.isDefault()?new(une())(n._repo,n._path):n}function Tne(n,e){for(let r=0;r<e.length;++r){let t=e[r];if(!t._queryParams.loadsAllData()){let i=XI(t),o=n.queryToTagMap.get(i);n.queryToTagMap.delete(i),n.tagToQueryMap.delete(o)}}}function Ine(){return dne++}function vne(n,e,r){let t=e._path,i=lm(n,e),o=J$(n,r),s=n.listenProvider_.startListening(tm(e),i,o.hashFn,o.onComplete),a=n.syncPointTree_.subtree(t);if(i)ee(!Na(a.value),"If we're adding a query, it shouldn't be shadowed");else{let c=a.fold((l,u,d)=>{if(!Ue(l)&&u&&Na(u))return[YI(u).query];{let f=[];return u&&(f=f.concat(z$(u).map(g=>g.query))),wn(d,(g,p)=>{f=f.concat(p)}),f}});for(let l=0;l<c.length;++l){let u=c[l];n.listenProvider_.stopListening(tm(u),lm(n,u))}}return s}var RO=class n{constructor(e){this.node_=e}getImmediateChild(e){let r=this.node_.getImmediateChild(e);return new n(r)}node(){return this.node_}},CO=class n{constructor(e,r){this.syncTree_=e,this.path_=r}getImmediateChild(e){let r=Vt(this.path_,e);return new n(this.syncTree_,r)}node(){return QI(this.syncTree_,this.path_)}},yne=function(n){return n=n||{},n.timestamp=n.timestamp||new Date().getTime(),n},t$=function(n,e,r){if(!n||typeof n!="object")return n;if(ee(".sv"in n,"Unexpected leaf node or priority contents"),typeof n[".sv"]=="string")return Sne(n[".sv"],e,r);if(typeof n[".sv"]=="object")return Ane(n[".sv"],e);ee(!1,"Unexpected server value: "+JSON.stringify(n,null,2))},Sne=function(n,e,r){if(n==="timestamp")return r.timestamp;ee(!1,"Unexpected server value: "+n)},Ane=function(n,e,r){n.hasOwnProperty("increment")||ee(!1,"Unexpected server value: "+JSON.stringify(n,null,2));let t=n.increment;typeof t!="number"&&ee(!1,"Unexpected increment value: "+t);let i=e.node();if(ee(i!==null&&typeof i<"u","Expected ChildrenNode.EMPTY_NODE for nulls"),!i.isLeafNode())return t;let s=i.getValue();return typeof s!="number"?t:s+t},Z$=function(n,e,r,t){return iw(e,new CO(r,n),t)},rw=function(n,e,r){return iw(n,new RO(e),r)};function iw(n,e,r){let t=n.getPriority().val(),i=t$(t,e.getImmediateChild(".priority"),r),o;if(n.isLeafNode()){let s=n,a=t$(s.getValue(),e,r);return a!==s.getValue()||i!==s.getPriority().val()?new Ud(a,Ut(i)):n}else{let s=n;return o=s,i!==s.getPriority().val()&&(o=o.updatePriority(new Ud(i))),s.forEachChild(At,(a,c)=>{let l=iw(c,e.getImmediateChild(a),r);l!==c&&(o=o.updateImmediateChild(a,l))}),o}}var um=class{constructor(e="",r=null,t={children:{},childCount:0}){this.name=e,this.parent=r,this.node=t}};function JI(n,e){let r=e instanceof Ke?e:new Ke(e),t=n,i=ke(r);for(;i!==null;){let o=fa(t.node.children,i)||{children:{},childCount:0};t=new um(i,t,o),r=ht(r),i=ke(r)}return t}function Rl(n){return n.node.value}function ow(n,e){n.node.value=e,NO(n)}function e2(n){return n.node.childCount>0}function Dne(n){return Rl(n)===void 0&&!e2(n)}function ZI(n,e){wn(n.node.children,(r,t)=>{e(new um(r,n,t))})}function t2(n,e,r,t){r&&!t&&e(n),ZI(n,i=>{t2(i,e,!0,t)}),r&&t&&e(n)}function Rne(n,e,r){let t=r?n:n.parent;for(;t!==null;){if(e(t))return!0;t=t.parent}return!1}function _m(n){return new Ke(n.parent===null?n.name:_m(n.parent)+"/"+n.name)}function NO(n){n.parent!==null&&Cne(n.parent,n.name,n)}function Cne(n,e,r){let t=Dne(r),i=hi(n.node.children,e);t&&i?(delete n.node.children[e],n.node.childCount--,NO(n)):!t&&!i&&(n.node.children[e]=r.node,n.node.childCount++,NO(n))}var Nne=/[\[\].#$\/\u0000-\u001F\u007F]/,One=/[\[\].#$\u0000-\u001F\u007F]/,BN=10*1024*1024,ev=function(n){return typeof n=="string"&&n.length!==0&&!Nne.test(n)},n2=function(n){return typeof n=="string"&&n.length!==0&&!One.test(n)},wne=function(n){return n&&(n=n.replace(/^\/*\.info(\/|$)/,"/")),n2(n)},dm=function(n){return n===null||typeof n=="string"||typeof n=="number"&&!zI(n)||n&&typeof n=="object"&&hi(n,".sv")},Il=function(n,e,r,t){t&&e===void 0||Tm(ga(n,"value"),e,r)},Tm=function(n,e,r){let t=r instanceof Ke?new ZN(r,n):r;if(e===void 0)throw new Error(n+"contains undefined "+gl(t));if(typeof e=="function")throw new Error(n+"contains a function "+gl(t)+" with contents = "+e.toString());if(zI(e))throw new Error(n+"contains "+e.toString()+" "+gl(t));if(typeof e=="string"&&e.length>BN/3&&Pg(e)>BN)throw new Error(n+"contains a string greater than "+BN+" utf8 bytes "+gl(t)+" ('"+e.substring(0,50)+"...')");if(e&&typeof e=="object"){let i=!1,o=!1;if(wn(e,(s,a)=>{if(s===".value")i=!0;else if(s!==".priority"&&s!==".sv"&&(o=!0,!ev(s)))throw new Error(n+" contains an invalid key ("+s+") "+gl(t)+`. Keys must be non-empty strings and can't contain ".", "#", "$", "/", "[", or "]"`);ste(t,s),Tm(n,a,t),ate(t)}),i&&o)throw new Error(n+' contains ".value" child '+gl(t)+" in addition to actual children.")}},bne=function(n,e){let r,t;for(r=0;r<e.length;r++){t=e[r];let o=nm(t);for(let s=0;s<o.length;s++)if(!(o[s]===".priority"&&s===o.length-1)){if(!ev(o[s]))throw new Error(n+"contains an invalid key ("+o[s]+") in path "+t.toString()+`. Keys must be non-empty strings and can't contain ".", "#", "$", "/", "[", or "]"`)}}e.sort(ote);let i=null;for(r=0;r<e.length;r++){if(t=e[r],i!==null&&mi(i,t))throw new Error(n+"contains a path "+i.toString()+" that is ancestor of another path "+t.toString());i=t}},r2=function(n,e,r,t){if(t&&e===void 0)return;let i=ga(n,"values");if(!(e&&typeof e=="object")||Array.isArray(e))throw new Error(i+" must be an object containing the children to replace.");let o=[];wn(e,(s,a)=>{let c=new Ke(s);if(Tm(i,a,Vt(r,c)),jO(c)===".priority"&&!dm(a))throw new Error(i+"contains an invalid value for '"+c.toString()+"', which must be a valid Firebase priority (a string, finite number, server value, or null).");o.push(c)}),bne(i,o)},Lne=function(n,e,r){if(!(r&&e===void 0)){if(zI(e))throw new Error(ga(n,"priority")+"is "+e.toString()+", but must be a valid Firebase priority (a string, finite number, server value, or null).");if(!dm(e))throw new Error(ga(n,"priority")+"must be a valid Firebase priority (a string, finite number, server value, or null).")}},i2=function(n,e,r,t){if(!(t&&r===void 0)&&!ev(r))throw new Error(ga(n,e)+'was an invalid key = "'+r+`". Firebase keys must be non-empty strings and can't contain ".", "#", "$", "/", "[", or "]").`)},sw=function(n,e,r,t){if(!(t&&r===void 0)&&!n2(r))throw new Error(ga(n,e)+'was an invalid path = "'+r+`". Paths must be non-empty strings and can't contain ".", "#", "$", "[", or "]"`)},Mne=function(n,e,r,t){r&&(r=r.replace(/^\/*\.info(\/|$)/,"/")),sw(n,e,r,t)},Sa=function(n,e){if(ke(e)===".info")throw new Error(n+" failed = Can't modify data under /.info/")},Pne=function(n,e){let r=e.path.toString();if(typeof e.repoInfo.host!="string"||e.repoInfo.host.length===0||!ev(e.repoInfo.namespace)&&e.repoInfo.host.split(":")[0]!=="localhost"||r.length!==0&&!wne(r))throw new Error(ga(n,"url")+`must be a valid firebase URL and the path can't contain ".", "#", "$", "[", or "]".`)};var OO=class{constructor(){this.eventLists_=[],this.recursionDepth_=0}};function tv(n,e){let r=null;for(let t=0;t<e.length;t++){let i=e[t],o=i.getPath();r!==null&&!HO(o,r.path)&&(n.eventLists_.push(r),r=null),r===null&&(r={events:[],path:o}),r.events.push(i)}r&&n.eventLists_.push(r)}function o2(n,e,r){tv(n,r),s2(n,t=>HO(t,e))}function Wr(n,e,r){tv(n,r),s2(n,t=>mi(t,e)||mi(e,t))}function s2(n,e){n.recursionDepth_++;let r=!0;for(let t=0;t<n.eventLists_.length;t++){let i=n.eventLists_[t];if(i){let o=i.path;e(o)?(xne(n.eventLists_[t]),n.eventLists_[t]=null):r=!1}}r&&(n.eventLists_=[]),n.recursionDepth_--}function xne(n){for(let e=0;e<n.events.length;e++){let r=n.events[e];if(r!==null){n.events[e]=null;let t=r.getEventRunner();pl&&On("event: "+r.toString()),Wd(t)}}}var Fne="repo_interrupt",kne=25,wO=class{constructor(e,r,t,i){this.repoInfo_=e,this.forceRestClient_=r,this.authTokenProvider_=t,this.appCheckProvider_=i,this.dataUpdateCount=0,this.statsListener_=null,this.eventQueue_=new OO,this.nextWriteId_=1,this.interceptServerDataCallback_=null,this.onDisconnect_=bI(),this.transactionQueueTree_=new um,this.persistentConnection_=null,this.key=this.repoInfo_.toURLString()}toString(){return(this.repoInfo_.secure?"https://":"http://")+this.repoInfo_.host}};function Une(n,e,r){if(n.stats_=$O(n.repoInfo_),n.forceRestClient_||xee())n.server_=new lO(n.repoInfo_,(t,i,o,s)=>{n$(n,t,i,o,s)},n.authTokenProvider_,n.appCheckProvider_),setTimeout(()=>r$(n,!0),0);else{if(typeof r<"u"&&r!==null){if(typeof r!="object")throw new Error("Only objects are supported for option databaseAuthVariableOverride");try{rn(r)}catch(t){throw new Error("Invalid authOverride provided: "+t)}}n.persistentConnection_=new WO(n.repoInfo_,e,(t,i,o,s)=>{n$(n,t,i,o,s)},t=>{r$(n,t)},t=>{Vne(n,t)},n.authTokenProvider_,n.appCheckProvider_,r),n.server_=n.persistentConnection_}n.authTokenProvider_.addTokenChangeListener(t=>{n.server_.refreshAuthToken(t)}),n.appCheckProvider_.addTokenChangeListener(t=>{n.server_.refreshAppCheckToken(t.token)}),n.statsReporter_=kee(n.repoInfo_,()=>new gO(n.stats_,n.server_)),n.infoData_=new uO,n.infoSyncTree_=new BI({startListening:(t,i,o,s)=>{let a=[],c=n.infoData_.getNode(t._path);return c.isEmpty()||(a=Em(n.infoSyncTree_,t._path,c),setTimeout(()=>{s("ok")},0)),a},stopListening:()=>{}}),aw(n,"connected",!1),n.serverSyncTree_=new BI({startListening:(t,i,o,s)=>(n.server_.listen(t,o,i,(a,c)=>{let l=s(a,c);Wr(n.eventQueue_,t._path,l)}),[]),stopListening:(t,i)=>{n.server_.unlisten(t,i)}})}function a2(n){let r=n.infoData_.getNode(new Ke(".info/serverTimeOffset")).val()||0;return new Date().getTime()+r}function Im(n){return yne({timestamp:a2(n)})}function n$(n,e,r,t,i){n.dataUpdateCount++;let o=new Ke(e);r=n.interceptServerDataCallback_?n.interceptServerDataCallback_(e,r):r;let s=[];if(i)if(t){let c=Lg(r,l=>Ut(l));s=pne(n.serverSyncTree_,o,c,i)}else{let c=Ut(r);s=Y$(n.serverSyncTree_,o,c,i)}else if(t){let c=Lg(r,l=>Ut(l));s=fne(n.serverSyncTree_,o,c)}else{let c=Ut(r);s=Em(n.serverSyncTree_,o,c)}let a=o;s.length>0&&(a=jd(n,o)),Wr(n.eventQueue_,a,s)}function r$(n,e){aw(n,"connected",e),e===!1&&jne(n)}function Vne(n,e){wn(e,(r,t)=>{aw(n,r,t)})}function aw(n,e,r){let t=new Ke("/.info/"+e),i=Ut(r);n.infoData_.updateSnapshot(t,i);let o=Em(n.infoSyncTree_,t,i);Wr(n.eventQueue_,t,o)}function nv(n){return n.nextWriteId_++}function Bne(n,e,r){let t=Ene(n.serverSyncTree_,e);return t!=null?Promise.resolve(t):n.server_.get(e).then(i=>{let o=Ut(i).withIndex(e._queryParams.getIndex());DO(n.serverSyncTree_,e,r,!0);let s;if(e._queryParams.loadsAllData())s=Em(n.serverSyncTree_,e._path,o);else{let a=lm(n.serverSyncTree_,e);s=Y$(n.serverSyncTree_,e._path,o,a)}return Wr(n.eventQueue_,e._path,s),GI(n.serverSyncTree_,e,r,null,!0),o},i=>(Kd(n,"get for query "+rn(e)+" failed: "+i),Promise.reject(new Error(i))))}function Gne(n,e,r,t,i){Kd(n,"set",{path:e.toString(),value:r,priority:t});let o=Im(n),s=Ut(r,t),a=QI(n.serverSyncTree_,e),c=rw(s,a,o),l=nv(n),u=ZO(n.serverSyncTree_,e,c,l,!0);tv(n.eventQueue_,u),n.server_.put(e.toString(),s.val(!0),(f,g)=>{let p=f==="ok";p||Zn("set at "+e+" failed: "+f);let _=ya(n.serverSyncTree_,l,!p);Wr(n.eventQueue_,e,_),Oa(n,i,f,g)});let d=lw(n,e);jd(n,d),Wr(n.eventQueue_,d,[])}function $ne(n,e,r,t){Kd(n,"update",{path:e.toString(),value:r});let i=!0,o=Im(n),s={};if(wn(r,(a,c)=>{i=!1,s[a]=Z$(Vt(e,a),Ut(c),n.serverSyncTree_,o)}),i)On("update() called with empty data. Don't do anything."),Oa(n,t,"ok",void 0);else{let a=nv(n),c=hne(n.serverSyncTree_,e,s,a);tv(n.eventQueue_,c),n.server_.merge(e.toString(),r,(l,u)=>{let d=l==="ok";d||Zn("update at "+e+" failed: "+l);let f=ya(n.serverSyncTree_,a,!d),g=f.length>0?jd(n,e):e;Wr(n.eventQueue_,g,f),Oa(n,t,l,u)}),wn(r,l=>{let u=lw(n,Vt(e,l));jd(n,u)}),Wr(n.eventQueue_,e,[])}}function jne(n){Kd(n,"onDisconnectEvents");let e=Im(n),r=bI();hO(n.onDisconnect_,qe(),(i,o)=>{let s=Z$(i,o,n.serverSyncTree_,e);zd(r,i,s)});let t=[];hO(r,qe(),(i,o)=>{t=t.concat(Em(n.serverSyncTree_,i,o));let s=lw(n,i);jd(n,s)}),n.onDisconnect_=bI(),Wr(n.eventQueue_,qe(),t)}function Hne(n,e,r){n.server_.onDisconnectCancel(e.toString(),(t,i)=>{t==="ok"&&dO(n.onDisconnect_,e),Oa(n,r,t,i)})}function i$(n,e,r,t){let i=Ut(r);n.server_.onDisconnectPut(e.toString(),i.val(!0),(o,s)=>{o==="ok"&&zd(n.onDisconnect_,e,i),Oa(n,t,o,s)})}function Wne(n,e,r,t,i){let o=Ut(r,t);n.server_.onDisconnectPut(e.toString(),o.val(!0),(s,a)=>{s==="ok"&&zd(n.onDisconnect_,e,o),Oa(n,i,s,a)})}function zne(n,e,r,t){if(bg(r)){On("onDisconnect().update() called with empty data. Don't do anything."),Oa(n,t,"ok",void 0);return}n.server_.onDisconnectMerge(e.toString(),r,(i,o)=>{i==="ok"&&wn(r,(s,a)=>{let c=Ut(a);zd(n.onDisconnect_,Vt(e,s),c)}),Oa(n,t,i,o)})}function qne(n,e,r){let t;ke(e._path)===".info"?t=DO(n.infoSyncTree_,e,r):t=DO(n.serverSyncTree_,e,r),o2(n.eventQueue_,e._path,t)}function bO(n,e,r){let t;ke(e._path)===".info"?t=GI(n.infoSyncTree_,e,r):t=GI(n.serverSyncTree_,e,r),o2(n.eventQueue_,e._path,t)}function Kne(n){n.persistentConnection_&&n.persistentConnection_.interrupt(Fne)}function Kd(n,...e){let r="";n.persistentConnection_&&(r=n.persistentConnection_.id+":"),On(r,...e)}function Oa(n,e,r,t){e&&Wd(()=>{if(r==="ok")e(null);else{let i=(r||"error").toUpperCase(),o=i;t&&(o+=": "+t);let s=new Error(o);s.code=i,e(s)}})}function Yne(n,e,r,t,i,o){Kd(n,"transaction on "+e);let s={path:e,update:r,onComplete:t,status:null,order:c$(),applyLocally:o,retryCount:0,unwatcher:i,abortReason:null,currentWriteId:null,currentInputSnapshot:null,currentOutputSnapshotRaw:null,currentOutputSnapshotResolved:null},a=cw(n,e,void 0);s.currentInputSnapshot=a;let c=s.update(a.val());if(c===void 0)s.unwatcher(),s.currentOutputSnapshotRaw=null,s.currentOutputSnapshotResolved=null,s.onComplete&&s.onComplete(null,!1,s.currentInputSnapshot);else{Tm("transaction failed: Data returned ",c,s.path),s.status=0;let l=JI(n.transactionQueueTree_,e),u=Rl(l)||[];u.push(s),ow(l,u);let d;typeof c=="object"&&c!==null&&hi(c,".priority")?(d=fa(c,".priority"),ee(dm(d),"Invalid priority returned by transaction. Priority must be a valid string, finite number, server value, or null.")):d=(QI(n.serverSyncTree_,e)||Oe.EMPTY_NODE).getPriority().val();let f=Im(n),g=Ut(c,d),p=rw(g,a,f);s.currentOutputSnapshotRaw=g,s.currentOutputSnapshotResolved=p,s.currentWriteId=nv(n);let _=ZO(n.serverSyncTree_,e,p,s.currentWriteId,s.applyLocally);Wr(n.eventQueue_,e,_),rv(n,n.transactionQueueTree_)}}function cw(n,e,r){return QI(n.serverSyncTree_,e,r)||Oe.EMPTY_NODE}function rv(n,e=n.transactionQueueTree_){if(e||iv(n,e),Rl(e)){let r=l2(n,e);ee(r.length>0,"Sending zero length transaction queue"),r.every(i=>i.status===0)&&Qne(n,_m(e),r)}else e2(e)&&ZI(e,r=>{rv(n,r)})}function Qne(n,e,r){let t=r.map(l=>l.currentWriteId),i=cw(n,e,t),o=i,s=i.hash();for(let l=0;l<r.length;l++){let u=r[l];ee(u.status===0,"tryToSendTransactionQueue_: items in queue should all be run."),u.status=1,u.retryCount++;let d=hr(e,u.path);o=o.updateChild(d,u.currentOutputSnapshotRaw)}let a=o.val(!0),c=e;n.server_.put(c.toString(),a,l=>{Kd(n,"transaction put response",{path:c.toString(),status:l});let u=[];if(l==="ok"){let d=[];for(let f=0;f<r.length;f++)r[f].status=2,u=u.concat(ya(n.serverSyncTree_,r[f].currentWriteId)),r[f].onComplete&&d.push(()=>r[f].onComplete(null,!0,r[f].currentOutputSnapshotResolved)),r[f].unwatcher();iv(n,JI(n.transactionQueueTree_,e)),rv(n,n.transactionQueueTree_),Wr(n.eventQueue_,e,u);for(let f=0;f<d.length;f++)Wd(d[f])}else{if(l==="datastale")for(let d=0;d<r.length;d++)r[d].status===3?r[d].status=4:r[d].status=0;else{Zn("transaction at "+c.toString()+" failed: "+l);for(let d=0;d<r.length;d++)r[d].status=4,r[d].abortReason=l}jd(n,e)}},s)}function jd(n,e){let r=c2(n,e),t=_m(r),i=l2(n,r);return Xne(n,i,t),t}function Xne(n,e,r){if(e.length===0)return;let t=[],i=[],s=e.filter(a=>a.status===0).map(a=>a.currentWriteId);for(let a=0;a<e.length;a++){let c=e[a],l=hr(r,c.path),u=!1,d;if(ee(l!==null,"rerunTransactionsUnderNode_: relativePath should not be null."),c.status===4)u=!0,d=c.abortReason,i=i.concat(ya(n.serverSyncTree_,c.currentWriteId,!0));else if(c.status===0)if(c.retryCount>=kne)u=!0,d="maxretry",i=i.concat(ya(n.serverSyncTree_,c.currentWriteId,!0));else{let f=cw(n,c.path,s);c.currentInputSnapshot=f;let g=e[a].update(f.val());if(g!==void 0){Tm("transaction failed: Data returned ",g,c.path);let p=Ut(g);typeof g=="object"&&g!=null&&hi(g,".priority")||(p=p.updatePriority(f.getPriority()));let T=c.currentWriteId,D=Im(n),b=rw(p,f,D);c.currentOutputSnapshotRaw=p,c.currentOutputSnapshotResolved=b,c.currentWriteId=nv(n),s.splice(s.indexOf(T),1),i=i.concat(ZO(n.serverSyncTree_,c.path,b,c.currentWriteId,c.applyLocally)),i=i.concat(ya(n.serverSyncTree_,T,!0))}else u=!0,d="nodata",i=i.concat(ya(n.serverSyncTree_,c.currentWriteId,!0))}Wr(n.eventQueue_,r,i),i=[],u&&(e[a].status=2,(function(f){setTimeout(f,Math.floor(0))})(e[a].unwatcher),e[a].onComplete&&(d==="nodata"?t.push(()=>e[a].onComplete(null,!1,e[a].currentInputSnapshot)):t.push(()=>e[a].onComplete(new Error(d),!1,null))))}iv(n,n.transactionQueueTree_);for(let a=0;a<t.length;a++)Wd(t[a]);rv(n,n.transactionQueueTree_)}function c2(n,e){let r,t=n.transactionQueueTree_;for(r=ke(e);r!==null&&Rl(t)===void 0;)t=JI(t,r),e=ht(e),r=ke(e);return t}function l2(n,e){let r=[];return u2(n,e,r),r.sort((t,i)=>t.order-i.order),r}function u2(n,e,r){let t=Rl(e);if(t)for(let i=0;i<t.length;i++)r.push(t[i]);ZI(e,i=>{u2(n,i,r)})}function iv(n,e){let r=Rl(e);if(r){let t=0;for(let i=0;i<r.length;i++)r[i].status!==2&&(r[t]=r[i],t++);r.length=t,ow(e,r.length>0?r:void 0)}ZI(e,t=>{iv(n,t)})}function lw(n,e){let r=_m(c2(n,e)),t=JI(n.transactionQueueTree_,e);return Rne(t,i=>{GN(n,i)}),GN(n,t),t2(t,i=>{GN(n,i)}),r}function GN(n,e){let r=Rl(e);if(r){let t=[],i=[],o=-1;for(let s=0;s<r.length;s++)r[s].status===3||(r[s].status===1?(ee(o===s-1,"All SENT items should be at beginning of queue."),o=s,r[s].status=3,r[s].abortReason="set"):(ee(r[s].status===0,"Unexpected transaction status in abort"),r[s].unwatcher(),i=i.concat(ya(n.serverSyncTree_,r[s].currentWriteId,!0)),r[s].onComplete&&t.push(r[s].onComplete.bind(null,new Error("set"),!1,null))));o===-1?ow(e,void 0):r.length=o+1,Wr(n.eventQueue_,_m(e),i);for(let s=0;s<t.length;s++)Wd(t[s])}}function Jne(n){let e="",r=n.split("/");for(let t=0;t<r.length;t++)if(r[t].length>0){let i=r[t];try{i=decodeURIComponent(i.replace(/\+/g," "))}catch{}e+="/"+i}return e}function Zne(n){let e={};n.charAt(0)==="?"&&(n=n.substring(1));for(let r of n.split("&")){if(r.length===0)continue;let t=r.split("=");t.length===2?e[decodeURIComponent(t[0])]=decodeURIComponent(t[1]):Zn(`Invalid query segment '${r}' in query '${n}'`)}return e}var o$=function(n,e){let r=ere(n),t=r.namespace;r.domain==="firebase.com"&&Ss(r.host+" is no longer supported. Please use <YOUR FIREBASE>.firebaseio.com instead"),(!t||t==="undefined")&&r.domain!=="localhost"&&Ss("Cannot parse Firebase url. Please use https://<YOUR FIREBASE>.firebaseio.com"),r.secure||Ree();let i=r.scheme==="ws"||r.scheme==="wss";return{repoInfo:new yI(r.host,r.secure,t,i,e,"",t!==r.subdomain),path:new Ke(r.pathString)}},ere=function(n){let e="",r="",t="",i="",o="",s=!0,a="https",c=443;if(typeof n=="string"){let l=n.indexOf("//");l>=0&&(a=n.substring(0,l-1),n=n.substring(l+2));let u=n.indexOf("/");u===-1&&(u=n.length);let d=n.indexOf("?");d===-1&&(d=n.length),e=n.substring(0,Math.min(u,d)),u<d&&(i=Jne(n.substring(u,d)));let f=Zne(n.substring(Math.min(n.length,d)));l=e.indexOf(":"),l>=0?(s=a==="https"||a==="wss",c=parseInt(e.substring(l+1),10)):l=e.length;let g=e.slice(0,l);if(g.toLowerCase()==="localhost")r="localhost";else if(g.split(".").length<=2)r=g;else{let p=e.indexOf(".");t=e.substring(0,p).toLowerCase(),r=e.substring(p+1),o=t}"ns"in f&&(o=f.ns)}return{host:e,port:c,domain:r,subdomain:t,secure:s,scheme:a,pathString:i,namespace:o}};var s$="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz",tre=(function(){let n=0,e=[];return function(r){let t=r===n;n=r;let i,o=new Array(8);for(i=7;i>=0;i--)o[i]=s$.charAt(r%64),r=Math.floor(r/64);ee(r===0,"Cannot push at time == 0");let s=o.join("");if(t){for(i=11;i>=0&&e[i]===63;i--)e[i]=0;e[i]++}else for(i=0;i<12;i++)e[i]=Math.floor(Math.random()*64);for(i=0;i<12;i++)s+=s$.charAt(e[i]);return ee(s.length===20,"nextPushId: Length should be 20."),s}})();var $I=class{constructor(e,r,t,i){this.eventType=e,this.eventRegistration=r,this.snapshot=t,this.prevName=i}getPath(){let e=this.snapshot.ref;return this.eventType==="value"?e._path:e.parent._path}getEventType(){return this.eventType}getEventRunner(){return this.eventRegistration.getEventRunner(this)}toString(){return this.getPath().toString()+":"+this.eventType+":"+rn(this.snapshot.exportVal())}},jI=class{constructor(e,r,t){this.eventRegistration=e,this.error=r,this.path=t}getPath(){return this.path}getEventType(){return"cancel"}getEventRunner(){return this.eventRegistration.getEventRunner(this)}toString(){return this.path.toString()+":cancel"}};var hm=class{constructor(e,r){this.snapshotCallback=e,this.cancelCallback=r}onValue(e,r){this.snapshotCallback.call(null,e,r)}onCancel(e){return ee(this.hasCancelCallback,"Raising a cancel event on a listener with no cancel callback"),this.cancelCallback.call(null,e)}get hasCancelCallback(){return!!this.cancelCallback}matches(e){return this.snapshotCallback===e.snapshotCallback||this.snapshotCallback.userCallback!==void 0&&this.snapshotCallback.userCallback===e.snapshotCallback.userCallback&&this.snapshotCallback.context===e.snapshotCallback.context}};var LO=class{constructor(e,r){this._repo=e,this._path=r}cancel(){let e=new Nn;return Hne(this._repo,this._path,e.wrapCallback(()=>{})),e.promise}remove(){Sa("OnDisconnect.remove",this._path);let e=new Nn;return i$(this._repo,this._path,null,e.wrapCallback(()=>{})),e.promise}set(e){Sa("OnDisconnect.set",this._path),Il("OnDisconnect.set",e,this._path,!1);let r=new Nn;return i$(this._repo,this._path,e,r.wrapCallback(()=>{})),r.promise}setWithPriority(e,r){Sa("OnDisconnect.setWithPriority",this._path),Il("OnDisconnect.setWithPriority",e,this._path,!1),Lne("OnDisconnect.setWithPriority",r,!1);let t=new Nn;return Wne(this._repo,this._path,e,r,t.wrapCallback(()=>{})),t.promise}update(e){Sa("OnDisconnect.update",this._path),r2("OnDisconnect.update",e,this._path,!1);let r=new Nn;return zne(this._repo,this._path,e,r.wrapCallback(()=>{})),r.promise}};var vl=class n{constructor(e,r,t,i){this._repo=e,this._path=r,this._queryParams=t,this._orderByCalled=i}get key(){return Ue(this._path)?null:jO(this._path)}get ref(){return new zi(this._repo,this._path)}get _queryIdentifier(){let e=WG(this._queryParams),r=GO(e);return r==="{}"?"default":r}get _queryObject(){return WG(this._queryParams)}isEqual(e){if(e=Ge(e),!(e instanceof n))return!1;let r=this._repo===e._repo,t=HO(this._path,e._path),i=this._queryIdentifier===e._queryIdentifier;return r&&t&&i}toJSON(){return this.toString()}toString(){return this._repo.toString()+ite(this._path)}};function nre(n,e){if(n._orderByCalled===!0)throw new Error(e+": You can't combine multiple orderBy calls.")}function uw(n){let e=null,r=null;if(n.hasStart()&&(e=n.getIndexStartValue()),n.hasEnd()&&(r=n.getIndexEndValue()),n.getIndex()===El){let t="Query: When ordering by key, you may only pass one argument to startAt(), endAt(), or equalTo().",i="Query: When ordering by key, the argument passed to startAt(), startAfter(), endAt(), endBefore(), or equalTo() must be a string.";if(n.hasStart()){if(n.getIndexStartName()!==_l)throw new Error(t);if(typeof e!="string")throw new Error(i)}if(n.hasEnd()){if(n.getIndexEndName()!==Ra)throw new Error(t);if(typeof r!="string")throw new Error(i)}}else if(n.getIndex()===At){if(e!=null&&!dm(e)||r!=null&&!dm(r))throw new Error("Query: When ordering by priority, the first argument passed to startAt(), startAfter() endAt(), endBefore(), or equalTo() must be a valid priority value (null, a number, or a string).")}else if(ee(n.getIndex()instanceof rm||n.getIndex()===P$,"unknown index type."),e!=null&&typeof e=="object"||r!=null&&typeof r=="object")throw new Error("Query: First argument passed to startAt(), startAfter(), endAt(), endBefore(), or equalTo() cannot be an object.")}function d2(n){if(n.hasStart()&&n.hasEnd()&&n.hasLimit()&&!n.hasAnchoredLimit())throw new Error("Query: Can't combine startAt(), startAfter(), endAt(), endBefore(), and limit(). Use limitToFirst() or limitToLast() instead.")}var zi=class n extends vl{constructor(e,r){super(e,r,new cO,!1)}get parent(){let e=N$(this._path);return e===null?null:new n(this._repo,e)}get root(){let e=this;for(;e.parent!==null;)e=e.parent;return e}},Hd=class n{constructor(e,r,t){this._node=e,this.ref=r,this._index=t}get priority(){return this._node.getPriority().val()}get key(){return this.ref.key}get size(){return this._node.numChildren()}child(e){let r=new Ke(e),t=yl(this.ref,e);return new n(this._node.getChild(r),t,At)}exists(){return!this._node.isEmpty()}exportVal(){return this._node.val(!0)}forEach(e){return this._node.isLeafNode()?!1:!!this._node.forEachChild(this._index,(t,i)=>e(new n(i,yl(this.ref,t),At)))}hasChild(e){let r=new Ke(e);return!this._node.getChild(r).isEmpty()}hasChildren(){return this._node.isLeafNode()?!1:!this._node.isEmpty()}toJSON(){return this.exportVal()}val(){return this._node.val()}};function h2(n,e){return n=Ge(n),n._checkNotDeleted("ref"),e!==void 0?yl(n._root,e):n._root}function yl(n,e){return n=Ge(n),ke(n._path)===null?Mne("child","path",e,!1):sw("child","path",e,!1),new zi(n._repo,Vt(n._path,e))}function f2(n){return n=Ge(n),new LO(n._repo,n._path)}function g2(n,e){n=Ge(n),Sa("push",n._path),Il("push",e,n._path,!0);let r=a2(n._repo),t=tre(r),i=yl(n,t),o=yl(n,t),s;return e!=null?s=ov(o,e).then(()=>o):s=Promise.resolve(o),i.then=s.then.bind(s),i.catch=s.then.bind(s,void 0),i}function m2(n){return Sa("remove",n._path),ov(n,null)}function ov(n,e){n=Ge(n),Sa("set",n._path),Il("set",e,n._path,!1);let r=new Nn;return Gne(n._repo,n._path,e,null,r.wrapCallback(()=>{})),r.promise}function p2(n,e){r2("update",e,n._path,!1);let r=new Nn;return $ne(n._repo,n._path,e,r.wrapCallback(()=>{})),r.promise}function sv(n){n=Ge(n);let e=new hm(()=>{}),r=new fm(e);return Bne(n._repo,n,r).then(t=>new Hd(t,new zi(n._repo,n._path),n._queryParams.getIndex()))}var fm=class n{constructor(e){this.callbackContext=e}respondsTo(e){return e==="value"}createEvent(e,r){let t=r._queryParams.getIndex();return new $I("value",this,new Hd(e.snapshotNode,new zi(r._repo,r._path),t))}getEventRunner(e){return e.getEventType()==="cancel"?()=>this.callbackContext.onCancel(e.error):()=>this.callbackContext.onValue(e.snapshot,null)}createCancelEvent(e,r){return this.callbackContext.hasCancelCallback?new jI(this,e,r):null}matches(e){return e instanceof n?!e.callbackContext||!this.callbackContext?!0:e.callbackContext.matches(this.callbackContext):!1}hasAnyCallback(){return this.callbackContext!==null}},HI=class n{constructor(e,r){this.eventType=e,this.callbackContext=r}respondsTo(e){let r=e==="children_added"?"child_added":e;return r=r==="children_removed"?"child_removed":r,this.eventType===r}createCancelEvent(e,r){return this.callbackContext.hasCancelCallback?new jI(this,e,r):null}createEvent(e,r){ee(e.childName!=null,"Child events should have a childName.");let t=yl(new zi(r._repo,r._path),e.childName),i=r._queryParams.getIndex();return new $I(e.type,this,new Hd(e.snapshotNode,t,i),e.prevName)}getEventRunner(e){return e.getEventType()==="cancel"?()=>this.callbackContext.onCancel(e.error):()=>this.callbackContext.onValue(e.snapshot,e.prevName)}matches(e){return e instanceof n?this.eventType===e.eventType&&(!this.callbackContext||!e.callbackContext||this.callbackContext.matches(e.callbackContext)):!1}hasAnyCallback(){return!!this.callbackContext}};function vm(n,e,r,t,i){let o;if(typeof t=="object"&&(o=void 0,i=t),typeof t=="function"&&(o=t),i&&i.onlyOnce){let c=r,l=(u,d)=>{bO(n._repo,n,a),c(u,d)};l.userCallback=r.userCallback,l.context=r.context,r=l}let s=new hm(r,o||void 0),a=e==="value"?new fm(s):new HI(e,s);return qne(n._repo,n,a),()=>bO(n._repo,n,a)}function ym(n,e,r,t){return vm(n,"value",e,r,t)}function av(n,e,r,t){return vm(n,"child_added",e,r,t)}function cv(n,e,r,t){return vm(n,"child_changed",e,r,t)}function dw(n,e,r,t){return vm(n,"child_moved",e,r,t)}function lv(n,e,r,t){return vm(n,"child_removed",e,r,t)}function uv(n,e,r){let t=null,i=r?new hm(r):null;e==="value"?t=new fm(i):e&&(t=new HI(e,i)),bO(n._repo,n,t)}var Sl=class{},MO=class extends Sl{constructor(e,r){super(),this._value=e,this._key=r,this.type="endAt"}_apply(e){Il("endAt",this._value,e._path,!0);let r=yte(e._queryParams,this._value,this._key);if(d2(r),uw(r),e._queryParams.hasEnd())throw new Error("endAt: Starting point was already set (by another call to endAt, endBefore or equalTo).");return new vl(e._repo,e._path,r,e._orderByCalled)}};var WI=class extends Sl{constructor(e,r){super(),this._value=e,this._key=r,this.type="startAt"}_apply(e){Il("startAt",this._value,e._path,!0);let r=vte(e._queryParams,this._value,this._key);if(d2(r),uw(r),e._queryParams.hasStart())throw new Error("startAt: Starting point was already set (by another call to startAt, startBefore or equalTo).");return new vl(e._repo,e._path,r,e._orderByCalled)}};function E2(n=null,e){return i2("startAt","key",e,!0),new WI(n,e)}var PO=class extends Sl{constructor(e){super(),this._limit=e,this.type="limitToLast"}_apply(e){if(e._queryParams.hasLimit())throw new Error("limitToLast: Limit was already set (by another call to limitToFirst or limitToLast).");return new vl(e._repo,e._path,Ite(e._queryParams,this._limit),e._orderByCalled)}};function _2(n){if(typeof n!="number"||Math.floor(n)!==n||n<=0)throw new Error("limitToLast: First argument must be a positive integer.");return new PO(n)}var xO=class extends Sl{constructor(e){super(),this._path=e,this.type="orderByChild"}_apply(e){nre(e,"orderByChild");let r=new Ke(this._path);if(Ue(r))throw new Error("orderByChild: cannot pass in empty path. Use orderByValue() instead.");let t=new rm(r),i=Ste(e._queryParams,t);return uw(i),new vl(e._repo,e._path,i,!0)}};function T2(n){if(n==="$key")throw new Error('orderByChild: "$key" is invalid. Use orderByKey() instead.');if(n==="$priority")throw new Error('orderByChild: "$priority" is invalid. Use orderByPriority() instead.');if(n==="$value")throw new Error('orderByChild: "$value" is invalid. Use orderByValue() instead.');return sw("orderByChild","path",n,!1),new xO(n)}var FO=class extends Sl{constructor(e,r){super(),this._value=e,this._key=r,this.type="equalTo"}_apply(e){if(Il("equalTo",this._value,e._path,!1),e._queryParams.hasStart())throw new Error("equalTo: Starting point was already set (by another call to startAt/startAfter or equalTo).");if(e._queryParams.hasEnd())throw new Error("equalTo: Ending point was already set (by another call to endAt/endBefore or equalTo).");return new MO(this._value,this._key)._apply(new WI(this._value,this._key)._apply(e))}};function I2(n,e){return i2("equalTo","key",e,!0),new FO(n,e)}function v2(n,...e){let r=Ge(n);for(let t of e)r=t._apply(r);return r}ine(zi);lne(zi);var rre="FIREBASE_DATABASE_EMULATOR_HOST",kO={},ire=!1;function ore(n,e,r,t){let i=e.lastIndexOf(":"),o=e.substring(0,i),s=Hr(o);n.repoInfo_=new yI(e,s,n.repoInfo_.namespace,n.repoInfo_.webSocketOnly,n.repoInfo_.nodeAdmin,n.repoInfo_.persistenceKey,n.repoInfo_.includeNamespaceInQueryParams,!0,r),t&&(n.authTokenProvider_=t)}function sre(n,e,r,t,i){let o=t||n.options.databaseURL;o===void 0&&(n.options.projectId||Ss("Can't determine Firebase Database URL. Be sure to include a Project ID when calling firebase.initializeApp()."),On("Using default host for project ",n.options.projectId),o=`${n.options.projectId}-default-rtdb.firebaseio.com`);let s=o$(o,i),a=s.repoInfo,c,l;typeof process<"u"&&process.env&&(l=process.env[rre]),l?(c=!0,o=`http://${l}?ns=${a.namespace}`,s=o$(o,i),a=s.repoInfo):c=!s.repoInfo.secure;let u=i&&c?new Jg(Jg.OWNER):new qN(n.name,n.options,e);Pne("Invalid Firebase Database URL",s),Ue(s.path)||Ss("Database URL must point to the root of a Firebase Database (not including a child path).");let d=cre(a,n,u,new zN(n,r));return new UO(d,n)}function are(n,e){let r=kO[e];(!r||r[n.key]!==n)&&Ss(`Database ${e}(${n.repoInfo_}) has already been deleted.`),Kne(n),delete r[n.key]}function cre(n,e,r,t){let i=kO[e.name];i||(i={},kO[e.name]=i);let o=i[n.toURLString()];return o&&Ss("Database initialized multiple times. Please make sure the format of the database URL matches with each database() call."),o=new wO(n,ire,r,t),i[n.toURLString()]=o,o}var UO=class{constructor(e,r){this._repoInternal=e,this.app=r,this.type="database",this._instanceStarted=!1}get _repo(){return this._instanceStarted||(Une(this._repoInternal,this.app.options.appId,this.app.options.databaseAuthVariableOverride),this._instanceStarted=!0),this._repoInternal}get _root(){return this._rootInternal||(this._rootInternal=new zi(this._repo,qe())),this._rootInternal}_delete(){return this._rootInternal!==null&&(are(this._repo,this.app.name),this._repoInternal=null,this._rootInternal=null),Promise.resolve()}_checkNotDeleted(e){this._rootInternal===null&&Ss("Cannot call "+e+" on a deleted database.")}};function lre(){C$.IS_TRANSPORT_INITIALIZED&&Zn("Transport has already been initialized. Please call this function before calling ref or setting up a listener")}function hw(){lre(),Pd.forceDisallow(),SI.forceAllow()}function dv(n=Sr(),e){let r=Po(n,"database").getImmediate({identifier:e});if(!r._instanceStarted){let t=Nd("database");t&&y2(r,...t)}return r}function y2(n,e,r,t={}){n=Ge(n),n._checkNotDeleted("useEmulator");let i=`${e}:${r}`,o=n._repoInternal;if(n._instanceStarted){if(i===n._repoInternal.repoInfo_.host&&Vi(t,o.repoInfo_.emulatorOptions))return;Ss("connectDatabaseEmulator() cannot initialize or alter the emulator configuration after the database instance has started.")}let s;if(o.repoInfo_.nodeAdmin)t.mockUserToken&&Ss('mockUserToken is not supported by the Admin SDK. For client access with mock users, please use the "firebase" package instead of "firebase-admin".'),s=new Jg(Jg.OWNER);else if(t.mockUserToken){let a=typeof t.mockUserToken=="string"?t.mockUserToken:KT(t.mockUserToken,n.app.options.projectId);s=new Jg(a)}Hr(e)&&(ha(e),sl("Database",!0)),ore(o,i,t,s)}function ure(n){Aee(pa),ur(new _n("database",(e,{instanceIdentifier:r})=>{let t=e.getProvider("app").getImmediate(),i=e.getProvider("auth-internal"),o=e.getProvider("app-check-internal");return sre(t,i,o,r)},"PUBLIC").setMultipleInstances(!0)),Qe(NG,OG,n),Qe(NG,OG,"esm2017")}var VO=class{constructor(e,r){this.committed=e,this.snapshot=r}toJSON(){return{committed:this.committed,snapshot:this.snapshot.toJSON()}}};function S2(n,e,r){var t;if(n=Ge(n),Sa("Reference.transaction",n._path),n.key===".length"||n.key===".keys")throw"Reference.transaction failed: "+n.key+" is a read-only object.";let i=(t=r?.applyLocally)!==null&&t!==void 0?t:!0,o=new Nn,s=(c,l,u)=>{let d=null;c?o.reject(c):(d=new Hd(u,new zi(n._repo,n._path),At),o.resolve(new VO(l,d)))},a=ym(n,()=>{});return Yne(n._repo,n._path,e,s,a,i),o.promise}WO.prototype.simpleListen=function(n,e){this.sendRequest("q",{p:n},e)};WO.prototype.echo=function(n,e){this.sendRequest("echo",{d:n},e)};ure();var Cl,bn=(function(n){return n.added="child_added",n.removed="child_removed",n.changed="child_changed",n.moved="child_moved",n.value="value",n})(bn||{}),dre=Object.freeze((Cl={},Cl[bn.added]=av,Cl[bn.removed]=lv,Cl[bn.changed]=cv,Cl[bn.moved]=dw,Cl[bn.value]=ym,Cl));function fv(n,e){return new ge(function(r){var t=dre[e](n,function(i,o){r.next({snapshot:i,prevKey:o,event:e})},r.error.bind(r));return{unsubscribe:function(){uv(n,e,t)}}}).pipe(DS(0))}var hv=function(){return hv=Object.assign||function(e){for(var r,t=1,i=arguments.length;t<i;t++){r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},hv.apply(this,arguments)};function fw(n,e,r){if(r||arguments.length===2)for(var t=0,i=e.length,o;t<i;t++)(o||!(t in e))&&(o||(o=Array.prototype.slice.call(e,0,t)),o[t]=e[t]);return n.concat(o||Array.prototype.slice.call(e))}function A2(n){return(n==null||n.length===0)&&(n=[bn.added,bn.removed,bn.changed,bn.moved]),n}function D2(n,e){return e===void 0&&(e={}),fv(n,bn.value).pipe(fe(function(r){return gw(r,e)}))}function gw(n,e){var r;e===void 0&&(e={});var t=n.snapshot.val();return!n.snapshot.exists()||typeof t!="object"?t:hv(hv({},t),e.keyField?(r={},r[e.keyField]=n.snapshot.key,r):null)}function R2(n,e){e===void 0&&(e={});var r=A2(e.events),t=r.map(function(i){return fv(n,i)});return Pu.apply(void 0,t)}function hre(n){return xr(sv(n)).pipe(fe(function(e){var r=bn.value;return{snapshot:e,prevKey:null,event:r}}))}function C2(n,e){e===void 0&&(e={});var r=A2(e.events);return hre(n).pipe(mt(function(t){var i=[ue(t)];return r.forEach(function(o){i.push(fv(n,o))}),Pu.apply(void 0,i).pipe(dE(gre,[]))}),it())}function N2(n,e){return e===void 0&&(e={}),C2(n).pipe(fe(function(r){return r.map(function(t){return gw(t,e)})}))}function O2(n,e){for(var r=n.length,t=0;t<r;t++)if(n[t].snapshot.key===e)return t;return-1}function fre(n,e){if(e==null)return 0;var r=O2(n,e);return r===-1?n.length:r+1}function gre(n,e){var r=e.snapshot,t=e.prevKey,i=e.event,o=r.key,s=O2(n,o),a=fre(n,t||void 0);switch(i){case bn.value:if(e.snapshot&&e.snapshot.exists()){var c=null;e.snapshot.forEach(function(d){var f={snapshot:d,event:bn.value,prevKey:c};return c=d.key,n=fw(fw([],n,!0),[f],!1),!1})}return n;case bn.added:if(s>-1){var l=n[s-1];(l&&l.snapshot.key||null)!==t&&(n=n.filter(function(d){return d.snapshot.key!==r.key}),n.splice(a,0,e))}else{if(t==null)return fw([e],n,!0);n=n.slice(),n.splice(a,0,e)}return n;case bn.removed:return n.filter(function(d){return d.snapshot.key!==r.key});case bn.changed:return n.map(function(d){return d.snapshot.key===o?e:d});case bn.moved:if(s>-1){var u=n.splice(s,1)[0];return n=n.slice(),n.splice(a,0,u),n}return n;default:return n}}var Sm=class{constructor(e){return e}},w2="database",mw=class{constructor(){return vs(w2)}};var pw=new Z("angularfire2.database-instances");function mre(n,e){let r=Ea(w2,n,e);return r&&new Sm(r)}function pre(n){return(e,r)=>{let t=e.runOutsideAngular(()=>n(r));return new Sm(t)}}var Ere={provide:mw,deps:[[new pn,pw]]},_re={provide:Sm,useFactory:mre,deps:[[new pn,pw],$i]};function GPe(n,...e){return Qe("angularfire",Bi.full,"rtdb"),pr([_re,Ere,{provide:pw,useFactory:pre(n),multi:!0,deps:[Le,St,Gi,ys,[new pn,fl],[new pn,Ta],...e]}])}var $Pe=pe(N2,!0);var jPe=pe(D2,!0),HPe=pe(R2,!0);var WPe=pe(I2,!0,2);var Ew=pe(sv,!0),zPe=pe(dv,!0);var qPe=pe(_2,!0,2),Am=pe(uv,!0),_w=pe(av,!0),b2=pe(cv,!0);var L2=pe(lv,!0),M2=pe(f2,!0),gv=pe(ym,!0),KPe=pe(T2,!0,2);var P2=pe(g2,!0,2),Tw=pe(v2,!0,2),wa=pe(h2,!0,2);var x2=pe(m2,!0,2),Iw=pe(S2,!0),vw=pe(ov,!0,2);var YPe=pe(E2,!0,2),F2=pe(p2,!0,2);var Rr=(()=>{let e=class e{constructor(t,i){this.loggingService=t,this.analyticsService=i,this.config$=new Y(null),this.disableLogsConfig$=new Y({warnings:!0,suppressAll:!1}),this.apiKey$=new Y(""),this.baseFeatureAllowList=[],this.sf$=new Y(!1),this.sdkType$=new Y("core"),this.logsEnabled$=new Y(!0),this.safeEval$=new Y(!1),this.firestorePersistentCacheEnabled$=new Y(!1),this.encryptionProvider$=new Y(null);try{this.analyticsService.setConfigService(this),this.sdkType$.subscribe(o=>{this.analyticsService.updateDefaultProperties({sdkType:o})},o=>{this.loggingService.catch("Error in ConfigService sdkType$: ",o)}),this.logsEnabled$.subscribe(o=>{o?this.loggingService.enableLogs():this.loggingService.disableLogs(),H.logsEnabled=o},o=>{this.loggingService.catch("Error in ConfigService logsEnabled$: ",o)})}catch(o){this.loggingService.catch("Error in ConfigService constructor: ",o)}}initConfig(t){try{t.featureAllowList?.length||(t.featureAllowList=Object.values(EC)),this.baseFeatureAllowList=t.featureAllowList?.slice();try{t.proxyConfig?.authHost?localStorage.setItem(v.LOCAL_STORAGE.VELT_AUTH_PROXY_HOST,btoa(t.proxyConfig.authHost)):localStorage.removeItem(v.LOCAL_STORAGE.VELT_AUTH_PROXY_HOST)}catch{}this.config$.next(t)}catch(i){this.loggingService.catch("Error in ConfigService initConfig: ",i)}}setApiKey(t){this.apiKey$.next(t)}getApiKey(){return this.apiKey$.value}getApiKey$(){return this.apiKey$.asObservable()}getConfig(){return this.config$.value}getConfig$(){return this.config$.asObservable()}disableFeatures(t){try{let i=this.config$.value;i&&(t?.length?i.featureAllowList=this.baseFeatureAllowList.filter(o=>!t.includes(o)):i.featureAllowList=this.baseFeatureAllowList.slice()),this.config$.next(i)}catch(i){this.loggingService.catch("Error in ConfigService disableFeatures: ",i)}}enableFeatures(t){try{if(!t?.length)return;let i=this.config$.value;if(!i)return;let o=i.featureAllowList??[],s=t.filter(a=>!o.includes(a));if(s.length===0)return;i.featureAllowList=[...o,...s],this.baseFeatureAllowList=[...this.baseFeatureAllowList,...s.filter(a=>!this.baseFeatureAllowList.includes(a))],this.config$.next(i)}catch(i){this.loggingService.catch("Error in ConfigService enableFeatures: ",i)}}setSF(t){try{this.sf$.next(t),this.analyticsService.setSF(t)}catch(i){this.loggingService.catch("Error in ConfigService setSF: ",i)}}getSF(){try{return this.sf$.value}catch(t){return this.loggingService.catch("Error in ConfigService getSF: ",t),!1}}getSF$(){try{return this.sf$.asObservable().pipe(it(Ft))}catch(t){return this.loggingService.catch("Error in ConfigService getSF$: ",t),ue(!1)}}setSdkType(t){try{this.sdkType$.next(t)}catch(i){this.loggingService.catch("Error in ConfigService setSdkType: ",i)}}getSdkType(){try{return this.sdkType$.value}catch(t){return this.loggingService.catch("Error in ConfigService getSdkType: ",t),"core"}}getSdkType$(){try{return this.sdkType$.asObservable()}catch(t){return this.loggingService.catch("Error in ConfigService getSdkType$: ",t),ue("core")}}enableLogs(){try{if(this.logsEnabled$.value===!0)return;this.logsEnabled$.next(!0)}catch(t){this.loggingService.catch("Error in ConfigService enableLogs: ",t)}}disableLogs(t){try{t&&this.disableLogsConfig$.next({warnings:t.warnings??!0,suppressAll:t.suppressAll??!1}),t?.warnings!==!1&&this.logsEnabled$.next(!1)}catch(i){this.loggingService.catch("Error in ConfigService disableLogs: ",i)}}getDisableLogsConfig(){return this.disableLogsConfig$.value}getDisableLogsConfig$(){return this.disableLogsConfig$.asObservable()}getProxyConfig(){try{return this.config$.value?.proxyConfig}catch(t){this.loggingService.catch("Error in ConfigService getProxyConfig: ",t);return}}getAuthProxyHost(){try{let t=this.config$.value?.proxyConfig?.authHost;if(t)return t;let i=localStorage.getItem(v.LOCAL_STORAGE.VELT_AUTH_PROXY_HOST);return i?atob(i):void 0}catch(t){this.loggingService.catch("Error in ConfigService getAuthProxyHost: ",t);return}}getApiHost(){try{return this.getProxyConfig()?.apiHost||this.config$.value?.apiProxyDomain}catch(t){this.loggingService.catch("Error in ConfigService getApiHost: ",t);return}}getApiProxyDomain(){return this.getApiHost()}enableSafeEval(){try{this.safeEval$.next(!0)}catch(t){this.loggingService.catch("Error in ConfigService enableSafeEval: ",t)}}disableSafeEval(){try{this.safeEval$.next(!1)}catch(t){this.loggingService.catch("Error in ConfigService disableSafeEval: ",t)}}getSafeEval(){try{return this.safeEval$.value}catch(t){return this.loggingService.catch("Error in ConfigService getSafeEval: ",t),!1}}getSafeEval$(){try{return this.safeEval$.asObservable()}catch(t){return this.loggingService.catch("Error in ConfigService getSafeEval$: ",t),ue(!1)}}enableFirestorePersistentCache(){try{this.firestorePersistentCacheEnabled$.next(!0)}catch(t){this.loggingService.catch("Error in ConfigService enableFirestorePersistentCache: ",t)}}disableFirestorePersistentCache(){try{this.firestorePersistentCacheEnabled$.next(!1)}catch(t){this.loggingService.catch("Error in ConfigService disableFirestorePersistentCache: ",t)}}isFirestorePersistentCacheEnabled(){try{return this.firestorePersistentCacheEnabled$.value}catch(t){return this.loggingService.catch("Error in ConfigService isFirestorePersistentCacheEnabled: ",t),!1}}getFirestorePersistentCacheEnabled$(){try{return this.firestorePersistentCacheEnabled$.asObservable()}catch(t){return this.loggingService.catch("Error in ConfigService getFirestorePersistentCacheEnabled$: ",t),ue(!1)}}setEncryptionProvider(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setEncryptionProvider","color: green;"),this.encryptionProvider$.next(t)}catch(i){this.loggingService.catch("Error in ConfigService setEncryptionProvider: ",i)}}getEncryptionProvider(){try{return this.encryptionProvider$.value}catch(t){return this.loggingService.catch("Error in ConfigService getEncryptionProvider: ",t),null}}getEncryptionProvider$(){try{return this.encryptionProvider$.asObservable()}catch(t){return this.loggingService.catch("Error in ConfigService getEncryptionProvider$: ",t),ue(null)}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var k2=(()=>{let e=class e{constructor(t){this.loggingService=t,this.initLocalStorageData()}initLocalStorageData(){this.loggingService.log("%c[WB] Calling FUNCTION: initLocalStorageData","color: green;"),this.getLocalStorageData(),this.getSessionStorageData()}getLocalStorageData(){this.loggingService.log("%c[WB] Calling FUNCTION: getLocalStorageData","color: green;");try{let t=localStorage?.getItem(v.LOCALSTORAGE_DATA_ID);if(t)return JSON.parse(t);{let i=new nl;return this.setLocalStorageData(i),i}}catch(t){return this.loggingService.catch("Error in getLocalStorageData:",t),new nl}}setLocalStorageData(t){this.loggingService.log("%c[WB] Calling FUNCTION: setLocalStorageData","color: green;");try{if(t){let i=JSON.stringify(t);localStorage?.setItem(v.LOCALSTORAGE_DATA_ID,i)}}catch(i){this.loggingService.catch("Error in setLocalStorageData:",i)}}deleteLocalStorageData(){this.loggingService.log("%c[WB] Calling FUNCTION: deleteLocalStorageData","color: green;"),localStorage?.removeItem(v.LOCALSTORAGE_DATA_ID)}getSessionStorageData(){this.loggingService.log("%c[WB] Calling FUNCTION: getSessionStorageData","color: green;");try{let t=sessionStorage?.getItem(v.LOCALSTORAGE_DATA_ID);if(t)return JSON.parse(t);{let i=new nl;return this.setSessionStorageData(i),i}}catch(t){return this.loggingService.catch("Error in getSessionStorageData:",t),new nl}}setSessionStorageData(t){this.loggingService.log("%c[WB] Calling FUNCTION: setSessionStorageData","color: green;");try{if(t){let i=JSON.stringify(t);sessionStorage?.setItem(v.LOCALSTORAGE_DATA_ID,i)}}catch(i){this.loggingService.catch("Error in setSessionStorageData:",i)}}deleteSessionStorageData(){this.loggingService.log("%c[WB] Calling FUNCTION: deleteSessionStorageData","color: green;");try{sessionStorage?.removeItem(v.LOCALSTORAGE_DATA_ID)}catch(t){this.loggingService.catch("Error in deleteSessionStorageData:",t)}}};e.\u0275fac=function(i){return new(i||e)(w(_e))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var U2=(()=>{let e=class e{constructor(t,i){this.localStorageService=t,this.loggingService=i,this.avatarList=[{userId:"1",name:"Bear",photoUrl:"https://snippyly.com/assets/avatars/avatar-bear.svg",type:"anonymous"},{userId:"2",name:"Beaver",photoUrl:"https://snippyly.com/assets/avatars/avatar-beaver.svg",type:"anonymous"},{userId:"3",name:"Bunny",photoUrl:"https://snippyly.com/assets/avatars/avatar-bunny.svg",type:"anonymous"},{userId:"4",name:"Cat",photoUrl:"https://snippyly.com/assets/avatars/avatar-cat.svg",type:"anonymous"},{userId:"5",name:"Cow",photoUrl:"https://snippyly.com/assets/avatars/avatar-cow.svg",type:"anonymous"},{userId:"6",name:"Dinosaur",photoUrl:"https://snippyly.com/assets/avatars/avatar-dinosaur.svg",type:"anonymous"},{userId:"7",name:"Elephant",photoUrl:"https://snippyly.com/assets/avatars/avatar-elephant.svg",type:"anonymous"},{userId:"8",name:"Monkey",photoUrl:"https://snippyly.com/assets/avatars/avatar-monkey.svg",type:"anonymous"},{userId:"9",name:"Hedgehog",photoUrl:"https://snippyly.com/assets/avatars/avatar-hedgehog.svg",type:"anonymous"},{userId:"10",name:"Hippo",photoUrl:"https://snippyly.com/assets/avatars/avatar-hippo.svg",type:"anonymous"},{userId:"11",name:"Horse",photoUrl:"https://snippyly.com/assets/avatars/avatar-horse.svg",type:"anonymous"},{userId:"12",name:"Kitten",photoUrl:"https://snippyly.com/assets/avatars/avatar-kitten.svg",type:"anonymous"},{userId:"13",name:"Octopus",photoUrl:"https://snippyly.com/assets/avatars/avatar-octopus.svg",type:"anonymous"},{userId:"14",name:"Oink",photoUrl:"https://snippyly.com/assets/avatars/avatar-oink.svg",type:"anonymous"},{userId:"15",name:"Panda",photoUrl:"https://snippyly.com/assets/avatars/avatar-panda.svg",type:"anonymous"},{userId:"16",name:"Penguin",photoUrl:"https://snippyly.com/assets/avatars/avatar-penguin.svg",type:"anonymous"},{userId:"17",name:"Rabbit",photoUrl:"https://snippyly.com/assets/avatars/avatar-rabbit.svg",type:"anonymous"},{userId:"18",name:"Tiger",photoUrl:"https://snippyly.com/assets/avatars/avatar-tiger.svg",type:"anonymous"}],this.loggingService.log("%c[WB] Creating SERVICE AvatarService","color: blue;")}getSessionAvatar(){this.loggingService.log("%c[WB] Calling FUNCTION: getSessionAvatar","color: green;");try{let t=new _s,i=this.localStorageService.getSessionStorageData();if(i.snippylyAvatar)t=i.snippylyAvatar;else{let o=this.generateUserAvatar();i.snippylyAvatar=o,this.localStorageService.setSessionStorageData(i)}return t}catch(t){return this.loggingService.catch("Error in getSessionAvatar:",t),new _s}}generateUserAvatar(){this.loggingService.log("%c[WB] Calling FUNCTION: generateUserAvatar","color: green;");try{let t=Math.floor(Math.random()*this.avatarList.length),i=this.avatarList[t];return i.color=this.generateUserColor(),i}catch(t){return this.loggingService.catch("Error in generateUserAvatar:",t),this.avatarList[0]}}generateUserColor(t){this.loggingService.log("%c[WB] Calling FUNCTION: generateUserColor","color: green;");try{if(t)return v.AVATAR_COLOR_LIST[t%v.AVATAR_COLOR_LIST.length];let i=Math.floor(Math.random()*v.AVATAR_COLOR_LIST.length);return v.AVATAR_COLOR_LIST[i]}catch(i){return this.loggingService.catch("Error in generateUserColor:",i),""}}generateUserImage(){this.loggingService.log("%c[WB] Calling FUNCTION: generateUserImage","color: green;");try{return this.getSessionAvatar().photoUrl}catch(t){return this.loggingService.catch("Error in generateUserImage:",t),""}}};e.\u0275fac=function(i){return new(i||e)(w(k2),w(_e))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var It=(()=>{let e=class e{constructor(t){this.loggingService=t,this.actionSubjects=new Map,this.subscriptions=[]}triggerAction(t,i){try{this.actionSubjects.has(t)||this.actionSubjects.set(t,new Ot),this.actionSubjects.get(t)?.next(i)}catch(o){this.loggingService.catch("Error in CoreActionsService triggerAction: ",o)}}onAction(t){try{this.actionSubjects.has(t)||this.actionSubjects.set(t,new Ot);let i=this.actionSubjects.get(t);return i?i.asObservable():ue(null)}catch(i){return this.loggingService.catch("Error in CoreActionsService onAction: ",i),ue(null)}}};e.\u0275fac=function(i){return new(i||e)(w(_e))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();function V2(n,e){(e==null||e>n.length)&&(e=n.length);for(var r=0,t=Array(e);r<e;r++)t[r]=n[r];return t}function vre(n){if(Array.isArray(n))return n}function yre(n,e){var r=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(r!=null){var t,i,o,s,a=[],c=!0,l=!1;try{if(o=(r=r.call(n)).next,e!==0)for(;!(c=(t=o.call(r)).done)&&(a.push(t.value),a.length!==e);c=!0);}catch(u){l=!0,i=u}finally{try{if(!c&&r.return!=null&&(s=r.return(),Object(s)!==s))return}finally{if(l)throw i}}return a}}function Sre(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
145
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Are(n,e){return vre(n)||yre(n,e)||Dre(n,e)||Sre()}function Dre(n,e){if(n){if(typeof n=="string")return V2(n,e);var r={}.toString.call(n).slice(8,-1);return r==="Object"&&n.constructor&&(r=n.constructor.name),r==="Map"||r==="Set"?Array.from(n):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?V2(n,e):void 0}}var J2=Object.entries,B2=Object.setPrototypeOf,Rre=Object.isFrozen,Cre=Object.getPrototypeOf,Nre=Object.getOwnPropertyDescriptor,mr=Object.freeze,Ei=Object.seal,Xd=Object.create,Z2=typeof Reflect<"u"&&Reflect,Cw=Z2.apply,Nw=Z2.construct;mr||(mr=function(e){return e});Ei||(Ei=function(e){return e});Cw||(Cw=function(e,r){for(var t=arguments.length,i=new Array(t>2?t-2:0),o=2;o<t;o++)i[o-2]=arguments[o];return e.apply(r,i)});Nw||(Nw=function(e){for(var r=arguments.length,t=new Array(r>1?r-1:0),i=1;i<r;i++)t[i-1]=arguments[i];return new e(...t)});var As=on(Array.prototype.forEach),Ore=on(Array.prototype.lastIndexOf),G2=on(Array.prototype.pop),Yd=on(Array.prototype.push),wre=on(Array.prototype.splice),gr=Array.isArray,Rm=on(String.prototype.toLowerCase),yw=on(String.prototype.toString),$2=on(String.prototype.match),Qd=on(String.prototype.replace),j2=on(String.prototype.indexOf),bre=on(String.prototype.trim),Lre=on(Number.prototype.toString),Mre=on(Boolean.prototype.toString),H2=typeof BigInt>"u"?null:on(BigInt.prototype.toString),W2=typeof Symbol>"u"?null:on(Symbol.prototype.toString),Wt=on(Object.prototype.hasOwnProperty),Dm=on(Object.prototype.toString),Bn=on(RegExp.prototype.test),Ol=Pre(TypeError);function on(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var r=arguments.length,t=new Array(r>1?r-1:0),i=1;i<r;i++)t[i-1]=arguments[i];return Cw(n,e,t)}}function Pre(n){return function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];return Nw(n,r)}}function be(n,e){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Rm;if(B2&&B2(n,null),!gr(e))return n;let t=e.length;for(;t--;){let i=e[t];if(typeof i=="string"){let o=r(i);o!==i&&(Rre(e)||(e[t]=o),i=o)}n[i]=!0}return n}function xre(n){for(let e=0;e<n.length;e++)Wt(n,e)||(n[e]=null);return n}function er(n){let e=Xd(null);for(let t of J2(n)){var r=Are(t,2);let i=r[0],o=r[1];Wt(n,i)&&(gr(o)?e[i]=xre(o):o&&typeof o=="object"&&o.constructor===Object?e[i]=er(o):e[i]=o)}return e}function Fre(n){switch(typeof n){case"string":return n;case"number":return Lre(n);case"boolean":return Mre(n);case"bigint":return H2?H2(n):"0";case"symbol":return W2?W2(n):"Symbol()";case"undefined":return Dm(n);case"function":case"object":{if(n===null)return Dm(n);let e=n,r=Uo(e,"toString");if(typeof r=="function"){let t=r(e);return typeof t=="string"?t:Dm(t)}return Dm(n)}default:return Dm(n)}}function Uo(n,e){for(;n!==null;){let t=Nre(n,e);if(t){if(t.get)return on(t.get);if(typeof t.value=="function")return on(t.value)}n=Cre(n)}function r(){return null}return r}function kre(n){try{return Bn(n,""),!0}catch{return!1}}var z2=mr(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Sw=mr(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Aw=mr(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Ure=mr(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Dw=mr(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Vre=mr(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),q2=mr(["#text"]),K2=mr(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Rw=mr(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Y2=mr(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),mv=mr(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Bre=Ei(/{{[\w\W]*|^[\w\W]*}}/g),Gre=Ei(/<%[\w\W]*|^[\w\W]*%>/g),$re=Ei(/\${[\w\W]*/g),jre=Ei(/^data-[\-\w.\u00B7-\uFFFF]+$/),Hre=Ei(/^aria-[\-\w]+$/),Q2=Ei(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Wre=Ei(/^(?:\w+script|data):/i),zre=Ei(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),qre=Ei(/^html$/i),Kre=Ei(/^[a-z][.\w]*(-[.\w]+)+$/i),ko={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Yre=function(){return typeof window>"u"?null:window},Qre=function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let t=null,i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(t=r.getAttribute(i));let o="dompurify"+(t?"#"+t:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},X2=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ej(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Yre(),e=se=>ej(se);if(e.version="3.4.9",e.removed=[],!n||!n.document||n.document.nodeType!==ko.document||!n.Element)return e.isSupported=!1,e;let r=n.document,t=r,i=t.currentScript;n.DocumentFragment;let o=n.HTMLTemplateElement,s=n.Node,a=n.Element,c=n.NodeFilter,l=n.NamedNodeMap;l===void 0&&(n.NamedNodeMap||n.MozNamedAttrMap),n.HTMLFormElement;let u=n.DOMParser,d=n.trustedTypes,f=a.prototype,g=Uo(f,"cloneNode"),p=Uo(f,"remove"),_=Uo(f,"nextSibling"),T=Uo(f,"childNodes"),D=Uo(f,"parentNode"),b=Uo(f,"shadowRoot"),G=Uo(f,"attributes"),M=s&&s.prototype?Uo(s.prototype,"nodeType"):null,U=s&&s.prototype?Uo(s.prototype,"nodeName"):null;if(typeof o=="function"){let se=r.createElement("template");se.content&&se.content.ownerDocument&&(r=se.content.ownerDocument)}let k,S="",A,C=!1,O=0,P=function(){if(O>0)throw Ol('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},F=function(R){P(),O++;try{return k.createHTML(R)}finally{O--}},N=function(R){P(),O++;try{return k.createScriptURL(R)}finally{O--}},Ti=function(){return C||(A=Qre(d,i),C=!0),A},eo=r,qh=eo.implementation,Ms=eo.createNodeIterator,nc=eo.createDocumentFragment,Kh=eo.getElementsByTagName,Op=t.importNode,Jt=X2();e.isSupported=typeof J2=="function"&&typeof D=="function"&&qh&&qh.createHTMLDocument!==void 0;let br=Bre,qt=Gre,ru=$re,rc=jre,eS=Hre,ic=Wre,wp=zre,tS=Kre,oc=Q2,ft=null,sc=be({},[...z2,...Sw,...Aw,...Dw,...q2]),vt=null,ac=be({},[...K2,...Rw,...Y2,...mv]),yt=Object.seal(Xd(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Ps=null,cc=null,to=Object.seal(Xd(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Yh=!0,iu=!0,ou=!1,Qh=!0,no=!1,Ko=!0,Ii=!1,lc=!1,Zt=!1,Bt=!1,Yo=!1,uc=!1,Xh=!0,bp=!1,xs="user-content-",su=!0,au=!1,ro={},Jr=null,Jh=be({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),cu=null,Zh=be({},["audio","video","img","source","image","track"]),lu=null,Fs=be({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ks="http://www.w3.org/1998/Math/MathML",Us="http://www.w3.org/2000/svg",Sn="http://www.w3.org/1999/xhtml",Qo=Sn,Vs=!1,uu=null,dc=be({},[ks,Us,Sn],yw),du=be({},["mi","mo","mn","ms","mtext"]),dn=be({},["annotation-xml"]),Lp=be({},["title","style","font","a","script"]),vi=null,hc=["application/xhtml+xml","text/html"],nS="text/html",Rt=null,Lr=null,rS=r.createElement("form"),Mp=function(R){return R instanceof RegExp||R instanceof Function},Bs=function(){let R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Lr&&Lr===R)return;(!R||typeof R!="object")&&(R={}),R=er(R),vi=hc.indexOf(R.PARSER_MEDIA_TYPE)===-1?nS:R.PARSER_MEDIA_TYPE,Rt=vi==="application/xhtml+xml"?yw:Rm,ft=Wt(R,"ALLOWED_TAGS")&&gr(R.ALLOWED_TAGS)?be({},R.ALLOWED_TAGS,Rt):sc,vt=Wt(R,"ALLOWED_ATTR")&&gr(R.ALLOWED_ATTR)?be({},R.ALLOWED_ATTR,Rt):ac,uu=Wt(R,"ALLOWED_NAMESPACES")&&gr(R.ALLOWED_NAMESPACES)?be({},R.ALLOWED_NAMESPACES,yw):dc,lu=Wt(R,"ADD_URI_SAFE_ATTR")&&gr(R.ADD_URI_SAFE_ATTR)?be(er(Fs),R.ADD_URI_SAFE_ATTR,Rt):Fs,cu=Wt(R,"ADD_DATA_URI_TAGS")&&gr(R.ADD_DATA_URI_TAGS)?be(er(Zh),R.ADD_DATA_URI_TAGS,Rt):Zh,Jr=Wt(R,"FORBID_CONTENTS")&&gr(R.FORBID_CONTENTS)?be({},R.FORBID_CONTENTS,Rt):Jh,Ps=Wt(R,"FORBID_TAGS")&&gr(R.FORBID_TAGS)?be({},R.FORBID_TAGS,Rt):er({}),cc=Wt(R,"FORBID_ATTR")&&gr(R.FORBID_ATTR)?be({},R.FORBID_ATTR,Rt):er({}),ro=Wt(R,"USE_PROFILES")?R.USE_PROFILES&&typeof R.USE_PROFILES=="object"?er(R.USE_PROFILES):R.USE_PROFILES:!1,Yh=R.ALLOW_ARIA_ATTR!==!1,iu=R.ALLOW_DATA_ATTR!==!1,ou=R.ALLOW_UNKNOWN_PROTOCOLS||!1,Qh=R.ALLOW_SELF_CLOSE_IN_ATTR!==!1,no=R.SAFE_FOR_TEMPLATES||!1,Ko=R.SAFE_FOR_XML!==!1,Ii=R.WHOLE_DOCUMENT||!1,Bt=R.RETURN_DOM||!1,Yo=R.RETURN_DOM_FRAGMENT||!1,uc=R.RETURN_TRUSTED_TYPE||!1,Zt=R.FORCE_BODY||!1,Xh=R.SANITIZE_DOM!==!1,bp=R.SANITIZE_NAMED_PROPS||!1,su=R.KEEP_CONTENT!==!1,au=R.IN_PLACE||!1,oc=kre(R.ALLOWED_URI_REGEXP)?R.ALLOWED_URI_REGEXP:Q2,Qo=typeof R.NAMESPACE=="string"?R.NAMESPACE:Sn,du=Wt(R,"MATHML_TEXT_INTEGRATION_POINTS")&&R.MATHML_TEXT_INTEGRATION_POINTS&&typeof R.MATHML_TEXT_INTEGRATION_POINTS=="object"?er(R.MATHML_TEXT_INTEGRATION_POINTS):be({},["mi","mo","mn","ms","mtext"]),dn=Wt(R,"HTML_INTEGRATION_POINTS")&&R.HTML_INTEGRATION_POINTS&&typeof R.HTML_INTEGRATION_POINTS=="object"?er(R.HTML_INTEGRATION_POINTS):be({},["annotation-xml"]);let z=Wt(R,"CUSTOM_ELEMENT_HANDLING")&&R.CUSTOM_ELEMENT_HANDLING&&typeof R.CUSTOM_ELEMENT_HANDLING=="object"?er(R.CUSTOM_ELEMENT_HANDLING):Xd(null);if(yt=Xd(null),Wt(z,"tagNameCheck")&&Mp(z.tagNameCheck)&&(yt.tagNameCheck=z.tagNameCheck),Wt(z,"attributeNameCheck")&&Mp(z.attributeNameCheck)&&(yt.attributeNameCheck=z.attributeNameCheck),Wt(z,"allowCustomizedBuiltInElements")&&typeof z.allowCustomizedBuiltInElements=="boolean"&&(yt.allowCustomizedBuiltInElements=z.allowCustomizedBuiltInElements),no&&(iu=!1),Yo&&(Bt=!0),ro&&(ft=be({},q2),vt=Xd(null),ro.html===!0&&(be(ft,z2),be(vt,K2)),ro.svg===!0&&(be(ft,Sw),be(vt,Rw),be(vt,mv)),ro.svgFilters===!0&&(be(ft,Aw),be(vt,Rw),be(vt,mv)),ro.mathMl===!0&&(be(ft,Dw),be(vt,Y2),be(vt,mv))),to.tagCheck=null,to.attributeCheck=null,Wt(R,"ADD_TAGS")&&(typeof R.ADD_TAGS=="function"?to.tagCheck=R.ADD_TAGS:gr(R.ADD_TAGS)&&(ft===sc&&(ft=er(ft)),be(ft,R.ADD_TAGS,Rt))),Wt(R,"ADD_ATTR")&&(typeof R.ADD_ATTR=="function"?to.attributeCheck=R.ADD_ATTR:gr(R.ADD_ATTR)&&(vt===ac&&(vt=er(vt)),be(vt,R.ADD_ATTR,Rt))),Wt(R,"ADD_URI_SAFE_ATTR")&&gr(R.ADD_URI_SAFE_ATTR)&&be(lu,R.ADD_URI_SAFE_ATTR,Rt),Wt(R,"FORBID_CONTENTS")&&gr(R.FORBID_CONTENTS)&&(Jr===Jh&&(Jr=er(Jr)),be(Jr,R.FORBID_CONTENTS,Rt)),Wt(R,"ADD_FORBID_CONTENTS")&&gr(R.ADD_FORBID_CONTENTS)&&(Jr===Jh&&(Jr=er(Jr)),be(Jr,R.ADD_FORBID_CONTENTS,Rt)),su&&(ft["#text"]=!0),Ii&&be(ft,["html","head","body"]),ft.table&&(be(ft,["tbody"]),delete Ps.tbody),R.TRUSTED_TYPES_POLICY){if(typeof R.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ol('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof R.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ol('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let te=k;k=R.TRUSTED_TYPES_POLICY;try{S=F("")}catch(ve){throw k=te,ve}}else R.TRUSTED_TYPES_POLICY===null?(k=void 0,S=""):(k===void 0&&(k=Ti()),k&&typeof S=="string"&&(S=F("")));(Jt.uponSanitizeElement.length>0||Jt.uponSanitizeAttribute.length>0)&&ft===sc&&(ft=er(ft)),Jt.uponSanitizeAttribute.length>0&&vt===ac&&(vt=er(vt)),mr&&mr(R),Lr=R},ef=be({},[...Sw,...Aw,...Ure]),hu=be({},[...Dw,...Vre]),fu=function(R){let z=D(R);(!z||!z.tagName)&&(z={namespaceURI:Qo,tagName:"template"});let te=Rm(R.tagName),ve=Rm(z.tagName);return uu[R.namespaceURI]?R.namespaceURI===Us?z.namespaceURI===Sn?te==="svg":z.namespaceURI===ks?te==="svg"&&(ve==="annotation-xml"||du[ve]):!!ef[te]:R.namespaceURI===ks?z.namespaceURI===Sn?te==="math":z.namespaceURI===Us?te==="math"&&dn[ve]:!!hu[te]:R.namespaceURI===Sn?z.namespaceURI===Us&&!dn[ve]||z.namespaceURI===ks&&!du[ve]?!1:!hu[te]&&(Lp[te]||!ef[te]):!!(vi==="application/xhtml+xml"&&uu[R.namespaceURI]):!1},en=function(R){Yd(e.removed,{element:R});try{D(R).removeChild(R)}catch{if(p(R),!D(R))throw Ol("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},tf=function(R){let z=T?T(R):R.childNodes;if(z){let ve=[];As(z,Ce=>{Yd(ve,Ce)}),As(ve,Ce=>{try{p(Ce)}catch{}})}let te=G?G(R):null;if(te)for(let ve=te.length-1;ve>=0;--ve){let Ce=te[ve],Ne=Ce&&Ce.name;if(typeof Ne=="string")try{R.removeAttribute(Ne)}catch{}}},io=function(R,z){try{Yd(e.removed,{attribute:z.getAttributeNode(R),from:z})}catch{Yd(e.removed,{attribute:null,from:z})}if(z.removeAttribute(R),R==="is")if(Bt||Yo)try{en(z)}catch{}else try{z.setAttribute(R,"")}catch{}},nf=function(R){let z=G?G(R):R.attributes;if(z)for(let te=z.length-1;te>=0;--te){let ve=z[te],Ce=ve&&ve.name;if(!(typeof Ce!="string"||vt[Rt(Ce)]))try{R.removeAttribute(Ce)}catch{}}},rf=function(R){let z=[R];for(;z.length>0;){let te=z.pop();(M?M(te):te.nodeType)===ko.element&&nf(te);let Ce=T?T(te):te.childNodes;if(Ce)for(let Ne=Ce.length-1;Ne>=0;--Ne)z.push(Ce[Ne])}},of=function(R){let z=null,te=null;if(Zt)R="<remove></remove>"+R;else{let Ne=$2(R,/^[\r\n\t ]+/);te=Ne&&Ne[0]}vi==="application/xhtml+xml"&&Qo===Sn&&(R='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+R+"</body></html>");let ve=k?F(R):R;if(Qo===Sn)try{z=new u().parseFromString(ve,vi)}catch{}if(!z||!z.documentElement){z=qh.createDocument(Qo,"template",null);try{z.documentElement.innerHTML=Vs?S:ve}catch{}}let Ce=z.body||z.documentElement;return R&&te&&Ce.insertBefore(r.createTextNode(te),Ce.childNodes[0]||null),Qo===Sn?Kh.call(z,Ii?"html":"body")[0]:Ii?z.documentElement:Ce},sf=function(R){return Ms.call(R.ownerDocument||R,R,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},af=function(R){var z,te;R.normalize();let ve=Ms.call(R.ownerDocument||R,R,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),Ce=ve.nextNode();for(;Ce;){let Kt=Ce.data;As([br,qt,ru],je=>{Kt=Qd(Kt,je," ")}),Ce.data=Kt,Ce=ve.nextNode()}let Ne=(z=(te=R.querySelectorAll)===null||te===void 0?void 0:te.call(R,"template"))!==null&&z!==void 0?z:[];As(Array.from(Ne),Kt=>{Jo(Kt.content)&&af(Kt.content)})},Xo=function(R){let z=U?U(R):null;return typeof z!="string"||Rt(z)!=="form"?!1:typeof R.nodeName!="string"||typeof R.textContent!="string"||typeof R.removeChild!="function"||R.attributes!==G(R)||typeof R.removeAttribute!="function"||typeof R.setAttribute!="function"||typeof R.namespaceURI!="string"||typeof R.insertBefore!="function"||typeof R.hasChildNodes!="function"||R.nodeType!==M(R)||R.childNodes!==T(R)},Jo=function(R){if(!M||typeof R!="object"||R===null)return!1;try{return M(R)===ko.documentFragment}catch{return!1}},Zo=function(R){if(!M||typeof R!="object"||R===null)return!1;try{return typeof M(R)=="number"}catch{return!1}};function ir(se,R,z){As(se,te=>{te.call(e,R,z,Lr)})}let oo=function(R){let z=null;if(ir(Jt.beforeSanitizeElements,R,null),Xo(R))return en(R),!0;let te=Rt(U?U(R):R.nodeName);if(ir(Jt.uponSanitizeElement,R,{tagName:te,allowedTags:ft}),Ko&&R.hasChildNodes()&&!Zo(R.firstElementChild)&&Bn(/<[/\w!]/g,R.innerHTML)&&Bn(/<[/\w!]/g,R.textContent)||Ko&&R.namespaceURI===Sn&&te==="style"&&Zo(R.firstElementChild)||R.nodeType===ko.progressingInstruction||Ko&&R.nodeType===ko.comment&&Bn(/<[/\w]/g,R.data))return en(R),!0;if(Ps[te]||!(to.tagCheck instanceof Function&&to.tagCheck(te))&&!ft[te]){if(!Ps[te]&&cf(te)&&(yt.tagNameCheck instanceof RegExp&&Bn(yt.tagNameCheck,te)||yt.tagNameCheck instanceof Function&&yt.tagNameCheck(te)))return!1;if(su&&!Jr[te]){let Ce=D(R),Ne=T(R);if(Ne&&Ce){let Kt=Ne.length;for(let je=Kt-1;je>=0;--je){let Ye=au?Ne[je]:g(Ne[je],!0);Ce.insertBefore(Ye,_(R))}}}return en(R),!0}return(M?M(R):R.nodeType)===ko.element&&!fu(R)||(te==="noscript"||te==="noembed"||te==="noframes")&&Bn(/<\/no(script|embed|frames)/i,R.innerHTML)?(en(R),!0):(no&&R.nodeType===ko.text&&(z=R.textContent,As([br,qt,ru],Ce=>{z=Qd(z,Ce," ")}),R.textContent!==z&&(Yd(e.removed,{element:R.cloneNode()}),R.textContent=z)),ir(Jt.afterSanitizeElements,R,null),!1)},gu=function(R,z,te){if(cc[z]||Xh&&(z==="id"||z==="name")&&(te in r||te in rS))return!1;let ve=vt[z]||to.attributeCheck instanceof Function&&to.attributeCheck(z,R);if(!(iu&&!cc[z]&&Bn(rc,z))){if(!(Yh&&Bn(eS,z))){if(!ve||cc[z]){if(!(cf(R)&&(yt.tagNameCheck instanceof RegExp&&Bn(yt.tagNameCheck,R)||yt.tagNameCheck instanceof Function&&yt.tagNameCheck(R))&&(yt.attributeNameCheck instanceof RegExp&&Bn(yt.attributeNameCheck,z)||yt.attributeNameCheck instanceof Function&&yt.attributeNameCheck(z,R))||z==="is"&&yt.allowCustomizedBuiltInElements&&(yt.tagNameCheck instanceof RegExp&&Bn(yt.tagNameCheck,te)||yt.tagNameCheck instanceof Function&&yt.tagNameCheck(te))))return!1}else if(!lu[z]){if(!Bn(oc,Qd(te,wp,""))){if(!((z==="src"||z==="xlink:href"||z==="href")&&R!=="script"&&j2(te,"data:")===0&&cu[R])){if(!(ou&&!Bn(ic,Qd(te,wp,"")))){if(te)return!1}}}}}}return!0},iS=be({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),cf=function(R){return!iS[Rm(R)]&&Bn(tS,R)},lf=function(R){ir(Jt.beforeSanitizeAttributes,R,null);let z=R.attributes;if(!z||Xo(R))return;let te={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:vt,forceKeepAttr:void 0},ve=z.length;for(;ve--;){let Ce=z[ve],Ne=Ce.name,Kt=Ce.namespaceURI,je=Ce.value,Ye=Rt(Ne),Mr=je,xt=Ne==="value"?Mr:bre(Mr);if(te.attrName=Ye,te.attrValue=xt,te.keepAttr=!0,te.forceKeepAttr=void 0,ir(Jt.uponSanitizeAttribute,R,te),xt=te.attrValue,bp&&(Ye==="id"||Ye==="name")&&j2(xt,xs)!==0&&(io(Ne,R),xt=xs+xt),Ko&&Bn(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,xt)){io(Ne,R);continue}if(Ye==="attributename"&&$2(xt,"href")){io(Ne,R);continue}if(te.forceKeepAttr)continue;if(!te.keepAttr){io(Ne,R);continue}if(!Qh&&Bn(/\/>/i,xt)){io(Ne,R);continue}no&&As([br,qt,ru],rt=>{xt=Qd(xt,rt," ")});let uf=Rt(R.nodeName);if(!gu(uf,Ye,xt)){io(Ne,R);continue}if(k&&typeof d=="object"&&typeof d.getAttributeType=="function"&&!Kt)switch(d.getAttributeType(uf,Ye)){case"TrustedHTML":{xt=F(xt);break}case"TrustedScriptURL":{xt=N(xt);break}}if(xt!==Mr)try{Kt?R.setAttributeNS(Kt,Ne,xt):R.setAttribute(Ne,xt),Xo(R)?en(R):G2(e.removed)}catch{io(Ne,R)}}ir(Jt.afterSanitizeAttributes,R,null)},fc=function(R){let z=null,te=sf(R);for(ir(Jt.beforeSanitizeShadowDOM,R,null);z=te.nextNode();)if(ir(Jt.uponSanitizeShadowNode,z,null),oo(z),lf(z),Jo(z.content)&&fc(z.content),(M?M(z):z.nodeType)===ko.element){let Ce=b?b(z):z.shadowRoot;Jo(Ce)&&(gc(Ce),fc(Ce))}ir(Jt.afterSanitizeShadowDOM,R,null)},gc=function(R){let z=[{node:R,shadow:null}];for(;z.length>0;){let te=z.pop();if(te.shadow){fc(te.shadow);continue}let ve=te.node,Ne=(M?M(ve):ve.nodeType)===ko.element,Kt=T?T(ve):ve.childNodes;if(Kt)for(let je=Kt.length-1;je>=0;--je)z.push({node:Kt[je],shadow:null});if(Ne){let je=U?U(ve):null;if(typeof je=="string"&&Rt(je)==="template"){let Ye=ve.content;Jo(Ye)&&z.push({node:Ye,shadow:null})}}if(Ne){let je=b?b(ve):ve.shadowRoot;Jo(je)&&z.push({node:null,shadow:je},{node:je,shadow:null})}}};return e.sanitize=function(se){let R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},z=null,te=null,ve=null,Ce=null;if(Vs=!se,Vs&&(se="<!-->"),typeof se!="string"&&!Zo(se)&&(se=Fre(se),typeof se!="string"))throw Ol("dirty is not a string, aborting");if(!e.isSupported)return se;lc||Bs(R),e.removed=[];let Ne=au&&typeof se!="string"&&Zo(se);if(Ne){let Ye=U?U(se):se.nodeName;if(typeof Ye=="string"){let Mr=Rt(Ye);if(!ft[Mr]||Ps[Mr])throw Ol("root node is forbidden and cannot be sanitized in-place")}if(Xo(se))throw Ol("root node is clobbered and cannot be sanitized in-place");try{gc(se)}catch(Mr){throw tf(se),Mr}}else if(Zo(se))z=of("<!---->"),te=z.ownerDocument.importNode(se,!0),te.nodeType===ko.element&&te.nodeName==="BODY"||te.nodeName==="HTML"?z=te:z.appendChild(te),gc(te);else{if(!Bt&&!no&&!Ii&&se.indexOf("<")===-1)return k&&uc?F(se):se;if(z=of(se),!z)return Bt?null:uc?S:""}z&&Zt&&en(z.firstChild);let Kt=sf(Ne?se:z);try{for(;ve=Kt.nextNode();)oo(ve),lf(ve),Jo(ve.content)&&fc(ve.content)}catch(Ye){throw Ne&&tf(se),Ye}if(Ne)return As(e.removed,Ye=>{Ye.element&&rf(Ye.element)}),no&&af(se),se;if(Bt){if(no&&af(z),Yo)for(Ce=nc.call(z.ownerDocument);z.firstChild;)Ce.appendChild(z.firstChild);else Ce=z;return(vt.shadowroot||vt.shadowrootmode)&&(Ce=Op.call(t,Ce,!0)),Ce}let je=Ii?z.outerHTML:z.innerHTML;return Ii&&ft["!doctype"]&&z.ownerDocument&&z.ownerDocument.doctype&&z.ownerDocument.doctype.name&&Bn(qre,z.ownerDocument.doctype.name)&&(je="<!DOCTYPE "+z.ownerDocument.doctype.name+`>
146
- `+je),no&&As([br,qt,ru],Ye=>{je=Qd(je,Ye," ")}),k&&uc?F(je):je},e.setConfig=function(){let se=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Bs(se),lc=!0},e.clearConfig=function(){Lr=null,lc=!1,k=A,S=""},e.isValidAttribute=function(se,R,z){Lr||Bs({});let te=Rt(se),ve=Rt(R);return gu(te,ve,z)},e.addHook=function(se,R){typeof R=="function"&&Yd(Jt[se],R)},e.removeHook=function(se,R){if(R!==void 0){let z=Ore(Jt[se],R);return z===-1?void 0:wre(Jt[se],z,1)[0]}return G2(Jt[se])},e.removeHooks=function(se){Jt[se]=[]},e.removeAllHooks=function(){Jt=X2()},e}var pv=ej();var tj={ADD_TAGS:["velt-skeleton-loader"],ADD_ATTR:["border-radius","target"]},Ev=(()=>{let e=class e{constructor(t,i,o,s){this.analyticsService=t,this.rendererFactory2=i,this.loggingService=o,this.sanitizer=s,this.smoothScrollShieldHandler=null,this.smoothScrollShieldLoadListener=null,this.isVideoEditorHandlingDelete=!1,this.pageScrollHeight=0,this.enableRectSelectionSubject$=new Y(!1),this.enableRectSelection$=this.enableRectSelectionSubject$.asObservable(),this.scrollableElementsIds$=new Y([]),this.mousedown=!1,this.windowMouseDown$=new Ot,this.windowPointerMove$=new Y(null),this.windowPointerUp$=new Y(null),this.documentSelectionChange$=new Y(null),this.windowClick$=new Y(null),this.windowScroll$=new Y(null),this.windowResize$=new Y(null),this.windowKeyupBackspace$=new Y(null),this.windowKeyupDelete$=new Y(null),this.windowKeyupEsc$=new Y(null),this.windowPopState$=new Y(null),this.documentClick$=new Y(null),this.documentClickSubject$=new Ot,this.documentFocus$=new Y(null),this.windowKeydownShift$=new Y(null),this.windowKeyupShift$=new Y(null),this.mutation$=new Y(null),this.childListMutation$=new Y(null),this.networkStatus$=new Y(!1),this.xpathCache=new Map,this.xpathCacheId=new Map,this.selectedAnnotationsMap$=new Y({}),this.selectedAnnotationsLocationMap$=new Y({}),this.recordingInProgress$=new Y({}),this.deleteAnnotations$=new Y([]),this.pinHighlighterClass$=new Y(null),this.dialogOpenedInSidebar$=new Y(!1),this.textHighlighterClass$=new Y(null),this.commentPinHighlighter$=new Y(!1),this.deviceInfo$=new Y(new ui),this.customCss$=new Y(null),this.mutationObserver=null,this.animationFilterEnabled=!1,this.animationLibraryDetected=null,this.staticAnimationCache=new WeakMap,this.ANIMATION_LIBRARY_SELECTOR=["[data-gsap]",".gsap-marker-start",".gsap-marker-end","[data-gsap-id]",".swiper-slide",".swiper-wrapper",".swiper-pagination",".swiper-pagination-bullet","[data-aos]"].join(", "),this.previousMousePosition={pageX:0,pageY:0,clientX:0,clientY:0},this.currentMousePosition={pageX:0,pageY:0,clientX:0,clientY:0,element:{xpath:"",topPercentage:0,leftPercentage:0}},this.nodeMap={},this.unlistenElementScroll={},this.tabId=null,this.dynamicIdPatterns=[/^yui_[a-z0-9_]+$/i],this.excludeClassList=["show-pin-cursor"],this.filterSnippylyNodes=a=>{try{let c=[];return a.forEach(l=>{if(!bo(l))if(l instanceof HTMLElement){if(l.className.includes("cdk-overlay-container")||l.className.includes("cdk-overlay-connected-position-bounding-box"))return;if(l.className.includes("cdk-overlay")){let u=!1;l.childNodes.forEach(d=>{bo(d)&&(u=!0)}),u||c.push(l)}else c.push(l)}else c.push(l)}),c}catch(c){return this.loggingService.catch("Error in DomService filterSnippylyNodes: ",c),[]}},this.loggingService.log("%c[WB] Creating CLASS: DomService","color: blue;");try{this.analyticsService.setDomService(this),this.renderer=this.rendererFactory2.createRenderer(null,null);let a=this.calculateScreenSize();this.currentScreenSize$=new Y(a),this.currentMousePosition$=new Y(this.currentMousePosition),this.detectNetworkStatusChange(),this.getScrollableElementsIds$().pipe(Du(),Ks(([c,l])=>{try{let u=l.filter(f=>!c.includes(f)),d=c.filter(f=>!l.includes(f));d.length&&d.map(g=>document.getElementById(g)).filter(g=>g).forEach(g=>{this.unlistenElementScroll&&this.unlistenElementScroll[g.id]&&this.unlistenElementScroll[g.id]()}),u.length&&u.map(g=>document.getElementById(g)).filter(g=>g).forEach(g=>{this.unlistenElementScroll[g.id]=this.renderer.listen(g,"scroll",p=>{let _=this.calculateScreenSize();this.currentScreenSize$.next(_)})})}catch(u){this.loggingService.catch("Error in DomService getScrollableElementsIds subscription: ",u)}})).subscribe(()=>{},c=>{this.loggingService.catch("Error in DomService getScrollableElementsIds subscription: ",c)}),this.getSelectedAnnotationsMap$().subscribe(c=>{Object.keys(c||{})?.length?kV("snippylyUserScalableNo","viewport","width=device-width, user-scalable=no"):UV("snippylyUserScalableNo")},c=>{this.loggingService.catch("Error in DomService getSelectedAnnotationsMap$ subscription: ",c)})}catch(a){this.loggingService.catch("Error in DomService constructor: ",a)}}setDocService(t){try{this.docService=t,this.subscribeToDomEvents()}catch(i){this.loggingService.catch("Error in DomService setDocService: ",i)}}setDynamicIdPatterns(t){try{let i=t.map(o=>typeof o=="string"?new RegExp(o):o).filter(Boolean);i.length&&(this.dynamicIdPatterns=i)}catch(i){this.loggingService.catch("Error in DomService setDynamicIdPatterns: ",i)}}isLikelyDynamicId(t){try{return t?this.dynamicIdPatterns.some(i=>i.test(t)):!1}catch{return!1}}getStableAttributes(t){try{let i={};if(!t.getAttributeNames)return i;let o=new Set(["id","class","style"]);return t.getAttributeNames().forEach(a=>{if(o.has(a)||a.includes("snippyly")||a.includes("velt"))return;let c=t.getAttribute(a);c&&c.length<=256&&(i[a]=c)}),i}catch{return{}}}buildStableElementSelector(t,i){try{if(Object.keys(i).length===0)return;let s=[t.tagName?.toLowerCase()],a=["data-","aria-","role","name","title","type"];return Object.keys(i).sort((l,u)=>{let d=a.findIndex(g=>l.startsWith(g)),f=a.findIndex(g=>u.startsWith(g));return(d===-1?99:d)-(f===-1?99:f)}).slice(0,4).forEach(l=>{let u=CSS.escape(i[l]);s.push(`[${l}="${u}"]`)}),s.join("")}catch{return}}getVisibleText(t,i=400){try{let o=document.createTreeWalker(t,NodeFilter.SHOW_TEXT,null),s="",a,c=0;for(;(a=o.nextNode())&&s.length<i;){let l=(a.textContent||"").replace(/\s+/g," ").trim();if(l&&(s+=(s?" ":"")+l),c++,c>100)break}return s.slice(0,i)}catch{return""}}hashText(t){try{return wV(t)}catch{return}}generateRobustXPath(t,i){try{let o=i?.maxDepth||10,s=i?.useAbsolutePath||!1,a=[],c=t,l=0;for(;c&&c!==document.documentElement&&l<o;){let g=this.buildRobustXPathSegment(c);if(g&&(a.unshift(g),this.isStrongAnchorSegment(g)))break;c=c.parentElement,l++}if(a.length===0)return;let d=(s?"/":"//")+a.join("/");return a.some(g=>g.includes("[@")||g.includes("[contains(@class"))?d:void 0}catch{return}}buildRobustXPathSegment(t){try{let i=t.tagName.toLowerCase(),o=t.id;if(o&&!this.isLikelyDynamicId(o)&&document.querySelectorAll(`[id="${CSS.escape(o)}"]`).length===1)return`*[@id=${this.escapeXPathValue(o)}]`;let s=["data-region","data-instanceid","data-action","data-key","data-block","data-activityid"];for(let g of s){let p=t.getAttribute(g);if(p)return`${i}[@${g}=${this.escapeXPathValue(p)}]`}let a=Array.from(t.attributes).filter(g=>g.name.startsWith("data-")&&!g.name.includes("snippyly")&&!g.name.includes("velt")&&g.value.length<100).sort((g,p)=>g.value.length-p.value.length);if(a.length>0){let g=a[0];return`${i}[@${g.name}=${this.escapeXPathValue(g.value)}]`}let c=t.getAttribute("role");if(c)return`${i}[@role=${this.escapeXPathValue(c)}]`;let l=t.getAttribute("aria-label");if(l&&l.length<50)return`${i}[@aria-label=${this.escapeXPathValue(l)}]`;let u=t.getAttribute("name");if(u)return`${i}[@name=${this.escapeXPathValue(u)}]`;let d=t.getAttribute("type");if(d)return`${i}[@type=${this.escapeXPathValue(d)}]`;let f=Array.from(t.classList||[]).filter(g=>g.length>0&&g.length<40&&!g.includes("yui")&&!g.includes("velt")&&!g.includes("snippyly")&&!this.excludeClassList.includes(g)).slice(0,2);if(f.length>0){let g=f.map(p=>`contains(@class, ${this.escapeXPathValue(p)})`).join(" and ");return`${i}[${g}]`}if(t.parentElement){let g=Array.from(t.parentElement.children).filter(p=>p.tagName===t.tagName);if(g.length>1){let p=g.indexOf(t)+1;return`${i}[${p}]`}}return i}catch{return}}isStrongAnchorSegment(t){try{return!!(t.includes("[@id=")||["main","navigation","banner","contentinfo","complementary","search"].some(s=>t.includes(`[@role='${s}']`))||["data-region","data-instanceid","data-activityid"].some(s=>t.includes(`[@${s}=`)))}catch{return!1}}escapeXPathValue(t,i=!0){try{return t.includes("'")?t.includes('"')?`concat(${t.split("'").map(a=>`'${a}'`).join(`,"'",`)})`:i?`"${t}"`:t:i?`'${t}'`:t}catch{try{return`concat(${t.split("'").map(c=>`'${c}'`).join(`,"'",`)})`}catch{return i?`'${t}'`:t}}}getElementFromRobustXPath(t){try{return document.evaluate(t,document,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue}catch{return null}}getAllElementsFromRobustXPath(t){try{let i=document.evaluate(t,document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),o=[];for(let s=0;s<i.snapshotLength;s++){let a=i.snapshotItem(s);a instanceof Element&&o.push(a)}return o}catch{return[]}}generateAnchorRecord(t,i){try{let o=this.generateAnchorRecordForElement(t,i),s=null;if(t.parentElement&&t.parentElement instanceof HTMLElement&&Rg(t.parentElement)&&t.parentElement!==document.body&&(s=t.parentElement),o&&s){let a=this.generateAnchorRecordForElement(s,i);a&&(o.parent=a)}return o}catch(o){return this.loggingService.catch("Error in DomService generateAnchorRecord: ",o),null}}generateAnchorRecordForElement(t,i){try{if(!t)return null;let o=t,s=o.tagName?.toUpperCase();if(!s)return null;let a=o.id&&!this.isLikelyDynamicId(o.id)?o.id:void 0,c=this.getStableAttributes(o),l=this.buildStableElementSelector(o,c),u=this.getVisibleText(o),d=this.hashText(u||""),f=this.generateRobustXPath(o),g=this.getXPath(o),p=this.getXPath(o,!0),_=this.getXPath(o,!0,!0);return{version:"1.0",id:a,tagName:s,elementSelector:l,robustXPath:f||void 0,xPath:g||void 0,fXPath:p||void 0,cfXPath:_||void 0,contentHash:d?{value:d,algorithm:"md5",source:"textContent"}:void 0,createdAt:Date.now()}}catch(o){return this.loggingService.catch("Error in DomService generateAnchorRecordForElement: ",o),null}}resolveAnchorRecord(t){try{let i=[],o=null,s=(d,f,g=0)=>{let p=[],_=g;if(p.push({method:f,score:g}),t.tagName&&d.tagName?.toUpperCase()===t.tagName&&(_+=10,p.push({method:"tagName-match",score:10})),t.contentHash?.value){let T=this.getVisibleText(d);this.hashText(T)===t.contentHash.value&&(_+=30,p.push({method:"contentHash-match",score:30}))}i.push({el:d,score:_,by:f,scoreBreakdown:p})};if(t.id){let d=document.querySelectorAll(`#${CSS.escape(t.id)}`);if(d.length===1)return{element:d[0],matchedBy:"id",score:90};d.length>1&&d.forEach(f=>s(f,"id-duplicate",70))}if(t.elementSelector){let d=document.querySelectorAll(t.elementSelector);if(d.length===1)return{element:d[0],matchedBy:"element-selector",score:80};d.forEach(f=>s(f,"element-selector-duplicate",60))}t.robustXPath&&this.getAllElementsFromRobustXPath(t.robustXPath).slice(0,20).forEach(p=>s(p,"robustXPath",50)),t?.parent&&(o=this.resolveAnchorRecord(t.parent),o.element&&o.element.querySelectorAll(t.tagName?.toLowerCase()||"*").forEach(f=>s(f,"parent+tag",40)));let a=(d,f,g)=>{if(!d)return;let p=this.getElementFromXPath(d);p&&s(p,f||"xpath",g||30)};if(a(t.xPath,"xPath",30),a(t.cfXPath,"cfXPath",30),a(t.fXPath,"fXPath",30),t.contentHash?.value&&i.length===0){let f=g=>{let p=0;for(let _=0;_<g.length&&p<400;_++){let T=g[_];if(p++,!this.isElementVisible(T))continue;let D=this.getVisibleText(T),b=this.hashText(D);b&&b===t.contentHash?.value&&s(T,"contentHash",15)}};if(o?.element&&o?.element instanceof Element){let g=o?.element?.querySelectorAll("*");f(g)}}if(!i.length)return{element:null};i.sort((d,f)=>f.score-d.score);let c=i[0].score,l=i.filter(d=>d.score===c);if(l.length>1){let d=[{path:t.xPath,label:"xPath"},{path:t.cfXPath,label:"cfXPath"},{path:t.fXPath,label:"fXPath"}];for(let f of d)if(f.path){let g=this.getElementFromXPath(f.path);if(g){let p=l.find(_=>_.el===g);if(p)return{element:p.el,matchedBy:`${p.by}+position`,score:p.score,scoreBreakdown:p.scoreBreakdown}}}}let u=i[0];return{element:u.el,matchedBy:u.by,score:u.score,scoreBreakdown:u.scoreBreakdown}}catch(i){return this.loggingService.catch("Error in DomService resolveAnchorRecord: ",i),{element:null}}}subscribeToDomEvents(){try{this.docService?.getDocumentPaths$().pipe(fe(t=>{t?(this.onWindowResize(),this.onWindowScroll(),this.onPointerDown(),this.onWindowClick(),this.onWindowKeyupBackspace(),this.onWindowKeyupDelete(),this.onWindowKeyupEsc(),this.onWindowPopState(),this.onWindowKeydownShift(),this.onWindowKeyupShift(),this.addPointerMoveListener(),this.addPointerUpListener(),this.addSelectionChangeListener(),this.onDocumentFocus(),this.setupSmoothScrollShield()):(this.unsubscribeFromWindowResize(),this.unsubscribeFromWindowScroll(),this.unsubscribeFromPointerDown(),this.unsubscribeFromWindowClick(),this.unsubscribeFromWindowKeyupBackspace(),this.unsubscribeFromWindowKeyupDelete(),this.unsubscribeFromWindowKeyupEsc(),this.unsubscribeFromWindowPopState(),this.unsubscribeFromWindowKeydownShift(),this.unsubscribeFromWindowKeyupShift(),this.unsubscribeFromPointerMoveListener(),this.unsubscribeFromPointerUpListener(),this.unsubscribeFromSelectionChangeListener(),this.unsubscribeFromDocumentFocus(),this.unsetMutationObserver(),this.teardownSmoothScrollShield())})).subscribe(),this.onDocumentClick()}catch(t){this.loggingService.catch("Error in DomService subscribeToDomEvents: ",t)}}setScrollableElementsIds(t){try{t&&t.length&&this.scrollableElementsIds$.next(Array.from(new Set(t)))}catch(i){this.loggingService.catch("Error in DomService setScrollableElementsIds: ",i)}}getScrollableElementsIds$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getScrollableElementsIds$","color: green;"),this.scrollableElementsIds$.asObservable()}removeScrollableElementsIds(){this.scrollableElementsIds$.next([])}setMutationObserver(t){try{this.mutationObserver||(this.loggingService.log("%c[WB] Calling DomService FUNCTION: setMutationObserver","color: green;"),this.loggingService.log("%c[WB] setMutationObserver from: "+t,"color: green;"),this.animationFilterEnabled=this.detectAnimationLibraries(),this.loggingService.log("%c[WB] Animation filter:","color: green;",this.animationFilterEnabled?"ENABLED (library detected)":"DISABLED (no library)"),this.mutationObserver=new MutationObserver(i=>{try{if(i?.find(s=>s?.attributeName===v.VELT_IGNORE_CHANGE_DETECTION))return;let o=i.filter(s=>s.type==="childList").filter(s=>{let a=s.target;return s.removedNodes.forEach(c=>{let l=c;if(typeof l.getAttribute=="function"){let u=l.getAttribute(v.ATTRIBUTES.VELT_ELEMENT_CACHE_ID);if(u!==null&&u!==""){let d=this.xpathCacheId.get(u);d!==void 0&&(this.xpathCacheId.delete(u),this.xpathCache.delete(d))}}}),bo(a)?!1:!!(this.filterSnippylyNodes(s.addedNodes).length||this.filterSnippylyNodes(s.removedNodes).length)});this.animationFilterEnabled?this.childListMutation$.next(o.filter(s=>!this.isAnimatingElement(s.target))):this.childListMutation$.next(o),o.push(...i.filter(s=>s.type==="attributes").filter(s=>!bo(s.target)).filter(s=>this.filterSnippylyNodes([s.target]).length).filter(s=>{if(s){let a=s.target;return a?.classList?.contains("snippyly-sidebar-panel")?!1:a?!a.getAttribute(v.VELT_IGNORE_CHANGE_DETECTION):!0}return!0})),o=o.filter(s=>{let a=!0;return Object.keys(v.INGNORE_MUTATION_OBSERVER_CHANGE_TAGS).forEach(c=>{s.target?.closest(c)&&(a=!1)}),a}),o=o.filter(s=>s.target&&Rg(s.target)),this.animationFilterEnabled&&(o=o.filter(s=>!this.isAnimatingElement(s.target))),o.length&&this.mutation$.next(o)}catch(o){this.loggingService.catch("Error in DomService change detection: ",o)}}),this.mutationObserver.observe(document.body,{childList:!0,subtree:!0,attributes:!0}))}catch(i){this.loggingService.catch("Error in DomService change detection: ",i)}}detectAnimationLibraries(){try{if(this.animationLibraryDetected!==null)return this.animationLibraryDetected;let t=window;return t.gsap||t.TweenMax||t.TweenLite||t.TimelineMax||t.TimelineLite?(this.loggingService.log("%c[WB] Detected animation library: GSAP","color: green;"),this.animationLibraryDetected=!0,!0):t.Swiper?(this.loggingService.log("%c[WB] Detected animation library: Swiper","color: green;"),this.animationLibraryDetected=!0,!0):t.AOS?(this.loggingService.log("%c[WB] Detected animation library: AOS","color: green;"),this.animationLibraryDetected=!0,!0):t.anime?(this.loggingService.log("%c[WB] Detected animation library: Anime.js","color: green;"),this.animationLibraryDetected=!0,!0):t.lottie||t.Lottie||t.bodymovin?(this.loggingService.log("%c[WB] Detected animation library: Lottie","color: green;"),this.animationLibraryDetected=!0,!0):document.querySelector("[data-framer-component-type]")?(this.loggingService.log("%c[WB] Detected animation library: Framer Motion","color: green;"),this.animationLibraryDetected=!0,!0):document.querySelector(this.ANIMATION_LIBRARY_SELECTOR)?(this.loggingService.log("%c[WB] Detected animation library: DOM markers","color: green;"),this.animationLibraryDetected=!0,!0):(this.loggingService.log("%c[WB] No animation library detected","color: green;"),this.animationLibraryDetected=!1,!1)}catch{return this.animationLibraryDetected=!1,!1}}isAnimatingElement(t){try{if(!t||typeof t.closest!="function")return!1;let i=window;if(i.gsap&&typeof i.gsap.isTweening=="function"){if(i.gsap.isTweening(t))return!0;if(typeof i.gsap.getTweensOf=="function")try{if(i.gsap.getTweensOf(t).length>0)return!0}catch{}}else if(i.TweenMax&&typeof i.TweenMax.isTweening=="function"){if(i.TweenMax.isTweening(t))return!0;if(typeof i.TweenMax.getTweensOf=="function")try{if(i.TweenMax.getTweensOf(t).length>0)return!0}catch{}}let o=t.style?.cssText||"";if(o){let l=o.includes("transform")||o.includes("translate3d")||o.includes("translate(")||o.includes("scale3d")||o.includes("rotate"),u=o.includes("will-change")&&o.includes("transform"),d=o.includes("transform-style")&&o.includes("preserve-3d");if(l&&(u||d))return!0}if(t.style&&(t.style.animation!==""&&t.style.animation!=="none"||t.style.transition!==""&&t.style.transition!=="none")||t.classList?.contains("animate")||t.classList?.contains("animating")||t.classList?.contains("animated")||t.classList?.contains("animation"))return!0;let s=this.staticAnimationCache.get(t);if(s!==void 0)return s;let a=!1,c=t.className||"";return typeof c=="string"&&(c.includes("slider")&&(c.includes("bullet")||c.includes("pagination"))&&(a=!0),c.includes("swiper-pagination")&&(a=!0)),!a&&(t.hasAttribute("data-aos")||t.hasAttribute("data-motion"))&&(a=!0),!a&&t.closest(this.ANIMATION_LIBRARY_SELECTOR)&&(a=!0),this.staticAnimationCache.set(t,a),a}catch{return!1}}unsetMutationObserver(){try{this.mutationObserver&&(this.mutationObserver.disconnect(),this.mutationObserver=null,this.staticAnimationCache=new WeakMap,this.animationLibraryDetected=null,this.animationFilterEnabled=!1)}catch(t){this.loggingService.catch("Error in DomService unsetMutationObserver: ",t)}}detectNetworkStatusChange(){this.loggingService.log("%c[WB] Calling FUNCTION: detectNetworkStatusChange","color: green;");try{Pu(ho(window,"offline").pipe(fe(()=>!1)),ho(window,"online").pipe(fe(()=>!0)),new ge(t=>{t.next(navigator.onLine),t.complete()})).subscribe(t=>{this.networkStatus$.next(t)})}catch(t){this.loggingService.catch("Error in DomService detectNetworkStatusChange: ",t)}}onWindowResize(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowResize","color: green;");try{this.unsubscribeFromWindowResize(),this.unlistenWindowResize=this.renderer.listen("window","resize",t=>{this.windowResize$.next(t);let i=this.calculateScreenSize();this.deviceInfo$.next(new ui),this.currentScreenSize$.next(i)})}catch(t){this.loggingService.catch("Error in DomService onWindowResize: ",t)}}unsubscribeFromWindowResize(){try{this.unlistenWindowResize&&typeof this.unlistenWindowResize=="function"&&(this.unlistenWindowResize(),this.unlistenWindowResize=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowResize: ",t)}}onWindowScroll(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowScroll","color: green;");try{this.unsubscribeFromWindowScroll(),this.unlistenWindowScroll=this.renderer.listen("window","scroll",t=>{this.windowScroll$.next(t);let i=this.calculateScreenSize();this.currentScreenSize$.next(i)})}catch(t){this.loggingService.catch("Error in DomService onWindowScroll: ",t)}}unsubscribeFromWindowScroll(){try{this.unlistenWindowScroll&&typeof this.unlistenWindowScroll=="function"&&(this.unlistenWindowScroll(),this.unlistenWindowScroll=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowScroll: ",t)}}setupSmoothScrollShield(){this.loggingService.log("%c[WB] Calling FUNCTION: setupSmoothScrollShield","color: green;");try{if(typeof window>"u"||typeof document>"u"||this.smoothScrollShieldHandler)return;if(this.isSmoothScrollLibPresent()){this.attachSmoothScrollShield();return}if(document.readyState!=="complete"&&!this.smoothScrollShieldLoadListener){let t=()=>{this.smoothScrollShieldLoadListener=null;try{if(this.smoothScrollShieldHandler)return;this.isSmoothScrollLibPresent()&&this.attachSmoothScrollShield()}catch(i){this.loggingService.catch("Error in DomService smooth-scroll shield load re-check: ",i)}};window.addEventListener("load",t,{once:!0}),this.smoothScrollShieldLoadListener=()=>window.removeEventListener("load",t)}}catch(t){this.loggingService.catch("Error in DomService setupSmoothScrollShield: ",t)}}isSmoothScrollLibPresent(){try{if(typeof window>"u"||typeof document>"u")return!1;if(window.ET_SmoothScroll)return!0;let i=document.body;return!!(i&&i.classList&&i.classList.contains("et_smooth_scroll"))}catch(t){return this.loggingService.catch("Error in DomService isSmoothScrollLibPresent: ",t),!1}}attachSmoothScrollShield(){if(this.smoothScrollShieldHandler)return;let t=/^(VELT-|SUPERFLOW-|SNIPPYLY-)/,i=s=>{try{let a=typeof s.composedPath=="function"?s.composedPath():[];for(let c=0;c<a.length;c++){let l=a[c];if(!(!l||l.nodeType!==1)&&l.tagName&&t.test(l.tagName)){s.stopImmediatePropagation();return}}}catch(a){this.loggingService.catch("Error in DomService smoothScrollShield handler: ",a)}};this.smoothScrollShieldHandler=i;let o={capture:!0,passive:!0};window.addEventListener("wheel",i,o),window.addEventListener("mousewheel",i,o),window.addEventListener("touchmove",i,o),this.unlistenWindowWheelShield=()=>window.removeEventListener("wheel",i,o),this.unlistenWindowMouseWheelShield=()=>window.removeEventListener("mousewheel",i,o),this.unlistenWindowTouchMoveShield=()=>window.removeEventListener("touchmove",i,o)}teardownSmoothScrollShield(){this.loggingService.log("%c[WB] Calling FUNCTION: teardownSmoothScrollShield","color: green;");try{try{this.smoothScrollShieldLoadListener&&typeof this.smoothScrollShieldLoadListener=="function"&&(this.smoothScrollShieldLoadListener(),this.smoothScrollShieldLoadListener=null)}catch(t){this.loggingService.catch("Error in DomService teardownSmoothScrollShield (load): ",t)}try{this.unlistenWindowWheelShield&&typeof this.unlistenWindowWheelShield=="function"&&(this.unlistenWindowWheelShield(),this.unlistenWindowWheelShield=null)}catch(t){this.loggingService.catch("Error in DomService teardownSmoothScrollShield (wheel): ",t)}try{this.unlistenWindowMouseWheelShield&&typeof this.unlistenWindowMouseWheelShield=="function"&&(this.unlistenWindowMouseWheelShield(),this.unlistenWindowMouseWheelShield=null)}catch(t){this.loggingService.catch("Error in DomService teardownSmoothScrollShield (mousewheel): ",t)}try{this.unlistenWindowTouchMoveShield&&typeof this.unlistenWindowTouchMoveShield=="function"&&(this.unlistenWindowTouchMoveShield(),this.unlistenWindowTouchMoveShield=null)}catch(t){this.loggingService.catch("Error in DomService teardownSmoothScrollShield (touchmove): ",t)}this.smoothScrollShieldHandler=null}catch(t){this.loggingService.catch("Error in DomService teardownSmoothScrollShield: ",t)}}onPointerDown(){this.loggingService.log("%c[WB] Calling FUNCTION: onPointerDown","color: green;");try{this.unsubscribeFromPointerDown(),this.unlistenPointerDown=this.renderer.listen("window","pointerdown",t=>{this.mousedown=!0,this.windowMouseDown$.next(t),this.setPointerPosition(t)})}catch(t){this.loggingService.catch("Error in DomService onPointerDown: ",t)}}unsubscribeFromPointerDown(){try{this.unlistenPointerDown&&typeof this.unlistenPointerDown=="function"&&(this.unlistenPointerDown(),this.unlistenPointerDown=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromPointerDown: ",t)}}onWindowClick(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeyupBackspace","color: green;");try{this.unsubscribeFromWindowClick(),this.unlistenWindowClick=this.renderer.listen("window","click",t=>{this.windowClick$.next(t)})}catch(t){this.loggingService.catch("Error in DomService onWindowClick: ",t)}}unsubscribeFromWindowClick(){try{this.unlistenWindowClick&&typeof this.unlistenWindowClick=="function"&&(this.unlistenWindowClick(),this.unlistenWindowClick=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowClick: ",t)}}onWindowKeyupBackspace(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeyupBackspace","color: green;");try{this.unsubscribeFromWindowKeyupBackspace(),this.unlistenWindowKeyupBackspace=this.renderer.listen("window","keyup.backspace",t=>{this.isVideoEditorHandlingDelete||this.windowKeyupBackspace$.next(t)})}catch(t){this.loggingService.catch("Error in DomService onWindowKeyupBackspace: ",t)}}unsubscribeFromWindowKeyupBackspace(){try{this.unlistenWindowKeyupBackspace&&typeof this.unlistenWindowKeyupBackspace=="function"&&(this.unlistenWindowKeyupBackspace(),this.unlistenWindowKeyupBackspace=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowKeyupBackspace: ",t)}}onWindowKeyupDelete(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeyupDelete","color: green;");try{this.unsubscribeFromWindowKeyupDelete(),this.unlistenWindowKeyupDelete=this.renderer.listen("window","keyup.delete",t=>{this.isVideoEditorHandlingDelete||this.windowKeyupDelete$.next(t)})}catch(t){this.loggingService.catch("Error in DomService onWindowKeyupDelete: ",t)}}unsubscribeFromWindowKeyupDelete(){try{this.unlistenWindowKeyupDelete&&typeof this.unlistenWindowKeyupDelete=="function"&&(this.unlistenWindowKeyupDelete(),this.unlistenWindowKeyupDelete=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowKeyupDelete: ",t)}}onWindowKeyupEsc(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeyupEsc","color: green;");try{this.unsubscribeFromWindowKeyupEsc(),this.unlistenWindowKeyupEsc=this.renderer.listen("window","keyup.esc",t=>{this.windowKeyupEsc$.next(t)})}catch(t){this.loggingService.catch("Error in DomService onWindowKeyupEsc: ",t)}}unsubscribeFromWindowKeyupEsc(){try{this.unlistenWindowKeyupEsc&&typeof this.unlistenWindowKeyupEsc=="function"&&(this.unlistenWindowKeyupEsc(),this.unlistenWindowKeyupEsc=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowKeyupEsc: ",t)}}onWindowPopState(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowPopState","color: green;");try{this.unsubscribeFromWindowPopState(),this.unlistenWindowPopState=this.renderer.listen("window","popstate",t=>{this.windowPopState$.next(t)})}catch(t){this.loggingService.catch("Error in DomService onWindowPopState: ",t)}}unsubscribeFromWindowPopState(){try{this.unlistenWindowPopState&&typeof this.unlistenWindowPopState=="function"&&(this.unlistenWindowPopState(),this.unlistenWindowPopState=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowPopState: ",t)}}onDocumentClick(){this.loggingService.log("%c[WB] Calling FUNCTION: onDocumentClick","color: green;");try{this.unsubscribeFromDocumentClick(),this.documentClickListener=t=>{t?.target?.tagName?.toLowerCase()!==v.TAGS.SUPERFLOW_TOOLBAR&&(this.documentClick$.next(t),this.documentClickSubject$.next(t))},document.addEventListener("click",this.documentClickListener,!0)}catch(t){this.loggingService.catch("Error in DomService onDocumentClick: ",t)}}unsubscribeFromDocumentClick(){try{this.documentClickListener&&typeof this.documentClickListener=="function"&&(document.removeEventListener("click",this.documentClickListener,!0),this.documentClickListener=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromDocumentClick: ",t)}}onDocumentFocus(){this.loggingService.log("%c[WB] Calling FUNCTION: onDocumentFocus","color: green;");try{this.unsubscribeFromDocumentFocus(),this.documentFocusListener=t=>{this.documentFocus$.next(t)},document.addEventListener("focus",this.documentFocusListener,!0)}catch(t){this.loggingService.catch("Error in DomService onDocumentFocus: ",t)}}unsubscribeFromDocumentFocus(){try{this.documentFocusListener&&typeof this.documentFocusListener=="function"&&(document.removeEventListener("focus",this.documentFocusListener,!0),this.documentFocusListener=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromDocumentFocus: ",t)}}onWindowKeydownShift(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeydownShift","color: green;");try{this.unsubscribeFromWindowKeydownShift(),this.unlistenWindowKeydownShift=this.renderer.listen("window","keydown.shift",t=>{this.windowKeydownShift$.next(t),this.windowKeyupShift$.next(null)})}catch(t){this.loggingService.catch("Error in DomService onWindowKeydownShift: ",t)}}unsubscribeFromWindowKeydownShift(){try{this.unlistenWindowKeydownShift&&typeof this.unlistenWindowKeydownShift=="function"&&(this.unlistenWindowKeydownShift(),this.unlistenWindowKeydownShift=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowKeydownShift: ",t)}}onWindowKeyupShift(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeyupShift","color: green;");try{this.unsubscribeFromWindowKeyupShift(),this.unlistenWindowKeyupShift=this.renderer.listen("window","keyup.shift",t=>{this.windowKeyupShift$.next(t),this.windowKeydownShift$.next(null)})}catch(t){this.loggingService.catch("Error in DomService onWindowKeyupShift: ",t)}}unsubscribeFromWindowKeyupShift(){try{this.unlistenWindowKeyupShift&&typeof this.unlistenWindowKeyupShift=="function"&&(this.unlistenWindowKeyupShift(),this.unlistenWindowKeyupShift=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromWindowKeyupShift: ",t)}}onWindowKeydown$(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowKeydown$","color: green;");try{return ho(window,"keydown")}catch(t){return this.loggingService.catch("Error in DomService onWindowKeydown$: ",t),Ic}}addPointerMoveListener(){this.loggingService.log("%c[WB] Calling FUNCTION: addPointerMoveListener","color: green;");try{this.unsubscribeFromPointerMoveListener(),this.unlistenPointerMoveListener=this.renderer.listen("document","pointermove",t=>{this.windowPointerMove$.next(t),this.mouseMoveEvent=t})}catch(t){this.loggingService.catch("Error in DomService addPointerMoveListener: ",t)}}unsubscribeFromPointerMoveListener(){try{this.unlistenPointerMoveListener&&typeof this.unlistenPointerMoveListener=="function"&&(this.unlistenPointerMoveListener(),this.unlistenPointerMoveListener=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromPointerMoveListener: ",t)}}addPointerUpListener(){this.loggingService.log("%c[WB] Calling FUNCTION: addPointerUpListener","color: green;");try{this.unsubscribeFromPointerUpListener(),this.unlistenPointerUpListener=this.renderer.listen("document","pointerup",t=>{this.windowPointerUp$.next(t)})}catch(t){this.loggingService.catch("Error in DomService addPointerUpListener: ",t)}}unsubscribeFromPointerUpListener(){try{this.unlistenPointerUpListener&&typeof this.unlistenPointerUpListener=="function"&&(this.unlistenPointerUpListener(),this.unlistenPointerUpListener=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromPointerUpListener: ",t)}}addSelectionChangeListener(){this.loggingService.log("%c[WB] Calling FUNCTION: addPointerUpListener","color: green;");try{this.unsubscribeFromSelectionChangeListener(),this.unlistenSelectionChangeListener=this.renderer.listen("document","selectionchange",t=>{this.documentSelectionChange$.next(t)})}catch(t){this.loggingService.catch("Error in DomService addPointerUpListener: ",t)}}unsubscribeFromSelectionChangeListener(){try{this.unlistenSelectionChangeListener&&typeof this.unlistenSelectionChangeListener=="function"&&(this.unlistenSelectionChangeListener(),this.unlistenSelectionChangeListener=null)}catch(t){this.loggingService.catch("Error in DomService unsubscribeFromSelectionChangeListener: ",t)}}updateCurrentMousePosition(t){try{if(this.currentMousePosition.pageX=t.pageX,this.currentMousePosition.pageY=t.pageY,this.currentMousePosition.clientX=t.clientX,this.currentMousePosition.clientY=t.clientY,t.target){let i=this.getXPath(t.target),o=t.target;if(i?.includes("name()='svg'")){let d=this.getXPath(i);d&&(o=d.iterateNext()||t.target)}let s=o.getBoundingClientRect(),a=t.clientX-s.x,c=t.clientY-s.y,l=a*100/(s.width||1),u=c*100/(s.height||1);this.currentMousePosition.element={xpath:i,topPercentage:u,leftPercentage:l}}else this.currentMousePosition.element=null;this.currentMousePosition$.next(this.currentMousePosition)}catch(i){this.loggingService.catch("Error in DomService updateCurrentMousePosition: ",i)}}getTargetElementForCursorPosition(t,i=!0,o=!1,s=!0,a,c=!0,l){try{let u=t,d=u?.touches?.length?u.touches[0]?.clientX:u?.clientX,f=u?.touches?.length?u.touches[0]?.clientY:u?.clientY;l&&(d=l.clientX,f=l.clientY);let g=this.getBackgroundElement(d,f,i,o);if(g&&a&&typeof a=="function"&&(g=a(g)),g){let p=this.getXPath(g),_=this.getXPath(g,!0),T=g.getBoundingClientRect(),D=d-T.x,b=f-T.y,G=D*100/(T.width||1),M=b*100/(T.height||1),U={xpath:p,fXpath:_,leftPercentage:G,topPercentage:M};if(s){let k=this.getXPath(g,!0,!0);U.cfXpath=k}if(c){let k=this.generateAnchorRecord(g);k&&(U.anchor=k)}return U}else return null}catch(u){return this.loggingService.catch("Error in DomService getTargetElementForCommentPinAnnotation: ",u),null}}getBackgroundElement(t,i,o=!0,s=!1){try{let a=document.elementsFromPoint(t,i),c=[];a.forEach(u=>{bo(u)?c=[]:Rg(u)&&c.push(u)}),s&&(c=c.filter(u=>this.isElementVisibleOnScreen(u)));let l=0;return o||c?.forEach((u,d)=>{u.tagName.toLowerCase()==="svg"&&(l=d)}),c[l]}catch(a){return this.loggingService.catch("Error in DomService getBackgroundElement: ",a),null}}getBackgroundVeltElement(t,i){try{let o=document.elementsFromPoint(t,i),s=[];return o.forEach(a=>{bo(a)&&Rg(a)&&s.push(a)}),s[0]}catch(o){return this.loggingService.catch("Error in DomService getBackgroundSnippylyElement: ",o),null}}setPointerPosition(t){this.loggingService.log("%c[WB] Calling FUNCTION: setPointerPosition","color: green;");try{this.previousMousePosition.pageX=t.pageX,this.previousMousePosition.pageY=t.pageY,this.currentMousePosition.pageX=t.pageX,this.currentMousePosition.pageY=t.pageY}catch(i){this.loggingService.catch("Error in DomService setPointerPosition: ",i)}}getCurrentWindowSize$(t){return this.loggingService.log("%c[WB] Calling FUNCTION: getCurrentWindowSize","color: green;"),this.currentScreenSize$.asObservable()}getCurrentMousePosition$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getCurrentMousePosition","color: green;"),this.currentMousePosition$.asObservable()}getCurrentWindowSizeValue(){return this.loggingService.log("%c[WB] Calling FUNCTION: getCurrentWindowSizeValue","color: green;"),this.currentScreenSize$.value}getTopLeftPosition(){this.loggingService.log("%c[WB] Calling FUNCTION: getTopLeftPosition","color: green;");try{let t=document?.body?.getBoundingClientRect()||document?.documentElement?.getBoundingClientRect(),i=this.currentMousePosition?.pageX||t.x+200,o=Math.min(i,t.width/2),s=Math.abs(t.y),a=t.y-20;return s>50&&(a=Math.abs(t.y)+180),this.loggingService.log(t),this.loggingService.log(o),this.loggingService.log(a),{topPositionX:o,topPositionY:a}}catch(t){return this.loggingService.catch("Error in DomService getTopLeftPosition: ",t),{topPositionX:0,topPositionY:0}}}toggleSelection(){this.enableRectSelectionSubject$.next(!this.enableRectSelectionSubject$.value)}enableSelection(){this.enableRectSelectionSubject$.next(!0)}disableSelection(){this.enableRectSelectionSubject$.next(!1)}setPinHighlighterClass(t){this.pinHighlighterClass$.next(t)}setTextHighlighterClass(t){this.textHighlighterClass$.next(t)}getTextHighlighterClass(){return this.textHighlighterClass$.asObservable()}enableCommentPinHighlighter(){this.commentPinHighlighter$.next(!0)}disableCommentPinHighlighter(){this.commentPinHighlighter$.next(!1)}getCommentPinHighlighter$(){return this.commentPinHighlighter$.asObservable()}getCommentPinHighlighter(){return this.commentPinHighlighter$?.value}highlightElement(t,i,o){if(t){if(!o&&this.getCommentPinHighlighter()&&(this.pinHighlighterClass$.value?this.addClassToElement(t,this.pinHighlighterClass$.value):this.addClassToElement(t,v.SNIPPYLY_HIGHLIGHT)),i&&!t.hasAttribute(v.ATTRIBUTES.DEFAULT_CURSOR)){let s=t.style.getPropertyValue("cursor"),a=t.style.getPropertyPriority("cursor"),c=s?{defaultCursorValue:s,defaultCursorPriority:a}:"";t.setAttribute(v.ATTRIBUTES.DEFAULT_CURSOR,c?JSON.stringify(c):""),t.style.setProperty("cursor",i,"important")}t.setAttribute(v.SNIPPYLY_HIGHLIGHT,"true"),t.setAttribute(v.VELT_IGNORE_CHANGE_DETECTION,"true")}}removeHighlightFromElement(t){if(t&&(this.pinHighlighterClass$.value&&this.removeClassFromElement(t,this.pinHighlighterClass$.value),this.removeClassFromElement(t,v.SNIPPYLY_HIGHLIGHT),t.removeAttribute(v.SNIPPYLY_HIGHLIGHT),t.removeAttribute(v.VELT_IGNORE_CHANGE_DETECTION),t.hasAttribute(v.ATTRIBUTES.DEFAULT_CURSOR))){try{if(t.style.removeProperty("cursor"),t.getAttribute(v.ATTRIBUTES.DEFAULT_CURSOR)){let i=JSON.parse(t.getAttribute(v.ATTRIBUTES.DEFAULT_CURSOR));t.style.setProperty("cursor",i.defaultCursorValue,i.defaultCursorPriority)}}catch{}t.removeAttribute(v.ATTRIBUTES.DEFAULT_CURSOR)}}highlightUserElement(t,i,o,s=!1){try{t&&(this.addClassToElement(t,v.VELT_LIVE_SELECTION_ON_ELEMENT),s&&this.addClassToElement(t,v.VELT_LIVE_SELECTION_ON_ELEMENT_DEFAULT),t.setAttribute(v.SNIPPYLY_HIGHLIGHT,"true"),t.setAttribute(v.VELT_IGNORE_CHANGE_DETECTION,"true"),i&&!t.style.getPropertyValue(v.VELT_SELECTION_COLOR)&&t.style.setProperty(v.VELT_SELECTION_COLOR,i),o&&t.setAttribute(v.SNIPPYLY_HIGHLIGHT_USER_NAME,o))}catch(a){this.loggingService.catch("Error in DomService highlightUserElement: ",a)}}removeHighlightUserFromElement(t){try{t&&(this.removeClassFromElement(t,v.VELT_LIVE_SELECTION_ON_ELEMENT),this.removeClassFromElement(t,v.VELT_LIVE_SELECTION_ON_ELEMENT_DEFAULT),t.removeAttribute(v.SNIPPYLY_HIGHLIGHT),t.removeAttribute(v.VELT_IGNORE_CHANGE_DETECTION),t.removeAttribute(v.VELT_SELECTION_COLOR),t.removeAttribute(v.SNIPPYLY_HIGHLIGHT_USER_NAME),t.style.removeProperty(v.VELT_SELECTION_COLOR))}catch(i){this.loggingService.catch("Error in DomService removeHighlightUserFromElement: ",i)}}previewHighlightElement(t){t&&t.setAttribute(v.SNIPPYLY_HIGHLIGHT_PREVIEW,"true")}removePreviewHighlightFromElement(t){t&&t.removeAttribute(v.SNIPPYLY_HIGHLIGHT_PREVIEW)}getXPath(t,i=!1,o=!1,s){try{let a=this.calculateXPath(t,i,o,s);if(a&&typeof a=="string"&&a.includes("/svg")){let c=a.split("/"),l=!1;c.forEach((u,d)=>{u.includes("svg")&&(l=!0),l&&(c[d]="svg:"+u)}),a=c.join("/")}return a}catch(a){this.loggingService.catch("Error in DomService getXPath:",a)}}namespaceResolver(t){return t==="svg"?"http://www.w3.org/2000/svg":null}calculateXPath(t,i,o,s){try{if(t){if(typeof t=="string")return document.evaluate(t,s||document,this.namespaceResolver,XPathResult.ANY_TYPE,null);if(!t||t.nodeType!=1)return"";if(t.id&&document.querySelectorAll(`[id='${t.id}']`)?.length===1&&!i)return"//*[@id='"+t.id+"']";if(o&&t.className&&t.className.split){let c=t.className?.split(" ")?.filter(l=>!l?.includes("snippyly")&&!l?.includes("velt")&&!["show-pin-cursor"].includes(l))[0];if(c){let l=this.calculateXPath(t.parentNode,i,o,s)+"/"+t.tagName.toLowerCase(),u=Array.from(t.parentNode?.children||[]).filter(d=>d.nodeType===1&&d.tagName===t.tagName?d.className?.split(" ")?.filter(g=>g?.includes("snippyly")||g?.includes("velt")||["show-pin-cursor"].includes(g))[0]===c:!1);if(u.length>1){let d=u.indexOf(t)+1;l+=`[contains(concat(' ', normalize-space(@class), ' '), ' ${c} ')][${d}]`}else l+=`[contains(concat(' ', normalize-space(@class), ' '), ' ${c} ')]`;return l}}let a=[].filter.call(t.parentNode?.children?t.parentNode?.children:[],function(c){return c.tagName==t.tagName});return this.calculateXPath(t.parentNode,i,o)+"/"+t.tagName.toLowerCase()+(a.length>1?"["+([].indexOf.call(a,t)+1)+"]":"")}}catch(a){this.loggingService.catch("Error in DomService calculateXPath:",a)}}getElementFromXPath(t,i=document){try{if(this.xpathCache.has(t)){let s=this.xpathCache.get(t);if(s!==void 0&&document.contains(s))return s;this.xpathCache.delete(t)}let o=this.getXPath(t,!1,!1,i);if(o){let s=o?.iterateNext();if(s!==null&&typeof s.setAttribute=="function"){let a=J();s.setAttribute(v.ATTRIBUTES.VELT_ELEMENT_CACHE_ID,a),this.xpathCacheId.set(a,t)}return this.xpathCache.set(t,s),s}return null}catch(o){return this.loggingService.catch("Error in DomService getElementFromXPath:",o),null}}getElementFromTargetElement(t){try{let i=null;if(t?.anchor){let o=this.resolveAnchorRecord(t.anchor);o?.element&&(i=o.element)}else t?.xpath?i=this.getElementFromXPath(t.xpath):t?.cfXpath?i=this.getElementFromXPath(t.cfXpath):t?.fXpath&&(i=this.getElementFromXPath(t.fXpath));return i}catch(i){return this.loggingService.catch("Error in DomService getElementFromTargetElement:",i),null}}getElementFromTargetTextRange(t){try{let i=null;if(t?.commonAncestorContainerAnchor){let o=this.resolveAnchorRecord(t.commonAncestorContainerAnchor);o?.element&&(i=o.element)}else t?.commonAncestorContainer&&(i=this.getElementFromXPath(t.commonAncestorContainer));return i}catch(i){return this.loggingService.catch("Error in DomService getElementFromTargetTextRange:",i),null}}calculateScreenSize(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowResize","color: green;");try{let t=[document?.body?.clientHeight||0,document?.documentElement?.clientHeight||0,window?.innerHeight||0],i=[document?.body?.clientWidth||0,document?.documentElement?.clientWidth||0,window?.innerWidth||0];this.calculatePageScrollHeight(),this.loggingService.log(this.pageScrollHeight),this.loggingService.log(this.nodeMap),this.highestNode=this.nodeMap[this.pageScrollHeight];let o=new Ag;return o.screenWidth=Math.max(...i),o.screenHeight=Math.max(...t),o.screenScrollHeight=this.pageScrollHeight,o}catch(t){return this.loggingService.catch("Error in DomService calculateScreenSize:",t),new Ag}}calculatePageScrollHeight(){this.loggingService.log("%c[WB] Calling FUNCTION: calculatePageScrollHeight","color: green;");try{this.pageScrollHeight=0,this.findLongestNode(document?.documentElement?.childNodes)}catch(t){this.loggingService.catch("Error in DomService calculatePageScrollHeight: ",t)}}removeSnippylyContent(t){this.loggingService.log("%c[WB] Calling FUNCTION: removeSnippylyContent","color: green;");try{let o=new DOMParser().parseFromString(t,"text/html");o.querySelectorAll("[data-snippyly-cache-id]").forEach(f=>{f.removeAttribute("data-snippyly-cache-id")}),o.querySelectorAll("[data-velt-cache-id]").forEach(f=>{f.removeAttribute("data-velt-cache-id")}),o.querySelectorAll(".comment-text-highlight").forEach(f=>{f?.parentNode?.insertBefore(document.createTextNode(f?.textContent),f),f.remove()});let l=document.createNodeIterator(o,NodeFilter.SHOW_COMMENT),u;for(;u=l.nextNode();)u?.remove();return this.mergeAdjacentTextNodes(o.body),this.sanitizeHtml(o.body.innerHTML)}catch(i){return this.loggingService.catch("Error in DomService removeSnippylyContent: ",i),t}}mergeAdjacentTextNodes(t){try{let i=t.firstChild;for(;i;){if(i.nodeType===Node.TEXT_NODE){let o=i.nextSibling;for(;o&&o.nodeType===Node.TEXT_NODE;)i.textContent+=o.textContent,o.remove(),o=i.nextSibling}i=i.nextSibling}}catch(i){this.loggingService.catch("Error in DomService mergeAdjacentTextNodes: ",i)}}findLongestNode(t){try{for(let i=t.length-1;i>=0;i--){if(t[i]?.scrollHeight&&t[i]?.clientHeight){let o=Math.max(t[i]?.scrollHeight,t[i]?.clientHeight);this.pageScrollHeight=Math.max(o,this.pageScrollHeight),this.nodeMap[o]=t[i]}t[i]?.childNodes?.length&&this.findLongestNode(t[i]?.childNodes)}}catch(i){this.loggingService.catch("Error in DomService findLongestNode: ",i)}}resetSelectedAnnotationsMap(t=!0,i){try{let o=Array.from(document.querySelectorAll(`[${v.ATTRIBUTES.VELT_ANNOTATION_DRAFT}]`)),s=this.getDraftCommentAnnotationDialogs()||[];o.push(...s),o=Array.from(new Set(o));let a=o.map(d=>d.classList.contains("velt-annotation-draft-checked")?(d.classList.remove("velt-annotation-draft-checked"),null):(this.removeClassFromElement(d,"velt-comment-dialog-shake"),setTimeout(()=>{this.addClassToElement(d,"velt-comment-dialog-shake"),d.getAttribute(v.ATTRIBUTES.VELT_ANNOTATION_EDIT_COMMENT)||d.classList.contains("velt-annotation-draft-checked")||this.addClassToElement(d,"velt-annotation-draft-checked")},100),d.getAttribute(v.ATTRIBUTES.VELT_ANNOTATION_DRAFT))).filter(d=>d),c=Object.keys(this.getRecordingInProgress()||{});a=[...a,...c];let l=this.selectedAnnotationsMap$.value;if(t&&this.selectedAnnotationsMap$.value&&Object.keys(this.selectedAnnotationsMap$.value).length){let d=[];Object.keys(l).forEach(f=>{if(l[f]?.type==="tag"){let g=l[f];g?.to?.length||a.includes(f)||d.push(g)}else l[f]?.comments?.length||a.includes(f)||d.push(l[f])}),this.deleteAnnotations$.next(d),this.deleteAnnotations$.next([])}let u={};Object.keys(l).forEach(d=>{a.includes(d)&&(u[d]=l[d]),i&&(i==="comment"?["comment","videoPin"].includes(l[d]?.type)||(u[d]=l[d]):l[d]?.type!==i&&(u[d]=l[d]))}),Object.keys(u).forEach(d=>{let f=u[d]?.multiThreadAnnotationId;f&&!u[f]&&(u[f]={annotationId:f,type:"multiThread"})}),JSON.stringify(this.selectedAnnotationsMap$.value)!==JSON.stringify(u)&&this.selectedAnnotationsMap$.next(u),this.setDialogOpenedInSidebar(!1)}catch(o){this.loggingService.catch("Error in DomService resetSelectedAnnotationsMap: ",o)}}setRecordingInProgress(t,i){try{if(i)this.recordingInProgress$.next(le(x({},this.recordingInProgress$.value),{[t]:i}));else{let o=this.recordingInProgress$.value;delete o[t],this.recordingInProgress$.next(o)}}catch(o){this.loggingService.catch("Error in DomService setRecordingInProgress: ",o)}}resetRecordingInProgress(){try{this.recordingInProgress$.next({})}catch(t){this.loggingService.catch("Error in DomService resetRecordingInProgress: ",t)}}getRecordingInProgress(){try{return this.recordingInProgress$.value}catch(t){return this.loggingService.catch("Error in DomService getRecordingInProgress: ",t),{}}}getDraftCommentAnnotationDialogs(){try{let t=[],i=Array.from(document.querySelectorAll(`${v.TAGS.SNIPPYLY_COMMENT_DIALOG}`)),o=Array.from(document.querySelectorAll(`${v.TAGS.VELT_COMMENT_DIALOG}`));return[...i,...o].forEach(a=>{if(a?.shadowRoot){let c=a.shadowRoot.querySelector(`[${v.ATTRIBUTES.VELT_ANNOTATION_DRAFT}]`);c&&t.push(c)}else{let c=a.querySelector(`${v.TAGS.VELT_SHADOW_DOM_INTERNAL}`);if(c?.shadowRoot){let l=c.shadowRoot?.querySelector(`[${v.ATTRIBUTES.VELT_ANNOTATION_DRAFT}]`);l&&t.push(l)}else{let l=a.querySelector(`[${v.ATTRIBUTES.VELT_ANNOTATION_DRAFT}]`);l&&t.push(l)}}}),t}catch(t){return this.loggingService.catch("Error in DomService getDraftCommentAnnotationDialogs: ",t),[]}}getSelectedAnnotationsMap(t){try{let i=this.selectedAnnotationsMap$.value;if(t){let o={};return Object.keys(i).forEach(s=>{t==="comment"?["comment","videoPin"].includes(i[s].type)&&(o[s]=i[s]):i[s].type===t&&(o[s]=i[s])}),o}else return i}catch(i){return this.loggingService.catch("Error in DomService getSelectedAnnotationsMap: ",i),{}}}getSelectedAnnotationsMap$(t){return this.selectedAnnotationsMap$.asObservable().pipe(fe(i=>{if(t){let o={};return Object.keys(i).forEach(s=>{i[s].type===t&&(o[s]=i[s])}),o}else return i}))}getSelectedComments$(){return this.selectedAnnotationsMap$.asObservable().pipe(fe(t=>Object.values(t)))}getSelectedAnnotationsLocationMap(){try{return this.selectedAnnotationsLocationMap$.value}catch(t){return this.loggingService.catch("Error in DomService getSelectedAnnotationsLocationMap: ",t),{}}}getSelectedAnnotationsLocationMap$(){return this.selectedAnnotationsLocationMap$.asObservable()}toggleAnnotationSelection(t,i,o,s=!1,a){try{o==="sidebarShowReplies"?this.setDialogOpenedInSidebar(!0):this.setDialogOpenedInSidebar(!1);let c=JSON.parse(JSON.stringify(this.selectedAnnotationsMap$.value||{})),l=JSON.parse(JSON.stringify(this.selectedAnnotationsLocationMap$.value||{}));c[t.annotationId]&&!s?delete c[t.annotationId]:((!this.windowKeydownShift$.value||s)&&(c={}),c[t.annotationId]=t,l[t.annotationId]=i,a=t?.multiThreadAnnotationId||a,a&&(c[a]={annotationId:a,type:"multiThread"},l[a]=i)),this.selectedAnnotationsMap$.next(c),Object.keys(l).forEach(u=>{c[u]||delete l[u]}),this.selectedAnnotationsLocationMap$.next(l)}catch(c){this.loggingService.catch("Error in DomService toggleAnnotationSelection: ",c)}}setSelectedAnnotationLocation(t,i){try{let o=JSON.parse(JSON.stringify(this.getSelectedAnnotationsLocationMap()||{}));o?.[t]!==i&&(o[t]=i,this.selectedAnnotationsLocationMap$.next(o))}catch(o){this.loggingService.catch("Error in DomService setSelectedAnnotationLocation: ",o)}}updateSelectedAnnotationInMap(t){try{let i=this.selectedAnnotationsMap$.value;t.forEach(o=>{i[o.annotationId]&&(i[o.annotationId]=o)}),this.selectedAnnotationsMap$.next(i)}catch(i){this.loggingService.catch("Error in DomService updateSelectedAnnotationInMap: ",i)}}getDeleteCommmentAnnotations$(){try{return this.deleteAnnotations$.asObservable()}catch(t){return this.loggingService.catch("Error in DomService getDeleteCommmentAnnotations$: ",t),ue([])}}getHighestNode(){return this.loggingService.log("%c[WB] Calling FUNCTION: getHighestNode","color: green;"),this.highestNode}onWindowMouseDown$(){return this.windowMouseDown$.asObservable()}onWindowPointerMove$(){return this.windowPointerMove$.asObservable()}onWindowPointerMove(){return this.windowPointerMove$.value}onWindowPointerUp$(){return this.windowPointerUp$.asObservable()}onSelectionChange$(){return this.documentSelectionChange$.asObservable()}onWindowClick$(){return this.windowClick$.asObservable()}onWindowScroll$(){return this.windowScroll$.asObservable()}onWindowResize$(){return this.windowResize$.asObservable()}onWindowKeyupBackspace$(){return this.windowKeyupBackspace$.asObservable()}onWindowKeyupDelete$(){return this.windowKeyupDelete$.asObservable()}onWindowKeyupEsc$(){return this.windowKeyupEsc$.asObservable()}onWindowPopState$(){return this.windowPopState$.asObservable()}onDocumentClick$(){return this.documentClick$.asObservable()}getLastDocumentClick(){return this.documentClick$.value}onDocumentClickSubject$(){return this.documentClickSubject$.asObservable()}onDocumentFocus$(){return this.documentFocus$.asObservable()}onDomChange$(t){try{return this.mutationObserver||this.setMutationObserver(t),this.mutation$.asObservable()}catch(i){return this.loggingService.catch("Error in DomService onDomChange$: ",i),ue([])}}getChildListMutation$(){return this.childListMutation$.asObservable()}onNetworkStatusChange$(){return this.networkStatus$.asObservable()}getNetworkStatus(){return this.networkStatus$.value}getElementOffset(t,i){try{let o={offsetTop:0,offsetLeft:0},s=t;if(s===i){let a=window.getComputedStyle(t);a.position==="static"&&a.transformStyle!="preserve-3d"&&a.transform=="none"&&(o.offsetLeft=t?.offsetLeft||0,o.offsetTop=t?.offsetTop||0)}if(s!==i)if(t?.closest("svg"))for(;s&&s!==i;){let c=window.getComputedStyle(s);if(s.tagName.toLowerCase()==="svg"||s instanceof SVGElement){let l=s.parentElement;if(l){let u=l.getBoundingClientRect(),d=s.getBoundingClientRect();o.offsetLeft+=d.left-u.left,o.offsetTop+=d.top-u.top}}else c.position==="static"?c.transformStyle!="preserve-3d"&&c.transform=="none"&&(o.offsetLeft+=s?.offsetLeft||0,o.offsetTop+=s?.offsetTop||0):(o.offsetLeft+=s.offsetLeft,o.offsetTop+=s.offsetTop);if(s=s.parentElement,t instanceof SVGElement&&s===i){let l=window.getComputedStyle(s);l.position==="static"&&l.transformStyle!="preserve-3d"&&l.transform=="none"&&(o.offsetLeft+=s?.offsetLeft||0,o.offsetTop+=s?.offsetTop||0)}}else{let c=window.getComputedStyle(s);c.position==="static"?c.transformStyle!="preserve-3d"&&c.transform=="none"&&(o.offsetLeft+=s?.offsetLeft||0,o.offsetTop+=s?.offsetTop||0):(o.offsetLeft+=s.offsetLeft,o.offsetTop+=s.offsetTop)}return o}catch(o){return this.loggingService.catch("Error in DomService getElementOffset: ",o),{offsetTop:0,offsetLeft:0}}}isElementVisible(t){try{if(typeof t?.getBoundingClientRect=="function"){let{width:i,height:o,top:s,bottom:a}=t?.getBoundingClientRect();return i>0||o>0||s<window.innerHeight&&a>0}else return!1}catch(i){return this.loggingService.catch("Error in DomService isElementVisible: ",i),!1}}isElementVisibleOnScreen(t){try{if(t){if(!(t instanceof Element))return!1;let i=t,o=window.getComputedStyle(i);return!(o.display==="none"||o.visibility==="hidden"||parseFloat(o.opacity)===0)}return!1}catch(i){return this.loggingService.catch("Error in DomService isElementVisibleOnScreen: ",i),!1}}getClickAndDragPointsObservable(){return new ge(t=>{let i=ho(document,"mousedown").pipe(fe(l=>({type:l.type,x:l.clientX+window.scrollX,y:l.clientY+window.scrollY,event:l}))),o=ho(document,"mousemove").pipe(fe(l=>({type:l.type,x:l.clientX+window.scrollX,y:l.clientY+window.scrollY,event:l}))),s=ho(document,"mouseup").pipe(fe(l=>({type:l.type,x:l.clientX+window.scrollX,y:l.clientY+window.scrollY,event:l}))),c=i.pipe(mt(l=>o.pipe(Du(),fe(([u,d])=>({startPoint:l,prevPoint:u,curPoint:d})),qs(s)))).subscribe(t);return()=>c.unsubscribe()})}drawRectangle(t,i){let o=document.querySelector(".rectangle");o||(o=document.createElement("div"),this.addClassToElement(o,"rectangle"),o.setAttribute(v.ATTRIBUTES.VELT_COMMENT_DISABLED,"true"),o.setAttribute(v.VELT_IGNORE_CHANGE_DETECTION,"true"),document.body.appendChild(o));let s=Math.abs(i.x-t.x),a=Math.abs(i.y-t.y),c=Math.min(t.x,i.x),l=Math.min(t.y,i.y);return o.style.width=`${s}px`,o.style.height=`${a}px`,o.style.left=`${c}px`,o.style.top=`${l}px`,o.style.position="absolute",o.style.border="2px dashed #f00",o.style.pointerEvents="none",o.style.zIndex="2147483577",o}getRange(){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: getRange","color: green;"),window.getSelection()?.toString()){let t=window.getSelection();if(t?.rangeCount)return t.getRangeAt(0)}return null}catch(t){return this.loggingService.catch("Error in DomService getRange: ",t),null}}clearTextSelection(){try{this.loggingService.log("%c[WB] Calling FUNCTION: clearTextSelection","color: green;"),window.getSelection&&(window.getSelection()?.empty?window.getSelection()?.empty():window.getSelection()?.removeAllRanges&&window.getSelection()?.removeAllRanges())}catch(t){this.loggingService.catch("Error in DomService clearTextSelection: ",t)}}getTargetTextRangeFromSelectionRange(t){try{let i={},o=t.commonAncestorContainer;o?.nodeType===Node.TEXT_NODE&&(o=o.parentElement);let s=document.body;if(o){let c=this.getTextXPath(o);this.isXpathWithId(c)&&(s=o)}let a=this.getAdditionalLocationContainer(o);if(a&&(s=a),i.commonAncestorContainer=this.getTextXPath(s),i.commonAncestorContainer){let c=this.getElementFromXPath(i.commonAncestorContainer);if(c){i.commonAncestorContainerFXpath=this.getXPath(c,!0),i.commonAncestorContainerCFXpath=this.getXPath(c,!0,!0);let l=this.generateAnchorRecord(c);l&&(i.commonAncestorContainerAnchor=l)}}return i.text=t.toString(),i.occurrence=OC(s,0,t.startContainer,t.startOffset,t.toString())+1,i}catch(i){this.loggingService.catch("Error in DomService getTargetTextRangeFromSelectionRange: ",i);return}}getTextXPath(t){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: getTextXPath","color: green;"),t.nodeType===Node.TEXT_NODE){let i=1,o=t.previousSibling;for(;o;)o.nodeType===Node.TEXT_NODE&&i++,o=o.previousSibling;return this.getXPath(t.parentElement)}else return this.getXPath(t)}catch(i){this.loggingService.catch("Error in DomService getTextXPath: ",i);return}}getHostElement(t){try{if(v.NON_NESTABLE_ELEMENTS[t?.tagName?.toLowerCase()]){let o=t?.closest("picture");return o?o?.parentElement:t.parentElement}let i=t.closest("svg");return i?i?.parentElement:t}catch(i){return this.loggingService.catch("Error in DomService getHostElement: ",i),t}}isElementInsideAdditionalLocationContainer(t){try{return!!t?.closest(`[${v.ATTRIBUTES.VELT_LOCATION}], [${v.ATTRIBUTES.VELT_LOCATION_ID}]`)}catch(i){return this.loggingService.catch("Error in DomService isElementInsideAdditionalLocationContainer: ",i),!1}}getAdditionalLocationContainer(t){try{return t?.closest(`[${v.ATTRIBUTES.VELT_LOCATION}], [${v.ATTRIBUTES.VELT_LOCATION_ID}]`)||null}catch(i){return this.loggingService.catch("Error in DomService getAdditionalLocationContainer: ",i),null}}isXpathWithId(t){try{return typeof t=="string"?!!t?.includes("[@id="):!1}catch(i){return this.loggingService.catch("Error in DomService isXpathWithId: ",i),!1}}getListedElements({elementIds:t,elementClassNames:i,elementQuerySelectors:o}){try{let s=[];if(t?.length)for(let a=0;a<t.length;a++){let c=document.getElementById(t[a]);c&&s.push(c)}if(i?.length)for(let a=0;a<i.length;a++){let c=document.getElementsByClassName(i[a]);for(let l=0;l<c.length;l++){let u=c[l];u&&u instanceof HTMLElement&&s.push(u)}}if(o?.length)for(let a=0;a<o.length;a++){let c=document.querySelectorAll(o[a]);for(let l=0;l<c.length;l++){let u=c[l];u&&u instanceof HTMLElement&&s.push(u)}}return s}catch(s){return this.loggingService.catch("Error in DomService getListedElements: ",s),[]}}isElementInsideListedElementIds(t,i){try{if(i?.length){for(let o=0;o<i.length;o++){let s=document.getElementById(i[o]);if(s&&s.contains(t))return!0}return!1}return!0}catch(o){return this.loggingService.catch("Error in DomService isElementInsideListedElementIds: ",o),!1}}isElementInsideListedElementClassNames(t,i){try{if(i?.length){for(let o=0;o<i.length;o++){let s=document.getElementsByClassName(i[o]);for(let a=0;a<s.length;a++)if(s[a].contains(t))return!0}return!1}return!0}catch(o){return this.loggingService.catch("Error in DomService isElementInsideListedElementClassNames: ",o),!1}}isElementInsideListedElementQuerySelectors(t,i){try{if(i?.length){for(let o=0;o<i.length;o++){let s=document.querySelectorAll(i[o]);for(let a=0;a<s.length;a++)if(s[a].contains(t))return!0}return!1}return!0}catch(o){return this.loggingService.catch("Error in DomService isElementInsideListedElementQuerySelectors: ",o),!1}}addClassToElement(t,i){try{this.loggingService.log("%c[WB] Calling FUNCTION: addClassToElement","color: green;"),t&&(t.classList?.contains(i)||t.classList?.add(i))}catch(o){this.loggingService.catch("Error in DomService addClassToElement: ",o)}}removeClassFromElement(t,i){try{this.loggingService.log("%c[WB] Calling FUNCTION: removeClassFromElement","color: green;"),t&&t.classList?.contains(i)&&t.classList?.remove(i)}catch(o){this.loggingService.catch("Error in DomService removeClassFromElement: ",o)}}isElementInsideParentWithAttribute(t,i,o){try{let s=t;for(;s&&s!==document.body;){if(s?.getAttribute&&s?.getAttribute(i)===o)return!0;s=s.parentElement}return!1}catch(s){return this.loggingService.catch("Error in DomService isElementInsideParentWithAttribute: ",s),!1}}setVideoEditorHandlingDelete(t){try{this.isVideoEditorHandlingDelete=t}catch(i){this.loggingService.catch("Error in DomService setVideoEditorHandlingDelete: ",i)}}isVideoEditorHandlingDeleteKey(){try{return this.isVideoEditorHandlingDelete}catch(t){return this.loggingService.catch("Error in DomService isVideoEditorHandlingDeleteKey: ",t),!1}}setCustomCss(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setCustomCss","color: green;"),this.customCss$.next(t)}catch(i){this.loggingService.catch("Error in DomService setCustomCss: ",i)}}getCustomCss$(){try{return this.loggingService.log("%c[WB] Calling FUNCTION: getCustomCss$","color: green;"),this.customCss$.asObservable()}catch(t){return this.loggingService.catch("Error in DomService getCustomCss$: ",t),ue(null)}}injectCustomCss(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: injectCustomCss","color: green;");let i=this.customCss$.value;if(i){let o=t?.shadowRoot?.querySelector(`[${v.VELT_CUSTOM_CSS}]`);if(o&&o.remove(),i?.type==="link"){let s=document.createElement("link");s.href=i?.value,s.rel="stylesheet",s.setAttribute(v.VELT_CUSTOM_CSS,"true"),t?.shadowRoot?.appendChild(s)}else{let s=document.createElement("style");s.innerHTML=this.sanitizeHtml(i?.value),s.setAttribute(v.VELT_CUSTOM_CSS,"true"),t?.shadowRoot?.appendChild(s)}}}catch(i){this.loggingService.catch("Error in DomService injectCustomCss: ",i)}}subscribeInjectCustomCss(t){try{return this.customCss$.subscribe(()=>{this.injectCustomCss(t?.nativeElement)})}catch(i){return this.loggingService.catch("Error in DomService subscribeInjectCustomCss: ",i),new gt}}trimCommentHtml(t){try{let i=document.createElement("div");i.innerHTML=t,this.removeEmptyElements(i);let o=i.innerHTML;return o=o.replace(e.MULTIPLE_NBSP_REGEX," ").replace(e.TRIM_NBSP_REGEX,"").trim(),o}catch(i){return this.loggingService.catch("Error in DomService trimCommentHtml: ",i),t}}removeEmptyElements(t){try{let s=function(a){return o.test(a.innerHTML)};var i=s;let o=/^\s*(<br\s*\/?>)?\s*$/;for(;t.firstChild&&s(t.firstChild);)t.removeChild(t.firstChild);for(;t.lastChild&&s(t.lastChild);)t.removeChild(t.lastChild)}catch(o){this.loggingService.catch("Error in DomService removeEmptyElements: ",o)}}normalizeWhitespace(t){try{t.childNodes.forEach(i=>{i.nodeType===Node.TEXT_NODE?i.nodeValue=i.nodeValue?.replace(/\s+/g," ").trim()??"":i.nodeType===Node.ELEMENT_NODE&&this.normalizeWhitespace(i)})}catch(i){this.loggingService.catch("Error in DomService normalizeWhitespace: ",i)}}sanitizeHtml(t){try{return this.loggingService.log("%c[WB] Calling FUNCTION: sanitizeHtml","color: green;"),pv.sanitize(t,tj)}catch(i){return this.loggingService.catch("Error in DomService sanitizeHtml: ",i),""}}sanitizeHtmlForPaste(t){try{let i=this.convertStylesToTags(t);return pv.sanitize(i,{ALLOWED_TAGS:["b","strong","i","em","u","a","br"],ALLOWED_ATTR:["href","target","rel"]})}catch(i){return this.loggingService.catch("Error in DomService sanitizeHtmlForPaste: ",i),""}}convertStylesToTags(t){try{let i=document.createElement("div");return i.innerHTML=t,this.convertBlockElementsToBr(i),this.processNodeStyles(i),i.innerHTML}catch(i){return this.loggingService.catch("Error in DomService convertStylesToTags: ",i),t}}convertBlockElementsToBr(t){try{let i=["P","DIV","H1","H2","H3","H4","H5","H6","LI","BLOCKQUOTE","PRE","SECTION","ARTICLE","HEADER","FOOTER"],o;for(;(o=t.querySelector(i.join(",")))!==null;){let s=o.parentNode;if(!s)break;for(;o.firstChild;)s.insertBefore(o.firstChild,o);o.nextSibling&&s.insertBefore(document.createElement("br"),o),s.removeChild(o)}}catch(i){this.loggingService.catch("Error in DomService convertBlockElementsToBr: ",i)}}processNodeStyles(t){try{let i=Array.from(t.childNodes);for(let o of i)if(o.nodeType===Node.ELEMENT_NODE){this.processNodeStyles(o);let s=o,a=s.style,c=o,l=a?.fontWeight;if(l==="bold"||l==="700"||l==="800"||l==="900"){let u=s.tagName?.toLowerCase();if(u!=="b"&&u!=="strong"){let d=document.createElement("b");c.parentNode.insertBefore(d,c),d.appendChild(c),c=d}}if(a?.fontStyle==="italic"){let u=s.tagName?.toLowerCase();if(u!=="i"&&u!=="em"){let d=document.createElement("i");c.parentNode.insertBefore(d,c),d.appendChild(c),c=d}}if((a?.textDecorationLine?.includes("underline")||a?.textDecoration?.includes("underline"))&&s.tagName?.toLowerCase()!=="u"){let d=document.createElement("u");c.parentNode.insertBefore(d,c),d.appendChild(c),c=d}}}catch(i){this.loggingService.catch("Error in DomService processNodeStyles: ",i)}}sanitizeSvg(t){try{return pv.sanitize(t,tj)}catch(i){return this.loggingService.catch("Error in DomService sanitizeSvg: ",i),t}}setDeviceInfo(){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDeviceInfo","color: green;");let t=new ui;this.deviceInfo$.next(t)}catch(t){this.loggingService.catch("Error in DomService setDeviceInfo: ",t)}}getDeviceInfo$(){try{return this.loggingService.log("%c[WB] Calling FUNCTION: getDeviceInfo$","color: green;"),this.deviceInfo$.asObservable()}catch(t){return this.loggingService.catch("Error in DomService getDeviceInfo$: ",t),ue(new ui)}}getTabId(){try{let t=sessionStorage.getItem(v.SESSION_STORAGE.VELT_TAB_ID);!t&&this.tabId&&(t=this.tabId,sessionStorage.setItem(v.SESSION_STORAGE.VELT_TAB_ID,t)),!this.tabId&&t&&(this.tabId=t);let i=this.getTabIdFromWindowName();return(!t||t!==i)&&(t=J(),this.tabId=t,sessionStorage.setItem(v.SESSION_STORAGE.VELT_TAB_ID,t),this.setTabIdToWindowName(t)),t}catch(t){return this.loggingService.catch("Error in DomService getTabId: ",t),null}}getTabIdFromWindowName(){try{return window.name}catch(t){return this.loggingService.catch("Error in DomService getTabIdFromWindowName: ",t),null}}setTabIdToWindowName(t){try{window.name=t}catch(i){this.loggingService.catch("Error in DomService setTabIdToWindowName: ",i)}}getDeviceInfo(){try{return this.loggingService.log("%c[WB] Calling FUNCTION: getDeviceInfo","color: green;"),this.deviceInfo$.value}catch(t){return this.loggingService.catch("Error in DomService getDeviceInfo: ",t),new ui}}isMobileDevice(){try{return new ui().getDeviceType()===$r.MOBILE}catch(t){return this.loggingService.catch("Error in DomService isMobileDevice: ",t),!1}}isTabletDevice(){try{return new ui().getDeviceType()===$r.TABLET}catch(t){return this.loggingService.catch("Error in DomService isTabletDevice: ",t),!1}}isDesktopDevice(){try{return new ui().getDeviceType()===$r.DESKTOP}catch(t){return this.loggingService.catch("Error in DomService isDesktopDevice: ",t),!1}}deepCloneElement(t){try{var i=document.createElement(t?.tagName);return Array.from(t.attributes).forEach(o=>{i.setAttribute(o.nodeName,o.nodeValue)}),t.childNodes.forEach(o=>{o.nodeType===Node.ELEMENT_NODE?i.appendChild(this.deepCloneElement(o)):o.nodeType===Node.TEXT_NODE&&i.appendChild(document.createTextNode(o.nodeValue))}),i}catch(o){return this.loggingService.catch("Error in DomService deepCloneElement: ",o),t}}setRandomNumberToElementRecursive(t){try{if(!t)return;let i=Math.random().toString(36).substring(7);t&&t.setAttribute&&typeof t.setAttribute=="function"&&(t.getAttribute("velt-wireframe-id")||t.setAttribute("velt-wireframe-id",i)),Array.from(t.children).forEach(s=>{this.setRandomNumberToElementRecursive(s)})}catch(i){this.loggingService.catch("Error in DomService setRandomNumberToElementRecursive: ",i)}}setDialogOpenedInSidebar(t){this.dialogOpenedInSidebar$.next(t)}getDialogOpenedInSidebar(){return this.dialogOpenedInSidebar$.asObservable()}removeWireframeSuffixFromTags(t){if(!t)return;Array.from(t.children).forEach(o=>{if(this.removeWireframeSuffixFromTags(o),o.tagName.toLowerCase().endsWith("-wireframe")){let s=o.tagName.toLowerCase().replace("-wireframe",""),a=document.createElement(s);for(Array.from(o.attributes).forEach(c=>{a.setAttribute(c.name,c.value)});o.firstChild;)a.appendChild(o.firstChild);o.parentNode.replaceChild(a,o)}})}isMonitorDevice(){try{return new ui().getDeviceType()===$r.MONITOR}catch(t){return this.loggingService.catch("Error in DomService isMonitorDevice: ",t),!1}}isElementOriginallyStatic(t){try{return window.getComputedStyle(t).position==="static"||t.hasAttribute(v.ATTRIBUTES.VELT_COMMENT_PIN_HOST_STATIC)||t.hasAttribute(v.ATTRIBUTES.VELT_AREA_PIN_HOST_STATIC)||t.hasAttribute(v.ATTRIBUTES.VELT_TAG_PIN_HOST_STATIC)||t.hasAttribute(v.ATTRIBUTES.VELT_RECORDER_PIN_HOST_STATIC)||t.hasAttribute(v.ATTRIBUTES.VELT_ARROW_PIN_HOST_STATIC)}catch(i){return this.loggingService.catch("Error in DomService isElementOriginallyStatic: ",i),!1}}};e.MULTIPLE_NBSP_REGEX=/(?:&nbsp;\s*){2,}/g,e.TRIM_NBSP_REGEX=/^(?:&nbsp;\s*)+|(?:&nbsp;\s*)+$/g,e.\u0275fac=function(i){return new(i||e)(w(Lt),w(ds),w(_e),w(pC))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Cr=(()=>{let e=class e{constructor(t,i,o,s,a,c,l,u,d){this.afAuth=t,this.configService=i,this.avatarService=o,this.coreActionsService=s,this.domService=a,this.functions=c,this.analyticsService=l,this.loggingService=u,this.serviceBook=d,this.user$=new Y(null),this.userOptions$=new Y(null),this.userContacts$=new Y(null),this.userOrganization$=new Y(null),this.isPrivateCommentsEnabled$=new Y(!1),this.providedUser=new _s,this.firebaseConfig$=new Y(null),this.advancedQueries$=new Y(null),this.planDetails$=new Y(null),this.signOutPreviousUser$=new Y(null),this.preSignOutFunctions=new Map,this.autoLoginCalled=!1,this.autoLoginRequired=!0,this.config=null,this.getPlanDetailsCalled=!1,this.forceReLoggedIn=!1,this.lastLoggedInUserData=null,this.sessionReLoginCount=0,this.SESSION_RE_LOGIN_COUNT_LIMIT=10,this.sessionReLoginSubscription=null,this.onRetrySubscription=null,this.TOKEN_EXPIRED_ERROR_COUNT_LIMIT=3,this.tokenExpiredErrorCount=0,this.cachedActivityConfig=null,this.viewsService=null,this.crdtService=null,this.loggingService.log("%c[WB] Creating CLASS: AuthService","color: blue;"),this.serviceBook.observe(pd).subscribe(f=>{this.commentService=f??void 0}),this.serviceBook.observe(DT).subscribe(f=>{this.reactionService=f??void 0}),this.serviceBook.observe(RT).subscribe(f=>{this.areaService=f??void 0}),this.serviceBook.observe(CT).subscribe(f=>{this.activityService=f??void 0,f&&this.cachedActivityConfig&&f.setActivityFeatureConfig(this.cachedActivityConfig)}),this.serviceBook.observe(P1).subscribe(f=>{this.viewsService=f??null}),this.serviceBook.observe(x1).subscribe(f=>{this.crdtService=f??null});try{try{let f=this.configService.getAuthProxyHost();if(f){let g=this.afAuth?.config;g&&(g.apiHost=f,g.tokenApiHost=f)}}catch{}this.analyticsService.setAuthService(this),this.configService.getConfig$().subscribe(f=>{this.config=f}),this.forceReLoggedIn=localStorage.getItem(v.LOCAL_STORAGE.VELT_USER_FORCE_RE_LOGGED_IN)==="true",this.sessionReLoginSubscription=bd(this.afAuth).pipe(Ru(this.afAuth.currentUser),Du(),mt(([f,g])=>this.domService.onNetworkStatusChange$().pipe(Ct(p=>p),Nt(1),fe(()=>({previousUser:f,currentUser:g}))))).subscribe(p=>I(this,[p],function*({previousUser:f,currentUser:g}){if(!g&&f){let _=f?.stsTokenManager?.expirationTime,T=new Date().getTime(),D=_-T;T>_&&(this.analyticsService.trackEvent(L.Events.Core.SDK_SESSION_TOKEN_EXPIRED,{apiKey:this.apiKey,user:this.user$.value,lastLoggedInUserData:this.lastLoggedInUserData,timeLeft:D,forceReset:this.userOptions$.value?.forceReset,sessionReLoginCount:this.sessionReLoginCount},!0,this.user$.value?.userSnippylyId),this.user$.value&&f?.uid===this.user$.value?.userSnippylyId&&this.lastLoggedInUserData?.user?.userSnippylyId===this.user$.value?.userSnippylyId&&(this.sessionReLoginCount>this.SESSION_RE_LOGIN_COUNT_LIMIT?(this.analyticsService.trackEvent(L.Events.Core.SDK_SESSION_RE_LOGIN_COUNT_EXCEEDED,{apiKey:this.apiKey,clientUserId:this.lastLoggedInUserData.user.userId,snippylyUserId:this.lastLoggedInUserData.user.userSnippylyId,timeLeft:D,forceReset:this.userOptions$.value?.forceReset,sessionReLoginCount:this.sessionReLoginCount},!0,this.user$.value?.userSnippylyId),this.sessionReLoginSubscription?.unsubscribe()):(this.sessionReLoginCount++,this.analyticsService.trackEvent(L.Events.Core.SDK_SESSION_RE_LOGIN_TRIGGERED,{apiKey:this.apiKey,clientUserId:this.lastLoggedInUserData.user.userId,snippylyUserId:this.lastLoggedInUserData.user.userSnippylyId,user:this.getUserWithoutContacts(this.lastLoggedInUserData.user),timeLeft:D,forceReset:this.userOptions$.value?.forceReset,sessionReLoginCount:this.sessionReLoginCount},!0,this.lastLoggedInUserData.user.userSnippylyId),this.lastLoggedInUserData.user=yield this.updateUserWithColorAndTextColor(this.lastLoggedInUserData.user),this.initializeClient(this.lastLoggedInUserData.user,this.lastLoggedInUserData.userOptions,this.lastLoggedInUserData.initializeClientToken,this.lastLoggedInUserData.autoLogin,"internal-sessionReLogin"))))}}),f=>{this.loggingService.catch("Error in AuthService sessionReLoginSubscription: ",f)}),this.getUser$().pipe(it(Ft)).subscribe(f=>{let g=bC(f);this.coreActionsService.triggerAction($.USER_UPDATE,g),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:$.USER_UPDATE,payload:{user:g}})})}catch(f){this.loggingService.catch("Error in AuthService constructor: ",f)}}setApiKey(t,i){this.loggingService.log("%c[WB] Calling FUNCTION: setApiKey","color: green;",t);try{if(this.apiKey){this.loggingService.log("API key is already set");return}this.apiKey=t,this.configService.setApiKey(this.apiKey),i||(i=new MT),this.configService.initConfig(i);let o=this.configService.getProxyConfig();if(o?.authHost)try{let s=this.afAuth?.config;s&&(s.apiHost=o.authHost,s.tokenApiHost=o.authHost)}catch(s){this.loggingService.catch("Error setting auth proxy config: ",s)}i.debugMode?sessionStorage.setItem("debugMode","true"):sessionStorage.removeItem("debugMode"),this.autoLoginCalled||bd(this.afAuth).pipe(Nt(1)).subscribe(s=>I(this,null,function*(){if(this.autoLoginCalled=!0,s){let a=yield EI(s,!0).catch(c=>null);if(a){let{user:c}=a?.claims;this.autoLoginRequired&&(c=yield this.updateUserWithColorAndTextColor(c),this.initializeClient(c,this.userOptions$?.value?le(x({},this.userOptions$?.value),{replaceContacts:!1,replaceGroupContacts:!1,replacePrivateContacts:!1}):{},new Date().getTime(),!0,"internal-autoLogin"))}}}))}catch(o){this.loggingService.catch("Error in setApiKey: ",o)}}setUsersService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setUsersService","color: green;"),this.usersService=t}catch(i){this.loggingService.catch("Error in setUsersService: ",i)}}setUserPermissionService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setUserPermissionService","color: green;"),this.userPermissionService=t}catch(i){this.loggingService.catch("Error in setUserPermissionService: ",i)}}setDocService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDocService","color: green;"),this.docService=t}catch(i){this.loggingService.catch("Error in setDocService: ",i)}}setContactService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setContactService","color: green;"),this.contactService=t}catch(i){this.loggingService.catch("Error in setContactService: ",i)}}setIamService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setIamService","color: green;"),this.iamService=t}catch(i){this.loggingService.catch("Error in setIamService: ",i)}}setCommentService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setCommentService","color: green;"),this.commentService=t}catch(i){this.loggingService.catch("Error in setCommentService: ",i)}}setCommonDbService(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setCommonDbService","color: green;"),this.commonDbService=t}catch(i){this.loggingService.catch("Error in setCommonDbService: ",i)}}validateOrganizationId(t){if(this.isVersionGreaterThanOrEqualTo4()&&!t?.organizationId)if(this.analyticsService.trackEvent(L.Events.Core.SDK_VALIDATE_CLIENT_FAILED,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,message:"Organization Id is not set",forceReset:this.userOptions$.value?.forceReset,user:this.getUserWithoutContacts(t)},!0,t.userSnippylyId),this.configService.getSF())this.loggingService.catch("OrganizationId is not set in Identify method",void 0,void 0,!0);else throw new Error("OrganizationId is not set in Identify method")}setVeltAuthProvider(t){return I(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: setVeltAuthProvider","color: green;");try{this.onRetrySubscription?.unsubscribe();let i=null;if(!t.user)return null;t.generateToken&&typeof t.generateToken=="function"&&(i=yield t.generateToken());let o=yield wC(()=>window.Velt.identify(t.user,x(x({},t.options||{}),i&&{authToken:i}),{fromProvider:!0}).catch(s=>(t.onError&&typeof t.onError=="function"&&t.onError(s),Promise.reject(s))),t.retryConfig||{retryCount:0,retryDelay:0});return o&&t.generateToken&&typeof t.generateToken=="function"&&(this.onRetrySubscription=this.coreActionsService.onAction($.ERROR).pipe(Ct(s=>s.code==="token_expired"),Nt(10)).subscribe(s=>I(this,null,function*(){if(s.code==="token_expired"){let a=this.docService?.getDocumentIds()?.map(g=>({id:g.clientDocumentId}))??[],c=this.docService?.getOptionsFromDocumentPaths()??void 0,l=[],u=this.docService?.getLocation();u&&l.push(u.location);let d=this.docService?.getLocations();d&&Object.values(d).forEach(g=>{l.push(g.location)}),(yield wC(()=>I(this,null,function*(){try{let g=yield t.generateToken?.();return g?window.Velt.identify(t.user,x(x({},t.options||{}),g&&{authToken:g}),{fromProvider:!0}):!0}catch{return!1}}),t.retryConfig||{retryCount:0,retryDelay:0}))&&(yield this.docService?.setDocuments({documents:a,options:c,source:"internal"}),yield this.docService?.setLocations({locations:l,source:"internal",options:{appendLocation:!u}}))}}))),o}catch(i){return this.loggingService.catch("Error in setVeltAuthProvider: ",i),null}})}setUserToStorage(t){return I(this,null,function*(){try{if(t){let i=yield il(t,t?.userId??"");localStorage.setItem(v.LOCAL_STORAGE.VELT_IDENTIFY_USER,i)}}catch(i){this.loggingService.catch("Error in setUserToStorage: ",i)}})}getUserFromStorage(t){return I(this,null,function*(){try{let i=localStorage.getItem(v.LOCAL_STORAGE.VELT_IDENTIFY_USER);return i?yield NC(i,t?.userId??""):null}catch(i){return this.loggingService.catch("Error in getUserFromStorage: ",i),null}})}setIsPrivateCommentsEnabled(t){try{this.isPrivateCommentsEnabled$.next(t)}catch(i){this.loggingService.catch("Error in setIsPrivateCommentsEnabled: ",i)}}getIsPrivateCommentsEnabled(){return this.isPrivateCommentsEnabled$.value}getIsPrivateCommentsEnabled$(){return this.isPrivateCommentsEnabled$.asObservable()}updateUserWithColorAndTextColor(t){return I(this,null,function*(){try{let i=JSON.parse(JSON.stringify(t??{})),o=yield this.getUserFromStorage(i);return!o||Object.keys(o).length===0?(delete i?.color,delete i?.textColor,i):(o?.color&&(i.color=o?.color),o?.textColor&&(i.textColor=o?.textColor),i)}catch(i){return this.loggingService.catch("Error in updateUserWithColorAndTextColor: ",i),t}})}updateUserIfRequired(t){return I(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: updateUserIfRequired","color: green;");try{let i=yield this.getUserFromStorage(t),o={};t.color&&t.color!==i?.color&&(o.color=t.color),t.textColor&&t.textColor!==i?.textColor&&(o.textColor=t.textColor),Object.keys(o).length>0&&t.clientOrganizationId&&this.docService?.addUserInfoToOrganization({organizationId:t.clientOrganizationId,user:le(x({},o),{userId:t.userId})})}catch(i){this.loggingService.catch("Error in updateUserIfRequired: ",i)}})}initializeClient(t,i,o,s,a){return I(this,null,function*(){try{if(this.autoLoginRequired=!1,this.userOptions$.next(i),this.initializeClientToken)this.pendingUserLogin=t,this.pendingUserLoginSource=a;else{t.userSnippylyId=PV(this.configService.getApiKey(),t.userId),this.pendingUserLogin=void 0,this.pendingUserLoginSource=void 0,this.initializeClientToken=o;let c=yield bd(this.afAuth).pipe(Nt(1)).toPromise().catch(u=>null),l=!0;if(this.providedUser=JSON.parse(JSON.stringify(t)),c){let u=yield EI(c,!0).catch(p=>null);if(!u)return;let{user:d,firebaseConfig:f,advancedQueries:g}=u.claims;c?.uid!==t?.userSnippylyId||t?.groupId!==d?.groupId||t?.organizationId!==d?.organizationId||i?.forceReset||!s&&t?.organizationId&&!this.forceReLoggedIn||this.forceReLoginRequiredForAdvancedQueries(t)||this.forceReLoginRequiredForRegion(t,f)||this.forceReLoginRequiredForCommentViews(t)?(localStorage.setItem(v.LOCAL_STORAGE.VELT_USER_FORCE_RE_LOGGED_IN,"true"),localStorage.setItem(v.LOCAL_STORAGE.VELT_COMMENT_VIEWS_MIGRATED,"true"),this.forceReLoggedIn=!0,yield this.signOutUser("internal")):(this.loggingService.log("%c[WB] Calling FUNCTION: reinitializeCurrentUser","color: green;"),this.loggingService.log("Keeping user"),yield this.updateUserIfRequired(t),this.validateOrganizationId(t),this.setFirebaseConfig(f),this.setAdvancedQueries(g),d&&(this.providedUser.isAdmin=!!d.isAdmin),this.initializeSignedInUser(c,s,t),l=!1,this.analyticsService.trackEvent(L.Events.Core.SDK_USER_AUTH_SUCCESS,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,authType:"auto",forceReset:this.userOptions$.value?.forceReset,user:this.getUserWithoutContacts(t),source:a}))}if(l){this.analyticsService.trackEvent(L.Events.Core.SDK_VALIDATE_CLIENT_TRIGGERED,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,forceReset:this.userOptions$.value?.forceReset,user:this.getUserWithoutContacts(t),source:a},!0,t.userSnippylyId,t.userId);let u=Dr(this.functions,Ir({url:st.cloudFunction.validateClient,apiProxyDomain:this.configService?.getApiProxyDomain()}),{timeout:1200*1e3}),d=jr(),f=(yield u({apiKey:this.apiKey,user:t,version:d,authToken:i?.authToken}))?.data;if(f.error){if(this.analyticsService.trackEvent(L.Events.Core.SDK_VALIDATE_CLIENT_FAILED,le(x({apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,message:f.error,forceReset:this.userOptions$.value?.forceReset,user:this.getUserWithoutContacts(t)},f),{source:a}),!0,t.userSnippylyId,t.userId),f.error&&typeof f.error=="string")if(f.error?.toLowerCase()?.includes("token expired"))if(this.tokenExpiredErrorCount++,this.tokenExpiredErrorCount<=this.TOKEN_EXPIRED_ERROR_COUNT_LIMIT){let g={code:"token_expired",message:"Token expired",error:f?.error,source:f?.source};this.coreActionsService.triggerAction($.ERROR,g)}else{let g={code:"too_many_retries",message:"Token expired. Too many retries.",error:f?.error,source:f?.source};this.coreActionsService.triggerAction($.ERROR,g),this.analyticsService.trackEvent(L.Events.Core.SDK_JWT_EXPIRED_RETRY_EXCEEDED,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,forceReset:this.userOptions$.value?.forceReset,source:a},!0,t.userSnippylyId,t.userId)}else{let g=f;this.coreActionsService.triggerAction($.ERROR,g)}throw f}else this.tokenExpiredErrorCount=0;if(this.analyticsService.trackEvent(L.Events.Core.SDK_VALIDATE_CLIENT_SUCCESS,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,forceReset:this.userOptions$.value?.forceReset,user:this.getUserWithoutContacts(t),source:a},!0,t.userSnippylyId,t.userId),this.validateOrganizationId(t),f.firebaseConfig){this.setFirebaseConfig(f.firebaseConfig),yield this.signInWithCustomToken(t,f.token),this.loggingService.log("new signed in user",this.afAuth.currentUser);let g=yield EI(this.afAuth.currentUser,!0).catch(T=>null);if(!g)return;let{user:p,advancedQueries:_}=g.claims;this.setAdvancedQueries(_),this.providedUser.isAdmin=!!p?.isAdmin,this.initializeSignedInUser(this.afAuth.currentUser,s,t)}}this.initializeClientToken=0,this.lastLoggedInUserData={user:t,userOptions:i,initializeClientToken:o,autoLogin:s},this.checkForPendingLogin()}return t}catch(c){return this.initializeClientToken=0,this.checkForPendingLogin(),this.loggingService.catch("Error in initializeClient: ",c),i?.throwError?Promise.reject(c):Promise.resolve(null)}})}isVersionGreaterThanOrEqualTo4(){try{let t=jr();return(t?parseInt(t.split(".")?.[0]||"0"):0)>=4}catch(t){return this.loggingService.catch("Error in isVersionGreaterThanOrEqualTo4: ",t),!1}}isVersion4Point5(){try{let t=jr();if(t){let i=t.split("."),o=parseInt(i[0]||"0"),s=parseInt(i[1]||"0"),a=parseInt(i[2]||"0");if(o>=4&&s>=5)return o===4&&s===5&&a===0?!t.toLowerCase().includes("beta"):!0}return!1}catch(t){return this.loggingService.catch("Error in isVersion4Point5: ",t),!1}}forceReLoginRequiredForAdvancedQueries(t){try{let i=this.isVersionGreaterThanOrEqualTo4(),o=!1;try{let s=localStorage.getItem(v.LOCAL_STORAGE.VELT_ADVANCED_QUERIES);s&&(o=JSON.parse(s)?.advancedQueriesEnabled)}catch(s){this.loggingService.catch("Error in forceReLoginRequiredForAdvancedQueries: ",s)}return!!(i&&t.organizationId&&!o)}catch(i){return this.loggingService.catch("Error in forceReLoginRequiredForAdvancedQueries: ",i),!1}}forceReLoginRequiredForCommentViews(t){try{let i=this.isVersion4Point5(),o=!1;try{let s=localStorage.getItem(v.LOCAL_STORAGE.VELT_COMMENT_VIEWS_MIGRATED);s&&(o=JSON.parse(s))}catch(s){this.loggingService.catch("Error in forceReLoginRequiredForCommentViews: ",s)}return!!(i&&t.organizationId&&!o)}catch(i){return this.loggingService.catch("Error in forceReLoginRequiredForCommentViews: ",i),!1}}forceReLoginRequiredForRegion(t,i){try{return!!(this.isVersionGreaterThanOrEqualTo4()&&t.organizationId&&!i?.region)}catch(o){return this.loggingService.catch("Error in forceReLoginRequiredForRegion: ",o),!1}}checkForPendingLogin(){this.pendingUserLogin&&this.initializeClient(this.pendingUserLogin,this.userOptions$?.value||{},new Date().getTime(),void 0,this.pendingUserLoginSource)}setFirebaseConfig(t){this.loggingService.log("%c[WB] Calling FUNCTION: setFirebaseConfig","color: green;");try{this.firebaseConfig$.value||this.firebaseConfig$.next({firebaseOptions:x(x({},st.firebaseConfig),t)})}catch(i){this.loggingService.catch("Error in setFirebaseConfig: ",i)}}getFirebaseConfig$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getFirebaseConfig","color: green;"),this.firebaseConfig$.asObservable()}getFirebaseConfig(){return this.loggingService.log("%c[WB] Calling FUNCTION: getFirebaseConfig","color: green;"),this.firebaseConfig$.value}setAdvancedQueries(t){this.loggingService.log("%c[WB] Calling FUNCTION: setAdvancedQueries","color: green;");try{t&&typeof t=="object"&&localStorage.setItem(v.LOCAL_STORAGE.VELT_ADVANCED_QUERIES,JSON.stringify(t)),this.advancedQueries$.next(t)}catch(i){this.loggingService.catch("Error in setAdvancedQueries: ",i)}}getAdvancedQueries$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getAdvancedQueries$","color: green;"),this.advancedQueries$.asObservable()}getAdvancedQueries(){return this.loggingService.log("%c[WB] Calling FUNCTION: getAdvancedQueries","color: green;"),this.advancedQueries$.value}getAdvancedQueriesEnabled$(){return Zr([this.configService.getConfig$(),this.getAdvancedQueries$()]).pipe(fe(()=>this.getAdvancedQueriesEnabled()),ts(()=>ue(!1)))}getAdvancedQueriesEnabled(){try{return!this.configService.getConfig()?.advancedQueriesDisabled&&!!this.getAdvancedQueries()?.advancedQueriesEnabled}catch(t){return this.loggingService.catch("Error in getAdvancedQueriesEnabled: ",t),!1}}signOutPreviousUser(){return this.signOutPreviousUser$.asObservable()}getUser(){return this.loggingService.log("%c[WB] Calling FUNCTION: getUser","color: green;"),this.afAuth?.currentUser?this.user$.value:null}getUser$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getUser$","color: green;"),bd(this.afAuth).pipe(mt(t=>t?this.user$.asObservable():ue(null)),it(Ft))}getAuthUser(){return this.loggingService.log("%c[WB] Calling FUNCTION: getAuthUser","color: green;"),this.afAuth?.currentUser}getUserOptions(){return this.loggingService.log("%c[WB] Calling FUNCTION: getUserOptions","color: green;"),this.userOptions$.value}getUserOptions$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getUserOptions$","color: green;"),this.userOptions$.asObservable()}updateUser(t){this.loggingService.log("%c[WB] Calling FUNCTION: updateUser","color: green;");try{let i=this.user$.value;if(t.userId&&t.userId!==i?.userId||t?.groupId&&t?.groupId!==i?.groupId||t?.organizationId&&t?.organizationId!==i?.organizationId)this.providedUser=t,this.initializeClient(t,this.userOptions$?.value||{},new Date().getTime(),void 0,"internal-updateUser");else if(this.providedUser=x(x({},this.providedUser),t),i){let o=x(x({},i),t);this.updateUserInternally(o)}}catch(i){this.loggingService.catch("Error in updateUser: ",i)}}signInWithCustomToken(t,i,o="manual"){this.loggingService.log("%c[WB] Calling FUNCTION: signInWithCustomToken","color: green;");try{return _G(this.afAuth,i).then(s=>(this.analyticsService.trackEvent(L.Events.Core.SDK_USER_AUTH_SUCCESS,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,authType:o,forceReset:this.userOptions$.value?.forceReset,user:this.getUserWithoutContacts(t)}),s)).catch(s=>(this.analyticsService.trackEvent(L.Events.Core.SDK_USER_AUTH_FAILED,{apiKey:this.apiKey,clientUserId:t.userId,snippylyUserId:t.userSnippylyId,authType:o,forceReset:this.userOptions$.value?.forceReset,message:s.message,user:this.getUserWithoutContacts(t)}),s))}catch(s){return this.loggingService.catch("Error in signInWithCustomToken: ",s),Promise.reject(s)}}clearCache(){this.loggingService.log("%c[WB] Calling FUNCTION: clearCache","color: green;");try{this.activityService?.setActivityFeatureConfig({immutable:!1,isEnabled:!1})}catch(t){this.loggingService.catch("Error in clearCache: ",t)}}resetServicesCache(){this.loggingService.log("%c[WB] Calling FUNCTION: resetServicesCache in AuthService","color: green;");try{this.crdtService?.flushAllEditorActivities(),this.clearCache(),this.commonDbService?.unsubscribeFromObservables(),this.activityService?.destroy(),this.docService?.clearCacheOnUserCascade(),this.contactService?.clearCache(),this.iamService?.clearCache(),this.areaService?.clearCache(),this.commentService?.clearCache(),this.reactionService?.clearCache(),this.serviceBook.get(AT)?.clearCache(),this.viewsService?.clearCache()}catch(t){this.loggingService.catch("Error in resetServicesCache: ",t)}}initializeSignedInUser(t,i,o){this.loggingService.log("%c[WB] Calling FUNCTION: initializeSignedInUser","color: green;");try{let s=new _s;s.userSnippylyId=t.uid,s.type="signedIn",o&&(s=x(x({},s),o)),this.setUserToStorage(s),this.mergeUserWithProvidedUserData(s,i)}catch(s){this.loggingService.catch("Error in initializeSignedInUser: ",s)}}mergeUserWithProvidedUserData(t,i){return I(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: mergeUserWithProvidedUserData","color: green;");try{t.userId=this.providedUser?.userId||t.userId;let o=null;if(this.usersService?.externalUserDataProviderAvailable()){let s=J(),a=tl.IDENTIFY;this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:s,methodName:xn.MERGE_USER_WITH_PROVIDED_USER_DATA,moduleName:a,source:"internal",payload:{userIds:[t.userId],organizationId:this.providedUser?.organizationId||t.organizationId}});let c=yield this.usersService.resolveUsers({userIds:[t.userId],organizationId:this.providedUser?.organizationId||t.organizationId,skipUserCheck:!0,uniqueId:s,moduleName:a});c&&c[t.userId]&&(o=JSON.parse(JSON.stringify(c[t.userId]||{}))),t=x(x({},t),o||{})}t.name=o?o?.name:this.providedUser?.name||t.name,t.clientUserName=o?o?.clientUserName:this.providedUser?.clientUserName||t.clientUserName,t.photoUrl=o?o?.photoUrl:this.providedUser?.photoUrl||t.photoUrl,t?.photoUrl===void 0&&(t.photoUrl=null),t.email=o?o?.email:this.providedUser?.email||t.email,t.color=o?.color||this.providedUser?.color||this.getUserAvatarColor(t.userId),t.textColor=o?.textColor||this.providedUser?.textColor||this.getUserTextColor(t.userId),t.initial=o?.initial||this.providedUser?.initial||t.initial||t.name?.charAt(0).toUpperCase()||t.email?.charAt(0).toUpperCase(),t.contacts=this.providedUser?.contacts||t.contacts,t.plan=this.providedUser?.plan||t.plan,t.groupId=this.providedUser?.groupId||t.groupId,t.clientGroupId=this.providedUser?.clientGroupId||t.clientGroupId,t.clientOrganizationId=this.providedUser?.clientOrganizationId||t.clientOrganizationId,t.organizationId=this.providedUser?.organizationId||t.organizationId,t.isAdmin=this.providedUser?.isAdmin,t.isReadOnly=this.providedUser?.isReadOnly,t.isAnonymous=this.providedUser?.isAnonymous,t.isGuest=this.providedUser?.isGuest,this.updateUserInternally(t)}catch(o){this.loggingService.catch("Error in mergeUserWithProvidedUserData: ",o)}})}updateUserInternally(t){return I(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: updateUserInternally","color: green;");try{let i=Object.assign({},t);delete i.contacts,this.analyticsService.identifyUser(t.userSnippylyId,i,{forceReset:this.userOptions$.value?.forceReset}),this.getPlanDetailsCalled||this.getPlanDetailsFromDb();let o=Dr(this.functions,Ir({url:st?.cloudFunction?.sdkProxy,apiProxyDomain:this.configService?.getApiProxyDomain()})),s=Ad({methodName:"updateUserInternally",data:{type:"getProjectConfig"},getSdkProxy:o,userId:t?.userId??""}),a=Promise.resolve();if(this.userPermissionService?.isPermissionProviderAvailable()&&t.clientOrganizationId){let u=[{userId:t.userId,resource:{id:t.clientOrganizationId,type:di.ORGANIZATION,source:Un.IDENTIFY,organizationId:t.clientOrganizationId}}],d=J();this.coreActionsService.triggerAction($.PERMISSION_PROVIDER,{event:L.Events.PermissionProvider.RESOURCE_ACCESS_REQUEST_FORMED,methodName:Un.IDENTIFY,uniqueId:d,timestamp:new Date().getTime(),source:"internal",payload:{requests:u}}),a=this.userPermissionService?.onResourceAccessRequired({requests:u,uniqueId:d,userId:t.userId,methodName:Un.IDENTIFY,fromCache:!1})??Promise.resolve()}let[c,l]=yield Promise.allSettled([s,a]);if(c.status==="fulfilled"){this.setIsPrivateCommentsEnabled(!!c.value?.data?.isPrivateCommentsEnabled);let u=c.value?.data?.activityConfig??{immutable:!1,isEnabled:!1};this.cachedActivityConfig=u,this.activityService?.setActivityFeatureConfig(u)}else this.loggingService.warn("Failed to fetch project config:",c.reason);this.afAuth.currentUser&&(this.user$.next(t),this.updateUserToFirebase(t))}catch(i){this.loggingService.catch("Error in updateUserInternally: ",i)}})}updateUserToFirebase(t){this.loggingService.log("%c[WB] Calling FUNCTION: updateUserToFirebase","color: green;");try{let i=JSON.parse(JSON.stringify(t)),o=le(x({},i),{lastUpdated:new Date})}catch(i){this.loggingService.catch("Error in updateUserToFirebase: ",i)}}getPlanDetailsFromDb(){return I(this,null,function*(){try{this.getPlanDetailsCalled=!0;let i=yield Dr(this.functions,Ir({url:st.cloudFunction.getPlanDetails,apiProxyDomain:this.configService?.getApiProxyDomain()}),{timeout:1200*1e3})({apiKey:this.configService.getApiKey(),sdkVersion:jr(),sdkType:this.configService.getSdkType()});return i?.data?.isPlanExpired&&(this.analyticsService.trackEvent(L.Events.Core.SDK_PLAN_EXPIRED),this.configService.getSF()||console.warn("Velt SDK plan has expired.")),this.planDetails$.next(i?.data||{planInfo:null,isPlanExpired:!1}),i}catch(t){return this.loggingService.catch("Error in getPlanDetailsFromDb: ",t),this.planDetails$.next({planInfo:null,isPlanExpired:!1}),Promise.resolve(null)}})}isPlanExpired$(){return this.planDetails$.pipe(Ct(t=>!!t),fe(t=>!!t?.isPlanExpired))}isPlanExpired(){return this.planDetails$.getValue()?.isPlanExpired}addPreSignOutFuction(t,i){try{this.preSignOutFunctions.set(t,i)}catch(o){this.loggingService.catch("Error in addPreSignOutFuction: ",o)}}setUserOrganization(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setUserOrganization","color: green;");let i=JSON.parse(JSON.stringify(this.userOrganization$.value||{}));this.getUser()?.organizationId===t?.organizationId?(i.metadata=t,this.userOrganization$.next(i)):this.userOrganization$.next(null)}catch(i){this.loggingService.catch("Error in setUserOrganization: ",i)}}setOrganizationUserGroups(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setUserOrganizationGroups","color: green;");let i=JSON.parse(JSON.stringify(this.userOrganization$.value||{}));this.getUser()?.organizationId===i?.metadata?.organizationId&&(i.groups=t,this.userOrganization$.next(i))}catch(i){this.loggingService.catch("Error in setUserOrganizationGroups: ",i)}}getUserOrganization$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getUserOrganization$","color: green;"),this.getUser$().pipe(mt(t=>t?this.userOrganization$.asObservable().pipe(fe(i=>i?.metadata?.organizationId===t.organizationId?i:null)):ue(null)))}signOutUser(t="internal"){return I(this,null,function*(){try{this.userPermissionService?.invalidateAllPermissionsState(),t==="external"&&this.onRetrySubscription?.unsubscribe(),this.userPermissionService?.revokeAccessOnUserLogout(),this.analyticsService.trackEvent(L.Events.Core.SDK_USER_SIGN_OUT,{apiKey:this.apiKey,clientUserId:this.user$?.value?.userId,snippylyUserId:this.user$?.value?.userSnippylyId,message:t==="external"?"User Sign out":"System Sign out",user:this.user$?.value?this.getUserWithoutContacts(this.user$?.value):null,forceReset:this.userOptions$.value?.forceReset,source:t});let i=yield bd(this.afAuth).pipe(Nt(1)).toPromise().catch(o=>null);if(i){this.resetServicesCache(),this.user$.next(null);for(let[o,s]of this.preSignOutFunctions)try{yield s(i)}catch(a){this.loggingService.catch(`Error in signOutUser ${o} function: `,a)}return this.user$.next(null),yield FV(1e3),TG(this.afAuth).catch(o=>{this.loggingService.catch("Error in signOutUser:",o)})}else return Promise.resolve()}catch(i){this.loggingService.catch("Error in signOutUser: ",i)}})}isFeatureAllowed(t){return bV(this.config,this.user$.value,t)}getUserWithoutContacts(t){try{if(t){let i=JSON.parse(JSON.stringify(t));return delete i.contacts,i}else return null}catch(i){return this.loggingService.catch("Error in getUserWithoutContacts: ",i),null}}getUserForClient(t){try{return bC(t)}catch(i){return this.loggingService.catch("Error in getUserForClient: ",i),null}}getUserAvatarColor(t){try{return t?this.avatarService.generateUserColor(Tr(t)):"#625DF5"}catch{return"#625DF5"}}getUserTextColor(t){try{return"#FFFFFF"}catch{return"#FFFFFF"}}setOptionalPropertiesToUsers(t){try{t.forEach(i=>{try{i?.color||(i.color=this.getUserAvatarColor(i?.userId)),i?.textColor||(i.textColor=this.getUserTextColor(i?.userId)),!i?.initial&&(i?.name||i?.email)&&(i.initial=i.name?.charAt(0).toUpperCase()||i.email?.charAt(0).toUpperCase())}catch{}})}catch{}}};e.\u0275fac=function(i){return new(i||e)(w(hl),w(Rr),w(U2),w(It),w(Ev),w(dr),w(Lt),w(_e),w(li))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var rj=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ij={};var Ds,Ow;(function(){var n;function e(S,A){function C(){}C.prototype=A.prototype,S.D=A.prototype,S.prototype=new C,S.prototype.constructor=S,S.C=function(O,P,F){for(var N=Array(arguments.length-2),Ti=2;Ti<arguments.length;Ti++)N[Ti-2]=arguments[Ti];return A.prototype[P].apply(O,N)}}function r(){this.blockSize=-1}function t(){this.blockSize=-1,this.blockSize=64,this.g=Array(4),this.B=Array(this.blockSize),this.o=this.h=0,this.s()}e(t,r),t.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(S,A,C){C||(C=0);var O=Array(16);if(typeof A=="string")for(var P=0;16>P;++P)O[P]=A.charCodeAt(C++)|A.charCodeAt(C++)<<8|A.charCodeAt(C++)<<16|A.charCodeAt(C++)<<24;else for(P=0;16>P;++P)O[P]=A[C++]|A[C++]<<8|A[C++]<<16|A[C++]<<24;A=S.g[0],C=S.g[1],P=S.g[2];var F=S.g[3],N=A+(F^C&(P^F))+O[0]+3614090360&4294967295;A=C+(N<<7&4294967295|N>>>25),N=F+(P^A&(C^P))+O[1]+3905402710&4294967295,F=A+(N<<12&4294967295|N>>>20),N=P+(C^F&(A^C))+O[2]+606105819&4294967295,P=F+(N<<17&4294967295|N>>>15),N=C+(A^P&(F^A))+O[3]+3250441966&4294967295,C=P+(N<<22&4294967295|N>>>10),N=A+(F^C&(P^F))+O[4]+4118548399&4294967295,A=C+(N<<7&4294967295|N>>>25),N=F+(P^A&(C^P))+O[5]+1200080426&4294967295,F=A+(N<<12&4294967295|N>>>20),N=P+(C^F&(A^C))+O[6]+2821735955&4294967295,P=F+(N<<17&4294967295|N>>>15),N=C+(A^P&(F^A))+O[7]+4249261313&4294967295,C=P+(N<<22&4294967295|N>>>10),N=A+(F^C&(P^F))+O[8]+1770035416&4294967295,A=C+(N<<7&4294967295|N>>>25),N=F+(P^A&(C^P))+O[9]+2336552879&4294967295,F=A+(N<<12&4294967295|N>>>20),N=P+(C^F&(A^C))+O[10]+4294925233&4294967295,P=F+(N<<17&4294967295|N>>>15),N=C+(A^P&(F^A))+O[11]+2304563134&4294967295,C=P+(N<<22&4294967295|N>>>10),N=A+(F^C&(P^F))+O[12]+1804603682&4294967295,A=C+(N<<7&4294967295|N>>>25),N=F+(P^A&(C^P))+O[13]+4254626195&4294967295,F=A+(N<<12&4294967295|N>>>20),N=P+(C^F&(A^C))+O[14]+2792965006&4294967295,P=F+(N<<17&4294967295|N>>>15),N=C+(A^P&(F^A))+O[15]+1236535329&4294967295,C=P+(N<<22&4294967295|N>>>10),N=A+(P^F&(C^P))+O[1]+4129170786&4294967295,A=C+(N<<5&4294967295|N>>>27),N=F+(C^P&(A^C))+O[6]+3225465664&4294967295,F=A+(N<<9&4294967295|N>>>23),N=P+(A^C&(F^A))+O[11]+643717713&4294967295,P=F+(N<<14&4294967295|N>>>18),N=C+(F^A&(P^F))+O[0]+3921069994&4294967295,C=P+(N<<20&4294967295|N>>>12),N=A+(P^F&(C^P))+O[5]+3593408605&4294967295,A=C+(N<<5&4294967295|N>>>27),N=F+(C^P&(A^C))+O[10]+38016083&4294967295,F=A+(N<<9&4294967295|N>>>23),N=P+(A^C&(F^A))+O[15]+3634488961&4294967295,P=F+(N<<14&4294967295|N>>>18),N=C+(F^A&(P^F))+O[4]+3889429448&4294967295,C=P+(N<<20&4294967295|N>>>12),N=A+(P^F&(C^P))+O[9]+568446438&4294967295,A=C+(N<<5&4294967295|N>>>27),N=F+(C^P&(A^C))+O[14]+3275163606&4294967295,F=A+(N<<9&4294967295|N>>>23),N=P+(A^C&(F^A))+O[3]+4107603335&4294967295,P=F+(N<<14&4294967295|N>>>18),N=C+(F^A&(P^F))+O[8]+1163531501&4294967295,C=P+(N<<20&4294967295|N>>>12),N=A+(P^F&(C^P))+O[13]+2850285829&4294967295,A=C+(N<<5&4294967295|N>>>27),N=F+(C^P&(A^C))+O[2]+4243563512&4294967295,F=A+(N<<9&4294967295|N>>>23),N=P+(A^C&(F^A))+O[7]+1735328473&4294967295,P=F+(N<<14&4294967295|N>>>18),N=C+(F^A&(P^F))+O[12]+2368359562&4294967295,C=P+(N<<20&4294967295|N>>>12),N=A+(C^P^F)+O[5]+4294588738&4294967295,A=C+(N<<4&4294967295|N>>>28),N=F+(A^C^P)+O[8]+2272392833&4294967295,F=A+(N<<11&4294967295|N>>>21),N=P+(F^A^C)+O[11]+1839030562&4294967295,P=F+(N<<16&4294967295|N>>>16),N=C+(P^F^A)+O[14]+4259657740&4294967295,C=P+(N<<23&4294967295|N>>>9),N=A+(C^P^F)+O[1]+2763975236&4294967295,A=C+(N<<4&4294967295|N>>>28),N=F+(A^C^P)+O[4]+1272893353&4294967295,F=A+(N<<11&4294967295|N>>>21),N=P+(F^A^C)+O[7]+4139469664&4294967295,P=F+(N<<16&4294967295|N>>>16),N=C+(P^F^A)+O[10]+3200236656&4294967295,C=P+(N<<23&4294967295|N>>>9),N=A+(C^P^F)+O[13]+681279174&4294967295,A=C+(N<<4&4294967295|N>>>28),N=F+(A^C^P)+O[0]+3936430074&4294967295,F=A+(N<<11&4294967295|N>>>21),N=P+(F^A^C)+O[3]+3572445317&4294967295,P=F+(N<<16&4294967295|N>>>16),N=C+(P^F^A)+O[6]+76029189&4294967295,C=P+(N<<23&4294967295|N>>>9),N=A+(C^P^F)+O[9]+3654602809&4294967295,A=C+(N<<4&4294967295|N>>>28),N=F+(A^C^P)+O[12]+3873151461&4294967295,F=A+(N<<11&4294967295|N>>>21),N=P+(F^A^C)+O[15]+530742520&4294967295,P=F+(N<<16&4294967295|N>>>16),N=C+(P^F^A)+O[2]+3299628645&4294967295,C=P+(N<<23&4294967295|N>>>9),N=A+(P^(C|~F))+O[0]+4096336452&4294967295,A=C+(N<<6&4294967295|N>>>26),N=F+(C^(A|~P))+O[7]+1126891415&4294967295,F=A+(N<<10&4294967295|N>>>22),N=P+(A^(F|~C))+O[14]+2878612391&4294967295,P=F+(N<<15&4294967295|N>>>17),N=C+(F^(P|~A))+O[5]+4237533241&4294967295,C=P+(N<<21&4294967295|N>>>11),N=A+(P^(C|~F))+O[12]+1700485571&4294967295,A=C+(N<<6&4294967295|N>>>26),N=F+(C^(A|~P))+O[3]+2399980690&4294967295,F=A+(N<<10&4294967295|N>>>22),N=P+(A^(F|~C))+O[10]+4293915773&4294967295,P=F+(N<<15&4294967295|N>>>17),N=C+(F^(P|~A))+O[1]+2240044497&4294967295,C=P+(N<<21&4294967295|N>>>11),N=A+(P^(C|~F))+O[8]+1873313359&4294967295,A=C+(N<<6&4294967295|N>>>26),N=F+(C^(A|~P))+O[15]+4264355552&4294967295,F=A+(N<<10&4294967295|N>>>22),N=P+(A^(F|~C))+O[6]+2734768916&4294967295,P=F+(N<<15&4294967295|N>>>17),N=C+(F^(P|~A))+O[13]+1309151649&4294967295,C=P+(N<<21&4294967295|N>>>11),N=A+(P^(C|~F))+O[4]+4149444226&4294967295,A=C+(N<<6&4294967295|N>>>26),N=F+(C^(A|~P))+O[11]+3174756917&4294967295,F=A+(N<<10&4294967295|N>>>22),N=P+(A^(F|~C))+O[2]+718787259&4294967295,P=F+(N<<15&4294967295|N>>>17),N=C+(F^(P|~A))+O[9]+3951481745&4294967295,S.g[0]=S.g[0]+A&4294967295,S.g[1]=S.g[1]+(P+(N<<21&4294967295|N>>>11))&4294967295,S.g[2]=S.g[2]+P&4294967295,S.g[3]=S.g[3]+F&4294967295}t.prototype.u=function(S,A){A===void 0&&(A=S.length);for(var C=A-this.blockSize,O=this.B,P=this.h,F=0;F<A;){if(P==0)for(;F<=C;)i(this,S,F),F+=this.blockSize;if(typeof S=="string"){for(;F<A;)if(O[P++]=S.charCodeAt(F++),P==this.blockSize){i(this,O),P=0;break}}else for(;F<A;)if(O[P++]=S[F++],P==this.blockSize){i(this,O),P=0;break}}this.h=P,this.o+=A},t.prototype.v=function(){var S=Array((56>this.h?this.blockSize:2*this.blockSize)-this.h);S[0]=128;for(var A=1;A<S.length-8;++A)S[A]=0;var C=8*this.o;for(A=S.length-8;A<S.length;++A)S[A]=C&255,C/=256;for(this.u(S),S=Array(16),A=C=0;4>A;++A)for(var O=0;32>O;O+=8)S[C++]=this.g[A]>>>O&255;return S};function o(S,A){var C=a;return Object.prototype.hasOwnProperty.call(C,S)?C[S]:C[S]=A(S)}function s(S,A){this.h=A;for(var C=[],O=!0,P=S.length-1;0<=P;P--){var F=S[P]|0;O&&F==A||(C[P]=F,O=!1)}this.g=C}var a={};function c(S){return-128<=S&&128>S?o(S,function(A){return new s([A|0],0>A?-1:0)}):new s([S|0],0>S?-1:0)}function l(S){if(isNaN(S)||!isFinite(S))return d;if(0>S)return T(l(-S));for(var A=[],C=1,O=0;S>=C;O++)A[O]=S/C|0,C*=4294967296;return new s(A,0)}function u(S,A){if(S.length==0)throw Error("number format error: empty string");if(A=A||10,2>A||36<A)throw Error("radix out of range: "+A);if(S.charAt(0)=="-")return T(u(S.substring(1),A));if(0<=S.indexOf("-"))throw Error('number format error: interior "-" character');for(var C=l(Math.pow(A,8)),O=d,P=0;P<S.length;P+=8){var F=Math.min(8,S.length-P),N=parseInt(S.substring(P,P+F),A);8>F?(F=l(Math.pow(A,F)),O=O.j(F).add(l(N))):(O=O.j(C),O=O.add(l(N)))}return O}var d=c(0),f=c(1),g=c(16777216);n=s.prototype,n.m=function(){if(_(this))return-T(this).m();for(var S=0,A=1,C=0;C<this.g.length;C++){var O=this.i(C);S+=(0<=O?O:4294967296+O)*A,A*=4294967296}return S},n.toString=function(S){if(S=S||10,2>S||36<S)throw Error("radix out of range: "+S);if(p(this))return"0";if(_(this))return"-"+T(this).toString(S);for(var A=l(Math.pow(S,6)),C=this,O="";;){var P=M(C,A).g;C=D(C,P.j(A));var F=((0<C.g.length?C.g[0]:C.h)>>>0).toString(S);if(C=P,p(C))return F+O;for(;6>F.length;)F="0"+F;O=F+O}},n.i=function(S){return 0>S?0:S<this.g.length?this.g[S]:this.h};function p(S){if(S.h!=0)return!1;for(var A=0;A<S.g.length;A++)if(S.g[A]!=0)return!1;return!0}function _(S){return S.h==-1}n.l=function(S){return S=D(this,S),_(S)?-1:p(S)?0:1};function T(S){for(var A=S.g.length,C=[],O=0;O<A;O++)C[O]=~S.g[O];return new s(C,~S.h).add(f)}n.abs=function(){return _(this)?T(this):this},n.add=function(S){for(var A=Math.max(this.g.length,S.g.length),C=[],O=0,P=0;P<=A;P++){var F=O+(this.i(P)&65535)+(S.i(P)&65535),N=(F>>>16)+(this.i(P)>>>16)+(S.i(P)>>>16);O=N>>>16,F&=65535,N&=65535,C[P]=N<<16|F}return new s(C,C[C.length-1]&-2147483648?-1:0)};function D(S,A){return S.add(T(A))}n.j=function(S){if(p(this)||p(S))return d;if(_(this))return _(S)?T(this).j(T(S)):T(T(this).j(S));if(_(S))return T(this.j(T(S)));if(0>this.l(g)&&0>S.l(g))return l(this.m()*S.m());for(var A=this.g.length+S.g.length,C=[],O=0;O<2*A;O++)C[O]=0;for(O=0;O<this.g.length;O++)for(var P=0;P<S.g.length;P++){var F=this.i(O)>>>16,N=this.i(O)&65535,Ti=S.i(P)>>>16,eo=S.i(P)&65535;C[2*O+2*P]+=N*eo,b(C,2*O+2*P),C[2*O+2*P+1]+=F*eo,b(C,2*O+2*P+1),C[2*O+2*P+1]+=N*Ti,b(C,2*O+2*P+1),C[2*O+2*P+2]+=F*Ti,b(C,2*O+2*P+2)}for(O=0;O<A;O++)C[O]=C[2*O+1]<<16|C[2*O];for(O=A;O<2*A;O++)C[O]=0;return new s(C,0)};function b(S,A){for(;(S[A]&65535)!=S[A];)S[A+1]+=S[A]>>>16,S[A]&=65535,A++}function G(S,A){this.g=S,this.h=A}function M(S,A){if(p(A))throw Error("division by zero");if(p(S))return new G(d,d);if(_(S))return A=M(T(S),A),new G(T(A.g),T(A.h));if(_(A))return A=M(S,T(A)),new G(T(A.g),A.h);if(30<S.g.length){if(_(S)||_(A))throw Error("slowDivide_ only works with positive integers.");for(var C=f,O=A;0>=O.l(S);)C=U(C),O=U(O);var P=k(C,1),F=k(O,1);for(O=k(O,2),C=k(C,2);!p(O);){var N=F.add(O);0>=N.l(S)&&(P=P.add(C),F=N),O=k(O,1),C=k(C,1)}return A=D(S,P.j(A)),new G(P,A)}for(P=d;0<=S.l(A);){for(C=Math.max(1,Math.floor(S.m()/A.m())),O=Math.ceil(Math.log(C)/Math.LN2),O=48>=O?1:Math.pow(2,O-48),F=l(C),N=F.j(A);_(N)||0<N.l(S);)C-=O,F=l(C),N=F.j(A);p(F)&&(F=f),P=P.add(F),S=D(S,N)}return new G(P,S)}n.A=function(S){return M(this,S).h},n.and=function(S){for(var A=Math.max(this.g.length,S.g.length),C=[],O=0;O<A;O++)C[O]=this.i(O)&S.i(O);return new s(C,this.h&S.h)},n.or=function(S){for(var A=Math.max(this.g.length,S.g.length),C=[],O=0;O<A;O++)C[O]=this.i(O)|S.i(O);return new s(C,this.h|S.h)},n.xor=function(S){for(var A=Math.max(this.g.length,S.g.length),C=[],O=0;O<A;O++)C[O]=this.i(O)^S.i(O);return new s(C,this.h^S.h)};function U(S){for(var A=S.g.length+1,C=[],O=0;O<A;O++)C[O]=S.i(O)<<1|S.i(O-1)>>>31;return new s(C,S.h)}function k(S,A){var C=A>>5;A%=32;for(var O=S.g.length-C,P=[],F=0;F<O;F++)P[F]=0<A?S.i(F+C)>>>A|S.i(F+C+1)<<32-A:S.i(F+C);return new s(P,S.h)}t.prototype.digest=t.prototype.v,t.prototype.reset=t.prototype.s,t.prototype.update=t.prototype.u,Ow=ij.Md5=t,s.prototype.add=s.prototype.add,s.prototype.multiply=s.prototype.j,s.prototype.modulo=s.prototype.A,s.prototype.compare=s.prototype.l,s.prototype.toNumber=s.prototype.m,s.prototype.toString=s.prototype.toString,s.prototype.getBits=s.prototype.i,s.fromNumber=l,s.fromString=u,Ds=ij.Integer=s}).apply(typeof rj<"u"?rj:typeof self<"u"?self:typeof window<"u"?window:{});var _v=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Rs={};var ww,Xre,Jd,bw,Cm,Tv,Lw,Mw,Pw;(function(){var n,e=typeof Object.defineProperties=="function"?Object.defineProperty:function(h,m,E){return h==Array.prototype||h==Object.prototype||(h[m]=E.value),h};function r(h){h=[typeof globalThis=="object"&&globalThis,h,typeof window=="object"&&window,typeof self=="object"&&self,typeof _v=="object"&&_v];for(var m=0;m<h.length;++m){var E=h[m];if(E&&E.Math==Math)return E}throw Error("Cannot find global object")}var t=r(this);function i(h,m){if(m)e:{var E=t;h=h.split(".");for(var y=0;y<h.length-1;y++){var V=h[y];if(!(V in E))break e;E=E[V]}h=h[h.length-1],y=E[h],m=m(y),m!=y&&m!=null&&e(E,h,{configurable:!0,writable:!0,value:m})}}function o(h,m){h instanceof String&&(h+="");var E=0,y=!1,V={next:function(){if(!y&&E<h.length){var W=E++;return{value:m(W,h[W]),done:!1}}return y=!0,{done:!0,value:void 0}}};return V[Symbol.iterator]=function(){return V},V}i("Array.prototype.values",function(h){return h||function(){return o(this,function(m,E){return E})}});var s=s||{},a=this||self;function c(h){var m=typeof h;return m=m!="object"?m:h?Array.isArray(h)?"array":m:"null",m=="array"||m=="object"&&typeof h.length=="number"}function l(h){var m=typeof h;return m=="object"&&h!=null||m=="function"}function u(h,m,E){return h.call.apply(h.bind,arguments)}function d(h,m,E){if(!h)throw Error();if(2<arguments.length){var y=Array.prototype.slice.call(arguments,2);return function(){var V=Array.prototype.slice.call(arguments);return Array.prototype.unshift.apply(V,y),h.apply(m,V)}}return function(){return h.apply(m,arguments)}}function f(h,m,E){return f=Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?u:d,f.apply(null,arguments)}function g(h,m){var E=Array.prototype.slice.call(arguments,1);return function(){var y=E.slice();return y.push.apply(y,arguments),h.apply(this,y)}}function p(h,m){function E(){}E.prototype=m.prototype,h.aa=m.prototype,h.prototype=new E,h.prototype.constructor=h,h.Qb=function(y,V,W){for(var re=Array(arguments.length-2),ct=2;ct<arguments.length;ct++)re[ct-2]=arguments[ct];return m.prototype[V].apply(y,re)}}function _(h){let m=h.length;if(0<m){let E=Array(m);for(let y=0;y<m;y++)E[y]=h[y];return E}return[]}function T(h,m){for(let E=1;E<arguments.length;E++){let y=arguments[E];if(c(y)){let V=h.length||0,W=y.length||0;h.length=V+W;for(let re=0;re<W;re++)h[V+re]=y[re]}else h.push(y)}}class D{constructor(m,E){this.i=m,this.j=E,this.h=0,this.g=null}get(){let m;return 0<this.h?(this.h--,m=this.g,this.g=m.next,m.next=null):m=this.i(),m}}function b(h){return/^[\s\xa0]*$/.test(h)}function G(){var h=a.navigator;return h&&(h=h.userAgent)?h:""}function M(h){return M[" "](h),h}M[" "]=function(){};var U=G().indexOf("Gecko")!=-1&&!(G().toLowerCase().indexOf("webkit")!=-1&&G().indexOf("Edge")==-1)&&!(G().indexOf("Trident")!=-1||G().indexOf("MSIE")!=-1)&&G().indexOf("Edge")==-1;function k(h,m,E){for(let y in h)m.call(E,h[y],y,h)}function S(h,m){for(let E in h)m.call(void 0,h[E],E,h)}function A(h){let m={};for(let E in h)m[E]=h[E];return m}let C="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function O(h,m){let E,y;for(let V=1;V<arguments.length;V++){y=arguments[V];for(E in y)h[E]=y[E];for(let W=0;W<C.length;W++)E=C[W],Object.prototype.hasOwnProperty.call(y,E)&&(h[E]=y[E])}}function P(h){var m=1;h=h.split(":");let E=[];for(;0<m&&h.length;)E.push(h.shift()),m--;return h.length&&E.push(h.join(":")),E}function F(h){a.setTimeout(()=>{throw h},0)}function N(){var h=Kh;let m=null;return h.g&&(m=h.g,h.g=h.g.next,h.g||(h.h=null),m.next=null),m}class Ti{constructor(){this.h=this.g=null}add(m,E){let y=eo.get();y.set(m,E),this.h?this.h.next=y:this.g=y,this.h=y}}var eo=new D(()=>new qh,h=>h.reset());class qh{constructor(){this.next=this.g=this.h=null}set(m,E){this.h=m,this.g=E,this.next=null}reset(){this.next=this.g=this.h=null}}let Ms,nc=!1,Kh=new Ti,Op=()=>{let h=a.Promise.resolve(void 0);Ms=()=>{h.then(Jt)}};var Jt=()=>{for(var h;h=N();){try{h.h.call(h.g)}catch(E){F(E)}var m=eo;m.j(h),100>m.h&&(m.h++,h.next=m.g,m.g=h)}nc=!1};function br(){this.s=this.s,this.C=this.C}br.prototype.s=!1,br.prototype.ma=function(){this.s||(this.s=!0,this.N())},br.prototype.N=function(){if(this.C)for(;this.C.length;)this.C.shift()()};function qt(h,m){this.type=h,this.g=this.target=m,this.defaultPrevented=!1}qt.prototype.h=function(){this.defaultPrevented=!0};var ru=(function(){if(!a.addEventListener||!Object.defineProperty)return!1;var h=!1,m=Object.defineProperty({},"passive",{get:function(){h=!0}});try{let E=()=>{};a.addEventListener("test",E,m),a.removeEventListener("test",E,m)}catch{}return h})();function rc(h,m){if(qt.call(this,h?h.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,h){var E=this.type=h.type,y=h.changedTouches&&h.changedTouches.length?h.changedTouches[0]:null;if(this.target=h.target||h.srcElement,this.g=m,m=h.relatedTarget){if(U){e:{try{M(m.nodeName);var V=!0;break e}catch{}V=!1}V||(m=null)}}else E=="mouseover"?m=h.fromElement:E=="mouseout"&&(m=h.toElement);this.relatedTarget=m,y?(this.clientX=y.clientX!==void 0?y.clientX:y.pageX,this.clientY=y.clientY!==void 0?y.clientY:y.pageY,this.screenX=y.screenX||0,this.screenY=y.screenY||0):(this.clientX=h.clientX!==void 0?h.clientX:h.pageX,this.clientY=h.clientY!==void 0?h.clientY:h.pageY,this.screenX=h.screenX||0,this.screenY=h.screenY||0),this.button=h.button,this.key=h.key||"",this.ctrlKey=h.ctrlKey,this.altKey=h.altKey,this.shiftKey=h.shiftKey,this.metaKey=h.metaKey,this.pointerId=h.pointerId||0,this.pointerType=typeof h.pointerType=="string"?h.pointerType:eS[h.pointerType]||"",this.state=h.state,this.i=h,h.defaultPrevented&&rc.aa.h.call(this)}}p(rc,qt);var eS={2:"touch",3:"pen",4:"mouse"};rc.prototype.h=function(){rc.aa.h.call(this);var h=this.i;h.preventDefault?h.preventDefault():h.returnValue=!1};var ic="closure_listenable_"+(1e6*Math.random()|0),wp=0;function tS(h,m,E,y,V){this.listener=h,this.proxy=null,this.src=m,this.type=E,this.capture=!!y,this.ha=V,this.key=++wp,this.da=this.fa=!1}function oc(h){h.da=!0,h.listener=null,h.proxy=null,h.src=null,h.ha=null}function ft(h){this.src=h,this.g={},this.h=0}ft.prototype.add=function(h,m,E,y,V){var W=h.toString();h=this.g[W],h||(h=this.g[W]=[],this.h++);var re=vt(h,m,y,V);return-1<re?(m=h[re],E||(m.fa=!1)):(m=new tS(m,this.src,W,!!y,V),m.fa=E,h.push(m)),m};function sc(h,m){var E=m.type;if(E in h.g){var y=h.g[E],V=Array.prototype.indexOf.call(y,m,void 0),W;(W=0<=V)&&Array.prototype.splice.call(y,V,1),W&&(oc(m),h.g[E].length==0&&(delete h.g[E],h.h--))}}function vt(h,m,E,y){for(var V=0;V<h.length;++V){var W=h[V];if(!W.da&&W.listener==m&&W.capture==!!E&&W.ha==y)return V}return-1}var ac="closure_lm_"+(1e6*Math.random()|0),yt={};function Ps(h,m,E,y,V){if(y&&y.once)return Yh(h,m,E,y,V);if(Array.isArray(m)){for(var W=0;W<m.length;W++)Ps(h,m[W],E,y,V);return null}return E=lc(E),h&&h[ic]?h.K(m,E,l(y)?!!y.capture:!!y,V):cc(h,m,E,!1,y,V)}function cc(h,m,E,y,V,W){if(!m)throw Error("Invalid event type");var re=l(V)?!!V.capture:!!V,ct=Ko(h);if(ct||(h[ac]=ct=new ft(h)),E=ct.add(m,E,y,re,W),E.proxy)return E;if(y=to(),E.proxy=y,y.src=h,y.listener=E,h.addEventListener)ru||(V=re),V===void 0&&(V=!1),h.addEventListener(m.toString(),y,V);else if(h.attachEvent)h.attachEvent(Qh(m.toString()),y);else if(h.addListener&&h.removeListener)h.addListener(y);else throw Error("addEventListener and attachEvent are unavailable.");return E}function to(){function h(E){return m.call(h.src,h.listener,E)}let m=no;return h}function Yh(h,m,E,y,V){if(Array.isArray(m)){for(var W=0;W<m.length;W++)Yh(h,m[W],E,y,V);return null}return E=lc(E),h&&h[ic]?h.L(m,E,l(y)?!!y.capture:!!y,V):cc(h,m,E,!0,y,V)}function iu(h,m,E,y,V){if(Array.isArray(m))for(var W=0;W<m.length;W++)iu(h,m[W],E,y,V);else y=l(y)?!!y.capture:!!y,E=lc(E),h&&h[ic]?(h=h.i,m=String(m).toString(),m in h.g&&(W=h.g[m],E=vt(W,E,y,V),-1<E&&(oc(W[E]),Array.prototype.splice.call(W,E,1),W.length==0&&(delete h.g[m],h.h--)))):h&&(h=Ko(h))&&(m=h.g[m.toString()],h=-1,m&&(h=vt(m,E,y,V)),(E=-1<h?m[h]:null)&&ou(E))}function ou(h){if(typeof h!="number"&&h&&!h.da){var m=h.src;if(m&&m[ic])sc(m.i,h);else{var E=h.type,y=h.proxy;m.removeEventListener?m.removeEventListener(E,y,h.capture):m.detachEvent?m.detachEvent(Qh(E),y):m.addListener&&m.removeListener&&m.removeListener(y),(E=Ko(m))?(sc(E,h),E.h==0&&(E.src=null,m[ac]=null)):oc(h)}}}function Qh(h){return h in yt?yt[h]:yt[h]="on"+h}function no(h,m){if(h.da)h=!0;else{m=new rc(m,this);var E=h.listener,y=h.ha||h.src;h.fa&&ou(h),h=E.call(y,m)}return h}function Ko(h){return h=h[ac],h instanceof ft?h:null}var Ii="__closure_events_fn_"+(1e9*Math.random()>>>0);function lc(h){return typeof h=="function"?h:(h[Ii]||(h[Ii]=function(m){return h.handleEvent(m)}),h[Ii])}function Zt(){br.call(this),this.i=new ft(this),this.M=this,this.F=null}p(Zt,br),Zt.prototype[ic]=!0,Zt.prototype.removeEventListener=function(h,m,E,y){iu(this,h,m,E,y)};function Bt(h,m){var E,y=h.F;if(y)for(E=[];y;y=y.F)E.push(y);if(h=h.M,y=m.type||m,typeof m=="string")m=new qt(m,h);else if(m instanceof qt)m.target=m.target||h;else{var V=m;m=new qt(y,h),O(m,V)}if(V=!0,E)for(var W=E.length-1;0<=W;W--){var re=m.g=E[W];V=Yo(re,y,!0,m)&&V}if(re=m.g=h,V=Yo(re,y,!0,m)&&V,V=Yo(re,y,!1,m)&&V,E)for(W=0;W<E.length;W++)re=m.g=E[W],V=Yo(re,y,!1,m)&&V}Zt.prototype.N=function(){if(Zt.aa.N.call(this),this.i){var h=this.i,m;for(m in h.g){for(var E=h.g[m],y=0;y<E.length;y++)oc(E[y]);delete h.g[m],h.h--}}this.F=null},Zt.prototype.K=function(h,m,E,y){return this.i.add(String(h),m,!1,E,y)},Zt.prototype.L=function(h,m,E,y){return this.i.add(String(h),m,!0,E,y)};function Yo(h,m,E,y){if(m=h.i.g[String(m)],!m)return!0;m=m.concat();for(var V=!0,W=0;W<m.length;++W){var re=m[W];if(re&&!re.da&&re.capture==E){var ct=re.listener,Mn=re.ha||re.src;re.fa&&sc(h.i,re),V=ct.call(Mn,y)!==!1&&V}}return V&&!y.defaultPrevented}function uc(h,m,E){if(typeof h=="function")E&&(h=f(h,E));else if(h&&typeof h.handleEvent=="function")h=f(h.handleEvent,h);else throw Error("Invalid listener argument");return 2147483647<Number(m)?-1:a.setTimeout(h,m||0)}function Xh(h){h.g=uc(()=>{h.g=null,h.i&&(h.i=!1,Xh(h))},h.l);let m=h.h;h.h=null,h.m.apply(null,m)}class bp extends br{constructor(m,E){super(),this.m=m,this.l=E,this.h=null,this.i=!1,this.g=null}j(m){this.h=arguments,this.g?this.i=!0:Xh(this)}N(){super.N(),this.g&&(a.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function xs(h){br.call(this),this.h=h,this.g={}}p(xs,br);var su=[];function au(h){k(h.g,function(m,E){this.g.hasOwnProperty(E)&&ou(m)},h),h.g={}}xs.prototype.N=function(){xs.aa.N.call(this),au(this)},xs.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented")};var ro=a.JSON.stringify,Jr=a.JSON.parse,Jh=class{stringify(h){return a.JSON.stringify(h,void 0)}parse(h){return a.JSON.parse(h,void 0)}};function cu(){}cu.prototype.h=null;function Zh(h){return h.h||(h.h=h.i())}function lu(){}var Fs={OPEN:"a",kb:"b",Ja:"c",wb:"d"};function ks(){qt.call(this,"d")}p(ks,qt);function Us(){qt.call(this,"c")}p(Us,qt);var Sn={},Qo=null;function Vs(){return Qo=Qo||new Zt}Sn.La="serverreachability";function uu(h){qt.call(this,Sn.La,h)}p(uu,qt);function dc(h){let m=Vs();Bt(m,new uu(m))}Sn.STAT_EVENT="statevent";function du(h,m){qt.call(this,Sn.STAT_EVENT,h),this.stat=m}p(du,qt);function dn(h){let m=Vs();Bt(m,new du(m,h))}Sn.Ma="timingevent";function Lp(h,m){qt.call(this,Sn.Ma,h),this.size=m}p(Lp,qt);function vi(h,m){if(typeof h!="function")throw Error("Fn must not be null and must be a function");return a.setTimeout(function(){h()},m)}function hc(){this.g=!0}hc.prototype.xa=function(){this.g=!1};function nS(h,m,E,y,V,W){h.info(function(){if(h.g)if(W)for(var re="",ct=W.split("&"),Mn=0;Mn<ct.length;Mn++){var ze=ct[Mn].split("=");if(1<ze.length){var $n=ze[0];ze=ze[1];var jn=$n.split("_");re=2<=jn.length&&jn[1]=="type"?re+($n+"="+ze+"&"):re+($n+"=redacted&")}}else re=null;else re=W;return"XMLHTTP REQ ("+y+") [attempt "+V+"]: "+m+`
147
- `+E+`
148
- `+re})}function Rt(h,m,E,y,V,W,re){h.info(function(){return"XMLHTTP RESP ("+y+") [ attempt "+V+"]: "+m+`
149
- `+E+`
150
- `+W+" "+re})}function Lr(h,m,E,y){h.info(function(){return"XMLHTTP TEXT ("+m+"): "+Mp(h,E)+(y?" "+y:"")})}function rS(h,m){h.info(function(){return"TIMEOUT: "+m})}hc.prototype.info=function(){};function Mp(h,m){if(!h.g)return m;if(!m)return null;try{var E=JSON.parse(m);if(E){for(h=0;h<E.length;h++)if(Array.isArray(E[h])){var y=E[h];if(!(2>y.length)){var V=y[1];if(Array.isArray(V)&&!(1>V.length)){var W=V[0];if(W!="noop"&&W!="stop"&&W!="close")for(var re=1;re<V.length;re++)V[re]=""}}}}return ro(E)}catch{return m}}var Bs={NO_ERROR:0,gb:1,tb:2,sb:3,nb:4,rb:5,ub:6,Ia:7,TIMEOUT:8,xb:9},ef={lb:"complete",Hb:"success",Ja:"error",Ia:"abort",zb:"ready",Ab:"readystatechange",TIMEOUT:"timeout",vb:"incrementaldata",yb:"progress",ob:"downloadprogress",Pb:"uploadprogress"},hu;function fu(){}p(fu,cu),fu.prototype.g=function(){return new XMLHttpRequest},fu.prototype.i=function(){return{}},hu=new fu;function en(h,m,E,y){this.j=h,this.i=m,this.l=E,this.R=y||1,this.U=new xs(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 tf}function tf(){this.i=null,this.g="",this.h=!1}var io={},nf={};function rf(h,m,E){h.L=1,h.v=Pp(Ye(m)),h.m=E,h.P=!0,of(h,null)}function of(h,m){h.F=Date.now(),Xo(h),h.A=Ye(h.v);var E=h.A,y=h.R;Array.isArray(y)||(y=[String(y)]),HM(E.i,"t",y),h.C=0,E=h.j.J,h.h=new tf,h.g=cP(h.j,E?m:null,!h.m),0<h.O&&(h.M=new bp(f(h.Y,h,h.g),h.O)),m=h.U,E=h.g,y=h.ca;var V="readystatechange";Array.isArray(V)||(V&&(su[0]=V.toString()),V=su);for(var W=0;W<V.length;W++){var re=Ps(E,V[W],y||m.handleEvent,!1,m.h||m);if(!re)break;m.g[re.key]=re}m=h.H?A(h.H):{},h.m?(h.u||(h.u="POST"),m["Content-Type"]="application/x-www-form-urlencoded",h.g.ea(h.A,h.u,h.m,m)):(h.u="GET",h.g.ea(h.A,h.u,null,m)),dc(),nS(h.i,h.u,h.A,h.l,h.R,h.m)}en.prototype.ca=function(h){h=h.target;let m=this.M;m&&es(h)==3?m.j():this.Y(h)},en.prototype.Y=function(h){try{if(h==this.g)e:{let jn=es(this.g);var m=this.g.Ba();let Eu=this.g.Z();if(!(3>jn)&&(jn!=3||this.g&&(this.h.h||this.g.oa()||XM(this.g)))){this.J||jn!=4||m==7||(m==8||0>=Eu?dc(3):dc(2)),Zo(this);var E=this.g.Z();this.X=E;t:if(sf(this)){var y=XM(this.g);h="";var V=y.length,W=es(this.g)==4;if(!this.h.i){if(typeof TextDecoder>"u"){oo(this),ir(this);var re="";break t}this.h.i=new a.TextDecoder}for(m=0;m<V;m++)this.h.h=!0,h+=this.h.i.decode(y[m],{stream:!(W&&m==V-1)});y.length=0,this.h.g+=h,this.C=0,re=this.h.g}else re=this.g.oa();if(this.o=E==200,Rt(this.i,this.u,this.A,this.l,this.R,jn,E),this.o){if(this.T&&!this.K){t:{if(this.g){var ct,Mn=this.g;if((ct=Mn.g?Mn.g.getResponseHeader("X-HTTP-Initial-Response"):null)&&!b(ct)){var ze=ct;break t}}ze=null}if(E=ze)Lr(this.i,this.l,E,"Initial handshake response via X-HTTP-Initial-Response"),this.K=!0,gu(this,E);else{this.o=!1,this.s=3,dn(12),oo(this),ir(this);break e}}if(this.P){E=!0;let yi;for(;!this.J&&this.C<re.length;)if(yi=af(this,re),yi==nf){jn==4&&(this.s=4,dn(14),E=!1),Lr(this.i,this.l,null,"[Incomplete Response]");break}else if(yi==io){this.s=4,dn(15),Lr(this.i,this.l,re,"[Invalid Chunk]"),E=!1;break}else Lr(this.i,this.l,yi,null),gu(this,yi);if(sf(this)&&this.C!=0&&(this.h.g=this.h.g.slice(this.C),this.C=0),jn!=4||re.length!=0||this.h.h||(this.s=1,dn(16),E=!1),this.o=this.o&&E,!E)Lr(this.i,this.l,re,"[Invalid Chunked Response]"),oo(this),ir(this);else if(0<re.length&&!this.W){this.W=!0;var $n=this.j;$n.g==this&&$n.ba&&!$n.M&&($n.j.info("Great, no buffering proxy detected. Bytes received: "+re.length),cS($n),$n.M=!0,dn(11))}}else Lr(this.i,this.l,re,null),gu(this,re);jn==4&&oo(this),this.o&&!this.J&&(jn==4?iP(this.j,this):(this.o=!1,Xo(this)))}else fz(this.g),E==400&&0<re.indexOf("Unknown SID")?(this.s=3,dn(12)):(this.s=0,dn(13)),oo(this),ir(this)}}}catch{}};function sf(h){return h.g?h.u=="GET"&&h.L!=2&&h.j.Ca:!1}function af(h,m){var E=h.C,y=m.indexOf(`
151
- `,E);return y==-1?nf:(E=Number(m.substring(E,y)),isNaN(E)?io:(y+=1,y+E>m.length?nf:(m=m.slice(y,y+E),h.C=y+E,m)))}en.prototype.cancel=function(){this.J=!0,oo(this)};function Xo(h){h.S=Date.now()+h.I,Jo(h,h.I)}function Jo(h,m){if(h.B!=null)throw Error("WatchDog timer not null");h.B=vi(f(h.ba,h),m)}function Zo(h){h.B&&(a.clearTimeout(h.B),h.B=null)}en.prototype.ba=function(){this.B=null;let h=Date.now();0<=h-this.S?(rS(this.i,this.A),this.L!=2&&(dc(),dn(17)),oo(this),this.s=2,ir(this)):Jo(this,this.S-h)};function ir(h){h.j.G==0||h.J||iP(h.j,h)}function oo(h){Zo(h);var m=h.M;m&&typeof m.ma=="function"&&m.ma(),h.M=null,au(h.U),h.g&&(m=h.g,h.g=null,m.abort(),m.ma())}function gu(h,m){try{var E=h.j;if(E.G!=0&&(E.g==h||gc(E.h,h))){if(!h.K&&gc(E.h,h)&&E.G==3){try{var y=E.Da.g.parse(m)}catch{y=null}if(Array.isArray(y)&&y.length==3){var V=y;if(V[0]==0){e:if(!E.u){if(E.g)if(E.g.F+3e3<h.F)Vp(E),kp(E);else break e;aS(E),dn(18)}}else E.za=V[1],0<E.za-E.T&&37500>V[2]&&E.F&&E.v==0&&!E.C&&(E.C=vi(f(E.Za,E),6e3));if(1>=fc(E.h)&&E.ca){try{E.ca()}catch{}E.ca=void 0}}else mc(E,11)}else if((h.K||E.g==h)&&Vp(E),!b(m))for(V=E.Da.g.parse(m),m=0;m<V.length;m++){let ze=V[m];if(E.T=ze[0],ze=ze[1],E.G==2)if(ze[0]=="c"){E.K=ze[1],E.ia=ze[2];let $n=ze[3];$n!=null&&(E.la=$n,E.j.info("VER="+E.la));let jn=ze[4];jn!=null&&(E.Aa=jn,E.j.info("SVER="+E.Aa));let Eu=ze[5];Eu!=null&&typeof Eu=="number"&&0<Eu&&(y=1.5*Eu,E.L=y,E.j.info("backChannelRequestTimeoutMs_="+y)),y=E;let yi=h.g;if(yi){let Gp=yi.g?yi.g.getResponseHeader("X-Client-Wire-Protocol"):null;if(Gp){var W=y.h;W.g||Gp.indexOf("spdy")==-1&&Gp.indexOf("quic")==-1&&Gp.indexOf("h2")==-1||(W.j=W.l,W.g=new Set,W.h&&(se(W,W.h),W.h=null))}if(y.D){let lS=yi.g?yi.g.getResponseHeader("X-HTTP-Session-Id"):null;lS&&(y.ya=lS,rt(y.I,y.D,lS))}}E.G=3,E.l&&E.l.ua(),E.ba&&(E.R=Date.now()-h.F,E.j.info("Handshake RTT: "+E.R+"ms")),y=E;var re=h;if(y.qa=aP(y,y.J?y.ia:null,y.W),re.K){R(y.h,re);var ct=re,Mn=y.L;Mn&&(ct.I=Mn),ct.B&&(Zo(ct),Xo(ct)),y.g=re}else nP(y);0<E.i.length&&Up(E)}else ze[0]!="stop"&&ze[0]!="close"||mc(E,7);else E.G==3&&(ze[0]=="stop"||ze[0]=="close"?ze[0]=="stop"?mc(E,7):sS(E):ze[0]!="noop"&&E.l&&E.l.ta(ze),E.v=0)}}dc(4)}catch{}}var iS=class{constructor(h,m){this.g=h,this.map=m}};function cf(h){this.l=h||10,a.PerformanceNavigationTiming?(h=a.performance.getEntriesByType("navigation"),h=0<h.length&&(h[0].nextHopProtocol=="hq"||h[0].nextHopProtocol=="h2")):h=!!(a.chrome&&a.chrome.loadTimes&&a.chrome.loadTimes()&&a.chrome.loadTimes().wasFetchedViaSpdy),this.j=h?this.l:1,this.g=null,1<this.j&&(this.g=new Set),this.h=null,this.i=[]}function lf(h){return h.h?!0:h.g?h.g.size>=h.j:!1}function fc(h){return h.h?1:h.g?h.g.size:0}function gc(h,m){return h.h?h.h==m:h.g?h.g.has(m):!1}function se(h,m){h.g?h.g.add(m):h.h=m}function R(h,m){h.h&&h.h==m?h.h=null:h.g&&h.g.has(m)&&h.g.delete(m)}cf.prototype.cancel=function(){if(this.i=z(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(let h of this.g.values())h.cancel();this.g.clear()}};function z(h){if(h.h!=null)return h.i.concat(h.h.D);if(h.g!=null&&h.g.size!==0){let m=h.i;for(let E of h.g.values())m=m.concat(E.D);return m}return _(h.i)}function te(h){if(h.V&&typeof h.V=="function")return h.V();if(typeof Map<"u"&&h instanceof Map||typeof Set<"u"&&h instanceof Set)return Array.from(h.values());if(typeof h=="string")return h.split("");if(c(h)){for(var m=[],E=h.length,y=0;y<E;y++)m.push(h[y]);return m}m=[],E=0;for(y in h)m[E++]=h[y];return m}function ve(h){if(h.na&&typeof h.na=="function")return h.na();if(!h.V||typeof h.V!="function"){if(typeof Map<"u"&&h instanceof Map)return Array.from(h.keys());if(!(typeof Set<"u"&&h instanceof Set)){if(c(h)||typeof h=="string"){var m=[];h=h.length;for(var E=0;E<h;E++)m.push(E);return m}m=[],E=0;for(let y in h)m[E++]=y;return m}}}function Ce(h,m){if(h.forEach&&typeof h.forEach=="function")h.forEach(m,void 0);else if(c(h)||typeof h=="string")Array.prototype.forEach.call(h,m,void 0);else for(var E=ve(h),y=te(h),V=y.length,W=0;W<V;W++)m.call(void 0,y[W],E&&E[W],h)}var Ne=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$");function Kt(h,m){if(h){h=h.split("&");for(var E=0;E<h.length;E++){var y=h[E].indexOf("="),V=null;if(0<=y){var W=h[E].substring(0,y);V=h[E].substring(y+1)}else W=h[E];m(W,V?decodeURIComponent(V.replace(/\+/g," ")):"")}}}function je(h){if(this.g=this.o=this.j="",this.s=null,this.m=this.l="",this.h=!1,h instanceof je){this.h=h.h,Mr(this,h.j),this.o=h.o,this.g=h.g,xt(this,h.s),this.l=h.l;var m=h.i,E=new ff;E.i=m.i,m.g&&(E.g=new Map(m.g),E.h=m.h),uf(this,E),this.m=h.m}else h&&(m=String(h).match(Ne))?(this.h=!1,Mr(this,m[1]||"",!0),this.o=df(m[2]||""),this.g=df(m[3]||"",!0),xt(this,m[4]),this.l=df(m[5]||"",!0),uf(this,m[6]||"",!0),this.m=df(m[7]||"")):(this.h=!1,this.i=new ff(null,this.h))}je.prototype.toString=function(){var h=[],m=this.j;m&&h.push(hf(m,GM,!0),":");var E=this.g;return(E||m=="file")&&(h.push("//"),(m=this.o)&&h.push(hf(m,GM,!0),"@"),h.push(encodeURIComponent(String(E)).replace(/%25([0-9a-fA-F]{2})/g,"%$1")),E=this.s,E!=null&&h.push(":",String(E))),(E=this.l)&&(this.g&&E.charAt(0)!="/"&&h.push("/"),h.push(hf(E,E.charAt(0)=="/"?rz:nz,!0))),(E=this.i.toString())&&h.push("?",E),(E=this.m)&&h.push("#",hf(E,oz)),h.join("")};function Ye(h){return new je(h)}function Mr(h,m,E){h.j=E?df(m,!0):m,h.j&&(h.j=h.j.replace(/:$/,""))}function xt(h,m){if(m){if(m=Number(m),isNaN(m)||0>m)throw Error("Bad port number "+m);h.s=m}else h.s=null}function uf(h,m,E){m instanceof ff?(h.i=m,sz(h.i,h.h)):(E||(m=hf(m,iz)),h.i=new ff(m,h.h))}function rt(h,m,E){h.i.set(m,E)}function Pp(h){return rt(h,"zx",Math.floor(2147483648*Math.random()).toString(36)+Math.abs(Math.floor(2147483648*Math.random())^Date.now()).toString(36)),h}function df(h,m){return h?m?decodeURI(h.replace(/%25/g,"%2525")):decodeURIComponent(h):""}function hf(h,m,E){return typeof h=="string"?(h=encodeURI(h).replace(m,tz),E&&(h=h.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),h):null}function tz(h){return h=h.charCodeAt(0),"%"+(h>>4&15).toString(16)+(h&15).toString(16)}var GM=/[#\/\?@]/g,nz=/[#\?:]/g,rz=/[#\?]/g,iz=/[#\?@]/g,oz=/#/g;function ff(h,m){this.h=this.g=null,this.i=h||null,this.j=!!m}function Gs(h){h.g||(h.g=new Map,h.h=0,h.i&&Kt(h.i,function(m,E){h.add(decodeURIComponent(m.replace(/\+/g," ")),E)}))}n=ff.prototype,n.add=function(h,m){Gs(this),this.i=null,h=mu(this,h);var E=this.g.get(h);return E||this.g.set(h,E=[]),E.push(m),this.h+=1,this};function $M(h,m){Gs(h),m=mu(h,m),h.g.has(m)&&(h.i=null,h.h-=h.g.get(m).length,h.g.delete(m))}function jM(h,m){return Gs(h),m=mu(h,m),h.g.has(m)}n.forEach=function(h,m){Gs(this),this.g.forEach(function(E,y){E.forEach(function(V){h.call(m,V,y,this)},this)},this)},n.na=function(){Gs(this);let h=Array.from(this.g.values()),m=Array.from(this.g.keys()),E=[];for(let y=0;y<m.length;y++){let V=h[y];for(let W=0;W<V.length;W++)E.push(m[y])}return E},n.V=function(h){Gs(this);let m=[];if(typeof h=="string")jM(this,h)&&(m=m.concat(this.g.get(mu(this,h))));else{h=Array.from(this.g.values());for(let E=0;E<h.length;E++)m=m.concat(h[E])}return m},n.set=function(h,m){return Gs(this),this.i=null,h=mu(this,h),jM(this,h)&&(this.h-=this.g.get(h).length),this.g.set(h,[m]),this.h+=1,this},n.get=function(h,m){return h?(h=this.V(h),0<h.length?String(h[0]):m):m};function HM(h,m,E){$M(h,m),0<E.length&&(h.i=null,h.g.set(mu(h,m),_(E)),h.h+=E.length)}n.toString=function(){if(this.i)return this.i;if(!this.g)return"";let h=[],m=Array.from(this.g.keys());for(var E=0;E<m.length;E++){var y=m[E];let W=encodeURIComponent(String(y)),re=this.V(y);for(y=0;y<re.length;y++){var V=W;re[y]!==""&&(V+="="+encodeURIComponent(String(re[y]))),h.push(V)}}return this.i=h.join("&")};function mu(h,m){return m=String(m),h.j&&(m=m.toLowerCase()),m}function sz(h,m){m&&!h.j&&(Gs(h),h.i=null,h.g.forEach(function(E,y){var V=y.toLowerCase();y!=V&&($M(this,y),HM(this,V,E))},h)),h.j=m}function az(h,m){let E=new hc;if(a.Image){let y=new Image;y.onload=g($s,E,"TestLoadImage: loaded",!0,m,y),y.onerror=g($s,E,"TestLoadImage: error",!1,m,y),y.onabort=g($s,E,"TestLoadImage: abort",!1,m,y),y.ontimeout=g($s,E,"TestLoadImage: timeout",!1,m,y),a.setTimeout(function(){y.ontimeout&&y.ontimeout()},1e4),y.src=h}else m(!1)}function cz(h,m){let E=new hc,y=new AbortController,V=setTimeout(()=>{y.abort(),$s(E,"TestPingServer: timeout",!1,m)},1e4);fetch(h,{signal:y.signal}).then(W=>{clearTimeout(V),W.ok?$s(E,"TestPingServer: ok",!0,m):$s(E,"TestPingServer: server error",!1,m)}).catch(()=>{clearTimeout(V),$s(E,"TestPingServer: error",!1,m)})}function $s(h,m,E,y,V){try{V&&(V.onload=null,V.onerror=null,V.onabort=null,V.ontimeout=null),y(E)}catch{}}function lz(){this.g=new Jh}function uz(h,m,E){let y=E||"";try{Ce(h,function(V,W){let re=V;l(V)&&(re=ro(V)),m.push(y+W+"="+encodeURIComponent(re))})}catch(V){throw m.push(y+"type="+encodeURIComponent("_badmap")),V}}function gf(h){this.l=h.Ub||null,this.j=h.eb||!1}p(gf,cu),gf.prototype.g=function(){return new xp(this.l,this.j)},gf.prototype.i=(function(h){return function(){return h}})({});function xp(h,m){Zt.call(this),this.D=h,this.o=m,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}p(xp,Zt),n=xp.prototype,n.open=function(h,m){if(this.readyState!=0)throw this.abort(),Error("Error reopening a connection");this.B=h,this.A=m,this.readyState=1,pf(this)},n.send=function(h){if(this.readyState!=1)throw this.abort(),Error("need to call open() first. ");this.g=!0;let m={headers:this.u,method:this.B,credentials:this.m,cache:void 0};h&&(m.body=h),(this.D||a).fetch(new Request(this.A,m)).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,mf(this)),this.readyState=0},n.Sa=function(h){if(this.g&&(this.l=h,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=h.headers,this.readyState=2,pf(this)),this.g&&(this.readyState=3,pf(this),this.g)))if(this.responseType==="arraybuffer")h.arrayBuffer().then(this.Qa.bind(this),this.ga.bind(this));else if(typeof a.ReadableStream<"u"&&"body"in h){if(this.j=h.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;WM(this)}else h.text().then(this.Ra.bind(this),this.ga.bind(this))};function WM(h){h.j.read().then(h.Pa.bind(h)).catch(h.ga.bind(h))}n.Pa=function(h){if(this.g){if(this.o&&h.value)this.response.push(h.value);else if(!this.o){var m=h.value?h.value:new Uint8Array(0);(m=this.v.decode(m,{stream:!h.done}))&&(this.response=this.responseText+=m)}h.done?mf(this):pf(this),this.readyState==3&&WM(this)}},n.Ra=function(h){this.g&&(this.response=this.responseText=h,mf(this))},n.Qa=function(h){this.g&&(this.response=h,mf(this))},n.ga=function(){this.g&&mf(this)};function mf(h){h.readyState=4,h.l=null,h.j=null,h.v=null,pf(h)}n.setRequestHeader=function(h,m){this.u.append(h,m)},n.getResponseHeader=function(h){return this.h&&this.h.get(h.toLowerCase())||""},n.getAllResponseHeaders=function(){if(!this.h)return"";let h=[],m=this.h.entries();for(var E=m.next();!E.done;)E=E.value,h.push(E[0]+": "+E[1]),E=m.next();return h.join(`\r
152
- `)};function pf(h){h.onreadystatechange&&h.onreadystatechange.call(h)}Object.defineProperty(xp.prototype,"withCredentials",{get:function(){return this.m==="include"},set:function(h){this.m=h?"include":"same-origin"}});function zM(h){let m="";return k(h,function(E,y){m+=y,m+=":",m+=E,m+=`\r
153
- `}),m}function oS(h,m,E){e:{for(y in E){var y=!1;break e}y=!0}y||(E=zM(E),typeof h=="string"?E!=null&&encodeURIComponent(String(E)):rt(h,m,E))}function Gt(h){Zt.call(this),this.headers=new Map,this.o=h||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}p(Gt,Zt);var dz=/^https?$/i,hz=["POST","PUT"];n=Gt.prototype,n.Ha=function(h){this.J=h},n.ea=function(h,m,E,y){if(this.g)throw Error("[goog.net.XhrIo] Object is active with another request="+this.D+"; newUri="+h);m=m?m.toUpperCase():"GET",this.D=h,this.l="",this.m=0,this.A=!1,this.h=!0,this.g=this.o?this.o.g():hu.g(),this.v=this.o?Zh(this.o):Zh(hu),this.g.onreadystatechange=f(this.Ea,this);try{this.B=!0,this.g.open(m,String(h),!0),this.B=!1}catch(W){qM(this,W);return}if(h=E||"",E=new Map(this.headers),y)if(Object.getPrototypeOf(y)===Object.prototype)for(var V in y)E.set(V,y[V]);else if(typeof y.keys=="function"&&typeof y.get=="function")for(let W of y.keys())E.set(W,y.get(W));else throw Error("Unknown input type for opt_headers: "+String(y));y=Array.from(E.keys()).find(W=>W.toLowerCase()=="content-type"),V=a.FormData&&h instanceof a.FormData,!(0<=Array.prototype.indexOf.call(hz,m,void 0))||y||V||E.set("Content-Type","application/x-www-form-urlencoded;charset=utf-8");for(let[W,re]of E)this.g.setRequestHeader(W,re);this.H&&(this.g.responseType=this.H),"withCredentials"in this.g&&this.g.withCredentials!==this.J&&(this.g.withCredentials=this.J);try{QM(this),this.u=!0,this.g.send(h),this.u=!1}catch(W){qM(this,W)}};function qM(h,m){h.h=!1,h.g&&(h.j=!0,h.g.abort(),h.j=!1),h.l=m,h.m=5,KM(h),Fp(h)}function KM(h){h.A||(h.A=!0,Bt(h,"complete"),Bt(h,"error"))}n.abort=function(h){this.g&&this.h&&(this.h=!1,this.j=!0,this.g.abort(),this.j=!1,this.m=h||7,Bt(this,"complete"),Bt(this,"abort"),Fp(this))},n.N=function(){this.g&&(this.h&&(this.h=!1,this.j=!0,this.g.abort(),this.j=!1),Fp(this,!0)),Gt.aa.N.call(this)},n.Ea=function(){this.s||(this.B||this.u||this.j?YM(this):this.bb())},n.bb=function(){YM(this)};function YM(h){if(h.h&&typeof s<"u"&&(!h.v[1]||es(h)!=4||h.Z()!=2)){if(h.u&&es(h)==4)uc(h.Ea,0,h);else if(Bt(h,"readystatechange"),es(h)==4){h.h=!1;try{let re=h.Z();e:switch(re){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:var m=!0;break e;default:m=!1}var E;if(!(E=m)){var y;if(y=re===0){var V=String(h.D).match(Ne)[1]||null;!V&&a.self&&a.self.location&&(V=a.self.location.protocol.slice(0,-1)),y=!dz.test(V?V.toLowerCase():"")}E=y}if(E)Bt(h,"complete"),Bt(h,"success");else{h.m=6;try{var W=2<es(h)?h.g.statusText:""}catch{W=""}h.l=W+" ["+h.Z()+"]",KM(h)}}finally{Fp(h)}}}}function Fp(h,m){if(h.g){QM(h);let E=h.g,y=h.v[0]?()=>{}:null;h.g=null,h.v=null,m||Bt(h,"ready");try{E.onreadystatechange=y}catch{}}}function QM(h){h.I&&(a.clearTimeout(h.I),h.I=null)}n.isActive=function(){return!!this.g};function es(h){return h.g?h.g.readyState:0}n.Z=function(){try{return 2<es(this)?this.g.status:-1}catch{return-1}},n.oa=function(){try{return this.g?this.g.responseText:""}catch{return""}},n.Oa=function(h){if(this.g){var m=this.g.responseText;return h&&m.indexOf(h)==0&&(m=m.substring(h.length)),Jr(m)}};function XM(h){try{if(!h.g)return null;if("response"in h.g)return h.g.response;switch(h.H){case"":case"text":return h.g.responseText;case"arraybuffer":if("mozResponseArrayBuffer"in h.g)return h.g.mozResponseArrayBuffer}return null}catch{return null}}function fz(h){let m={};h=(h.g&&2<=es(h)&&h.g.getAllResponseHeaders()||"").split(`\r
154
- `);for(let y=0;y<h.length;y++){if(b(h[y]))continue;var E=P(h[y]);let V=E[0];if(E=E[1],typeof E!="string")continue;E=E.trim();let W=m[V]||[];m[V]=W,W.push(E)}S(m,function(y){return y.join(", ")})}n.Ba=function(){return this.m},n.Ka=function(){return typeof this.l=="string"?this.l:String(this.l)};function Ef(h,m,E){return E&&E.internalChannelParams&&E.internalChannelParams[h]||m}function JM(h){this.Aa=0,this.i=[],this.j=new hc,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=Ef("failFast",!1,h),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=Ef("baseRetryDelayMs",5e3,h),this.cb=Ef("retryDelaySeedMs",1e4,h),this.Wa=Ef("forwardChannelMaxRetries",2,h),this.wa=Ef("forwardChannelRequestTimeoutMs",2e4,h),this.pa=h&&h.xmlHttpFactory||void 0,this.Xa=h&&h.Tb||void 0,this.Ca=h&&h.useFetchStreams||!1,this.L=void 0,this.J=h&&h.supportsCrossDomainXhr||!1,this.K="",this.h=new cf(h&&h.concurrentRequestLimit),this.Da=new lz,this.P=h&&h.fastHandshake||!1,this.O=h&&h.encodeInitMessageHeaders||!1,this.P&&this.O&&(this.O=!1),this.Ua=h&&h.Rb||!1,h&&h.xa&&this.j.xa(),h&&h.forceLongPolling&&(this.X=!1),this.ba=!this.P&&this.X&&h&&h.detectBufferingProxy||!1,this.ja=void 0,h&&h.longPollingTimeout&&0<h.longPollingTimeout&&(this.ja=h.longPollingTimeout),this.ca=void 0,this.R=0,this.M=!1,this.ka=this.A=null}n=JM.prototype,n.la=8,n.G=1,n.connect=function(h,m,E,y){dn(0),this.W=h,this.H=m||{},E&&y!==void 0&&(this.H.OSID=E,this.H.OAID=y),this.F=this.X,this.I=aP(this,null,this.W),Up(this)};function sS(h){if(ZM(h),h.G==3){var m=h.U++,E=Ye(h.I);if(rt(E,"SID",h.K),rt(E,"RID",m),rt(E,"TYPE","terminate"),_f(h,E),m=new en(h,h.j,m),m.L=2,m.v=Pp(Ye(E)),E=!1,a.navigator&&a.navigator.sendBeacon)try{E=a.navigator.sendBeacon(m.v.toString(),"")}catch{}!E&&a.Image&&(new Image().src=m.v,E=!0),E||(m.g=cP(m.j,null),m.g.ea(m.v)),m.F=Date.now(),Xo(m)}sP(h)}function kp(h){h.g&&(cS(h),h.g.cancel(),h.g=null)}function ZM(h){kp(h),h.u&&(a.clearTimeout(h.u),h.u=null),Vp(h),h.h.cancel(),h.s&&(typeof h.s=="number"&&a.clearTimeout(h.s),h.s=null)}function Up(h){if(!lf(h.h)&&!h.s){h.s=!0;var m=h.Ga;Ms||Op(),nc||(Ms(),nc=!0),Kh.add(m,h),h.B=0}}function gz(h,m){return fc(h.h)>=h.h.j-(h.s?1:0)?!1:h.s?(h.i=m.D.concat(h.i),!0):h.G==1||h.G==2||h.B>=(h.Va?0:h.Wa)?!1:(h.s=vi(f(h.Ga,h,m),oP(h,h.B)),h.B++,!0)}n.Ga=function(h){if(this.s)if(this.s=null,this.G==1){if(!h){this.U=Math.floor(1e5*Math.random()),h=this.U++;let V=new en(this,this.j,h),W=this.o;if(this.S&&(W?(W=A(W),O(W,this.S)):W=this.S),this.m!==null||this.O||(V.H=W,W=null),this.P)e:{for(var m=0,E=0;E<this.i.length;E++){t:{var y=this.i[E];if("__data__"in y.map&&(y=y.map.__data__,typeof y=="string")){y=y.length;break t}y=void 0}if(y===void 0)break;if(m+=y,4096<m){m=E;break e}if(m===4096||E===this.i.length-1){m=E+1;break e}}m=1e3}else m=1e3;m=tP(this,V,m),E=Ye(this.I),rt(E,"RID",h),rt(E,"CVER",22),this.D&&rt(E,"X-HTTP-Session-Id",this.D),_f(this,E),W&&(this.O?m="headers="+encodeURIComponent(String(zM(W)))+"&"+m:this.m&&oS(E,this.m,W)),se(this.h,V),this.Ua&&rt(E,"TYPE","init"),this.P?(rt(E,"$req",m),rt(E,"SID","null"),V.T=!0,rf(V,E,null)):rf(V,E,m),this.G=2}}else this.G==3&&(h?eP(this,h):this.i.length==0||lf(this.h)||eP(this))};function eP(h,m){var E;m?E=m.l:E=h.U++;let y=Ye(h.I);rt(y,"SID",h.K),rt(y,"RID",E),rt(y,"AID",h.T),_f(h,y),h.m&&h.o&&oS(y,h.m,h.o),E=new en(h,h.j,E,h.B+1),h.m===null&&(E.H=h.o),m&&(h.i=m.D.concat(h.i)),m=tP(h,E,1e3),E.I=Math.round(.5*h.wa)+Math.round(.5*h.wa*Math.random()),se(h.h,E),rf(E,y,m)}function _f(h,m){h.H&&k(h.H,function(E,y){rt(m,y,E)}),h.l&&Ce({},function(E,y){rt(m,y,E)})}function tP(h,m,E){E=Math.min(h.i.length,E);var y=h.l?f(h.l.Na,h.l,h):null;e:{var V=h.i;let W=-1;for(;;){let re=["count="+E];W==-1?0<E?(W=V[0].g,re.push("ofs="+W)):W=0:re.push("ofs="+W);let ct=!0;for(let Mn=0;Mn<E;Mn++){let ze=V[Mn].g,$n=V[Mn].map;if(ze-=W,0>ze)W=Math.max(0,V[Mn].g-100),ct=!1;else try{uz($n,re,"req"+ze+"_")}catch{y&&y($n)}}if(ct){y=re.join("&");break e}}}return h=h.i.splice(0,E),m.D=h,y}function nP(h){if(!h.g&&!h.u){h.Y=1;var m=h.Fa;Ms||Op(),nc||(Ms(),nc=!0),Kh.add(m,h),h.v=0}}function aS(h){return h.g||h.u||3<=h.v?!1:(h.Y++,h.u=vi(f(h.Fa,h),oP(h,h.v)),h.v++,!0)}n.Fa=function(){if(this.u=null,rP(this),this.ba&&!(this.M||this.g==null||0>=this.R)){var h=2*this.R;this.j.info("BP detection timer enabled: "+h),this.A=vi(f(this.ab,this),h)}},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,dn(10),kp(this),rP(this))};function cS(h){h.A!=null&&(a.clearTimeout(h.A),h.A=null)}function rP(h){h.g=new en(h,h.j,"rpc",h.Y),h.m===null&&(h.g.H=h.o),h.g.O=0;var m=Ye(h.qa);rt(m,"RID","rpc"),rt(m,"SID",h.K),rt(m,"AID",h.T),rt(m,"CI",h.F?"0":"1"),!h.F&&h.ja&&rt(m,"TO",h.ja),rt(m,"TYPE","xmlhttp"),_f(h,m),h.m&&h.o&&oS(m,h.m,h.o),h.L&&(h.g.I=h.L);var E=h.g;h=h.ia,E.L=1,E.v=Pp(Ye(m)),E.m=null,E.P=!0,of(E,h)}n.Za=function(){this.C!=null&&(this.C=null,kp(this),aS(this),dn(19))};function Vp(h){h.C!=null&&(a.clearTimeout(h.C),h.C=null)}function iP(h,m){var E=null;if(h.g==m){Vp(h),cS(h),h.g=null;var y=2}else if(gc(h.h,m))E=m.D,R(h.h,m),y=1;else return;if(h.G!=0){if(m.o)if(y==1){E=m.m?m.m.length:0,m=Date.now()-m.F;var V=h.B;y=Vs(),Bt(y,new Lp(y,E)),Up(h)}else nP(h);else if(V=m.s,V==3||V==0&&0<m.X||!(y==1&&gz(h,m)||y==2&&aS(h)))switch(E&&0<E.length&&(m=h.h,m.i=m.i.concat(E)),V){case 1:mc(h,5);break;case 4:mc(h,10);break;case 3:mc(h,6);break;default:mc(h,2)}}}function oP(h,m){let E=h.Ta+Math.floor(Math.random()*h.cb);return h.isActive()||(E*=2),E*m}function mc(h,m){if(h.j.info("Error code "+m),m==2){var E=f(h.fb,h),y=h.Xa;let V=!y;y=new je(y||"//www.google.com/images/cleardot.gif"),a.location&&a.location.protocol=="http"||Mr(y,"https"),Pp(y),V?az(y.toString(),E):cz(y.toString(),E)}else dn(2);h.G=0,h.l&&h.l.sa(m),sP(h),ZM(h)}n.fb=function(h){h?(this.j.info("Successfully pinged google.com"),dn(2)):(this.j.info("Failed to ping google.com"),dn(1))};function sP(h){if(h.G=0,h.ka=[],h.l){let m=z(h.h);(m.length!=0||h.i.length!=0)&&(T(h.ka,m),T(h.ka,h.i),h.h.i.length=0,_(h.i),h.i.length=0),h.l.ra()}}function aP(h,m,E){var y=E instanceof je?Ye(E):new je(E);if(y.g!="")m&&(y.g=m+"."+y.g),xt(y,y.s);else{var V=a.location;y=V.protocol,m=m?m+"."+V.hostname:V.hostname,V=+V.port;var W=new je(null);y&&Mr(W,y),m&&(W.g=m),V&&xt(W,V),E&&(W.l=E),y=W}return E=h.D,m=h.ya,E&&m&&rt(y,E,m),rt(y,"VER",h.la),_f(h,y),y}function cP(h,m,E){if(m&&!h.J)throw Error("Can't create secondary domain capable XhrIo object.");return m=h.Ca&&!h.pa?new Gt(new gf({eb:E})):new Gt(h.pa),m.Ha(h.J),m}n.isActive=function(){return!!this.l&&this.l.isActive(this)};function lP(){}n=lP.prototype,n.ua=function(){},n.ta=function(){},n.sa=function(){},n.ra=function(){},n.isActive=function(){return!0},n.Na=function(){};function Bp(){}Bp.prototype.g=function(h,m){return new Pr(h,m)};function Pr(h,m){Zt.call(this),this.g=new JM(m),this.l=h,this.h=m&&m.messageUrlParams||null,h=m&&m.messageHeaders||null,m&&m.clientProtocolHeaderRequired&&(h?h["X-Client-Protocol"]="webchannel":h={"X-Client-Protocol":"webchannel"}),this.g.o=h,h=m&&m.initMessageHeaders||null,m&&m.messageContentType&&(h?h["X-WebChannel-Content-Type"]=m.messageContentType:h={"X-WebChannel-Content-Type":m.messageContentType}),m&&m.va&&(h?h["X-WebChannel-Client-Profile"]=m.va:h={"X-WebChannel-Client-Profile":m.va}),this.g.S=h,(h=m&&m.Sb)&&!b(h)&&(this.g.m=h),this.v=m&&m.supportsCrossDomainXhr||!1,this.u=m&&m.sendRawJson||!1,(m=m&&m.httpSessionIdParam)&&!b(m)&&(this.g.D=m,h=this.h,h!==null&&m in h&&(h=this.h,m in h&&delete h[m])),this.j=new pu(this)}p(Pr,Zt),Pr.prototype.m=function(){this.g.l=this.j,this.v&&(this.g.J=!0),this.g.connect(this.l,this.h||void 0)},Pr.prototype.close=function(){sS(this.g)},Pr.prototype.o=function(h){var m=this.g;if(typeof h=="string"){var E={};E.__data__=h,h=E}else this.u&&(E={},E.__data__=ro(h),h=E);m.i.push(new iS(m.Ya++,h)),m.G==3&&Up(m)},Pr.prototype.N=function(){this.g.l=null,delete this.j,sS(this.g),delete this.g,Pr.aa.N.call(this)};function uP(h){ks.call(this),h.__headers__&&(this.headers=h.__headers__,this.statusCode=h.__status__,delete h.__headers__,delete h.__status__);var m=h.__sm__;if(m){e:{for(let E in m){h=E;break e}h=void 0}(this.i=h)&&(h=this.i,m=m!==null&&h in m?m[h]:void 0),this.data=m}else this.data=h}p(uP,ks);function dP(){Us.call(this),this.status=1}p(dP,Us);function pu(h){this.g=h}p(pu,lP),pu.prototype.ua=function(){Bt(this.g,"a")},pu.prototype.ta=function(h){Bt(this.g,new uP(h))},pu.prototype.sa=function(h){Bt(this.g,new dP)},pu.prototype.ra=function(){Bt(this.g,"b")},Bp.prototype.createWebChannel=Bp.prototype.g,Pr.prototype.send=Pr.prototype.o,Pr.prototype.open=Pr.prototype.m,Pr.prototype.close=Pr.prototype.close,Pw=Rs.createWebChannelTransport=function(){return new Bp},Mw=Rs.getStatEventTarget=function(){return Vs()},Lw=Rs.Event=Sn,Tv=Rs.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},Bs.NO_ERROR=0,Bs.TIMEOUT=8,Bs.HTTP_ERROR=6,Cm=Rs.ErrorCode=Bs,ef.COMPLETE="complete",bw=Rs.EventType=ef,lu.EventType=Fs,Fs.OPEN="a",Fs.CLOSE="b",Fs.ERROR="c",Fs.MESSAGE="d",Zt.prototype.listen=Zt.prototype.K,Jd=Rs.WebChannel=lu,Xre=Rs.FetchXmlHttpFactory=gf,Gt.prototype.listenOnce=Gt.prototype.L,Gt.prototype.getLastError=Gt.prototype.Ka,Gt.prototype.getLastErrorCode=Gt.prototype.Ba,Gt.prototype.getStatus=Gt.prototype.Z,Gt.prototype.getResponseJson=Gt.prototype.Oa,Gt.prototype.getResponseText=Gt.prototype.oa,Gt.prototype.send=Gt.prototype.ea,Gt.prototype.setWithCredentials=Gt.prototype.Ha,ww=Rs.XhrIo=Gt}).apply(typeof _v<"u"?_v:typeof self<"u"?self:typeof window<"u"?window:{});var oj="@firebase/firestore",sj="4.8.0";var cn=class{constructor(e){this.uid=e}isAuthenticated(){return this.uid!=null}toKey(){return this.isAuthenticated()?"uid:"+this.uid:"anonymous-user"}isEqual(e){return e.uid===this.uid}};cn.UNAUTHENTICATED=new cn(null),cn.GOOGLE_CREDENTIALS=new cn("google-credentials-uid"),cn.FIRST_PARTY=new cn("first-party-uid"),cn.MOCK_USER=new cn("mock-user");var Uh="11.10.0";var $a=new fi("@firebase/firestore");function oh(){return $a.logLevel}function YL(n){$a.setLogLevel(n)}function X(n,...e){if($a.logLevel<=Fe.DEBUG){let r=e.map(QL);$a.debug(`Firestore (${Uh}): ${n}`,...r)}}function Xt(n,...e){if($a.logLevel<=Fe.ERROR){let r=e.map(QL);$a.error(`Firestore (${Uh}): ${n}`,...r)}}function ws(n,...e){if($a.logLevel<=Fe.WARN){let r=e.map(QL);$a.warn(`Firestore (${Uh}): ${n}`,...r)}}function QL(n){if(typeof n=="string")return n;try{return(function(r){return JSON.stringify(r)})(n)}catch{return n}}function ae(n,e,r){let t="Unexpected state";typeof e=="string"?t=e:r=e,vH(n,t,r)}function vH(n,e,r){let t=`FIRESTORE (${Uh}) INTERNAL ASSERTION FAILED: ${e} (ID: ${n.toString(16)})`;if(r!==void 0)try{t+=" CONTEXT: "+JSON.stringify(r)}catch{t+=" CONTEXT: "+r}throw Xt(t),new Error(t)}function he(n,e,r,t){let i="Unexpected state";typeof r=="string"?i=r:t=r,n||vH(e,i,t)}function de(n,e){return n}var j={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"},Q=class extends vr{constructor(e,r){super(e,r),this.code=e,this.message=r,this.toString=()=>`${this.name}: [code=${this.code}]: ${this.message}`}};var Or=class{constructor(){this.promise=new Promise((e,r)=>{this.resolve=e,this.reject=r})}};var Mv=class{constructor(e,r){this.user=r,this.type="OAuth",this.headers=new Map,this.headers.set("Authorization",`Bearer ${e}`)}},$w=class{getToken(){return Promise.resolve(null)}invalidateToken(){}start(e,r){e.enqueueRetryable(()=>r(cn.UNAUTHENTICATED))}shutdown(){}},jw=class{constructor(e){this.token=e,this.changeListener=null}getToken(){return Promise.resolve(this.token)}invalidateToken(){}start(e,r){this.changeListener=r,e.enqueueRetryable(()=>r(this.token.user))}shutdown(){this.changeListener=null}},Hw=class{constructor(e){this.t=e,this.currentUser=cn.UNAUTHENTICATED,this.i=0,this.forceRefresh=!1,this.auth=null}start(e,r){he(this.o===void 0,42304);let t=this.i,i=c=>this.i!==t?(t=this.i,r(c)):Promise.resolve(),o=new Or;this.o=()=>{this.i++,this.currentUser=this.u(),o.resolve(),o=new Or,e.enqueueRetryable(()=>i(this.currentUser))};let s=()=>{let c=o;e.enqueueRetryable(()=>I(this,null,function*(){yield c.promise,yield i(this.currentUser)}))},a=c=>{X("FirebaseAuthCredentialsProvider","Auth detected"),this.auth=c,this.o&&(this.auth.addAuthTokenListener(this.o),s())};this.t.onInit(c=>a(c)),setTimeout(()=>{if(!this.auth){let c=this.t.getImmediate({optional:!0});c?a(c):(X("FirebaseAuthCredentialsProvider","Auth not yet detected"),o.resolve(),o=new Or)}},0),s()}getToken(){let e=this.i,r=this.forceRefresh;return this.forceRefresh=!1,this.auth?this.auth.getToken(r).then(t=>this.i!==e?(X("FirebaseAuthCredentialsProvider","getToken aborted due to token change."),this.getToken()):t?(he(typeof t.accessToken=="string",31837,{l:t}),new Mv(t.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 e=this.auth&&this.auth.getUid();return he(e===null||typeof e=="string",2055,{h:e}),new cn(e)}},Ww=class{constructor(e,r,t){this.P=e,this.T=r,this.I=t,this.type="FirstParty",this.user=cn.FIRST_PARTY,this.A=new Map}R(){return this.I?this.I():null}get headers(){this.A.set("X-Goog-AuthUser",this.P);let e=this.R();return e&&this.A.set("Authorization",e),this.T&&this.A.set("X-Goog-Iam-Authorization-Token",this.T),this.A}},zw=class{constructor(e,r,t){this.P=e,this.T=r,this.I=t}getToken(){return Promise.resolve(new Ww(this.P,this.T,this.I))}start(e,r){e.enqueueRetryable(()=>r(cn.FIRST_PARTY))}shutdown(){}invalidateToken(){}},Pv=class{constructor(e){this.value=e,this.type="AppCheck",this.headers=new Map,e&&e.length>0&&this.headers.set("x-firebase-appcheck",this.value)}},qw=class{constructor(e,r){this.V=r,this.forceRefresh=!1,this.appCheck=null,this.m=null,this.p=null,yr(e)&&e.settings.appCheckToken&&(this.p=e.settings.appCheckToken)}start(e,r){he(this.o===void 0,3512);let t=o=>{o.error!=null&&X("FirebaseAppCheckTokenProvider",`Error getting App Check token; using placeholder token instead. Error: ${o.error.message}`);let s=o.token!==this.m;return this.m=o.token,X("FirebaseAppCheckTokenProvider",`Received ${s?"new":"existing"} token.`),s?r(o.token):Promise.resolve()};this.o=o=>{e.enqueueRetryable(()=>t(o))};let i=o=>{X("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):X("FirebaseAppCheckTokenProvider","AppCheck not yet detected")}},0)}getToken(){if(this.p)return Promise.resolve(new Pv(this.p));let e=this.forceRefresh;return this.forceRefresh=!1,this.appCheck?this.appCheck.getToken(e).then(r=>r?(he(typeof r.token=="string",44558,{tokenResult:r}),this.m=r.token,new Pv(r.token)):null):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.appCheck&&this.o&&this.appCheck.removeTokenListener(this.o),this.o=void 0}};function Jre(n){let e=typeof self<"u"&&(self.crypto||self.msCrypto),r=new Uint8Array(n);if(e&&typeof e.getRandomValues=="function")e.getRandomValues(r);else for(let t=0;t<n;t++)r[t]=Math.floor(256*Math.random());return r}function yH(){return new TextEncoder}var jm=class{static newId(){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=62*Math.floor(4.129032258064516),t="";for(;t.length<20;){let i=Jre(40);for(let o=0;o<i.length;++o)t.length<20&&i[o]<r&&(t+=e.charAt(i[o]%62))}return t}};function Re(n,e){return n<e?-1:n>e?1:0}function Kw(n,e){let r=0;for(;r<n.length&&r<e.length;){let t=n.codePointAt(r),i=e.codePointAt(r);if(t!==i){if(t<128&&i<128)return Re(t,i);{let o=yH(),s=Zre(o.encode(aj(n,r)),o.encode(aj(e,r)));return s!==0?s:Re(t,i)}}r+=t>65535?2:1}return Re(n.length,e.length)}function aj(n,e){return n.codePointAt(e)>65535?n.substring(e,e+2):n.substring(e,e+1)}function Zre(n,e){for(let r=0;r<n.length&&r<e.length;++r)if(n[r]!==e[r])return Re(n[r],e[r]);return Re(n.length,e.length)}function gh(n,e,r){return n.length===e.length&&n.every((t,i)=>r(t,e[i]))}function SH(n){return n+"\0"}var cj="__name__",xv=class n{constructor(e,r,t){r===void 0?r=0:r>e.length&&ae(637,{offset:r,range:e.length}),t===void 0?t=e.length-r:t>e.length-r&&ae(1746,{length:t,range:e.length-r}),this.segments=e,this.offset=r,this.len=t}get length(){return this.len}isEqual(e){return n.comparator(this,e)===0}child(e){let r=this.segments.slice(this.offset,this.limit());return e instanceof n?e.forEach(t=>{r.push(t)}):r.push(e),this.construct(r)}limit(){return this.offset+this.length}popFirst(e){return e=e===void 0?1:e,this.construct(this.segments,this.offset+e,this.length-e)}popLast(){return this.construct(this.segments,this.offset,this.length-1)}firstSegment(){return this.segments[this.offset]}lastSegment(){return this.get(this.length-1)}get(e){return this.segments[this.offset+e]}isEmpty(){return this.length===0}isPrefixOf(e){if(e.length<this.length)return!1;for(let r=0;r<this.length;r++)if(this.get(r)!==e.get(r))return!1;return!0}isImmediateParentOf(e){if(this.length+1!==e.length)return!1;for(let r=0;r<this.length;r++)if(this.get(r)!==e.get(r))return!1;return!0}forEach(e){for(let r=this.offset,t=this.limit();r<t;r++)e(this.segments[r])}toArray(){return this.segments.slice(this.offset,this.limit())}static comparator(e,r){let t=Math.min(e.length,r.length);for(let i=0;i<t;i++){let o=n.compareSegments(e.get(i),r.get(i));if(o!==0)return o}return Re(e.length,r.length)}static compareSegments(e,r){let t=n.isNumericId(e),i=n.isNumericId(r);return t&&!i?-1:!t&&i?1:t&&i?n.extractNumericId(e).compare(n.extractNumericId(r)):Kw(e,r)}static isNumericId(e){return e.startsWith("__id")&&e.endsWith("__")}static extractNumericId(e){return Ds.fromString(e.substring(4,e.length-2))}},We=class n extends xv{construct(e,r,t){return new n(e,r,t)}canonicalString(){return this.toArray().join("/")}toString(){return this.canonicalString()}toUriEncodedString(){return this.toArray().map(encodeURIComponent).join("/")}static fromString(...e){let r=[];for(let t of e){if(t.indexOf("//")>=0)throw new Q(j.INVALID_ARGUMENT,`Invalid segment (${t}). Paths must not contain // in them.`);r.push(...t.split("/").filter(i=>i.length>0))}return new n(r)}static emptyPath(){return new n([])}},eie=/^[_a-zA-Z][_a-zA-Z0-9]*$/,Tn=class n extends xv{construct(e,r,t){return new n(e,r,t)}static isValidIdentifier(e){return eie.test(e)}canonicalString(){return this.toArray().map(e=>(e=e.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),n.isValidIdentifier(e)||(e="`"+e+"`"),e)).join(".")}toString(){return this.canonicalString()}isKeyField(){return this.length===1&&this.get(0)===cj}static keyField(){return new n([cj])}static fromServerFormat(e){let r=[],t="",i=0,o=()=>{if(t.length===0)throw new Q(j.INVALID_ARGUMENT,`Invalid field path (${e}). Paths must not be empty, begin with '.', end with '.', or contain '..'`);r.push(t),t=""},s=!1;for(;i<e.length;){let a=e[i];if(a==="\\"){if(i+1===e.length)throw new Q(j.INVALID_ARGUMENT,"Path has trailing escape character: "+e);let c=e[i+1];if(c!=="\\"&&c!=="."&&c!=="`")throw new Q(j.INVALID_ARGUMENT,"Path has invalid escape sequence: "+e);t+=c,i+=2}else a==="`"?(s=!s,i++):a!=="."||s?(t+=a,i++):(o(),i++)}if(o(),s)throw new Q(j.INVALID_ARGUMENT,"Unterminated ` in path: "+e);return new n(r)}static emptyPath(){return new n([])}};var ie=class n{constructor(e){this.path=e}static fromPath(e){return new n(We.fromString(e))}static fromName(e){return new n(We.fromString(e).popFirst(5))}static empty(){return new n(We.emptyPath())}get collectionGroup(){return this.path.popLast().lastSegment()}hasCollectionId(e){return this.path.length>=2&&this.path.get(this.path.length-2)===e}getCollectionGroup(){return this.path.get(this.path.length-2)}getCollectionPath(){return this.path.popLast()}isEqual(e){return e!==null&&We.comparator(this.path,e.path)===0}toString(){return this.path.toString()}static comparator(e,r){return We.comparator(e.path,r.path)}static isDocumentKey(e){return e.length%2==0}static fromSegments(e){return new n(new We(e.slice()))}};function XL(n,e,r){if(!r)throw new Q(j.INVALID_ARGUMENT,`Function ${n}() cannot be called with an empty ${e}.`)}function tie(n,e,r,t){if(e===!0&&t===!0)throw new Q(j.INVALID_ARGUMENT,`${n} and ${r} cannot be used together.`)}function lj(n){if(!ie.isDocumentKey(n))throw new Q(j.INVALID_ARGUMENT,`Invalid document reference. Document references must have an even number of segments, but ${n} has ${n.length}.`)}function uj(n){if(ie.isDocumentKey(n))throw new Q(j.INVALID_ARGUMENT,`Invalid collection reference. Collection references must have an odd number of segments, but ${n} has ${n.length}.`)}function AH(n){return typeof n=="object"&&n!==null&&(Object.getPrototypeOf(n)===Object.prototype||Object.getPrototypeOf(n)===null)}function Oy(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 e=(function(t){return t.constructor?t.constructor.name:null})(n);return e?`a custom ${e} object`:"an object"}}return typeof n=="function"?"a function":ae(12329,{type:typeof n})}function wr(n,e){if("_delegate"in n&&(n=n._delegate),!(n instanceof e)){if(e.name===n.constructor.name)throw new Q(j.INVALID_ARGUMENT,"Type does not match the expected instance. Did you pass a reference from a different Firestore SDK?");{let r=Oy(n);throw new Q(j.INVALID_ARGUMENT,`Expected type '${e.name}', but it was: ${r}`)}}return n}function nie(n,e){if(e<=0)throw new Q(j.INVALID_ARGUMENT,`Function ${n}() requires a positive number, but it was: ${e}.`)}function ln(n,e){let r={typeString:n};return e&&(r.value=e),r}function Ep(n,e){if(!AH(n))throw new Q(j.INVALID_ARGUMENT,"JSON must be an object");let r;for(let t in e)if(e[t]){let i=e[t].typeString,o="value"in e[t]?{value:e[t].value}:void 0;if(!(t in n)){r=`JSON missing required field: '${t}'`;break}let s=n[t];if(i&&typeof s!==i){r=`JSON field '${t}' must be a ${i}.`;break}if(o!==void 0&&s!==o.value){r=`Expected '${t}' field to equal '${o.value}'`;break}}if(r)throw new Q(j.INVALID_ARGUMENT,r);return!0}var dj=-62135596800,hj=1e6,Pt=class n{static now(){return n.fromMillis(Date.now())}static fromDate(e){return n.fromMillis(e.getTime())}static fromMillis(e){let r=Math.floor(e/1e3),t=Math.floor((e-1e3*r)*hj);return new n(r,t)}constructor(e,r){if(this.seconds=e,this.nanoseconds=r,r<0)throw new Q(j.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+r);if(r>=1e9)throw new Q(j.INVALID_ARGUMENT,"Timestamp nanoseconds out of range: "+r);if(e<dj)throw new Q(j.INVALID_ARGUMENT,"Timestamp seconds out of range: "+e);if(e>=253402300800)throw new Q(j.INVALID_ARGUMENT,"Timestamp seconds out of range: "+e)}toDate(){return new Date(this.toMillis())}toMillis(){return 1e3*this.seconds+this.nanoseconds/hj}_compareTo(e){return this.seconds===e.seconds?Re(this.nanoseconds,e.nanoseconds):Re(this.seconds,e.seconds)}isEqual(e){return e.seconds===this.seconds&&e.nanoseconds===this.nanoseconds}toString(){return"Timestamp(seconds="+this.seconds+", nanoseconds="+this.nanoseconds+")"}toJSON(){return{type:n._jsonSchemaVersion,seconds:this.seconds,nanoseconds:this.nanoseconds}}static fromJSON(e){if(Ep(e,n._jsonSchema))return new n(e.seconds,e.nanoseconds)}valueOf(){let e=this.seconds-dj;return String(e).padStart(12,"0")+"."+String(this.nanoseconds).padStart(9,"0")}};Pt._jsonSchemaVersion="firestore/timestamp/1.0",Pt._jsonSchema={type:ln("string",Pt._jsonSchemaVersion),seconds:ln("number"),nanoseconds:ln("number")};var me=class n{static fromTimestamp(e){return new n(e)}static min(){return new n(new Pt(0,0))}static max(){return new n(new Pt(253402300799,999999999))}constructor(e){this.timestamp=e}compareTo(e){return this.timestamp._compareTo(e.timestamp)}isEqual(e){return this.timestamp.isEqual(e.timestamp)}toMicroseconds(){return 1e6*this.timestamp.seconds+this.timestamp.nanoseconds/1e3}toString(){return"SnapshotVersion("+this.timestamp.toString()+")"}toTimestamp(){return this.timestamp}};var mh=-1,ph=class{constructor(e,r,t,i){this.indexId=e,this.collectionGroup=r,this.fields=t,this.indexState=i}};function Yw(n){return n.fields.find(e=>e.kind===2)}function Ll(n){return n.fields.filter(e=>e.kind!==2)}ph.UNKNOWN_ID=-1;var uh=class{constructor(e,r){this.fieldPath=e,this.kind=r}};var Hm=class n{constructor(e,r){this.sequenceNumber=e,this.offset=r}static empty(){return new n(0,_i.min())}};function DH(n,e){let r=n.toTimestamp().seconds,t=n.toTimestamp().nanoseconds+1,i=me.fromTimestamp(t===1e9?new Pt(r+1,0):new Pt(r,t));return new _i(i,ie.empty(),e)}function RH(n){return new _i(n.readTime,n.key,mh)}var _i=class n{constructor(e,r,t){this.readTime=e,this.documentKey=r,this.largestBatchId=t}static min(){return new n(me.min(),ie.empty(),mh)}static max(){return new n(me.max(),ie.empty(),mh)}};function JL(n,e){let r=n.readTime.compareTo(e.readTime);return r!==0?r:(r=ie.comparator(n.documentKey,e.documentKey),r!==0?r:Re(n.largestBatchId,e.largestBatchId))}var CH="The current tab is not in the required state to perform this operation. It might be necessary to refresh the browser tab.",Fv=class{constructor(){this.onCommittedListeners=[]}addOnCommittedListener(e){this.onCommittedListeners.push(e)}raiseOnCommittedEvent(){this.onCommittedListeners.forEach(e=>e())}};function Qa(n){return I(this,null,function*(){if(n.code!==j.FAILED_PRECONDITION||n.message!==CH)throw n;X("LocalStore","Unexpectedly lost primary lease")})}var B=class n{constructor(e){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,e(r=>{this.isDone=!0,this.result=r,this.nextCallback&&this.nextCallback(r)},r=>{this.isDone=!0,this.error=r,this.catchCallback&&this.catchCallback(r)})}catch(e){return this.next(void 0,e)}next(e,r){return this.callbackAttached&&ae(59440),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(r,this.error):this.wrapSuccess(e,this.result):new n((t,i)=>{this.nextCallback=o=>{this.wrapSuccess(e,o).next(t,i)},this.catchCallback=o=>{this.wrapFailure(r,o).next(t,i)}})}toPromise(){return new Promise((e,r)=>{this.next(e,r)})}wrapUserFunction(e){try{let r=e();return r instanceof n?r:n.resolve(r)}catch(r){return n.reject(r)}}wrapSuccess(e,r){return e?this.wrapUserFunction(()=>e(r)):n.resolve(r)}wrapFailure(e,r){return e?this.wrapUserFunction(()=>e(r)):n.reject(r)}static resolve(e){return new n((r,t)=>{r(e)})}static reject(e){return new n((r,t)=>{t(e)})}static waitFor(e){return new n((r,t)=>{let i=0,o=0,s=!1;e.forEach(a=>{++i,a.next(()=>{++o,s&&o===i&&r()},c=>t(c))}),s=!0,o===i&&r()})}static or(e){let r=n.resolve(!1);for(let t of e)r=r.next(i=>i?n.resolve(i):t());return r}static forEach(e,r){let t=[];return e.forEach((i,o)=>{t.push(r.call(this,i,o))}),this.waitFor(t)}static mapArray(e,r){return new n((t,i)=>{let o=e.length,s=new Array(o),a=0;for(let c=0;c<o;c++){let l=c;r(e[l]).next(u=>{s[l]=u,++a,a===o&&t(s)},u=>i(u))}})}static doWhile(e,r){return new n((t,i)=>{let o=()=>{e()===!0?r().next(()=>{o()},i):t()};o()})}};var qr="SimpleDb",kv=class n{static open(e,r,t,i){try{return new n(r,e.transaction(i,t))}catch(o){throw new Bl(r,o)}}constructor(e,r){this.action=e,this.transaction=r,this.aborted=!1,this.S=new Or,this.transaction.oncomplete=()=>{this.S.resolve()},this.transaction.onabort=()=>{r.error?this.S.reject(new Bl(e,r.error)):this.S.resolve()},this.transaction.onerror=t=>{let i=ZL(t.target.error);this.S.reject(new Bl(e,i))}}get D(){return this.S.promise}abort(e){e&&this.S.reject(e),this.aborted||(X(qr,"Aborting transaction:",e?e.message:"Client-initiated abort"),this.aborted=!0,this.transaction.abort())}v(){let e=this.transaction;this.aborted||typeof e.commit!="function"||e.commit()}store(e){let r=this.transaction.objectStore(e);return new Xw(r)}},Eh=class n{static delete(e){return X(qr,"Removing database:",e),Pl(zT().indexedDB.deleteDatabase(e)).toPromise()}static C(){if(!Od())return!1;if(n.F())return!0;let e=En(),r=n.M(e),t=0<r&&r<10,i=NH(e),o=0<i&&i<4.5;return!(e.indexOf("MSIE ")>0||e.indexOf("Trident/")>0||e.indexOf("Edge/")>0||t||o)}static F(){var e;return typeof process<"u"&&((e=process.__PRIVATE_env)===null||e===void 0?void 0:e.O)==="YES"}static N(e,r){return e.store(r)}static M(e){let r=e.match(/i(?:phone|pad|pod) os ([\d_]+)/i),t=r?r[1].split("_").slice(0,2).join("."):"-1";return Number(t)}constructor(e,r,t){this.name=e,this.version=r,this.B=t,this.L=null,n.M(En())===12.2&&Xt("Firestore persistence suffers from a bug in iOS 12.2 Safari that may cause your app to stop working. See https://stackoverflow.com/q/56496296/110915 for details and a potential workaround.")}k(e){return I(this,null,function*(){return this.db||(X(qr,"Opening database:",this.name),this.db=yield new Promise((r,t)=>{let i=indexedDB.open(this.name,this.version);i.onsuccess=o=>{let s=o.target.result;r(s)},i.onblocked=()=>{t(new Bl(e,"Cannot upgrade IndexedDB schema while another tab is open. Close all tabs that access Firestore and reload this page to proceed."))},i.onerror=o=>{let s=o.target.error;s.name==="VersionError"?t(new Q(j.FAILED_PRECONDITION,"A newer version of the Firestore SDK was previously used and so the persisted data is not compatible with the version of the SDK you are now using. The SDK will operate with persistence disabled. If you need persistence, please re-upgrade to a newer version of the SDK or else clear the persisted IndexedDB data for your app to start fresh.")):s.name==="InvalidStateError"?t(new Q(j.FAILED_PRECONDITION,"Unable to open an IndexedDB connection. This could be due to running in a private browsing session on a browser whose private browsing sessions do not support IndexedDB: "+s)):t(new Bl(e,s))},i.onupgradeneeded=o=>{X(qr,'Database "'+this.name+'" requires upgrade from version:',o.oldVersion);let s=o.target.result;if(this.L!==null&&this.L!==o.oldVersion)throw new Error(`refusing to open IndexedDB database due to potential corruption of the IndexedDB database data; this corruption could be caused by clicking the "clear site data" button in a web browser; try reloading the web page to re-initialize the IndexedDB database: lastClosedDbVersion=${this.L}, event.oldVersion=${o.oldVersion}, event.newVersion=${o.newVersion}, db.version=${s.version}`);this.B.q(s,i.transaction,o.oldVersion,this.version).next(()=>{X(qr,"Database upgrade to version "+this.version+" complete")})}}),this.db.addEventListener("close",r=>{let t=r.target;this.L=t.version},{passive:!0})),this.db.addEventListener("versionchange",r=>{var t;r.newVersion===null&&(ws('Received "versionchange" event with newVersion===null; notifying the registered DatabaseDeletedListener, if any'),(t=this.databaseDeletedListener)===null||t===void 0||t.call(this))},{passive:!0}),this.db})}setDatabaseDeletedListener(e){if(this.databaseDeletedListener)throw new Error("setDatabaseDeletedListener() may only be called once, and it has already been called");this.databaseDeletedListener=e}runTransaction(e,r,t,i){return I(this,null,function*(){let o=r==="readonly",s=0;for(;;){++s;try{this.db=yield this.k(e);let a=kv.open(this.db,e,o?"readonly":"readwrite",t),c=i(a).next(l=>(a.v(),l)).catch(l=>(a.abort(l),B.reject(l))).toPromise();return c.catch(()=>{}),yield a.D,c}catch(a){let c=a,l=c.name!=="FirebaseError"&&s<3;if(X(qr,"Transaction failed with error:",c.message,"Retrying:",l),this.close(),!l)return Promise.reject(c)}}})}close(){this.db&&this.db.close(),this.db=void 0}};function NH(n){let e=n.match(/Android ([\d.]+)/i),r=e?e[1].split(".").slice(0,2).join("."):"-1";return Number(r)}var Qw=class{constructor(e){this.$=e,this.U=!1,this.K=null}get isDone(){return this.U}get W(){return this.K}set cursor(e){this.$=e}done(){this.U=!0}G(e){this.K=e}delete(){return Pl(this.$.delete())}},Bl=class extends Q{constructor(e,r){super(j.UNAVAILABLE,`IndexedDB transaction '${e}' failed: ${r}`),this.name="IndexedDbTransactionError"}};function Xa(n){return n.name==="IndexedDbTransactionError"}var Xw=class{constructor(e){this.store=e}put(e,r){let t;return r!==void 0?(X(qr,"PUT",this.store.name,e,r),t=this.store.put(r,e)):(X(qr,"PUT",this.store.name,"<auto-key>",e),t=this.store.put(e)),Pl(t)}add(e){return X(qr,"ADD",this.store.name,e,e),Pl(this.store.add(e))}get(e){return Pl(this.store.get(e)).next(r=>(r===void 0&&(r=null),X(qr,"GET",this.store.name,e,r),r))}delete(e){return X(qr,"DELETE",this.store.name,e),Pl(this.store.delete(e))}count(){return X(qr,"COUNT",this.store.name),Pl(this.store.count())}j(e,r){let t=this.options(e,r),i=t.index?this.store.index(t.index):this.store;if(typeof i.getAll=="function"){let o=i.getAll(t.range);return new B((s,a)=>{o.onerror=c=>{a(c.target.error)},o.onsuccess=c=>{s(c.target.result)}})}{let o=this.cursor(t),s=[];return this.J(o,(a,c)=>{s.push(c)}).next(()=>s)}}H(e,r){let t=this.store.getAll(e,r===null?void 0:r);return new B((i,o)=>{t.onerror=s=>{o(s.target.error)},t.onsuccess=s=>{i(s.target.result)}})}Y(e,r){X(qr,"DELETE ALL",this.store.name);let t=this.options(e,r);t.Z=!1;let i=this.cursor(t);return this.J(i,(o,s,a)=>a.delete())}X(e,r){let t;r?t=e:(t={},r=e);let i=this.cursor(t);return this.J(i,r)}ee(e){let r=this.cursor({});return new B((t,i)=>{r.onerror=o=>{let s=ZL(o.target.error);i(s)},r.onsuccess=o=>{let s=o.target.result;s?e(s.primaryKey,s.value).next(a=>{a?s.continue():t()}):t()}})}J(e,r){let t=[];return new B((i,o)=>{e.onerror=s=>{o(s.target.error)},e.onsuccess=s=>{let a=s.target.result;if(!a)return void i();let c=new Qw(a),l=r(a.primaryKey,a.value,c);if(l instanceof B){let u=l.catch(d=>(c.done(),B.reject(d)));t.push(u)}c.isDone?i():c.W===null?a.continue():a.continue(c.W)}}).next(()=>B.waitFor(t))}options(e,r){let t;return e!==void 0&&(typeof e=="string"?t=e:r=e),{index:t,range:r}}cursor(e){let r="next";if(e.reverse&&(r="prev"),e.index){let t=this.store.index(e.index);return e.Z?t.openKeyCursor(e.range,r):t.openCursor(e.range,r)}return this.store.openCursor(e.range,r)}};function Pl(n){return new B((e,r)=>{n.onsuccess=t=>{let i=t.target.result;e(i)},n.onerror=t=>{let i=ZL(t.target.error);r(i)}})}var fj=!1;function ZL(n){let e=Eh.M(En());if(e>=12.2&&e<13){let r="An internal error was encountered in the Indexed Database server";if(n.message.indexOf(r)>=0){let t=new Q("internal",`IOS_INDEXEDDB_BUG1: IndexedDb has thrown '${r}'. This is likely due to an unavoidable bug in iOS. See https://stackoverflow.com/q/56496296/110915 for details and a potential workaround.`);return fj||(fj=!0,setTimeout(()=>{throw t},0)),t}}return n}var xm="IndexBackfiller",Jw=class{constructor(e,r){this.asyncQueue=e,this.te=r,this.task=null}start(){this.ne(15e3)}stop(){this.task&&(this.task.cancel(),this.task=null)}get started(){return this.task!==null}ne(e){X(xm,`Scheduled in ${e}ms`),this.task=this.asyncQueue.enqueueAfterDelay("index_backfill",e,()=>I(this,null,function*(){this.task=null;try{let r=yield this.te.re();X(xm,`Documents written: ${r}`)}catch(r){Xa(r)?X(xm,"Ignoring IndexedDB error during index backfill: ",r):yield Qa(r)}yield this.ne(6e4)}))}},Zw=class{constructor(e,r){this.localStore=e,this.persistence=r}re(e=50){return I(this,null,function*(){return this.persistence.runTransaction("Backfill Indexes","readwrite-primary",r=>this.ie(r,e))})}ie(e,r){let t=new Set,i=r,o=!0;return B.doWhile(()=>o===!0&&i>0,()=>this.localStore.indexManager.getNextCollectionGroupToUpdate(e).next(s=>{if(s!==null&&!t.has(s))return X(xm,`Processing collection: ${s}`),this.se(e,s,i).next(a=>{i-=a,t.add(s)});o=!1})).next(()=>r-i)}se(e,r,t){return this.localStore.indexManager.getMinOffsetFromCollectionGroup(e,r).next(i=>this.localStore.localDocuments.getNextDocuments(e,r,i,t).next(o=>{let s=o.changes;return this.localStore.indexManager.updateIndexEntries(e,s).next(()=>this.oe(i,o)).next(a=>(X(xm,`Updating offset: ${a}`),this.localStore.indexManager.updateCollectionGroup(e,r,a))).next(()=>s.size)}))}oe(e,r){let t=e;return r.changes.forEach((i,o)=>{let s=RH(o);JL(s,t)>0&&(t=s)}),new _i(t.readTime,t.documentKey,Math.max(r.batchId,e.largestBatchId))}};var Kr=(()=>{class n{constructor(r,t){this.previousValue=r,t&&(t.sequenceNumberHandler=i=>this._e(i),this.ae=i=>t.writeSequenceNumber(i))}_e(r){return this.previousValue=Math.max(r,this.previousValue),this.previousValue}next(){let r=++this.previousValue;return this.ae&&this.ae(r),r}}n.ue=-1;return n})(),Gl=-1;function _p(n){return n==null}function Wm(n){return n===0&&1/n==-1/0}function OH(n){return typeof n=="number"&&Number.isInteger(n)&&!Wm(n)&&n<=Number.MAX_SAFE_INTEGER&&n>=Number.MIN_SAFE_INTEGER}var Uv="";function rr(n){let e="";for(let r=0;r<n.length;r++)e.length>0&&(e=gj(e)),e=rie(n.get(r),e);return gj(e)}function rie(n,e){let r=e,t=n.length;for(let i=0;i<t;i++){let o=n.charAt(i);switch(o){case"\0":r+="";break;case Uv:r+="";break;default:r+=o}}return r}function gj(n){return n+Uv+""}function Bo(n){let e=n.length;if(he(e>=2,64408,{path:n}),e===2)return he(n.charAt(0)===Uv&&n.charAt(1)==="",56145,{path:n}),We.emptyPath();let r=e-2,t=[],i="";for(let o=0;o<e;){let s=n.indexOf(Uv,o);switch((s<0||s>r)&&ae(50515,{path:n}),n.charAt(s+1)){case"":let a=n.substring(o,s),c;i.length===0?c=a:(i+=a,c=i,i=""),t.push(c);break;case"":i+=n.substring(o,s),i+="\0";break;case"":i+=n.substring(o,s+1);break;default:ae(61167,{path:n})}o=s+2}return new We(t)}var Ml="remoteDocuments",Tp="owner",Zd="owner",zm="mutationQueues",iie="userId",qi="mutations",mj="batchId",Ul="userMutationsIndex",pj=["userId","batchId"];function Dv(n,e){return[n,rr(e)]}function wH(n,e,r){return[n,rr(e),r]}var oie={},_h="documentMutations",Vv="remoteDocumentsV14",sie=["prefixPath","collectionGroup","readTime","documentId"],Rv="documentKeyIndex",aie=["prefixPath","collectionGroup","documentId"],bH="collectionGroupIndex",cie=["collectionGroup","readTime","prefixPath","documentId"],qm="remoteDocumentGlobal",eb="remoteDocumentGlobalKey",Th="targets",LH="queryTargetsIndex",lie=["canonicalId","targetId"],Ih="targetDocuments",uie=["targetId","path"],eM="documentTargetsIndex",die=["path","targetId"],Bv="targetGlobalKey",$l="targetGlobal",Km="collectionParents",hie=["collectionId","parent"],vh="clientMetadata",fie="clientId",wy="bundles",gie="bundleId",by="namedQueries",mie="name",tM="indexConfiguration",pie="indexId",tb="collectionGroupIndex",Eie="collectionGroup",Fm="indexState",_ie=["indexId","uid"],MH="sequenceNumberIndex",Tie=["uid","sequenceNumber"],km="indexEntries",Iie=["indexId","uid","arrayValue","directionalValue","orderedDocumentKey","documentKey"],PH="documentKeyIndex",vie=["indexId","uid","orderedDocumentKey"],Ly="documentOverlays",yie=["userId","collectionPath","documentId"],nb="collectionPathOverlayIndex",Sie=["userId","collectionPath","largestBatchId"],xH="collectionGroupOverlayIndex",Aie=["userId","collectionGroup","largestBatchId"],nM="globals",Die="name",FH=[zm,qi,_h,Ml,Th,Tp,$l,Ih,vh,qm,Km,wy,by],Rie=[...FH,Ly],kH=[zm,qi,_h,Vv,Th,Tp,$l,Ih,vh,qm,Km,wy,by,Ly],UH=kH,rM=[...UH,tM,Fm,km],Cie=rM,VH=[...rM,nM],Nie=VH;var Ym=class extends Fv{constructor(e,r){super(),this.ce=e,this.currentSequenceNumber=r}};function yn(n,e){let r=de(n);return Eh.N(r.ce,e)}function Ej(n){let e=0;for(let r in n)Object.prototype.hasOwnProperty.call(n,r)&&e++;return e}function Ja(n,e){for(let r in n)Object.prototype.hasOwnProperty.call(n,r)&&e(r,n[r])}function Oie(n,e){let r=[];for(let t in n)Object.prototype.hasOwnProperty.call(n,t)&&r.push(e(n[t],t,n));return r}function BH(n){for(let e in n)if(Object.prototype.hasOwnProperty.call(n,e))return!1;return!0}var Dt=class n{constructor(e,r){this.comparator=e,this.root=r||$o.EMPTY}insert(e,r){return new n(this.comparator,this.root.insert(e,r,this.comparator).copy(null,null,$o.BLACK,null,null))}remove(e){return new n(this.comparator,this.root.remove(e,this.comparator).copy(null,null,$o.BLACK,null,null))}get(e){let r=this.root;for(;!r.isEmpty();){let t=this.comparator(e,r.key);if(t===0)return r.value;t<0?r=r.left:t>0&&(r=r.right)}return null}indexOf(e){let r=0,t=this.root;for(;!t.isEmpty();){let i=this.comparator(e,t.key);if(i===0)return r+t.left.size;i<0?t=t.left:(r+=t.left.size+1,t=t.right)}return-1}isEmpty(){return this.root.isEmpty()}get size(){return this.root.size}minKey(){return this.root.minKey()}maxKey(){return this.root.maxKey()}inorderTraversal(e){return this.root.inorderTraversal(e)}forEach(e){this.inorderTraversal((r,t)=>(e(r,t),!1))}toString(){let e=[];return this.inorderTraversal((r,t)=>(e.push(`${r}:${t}`),!1)),`{${e.join(", ")}}`}reverseTraversal(e){return this.root.reverseTraversal(e)}getIterator(){return new lh(this.root,null,this.comparator,!1)}getIteratorFrom(e){return new lh(this.root,e,this.comparator,!1)}getReverseIterator(){return new lh(this.root,null,this.comparator,!0)}getReverseIteratorFrom(e){return new lh(this.root,e,this.comparator,!0)}},lh=class{constructor(e,r,t,i){this.isReverse=i,this.nodeStack=[];let o=1;for(;!e.isEmpty();)if(o=r?t(e.key,r):1,r&&i&&(o*=-1),o<0)e=this.isReverse?e.left:e.right;else{if(o===0){this.nodeStack.push(e);break}this.nodeStack.push(e),e=this.isReverse?e.right:e.left}}getNext(){let e=this.nodeStack.pop(),r={key:e.key,value:e.value};if(this.isReverse)for(e=e.left;!e.isEmpty();)this.nodeStack.push(e),e=e.right;else for(e=e.right;!e.isEmpty();)this.nodeStack.push(e),e=e.left;return r}hasNext(){return this.nodeStack.length>0}peek(){if(this.nodeStack.length===0)return null;let e=this.nodeStack[this.nodeStack.length-1];return{key:e.key,value:e.value}}},$o=class n{constructor(e,r,t,i,o){this.key=e,this.value=r,this.color=t??n.RED,this.left=i??n.EMPTY,this.right=o??n.EMPTY,this.size=this.left.size+1+this.right.size}copy(e,r,t,i,o){return new n(e??this.key,r??this.value,t??this.color,i??this.left,o??this.right)}isEmpty(){return!1}inorderTraversal(e){return this.left.inorderTraversal(e)||e(this.key,this.value)||this.right.inorderTraversal(e)}reverseTraversal(e){return this.right.reverseTraversal(e)||e(this.key,this.value)||this.left.reverseTraversal(e)}min(){return this.left.isEmpty()?this:this.left.min()}minKey(){return this.min().key}maxKey(){return this.right.isEmpty()?this.key:this.right.maxKey()}insert(e,r,t){let i=this,o=t(e,i.key);return i=o<0?i.copy(null,null,null,i.left.insert(e,r,t),null):o===0?i.copy(null,r,null,null,null):i.copy(null,null,null,null,i.right.insert(e,r,t)),i.fixUp()}removeMin(){if(this.left.isEmpty())return n.EMPTY;let e=this;return e.left.isRed()||e.left.left.isRed()||(e=e.moveRedLeft()),e=e.copy(null,null,null,e.left.removeMin(),null),e.fixUp()}remove(e,r){let t,i=this;if(r(e,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(e,r),null);else{if(i.left.isRed()&&(i=i.rotateRight()),i.right.isEmpty()||i.right.isRed()||i.right.left.isRed()||(i=i.moveRedRight()),r(e,i.key)===0){if(i.right.isEmpty())return n.EMPTY;t=i.right.min(),i=i.copy(t.key,t.value,null,null,i.right.removeMin())}i=i.copy(null,null,null,null,i.right.remove(e,r))}return i.fixUp()}isRed(){return this.color}fixUp(){let e=this;return e.right.isRed()&&!e.left.isRed()&&(e=e.rotateLeft()),e.left.isRed()&&e.left.left.isRed()&&(e=e.rotateRight()),e.left.isRed()&&e.right.isRed()&&(e=e.colorFlip()),e}moveRedLeft(){let e=this.colorFlip();return e.right.left.isRed()&&(e=e.copy(null,null,null,null,e.right.rotateRight()),e=e.rotateLeft(),e=e.colorFlip()),e}moveRedRight(){let e=this.colorFlip();return e.left.left.isRed()&&(e=e.rotateRight(),e=e.colorFlip()),e}rotateLeft(){let e=this.copy(null,null,n.RED,null,this.right.left);return this.right.copy(null,null,this.color,e,null)}rotateRight(){let e=this.copy(null,null,n.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,e)}colorFlip(){let e=this.left.copy(null,null,!this.left.color,null,null),r=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,e,r)}checkMaxDepth(){let e=this.check();return Math.pow(2,e)<=this.size+1}check(){if(this.isRed()&&this.left.isRed())throw ae(43730,{key:this.key,value:this.value});if(this.right.isRed())throw ae(14113,{key:this.key,value:this.value});let e=this.left.check();if(e!==this.right.check())throw ae(27949);return e+(this.isRed()?0:1)}};$o.EMPTY=null,$o.RED=!0,$o.BLACK=!1;$o.EMPTY=new class{constructor(){this.size=0}get key(){throw ae(57766)}get value(){throw ae(16141)}get color(){throw ae(16727)}get left(){throw ae(29726)}get right(){throw ae(36894)}copy(e,r,t,i,o){return this}insert(e,r,t){return new $o(e,r)}remove(e,r){return this}isEmpty(){return!0}inorderTraversal(e){return!1}reverseTraversal(e){return!1}minKey(){return null}maxKey(){return null}isRed(){return!1}checkMaxDepth(){return!0}check(){return 0}};var at=class n{constructor(e){this.comparator=e,this.data=new Dt(this.comparator)}has(e){return this.data.get(e)!==null}first(){return this.data.minKey()}last(){return this.data.maxKey()}get size(){return this.data.size}indexOf(e){return this.data.indexOf(e)}forEach(e){this.data.inorderTraversal((r,t)=>(e(r),!1))}forEachInRange(e,r){let t=this.data.getIteratorFrom(e[0]);for(;t.hasNext();){let i=t.getNext();if(this.comparator(i.key,e[1])>=0)return;r(i.key)}}forEachWhile(e,r){let t;for(t=r!==void 0?this.data.getIteratorFrom(r):this.data.getIterator();t.hasNext();)if(!e(t.getNext().key))return}firstAfterOrEqual(e){let r=this.data.getIteratorFrom(e);return r.hasNext()?r.getNext().key:null}getIterator(){return new Gv(this.data.getIterator())}getIteratorFrom(e){return new Gv(this.data.getIteratorFrom(e))}add(e){return this.copy(this.data.remove(e).insert(e,!0))}delete(e){return this.has(e)?this.copy(this.data.remove(e)):this}isEmpty(){return this.data.isEmpty()}unionWith(e){let r=this;return r.size<e.size&&(r=e,e=this),e.forEach(t=>{r=r.add(t)}),r}isEqual(e){if(!(e instanceof n)||this.size!==e.size)return!1;let r=this.data.getIterator(),t=e.data.getIterator();for(;r.hasNext();){let i=r.getNext().key,o=t.getNext().key;if(this.comparator(i,o)!==0)return!1}return!0}toArray(){let e=[];return this.forEach(r=>{e.push(r)}),e}toString(){let e=[];return this.forEach(r=>e.push(r)),"SortedSet("+e.toString()+")"}copy(e){let r=new n(this.comparator);return r.data=e,r}},Gv=class{constructor(e){this.iter=e}getNext(){return this.iter.getNext().key}hasNext(){return this.iter.hasNext()}};function eh(n){return n.hasNext()?n.getNext():void 0}var Yr=class n{constructor(e){this.fields=e,e.sort(Tn.comparator)}static empty(){return new n([])}unionWith(e){let r=new at(Tn.comparator);for(let t of this.fields)r=r.add(t);for(let t of e)r=r.add(t);return new n(r.toArray())}covers(e){for(let r of this.fields)if(r.isPrefixOf(e))return!0;return!1}isEqual(e){return gh(this.fields,e.fields,(r,t)=>r.isEqual(t))}};var $v=class extends Error{constructor(){super(...arguments),this.name="Base64DecodeError"}};var un=class n{constructor(e){this.binaryString=e}static fromBase64String(e){let r=(function(i){try{return atob(i)}catch(o){throw typeof DOMException<"u"&&o instanceof DOMException?new $v("Invalid base64 string: "+o):o}})(e);return new n(r)}static fromUint8Array(e){let r=(function(i){let o="";for(let s=0;s<i.length;++s)o+=String.fromCharCode(i[s]);return o})(e);return new n(r)}[Symbol.iterator](){let e=0;return{next:()=>e<this.binaryString.length?{value:this.binaryString.charCodeAt(e++),done:!1}:{value:void 0,done:!0}}}toBase64(){return(function(r){return btoa(r)})(this.binaryString)}toUint8Array(){return(function(r){let t=new Uint8Array(r.length);for(let i=0;i<r.length;i++)t[i]=r.charCodeAt(i);return t})(this.binaryString)}approximateByteSize(){return 2*this.binaryString.length}compareTo(e){return Re(this.binaryString,e.binaryString)}isEqual(e){return this.binaryString===e.binaryString}};un.EMPTY_BYTE_STRING=new un("");var wie=new RegExp(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.(\d+))?Z$/);function bs(n){if(he(!!n,39018),typeof n=="string"){let e=0,r=wie.exec(n);if(he(!!r,46558,{timestamp:n}),r[1]){let i=r[1];i=(i+"000000000").substr(0,9),e=Number(i)}let t=new Date(n);return{seconds:Math.floor(t.getTime()/1e3),nanos:e}}return{seconds:Mt(n.seconds),nanos:Mt(n.nanos)}}function Mt(n){return typeof n=="number"?n:typeof n=="string"?Number(n):0}function Ls(n){return typeof n=="string"?un.fromBase64String(n):un.fromUint8Array(n)}var GH="server_timestamp",$H="__type__",jH="__previous_value__",HH="__local_write_time__";function My(n){var e,r;return((r=(((e=n?.mapValue)===null||e===void 0?void 0:e.fields)||{})[$H])===null||r===void 0?void 0:r.stringValue)===GH}function Py(n){let e=n.mapValue.fields[jH];return My(e)?Py(e):e}function Qm(n){let e=bs(n.mapValue.fields[HH].timestampValue);return new Pt(e.seconds,e.nanos)}var rb=class{constructor(e,r,t,i,o,s,a,c,l,u){this.databaseId=e,this.appId=r,this.persistenceKey=t,this.host=i,this.ssl=o,this.forceLongPolling=s,this.autoDetectLongPolling=a,this.longPollingOptions=c,this.useFetchStreams=l,this.isUsingEmulator=u}},Xm="(default)",yh=class n{constructor(e,r){this.projectId=e,this.database=r||Xm}static empty(){return new n("","")}get isDefaultDatabase(){return this.database===Xm}isEqual(e){return e instanceof n&&e.projectId===this.projectId&&e.database===this.database}};var iM="__type__",WH="__max__",Fa={mapValue:{fields:{__type__:{stringValue:WH}}}},oM="__vector__",Sh="value",Cv={nullValue:"NULL_VALUE"};function ja(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?My(n)?4:zH(n)?9007199254740991:xy(n)?10:11:ae(28295,{value:n})}function jo(n,e){if(n===e)return!0;let r=ja(n);if(r!==ja(e))return!1;switch(r){case 0:case 9007199254740991:return!0;case 1:return n.booleanValue===e.booleanValue;case 4:return Qm(n).isEqual(Qm(e));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 s=bs(i.timestampValue),a=bs(o.timestampValue);return s.seconds===a.seconds&&s.nanos===a.nanos})(n,e);case 5:return n.stringValue===e.stringValue;case 6:return(function(i,o){return Ls(i.bytesValue).isEqual(Ls(o.bytesValue))})(n,e);case 7:return n.referenceValue===e.referenceValue;case 8:return(function(i,o){return Mt(i.geoPointValue.latitude)===Mt(o.geoPointValue.latitude)&&Mt(i.geoPointValue.longitude)===Mt(o.geoPointValue.longitude)})(n,e);case 2:return(function(i,o){if("integerValue"in i&&"integerValue"in o)return Mt(i.integerValue)===Mt(o.integerValue);if("doubleValue"in i&&"doubleValue"in o){let s=Mt(i.doubleValue),a=Mt(o.doubleValue);return s===a?Wm(s)===Wm(a):isNaN(s)&&isNaN(a)}return!1})(n,e);case 9:return gh(n.arrayValue.values||[],e.arrayValue.values||[],jo);case 10:case 11:return(function(i,o){let s=i.mapValue.fields||{},a=o.mapValue.fields||{};if(Ej(s)!==Ej(a))return!1;for(let c in s)if(s.hasOwnProperty(c)&&(a[c]===void 0||!jo(s[c],a[c])))return!1;return!0})(n,e);default:return ae(52216,{left:n})}}function Jm(n,e){return(n.values||[]).find(r=>jo(r,e))!==void 0}function Ha(n,e){if(n===e)return 0;let r=ja(n),t=ja(e);if(r!==t)return Re(r,t);switch(r){case 0:case 9007199254740991:return 0;case 1:return Re(n.booleanValue,e.booleanValue);case 2:return(function(o,s){let a=Mt(o.integerValue||o.doubleValue),c=Mt(s.integerValue||s.doubleValue);return a<c?-1:a>c?1:a===c?0:isNaN(a)?isNaN(c)?0:-1:1})(n,e);case 3:return _j(n.timestampValue,e.timestampValue);case 4:return _j(Qm(n),Qm(e));case 5:return Kw(n.stringValue,e.stringValue);case 6:return(function(o,s){let a=Ls(o),c=Ls(s);return a.compareTo(c)})(n.bytesValue,e.bytesValue);case 7:return(function(o,s){let a=o.split("/"),c=s.split("/");for(let l=0;l<a.length&&l<c.length;l++){let u=Re(a[l],c[l]);if(u!==0)return u}return Re(a.length,c.length)})(n.referenceValue,e.referenceValue);case 8:return(function(o,s){let a=Re(Mt(o.latitude),Mt(s.latitude));return a!==0?a:Re(Mt(o.longitude),Mt(s.longitude))})(n.geoPointValue,e.geoPointValue);case 9:return Tj(n.arrayValue,e.arrayValue);case 10:return(function(o,s){var a,c,l,u;let d=o.fields||{},f=s.fields||{},g=(a=d[Sh])===null||a===void 0?void 0:a.arrayValue,p=(c=f[Sh])===null||c===void 0?void 0:c.arrayValue,_=Re(((l=g?.values)===null||l===void 0?void 0:l.length)||0,((u=p?.values)===null||u===void 0?void 0:u.length)||0);return _!==0?_:Tj(g,p)})(n.mapValue,e.mapValue);case 11:return(function(o,s){if(o===Fa.mapValue&&s===Fa.mapValue)return 0;if(o===Fa.mapValue)return 1;if(s===Fa.mapValue)return-1;let a=o.fields||{},c=Object.keys(a),l=s.fields||{},u=Object.keys(l);c.sort(),u.sort();for(let d=0;d<c.length&&d<u.length;++d){let f=Kw(c[d],u[d]);if(f!==0)return f;let g=Ha(a[c[d]],l[u[d]]);if(g!==0)return g}return Re(c.length,u.length)})(n.mapValue,e.mapValue);default:throw ae(23264,{le:r})}}function _j(n,e){if(typeof n=="string"&&typeof e=="string"&&n.length===e.length)return Re(n,e);let r=bs(n),t=bs(e),i=Re(r.seconds,t.seconds);return i!==0?i:Re(r.nanos,t.nanos)}function Tj(n,e){let r=n.values||[],t=e.values||[];for(let i=0;i<r.length&&i<t.length;++i){let o=Ha(r[i],t[i]);if(o)return o}return Re(r.length,t.length)}function Ah(n){return ib(n)}function ib(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(r){let t=bs(r);return`time(${t.seconds},${t.nanos})`})(n.timestampValue):"stringValue"in n?n.stringValue:"bytesValue"in n?(function(r){return Ls(r).toBase64()})(n.bytesValue):"referenceValue"in n?(function(r){return ie.fromName(r).toString()})(n.referenceValue):"geoPointValue"in n?(function(r){return`geo(${r.latitude},${r.longitude})`})(n.geoPointValue):"arrayValue"in n?(function(r){let t="[",i=!0;for(let o of r.values||[])i?i=!1:t+=",",t+=ib(o);return t+"]"})(n.arrayValue):"mapValue"in n?(function(r){let t=Object.keys(r.fields||{}).sort(),i="{",o=!0;for(let s of t)o?o=!1:i+=",",i+=`${s}:${ib(r.fields[s])}`;return i+"}"})(n.mapValue):ae(61005,{value:n})}function Nv(n){switch(ja(n)){case 0:case 1:return 4;case 2:return 8;case 3:case 8:return 16;case 4:let e=Py(n);return e?16+Nv(e):16;case 5:return 2*n.stringValue.length;case 6:return Ls(n.bytesValue).approximateByteSize();case 7:return n.referenceValue.length;case 9:return(function(t){return(t.values||[]).reduce((i,o)=>i+Nv(o),0)})(n.arrayValue);case 10:case 11:return(function(t){let i=0;return Ja(t.fields,(o,s)=>{i+=o.length+Nv(s)}),i})(n.mapValue);default:throw ae(13486,{value:n})}}function Hl(n,e){return{referenceValue:`projects/${n.projectId}/databases/${n.database}/documents/${e.path.canonicalString()}`}}function ob(n){return!!n&&"integerValue"in n}function Zm(n){return!!n&&"arrayValue"in n}function Ij(n){return!!n&&"nullValue"in n}function vj(n){return!!n&&"doubleValue"in n&&isNaN(Number(n.doubleValue))}function Ov(n){return!!n&&"mapValue"in n}function xy(n){var e,r;return((r=(((e=n?.mapValue)===null||e===void 0?void 0:e.fields)||{})[iM])===null||r===void 0?void 0:r.stringValue)===oM}function Um(n){if(n.geoPointValue)return{geoPointValue:Object.assign({},n.geoPointValue)};if(n.timestampValue&&typeof n.timestampValue=="object")return{timestampValue:Object.assign({},n.timestampValue)};if(n.mapValue){let e={mapValue:{fields:{}}};return Ja(n.mapValue.fields,(r,t)=>e.mapValue.fields[r]=Um(t)),e}if(n.arrayValue){let e={arrayValue:{values:[]}};for(let r=0;r<(n.arrayValue.values||[]).length;++r)e.arrayValue.values[r]=Um(n.arrayValue.values[r]);return e}return Object.assign({},n)}function zH(n){return(((n.mapValue||{}).fields||{}).__type__||{}).stringValue===WH}var qH={mapValue:{fields:{[iM]:{stringValue:oM},[Sh]:{arrayValue:{}}}}};function bie(n){return"nullValue"in n?Cv:"booleanValue"in n?{booleanValue:!1}:"integerValue"in n||"doubleValue"in n?{doubleValue:NaN}:"timestampValue"in n?{timestampValue:{seconds:Number.MIN_SAFE_INTEGER}}:"stringValue"in n?{stringValue:""}:"bytesValue"in n?{bytesValue:""}:"referenceValue"in n?Hl(yh.empty(),ie.empty()):"geoPointValue"in n?{geoPointValue:{latitude:-90,longitude:-180}}:"arrayValue"in n?{arrayValue:{}}:"mapValue"in n?xy(n)?qH:{mapValue:{}}:ae(35942,{value:n})}function Lie(n){return"nullValue"in n?{booleanValue:!1}:"booleanValue"in n?{doubleValue:NaN}:"integerValue"in n||"doubleValue"in n?{timestampValue:{seconds:Number.MIN_SAFE_INTEGER}}:"timestampValue"in n?{stringValue:""}:"stringValue"in n?{bytesValue:""}:"bytesValue"in n?Hl(yh.empty(),ie.empty()):"referenceValue"in n?{geoPointValue:{latitude:-90,longitude:-180}}:"geoPointValue"in n?{arrayValue:{}}:"arrayValue"in n?qH:"mapValue"in n?xy(n)?{mapValue:{}}:Fa:ae(61959,{value:n})}function yj(n,e){let r=Ha(n.value,e.value);return r!==0?r:n.inclusive&&!e.inclusive?-1:!n.inclusive&&e.inclusive?1:0}function Sj(n,e){let r=Ha(n.value,e.value);return r!==0?r:n.inclusive&&!e.inclusive?1:!n.inclusive&&e.inclusive?-1:0}var nr=class n{constructor(e){this.value=e}static empty(){return new n({mapValue:{}})}field(e){if(e.isEmpty())return this.value;{let r=this.value;for(let t=0;t<e.length-1;++t)if(r=(r.mapValue.fields||{})[e.get(t)],!Ov(r))return null;return r=(r.mapValue.fields||{})[e.lastSegment()],r||null}}set(e,r){this.getFieldsMap(e.popLast())[e.lastSegment()]=Um(r)}setAll(e){let r=Tn.emptyPath(),t={},i=[];e.forEach((s,a)=>{if(!r.isImmediateParentOf(a)){let c=this.getFieldsMap(r);this.applyChanges(c,t,i),t={},i=[],r=a.popLast()}s?t[a.lastSegment()]=Um(s):i.push(a.lastSegment())});let o=this.getFieldsMap(r);this.applyChanges(o,t,i)}delete(e){let r=this.field(e.popLast());Ov(r)&&r.mapValue.fields&&delete r.mapValue.fields[e.lastSegment()]}isEqual(e){return jo(this.value,e.value)}getFieldsMap(e){let r=this.value;r.mapValue.fields||(r.mapValue={fields:{}});for(let t=0;t<e.length;++t){let i=r.mapValue.fields[e.get(t)];Ov(i)&&i.mapValue.fields||(i={mapValue:{fields:{}}},r.mapValue.fields[e.get(t)]=i),r=i}return r.mapValue.fields}applyChanges(e,r,t){Ja(r,(i,o)=>e[i]=o);for(let i of t)delete e[i]}clone(){return new n(Um(this.value))}};function KH(n){let e=[];return Ja(n.fields,(r,t)=>{let i=new Tn([r]);if(Ov(t)){let o=KH(t.mapValue).fields;if(o.length===0)e.push(i);else for(let s of o)e.push(i.child(s))}else e.push(i)}),new Yr(e)}var In=class n{constructor(e,r,t,i,o,s,a){this.key=e,this.documentType=r,this.version=t,this.readTime=i,this.createTime=o,this.data=s,this.documentState=a}static newInvalidDocument(e){return new n(e,0,me.min(),me.min(),me.min(),nr.empty(),0)}static newFoundDocument(e,r,t,i){return new n(e,1,r,me.min(),t,i,0)}static newNoDocument(e,r){return new n(e,2,r,me.min(),me.min(),nr.empty(),0)}static newUnknownDocument(e,r){return new n(e,3,r,me.min(),me.min(),nr.empty(),2)}convertToFoundDocument(e,r){return!this.createTime.isEqual(me.min())||this.documentType!==2&&this.documentType!==0||(this.createTime=e),this.version=e,this.documentType=1,this.data=r,this.documentState=0,this}convertToNoDocument(e){return this.version=e,this.documentType=2,this.data=nr.empty(),this.documentState=0,this}convertToUnknownDocument(e){return this.version=e,this.documentType=3,this.data=nr.empty(),this.documentState=2,this}setHasCommittedMutations(){return this.documentState=2,this}setHasLocalMutations(){return this.documentState=1,this.version=me.min(),this}setReadTime(e){return this.readTime=e,this}get hasLocalMutations(){return this.documentState===1}get hasCommittedMutations(){return this.documentState===2}get hasPendingWrites(){return this.hasLocalMutations||this.hasCommittedMutations}isValidDocument(){return this.documentType!==0}isFoundDocument(){return this.documentType===1}isNoDocument(){return this.documentType===2}isUnknownDocument(){return this.documentType===3}isEqual(e){return e instanceof n&&this.key.isEqual(e.key)&&this.version.isEqual(e.version)&&this.documentType===e.documentType&&this.documentState===e.documentState&&this.data.isEqual(e.data)}mutableCopy(){return new 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 Ho=class{constructor(e,r){this.position=e,this.inclusive=r}};function Aj(n,e,r){let t=0;for(let i=0;i<n.position.length;i++){let o=e[i],s=n.position[i];if(o.field.isKeyField()?t=ie.comparator(ie.fromName(s.referenceValue),r.key):t=Ha(s,r.data.field(o.field)),o.dir==="desc"&&(t*=-1),t!==0)break}return t}function Dj(n,e){if(n===null)return e===null;if(e===null||n.inclusive!==e.inclusive||n.position.length!==e.position.length)return!1;for(let r=0;r<n.position.length;r++)if(!jo(n.position[r],e.position[r]))return!1;return!0}var Wl=class{constructor(e,r="asc"){this.field=e,this.dir=r}};function Mie(n,e){return n.dir===e.dir&&n.field.isEqual(e.field)}var jv=class{},$e=class n extends jv{constructor(e,r,t){super(),this.field=e,this.op=r,this.value=t}static create(e,r,t){return e.isKeyField()?r==="in"||r==="not-in"?this.createKeyFieldInFilter(e,r,t):new cb(e,r,t):r==="array-contains"?new db(e,t):r==="in"?new Hv(e,t):r==="not-in"?new hb(e,t):r==="array-contains-any"?new fb(e,t):new n(e,r,t)}static createKeyFieldInFilter(e,r,t){return r==="in"?new lb(e,t):new ub(e,t)}matches(e){let r=e.data.field(this.field);return this.op==="!="?r!==null&&r.nullValue===void 0&&this.matchesComparison(Ha(r,this.value)):r!==null&&ja(this.value)===ja(r)&&this.matchesComparison(Ha(r,this.value))}matchesComparison(e){switch(this.op){case"<":return e<0;case"<=":return e<=0;case"==":return e===0;case"!=":return e!==0;case">":return e>0;case">=":return e>=0;default:return ae(47266,{operator:this.op})}}isInequality(){return["<","<=",">",">=","!=","not-in"].indexOf(this.op)>=0}getFlattenedFilters(){return[this]}getFilters(){return[this]}},nt=class n extends jv{constructor(e,r){super(),this.filters=e,this.op=r,this.he=null}static create(e,r){return new n(e,r)}matches(e){return Dh(this)?this.filters.find(r=>!r.matches(e))===void 0:this.filters.find(r=>r.matches(e))!==void 0}getFlattenedFilters(){return this.he!==null||(this.he=this.filters.reduce((e,r)=>e.concat(r.getFlattenedFilters()),[])),this.he}getFilters(){return Object.assign([],this.filters)}};function Dh(n){return n.op==="and"}function sb(n){return n.op==="or"}function sM(n){return YH(n)&&Dh(n)}function YH(n){for(let e of n.filters)if(e instanceof nt)return!1;return!0}function ab(n){if(n instanceof $e)return n.field.canonicalString()+n.op.toString()+Ah(n.value);if(sM(n))return n.filters.map(e=>ab(e)).join(",");{let e=n.filters.map(r=>ab(r)).join(",");return`${n.op}(${e})`}}function QH(n,e){return n instanceof $e?(function(t,i){return i instanceof $e&&t.op===i.op&&t.field.isEqual(i.field)&&jo(t.value,i.value)})(n,e):n instanceof nt?(function(t,i){return i instanceof nt&&t.op===i.op&&t.filters.length===i.filters.length?t.filters.reduce((o,s,a)=>o&&QH(s,i.filters[a]),!0):!1})(n,e):void ae(19439)}function XH(n,e){let r=n.filters.concat(e);return nt.create(r,n.op)}function JH(n){return n instanceof $e?(function(r){return`${r.field.canonicalString()} ${r.op} ${Ah(r.value)}`})(n):n instanceof nt?(function(r){return r.op.toString()+" {"+r.getFilters().map(JH).join(" ,")+"}"})(n):"Filter"}var cb=class extends $e{constructor(e,r,t){super(e,r,t),this.key=ie.fromName(t.referenceValue)}matches(e){let r=ie.comparator(e.key,this.key);return this.matchesComparison(r)}},lb=class extends $e{constructor(e,r){super(e,"in",r),this.keys=ZH("in",r)}matches(e){return this.keys.some(r=>r.isEqual(e.key))}},ub=class extends $e{constructor(e,r){super(e,"not-in",r),this.keys=ZH("not-in",r)}matches(e){return!this.keys.some(r=>r.isEqual(e.key))}};function ZH(n,e){var r;return(((r=e.arrayValue)===null||r===void 0?void 0:r.values)||[]).map(t=>ie.fromName(t.referenceValue))}var db=class extends $e{constructor(e,r){super(e,"array-contains",r)}matches(e){let r=e.data.field(this.field);return Zm(r)&&Jm(r.arrayValue,this.value)}},Hv=class extends $e{constructor(e,r){super(e,"in",r)}matches(e){let r=e.data.field(this.field);return r!==null&&Jm(this.value.arrayValue,r)}},hb=class extends $e{constructor(e,r){super(e,"not-in",r)}matches(e){if(Jm(this.value.arrayValue,{nullValue:"NULL_VALUE"}))return!1;let r=e.data.field(this.field);return r!==null&&r.nullValue===void 0&&!Jm(this.value.arrayValue,r)}},fb=class extends $e{constructor(e,r){super(e,"array-contains-any",r)}matches(e){let r=e.data.field(this.field);return!(!Zm(r)||!r.arrayValue.values)&&r.arrayValue.values.some(t=>Jm(this.value.arrayValue,t))}};var gb=class{constructor(e,r=null,t=[],i=[],o=null,s=null,a=null){this.path=e,this.collectionGroup=r,this.orderBy=t,this.filters=i,this.limit=o,this.startAt=s,this.endAt=a,this.Pe=null}};function mb(n,e=null,r=[],t=[],i=null,o=null,s=null){return new gb(n,e,r,t,i,o,s)}function zl(n){let e=de(n);if(e.Pe===null){let r=e.path.canonicalString();e.collectionGroup!==null&&(r+="|cg:"+e.collectionGroup),r+="|f:",r+=e.filters.map(t=>ab(t)).join(","),r+="|ob:",r+=e.orderBy.map(t=>(function(o){return o.field.canonicalString()+o.dir})(t)).join(","),_p(e.limit)||(r+="|l:",r+=e.limit),e.startAt&&(r+="|lb:",r+=e.startAt.inclusive?"b:":"a:",r+=e.startAt.position.map(t=>Ah(t)).join(",")),e.endAt&&(r+="|ub:",r+=e.endAt.inclusive?"a:":"b:",r+=e.endAt.position.map(t=>Ah(t)).join(",")),e.Pe=r}return e.Pe}function Ip(n,e){if(n.limit!==e.limit||n.orderBy.length!==e.orderBy.length)return!1;for(let r=0;r<n.orderBy.length;r++)if(!Mie(n.orderBy[r],e.orderBy[r]))return!1;if(n.filters.length!==e.filters.length)return!1;for(let r=0;r<n.filters.length;r++)if(!QH(n.filters[r],e.filters[r]))return!1;return n.collectionGroup===e.collectionGroup&&!!n.path.isEqual(e.path)&&!!Dj(n.startAt,e.startAt)&&Dj(n.endAt,e.endAt)}function Wv(n){return ie.isDocumentKey(n.path)&&n.collectionGroup===null&&n.filters.length===0}function zv(n,e){return n.filters.filter(r=>r instanceof $e&&r.field.isEqual(e))}function Rj(n,e,r){let t=Cv,i=!0;for(let o of zv(n,e)){let s=Cv,a=!0;switch(o.op){case"<":case"<=":s=bie(o.value);break;case"==":case"in":case">=":s=o.value;break;case">":s=o.value,a=!1;break;case"!=":case"not-in":s=Cv}yj({value:t,inclusive:i},{value:s,inclusive:a})<0&&(t=s,i=a)}if(r!==null){for(let o=0;o<n.orderBy.length;++o)if(n.orderBy[o].field.isEqual(e)){let s=r.position[o];yj({value:t,inclusive:i},{value:s,inclusive:r.inclusive})<0&&(t=s,i=r.inclusive);break}}return{value:t,inclusive:i}}function Cj(n,e,r){let t=Fa,i=!0;for(let o of zv(n,e)){let s=Fa,a=!0;switch(o.op){case">=":case">":s=Lie(o.value),a=!1;break;case"==":case"in":case"<=":s=o.value;break;case"<":s=o.value,a=!1;break;case"!=":case"not-in":s=Fa}Sj({value:t,inclusive:i},{value:s,inclusive:a})>0&&(t=s,i=a)}if(r!==null){for(let o=0;o<n.orderBy.length;++o)if(n.orderBy[o].field.isEqual(e)){let s=r.position[o];Sj({value:t,inclusive:i},{value:s,inclusive:r.inclusive})>0&&(t=s,i=r.inclusive);break}}return{value:t,inclusive:i}}var Wo=class{constructor(e,r=null,t=[],i=[],o=null,s="F",a=null,c=null){this.path=e,this.collectionGroup=r,this.explicitOrderBy=t,this.filters=i,this.limit=o,this.limitType=s,this.startAt=a,this.endAt=c,this.Te=null,this.Ie=null,this.de=null,this.startAt,this.endAt}};function eW(n,e,r,t,i,o,s,a){return new Wo(n,e,r,t,i,o,s,a)}function vp(n){return new Wo(n)}function Nj(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 aM(n){return n.collectionGroup!==null}function dh(n){let e=de(n);if(e.Te===null){e.Te=[];let r=new Set;for(let o of e.explicitOrderBy)e.Te.push(o),r.add(o.field.canonicalString());let t=e.explicitOrderBy.length>0?e.explicitOrderBy[e.explicitOrderBy.length-1].dir:"asc";(function(s){let a=new at(Tn.comparator);return s.filters.forEach(c=>{c.getFlattenedFilters().forEach(l=>{l.isInequality()&&(a=a.add(l.field))})}),a})(e).forEach(o=>{r.has(o.canonicalString())||o.isKeyField()||e.Te.push(new Wl(o,t))}),r.has(Tn.keyField().canonicalString())||e.Te.push(new Wl(Tn.keyField(),t))}return e.Te}function Xr(n){let e=de(n);return e.Ie||(e.Ie=tW(e,dh(n))),e.Ie}function Pie(n){let e=de(n);return e.de||(e.de=tW(e,n.explicitOrderBy)),e.de}function tW(n,e){if(n.limitType==="F")return mb(n.path,n.collectionGroup,e,n.filters,n.limit,n.startAt,n.endAt);{e=e.map(i=>{let o=i.dir==="desc"?"asc":"desc";return new Wl(i.field,o)});let r=n.endAt?new Ho(n.endAt.position,n.endAt.inclusive):null,t=n.startAt?new Ho(n.startAt.position,n.startAt.inclusive):null;return mb(n.path,n.collectionGroup,e,n.filters,n.limit,r,t)}}function pb(n,e){let r=n.filters.concat([e]);return new Wo(n.path,n.collectionGroup,n.explicitOrderBy.slice(),r,n.limit,n.limitType,n.startAt,n.endAt)}function qv(n,e,r){return new Wo(n.path,n.collectionGroup,n.explicitOrderBy.slice(),n.filters.slice(),e,r,n.startAt,n.endAt)}function Fy(n,e){return Ip(Xr(n),Xr(e))&&n.limitType===e.limitType}function nW(n){return`${zl(Xr(n))}|lt:${n.limitType}`}function sh(n){return`Query(target=${(function(r){let t=r.path.canonicalString();return r.collectionGroup!==null&&(t+=" collectionGroup="+r.collectionGroup),r.filters.length>0&&(t+=`, filters: [${r.filters.map(i=>JH(i)).join(", ")}]`),_p(r.limit)||(t+=", limit: "+r.limit),r.orderBy.length>0&&(t+=`, orderBy: [${r.orderBy.map(i=>(function(s){return`${s.field.canonicalString()} (${s.dir})`})(i)).join(", ")}]`),r.startAt&&(t+=", startAt: ",t+=r.startAt.inclusive?"b:":"a:",t+=r.startAt.position.map(i=>Ah(i)).join(",")),r.endAt&&(t+=", endAt: ",t+=r.endAt.inclusive?"a:":"b:",t+=r.endAt.position.map(i=>Ah(i)).join(",")),`Target(${t})`})(Xr(n))}; limitType=${n.limitType})`}function yp(n,e){return e.isFoundDocument()&&(function(t,i){let o=i.key.path;return t.collectionGroup!==null?i.key.hasCollectionId(t.collectionGroup)&&t.path.isPrefixOf(o):ie.isDocumentKey(t.path)?t.path.isEqual(o):t.path.isImmediateParentOf(o)})(n,e)&&(function(t,i){for(let o of dh(t))if(!o.field.isKeyField()&&i.data.field(o.field)===null)return!1;return!0})(n,e)&&(function(t,i){for(let o of t.filters)if(!o.matches(i))return!1;return!0})(n,e)&&(function(t,i){return!(t.startAt&&!(function(s,a,c){let l=Aj(s,a,c);return s.inclusive?l<=0:l<0})(t.startAt,dh(t),i)||t.endAt&&!(function(s,a,c){let l=Aj(s,a,c);return s.inclusive?l>=0:l>0})(t.endAt,dh(t),i))})(n,e)}function rW(n){return n.collectionGroup||(n.path.length%2==1?n.path.lastSegment():n.path.get(n.path.length-2))}function iW(n){return(e,r)=>{let t=!1;for(let i of dh(n)){let o=xie(i,e,r);if(o!==0)return o;t=t||i.field.isKeyField()}return 0}}function xie(n,e,r){let t=n.field.isKeyField()?ie.comparator(e.key,r.key):(function(o,s,a){let c=s.data.field(o),l=a.data.field(o);return c!==null&&l!==null?Ha(c,l):ae(42886)})(n.field,e,r);switch(n.dir){case"asc":return t;case"desc":return-1*t;default:return ae(19790,{direction:n.dir})}}var Ki=class{constructor(e,r){this.mapKeyFn=e,this.equalsFn=r,this.inner={},this.innerSize=0}get(e){let r=this.mapKeyFn(e),t=this.inner[r];if(t!==void 0){for(let[i,o]of t)if(this.equalsFn(i,e))return o}}has(e){return this.get(e)!==void 0}set(e,r){let t=this.mapKeyFn(e),i=this.inner[t];if(i===void 0)return this.inner[t]=[[e,r]],void this.innerSize++;for(let o=0;o<i.length;o++)if(this.equalsFn(i[o][0],e))return void(i[o]=[e,r]);i.push([e,r]),this.innerSize++}delete(e){let r=this.mapKeyFn(e),t=this.inner[r];if(t===void 0)return!1;for(let i=0;i<t.length;i++)if(this.equalsFn(t[i][0],e))return t.length===1?delete this.inner[r]:t.splice(i,1),this.innerSize--,!0;return!1}forEach(e){Ja(this.inner,(r,t)=>{for(let[i,o]of t)e(i,o)})}isEmpty(){return BH(this.inner)}size(){return this.innerSize}};var Fie=new Dt(ie.comparator);function Qr(){return Fie}var oW=new Dt(ie.comparator);function Lm(...n){let e=oW;for(let r of n)e=e.insert(r.key,r);return e}function sW(n){let e=oW;return n.forEach((r,t)=>e=e.insert(r,t.overlayedDocument)),e}function Go(){return Vm()}function aW(){return Vm()}function Vm(){return new Ki(n=>n.toString(),(n,e)=>n.isEqual(e))}var kie=new Dt(ie.comparator),Uie=new at(ie.comparator);function Ve(...n){let e=Uie;for(let r of n)e=e.add(r);return e}var Vie=new at(Re);function cM(){return Vie}function lM(n,e){if(n.useProto3Json){if(isNaN(e))return{doubleValue:"NaN"};if(e===1/0)return{doubleValue:"Infinity"};if(e===-1/0)return{doubleValue:"-Infinity"}}return{doubleValue:Wm(e)?"-0":e}}function cW(n){return{integerValue:""+n}}function Bie(n,e){return OH(e)?cW(e):lM(n,e)}var Rh=class{constructor(){this._=void 0}};function Gie(n,e,r){return n instanceof ql?(function(i,o){let s={fields:{[$H]:{stringValue:GH},[HH]:{timestampValue:{seconds:i.seconds,nanos:i.nanoseconds}}}};return o&&My(o)&&(o=Py(o)),o&&(s.fields[jH]=o),{mapValue:s}})(r,e):n instanceof Wa?uW(n,e):n instanceof za?dW(n,e):(function(i,o){let s=lW(i,o),a=Oj(s)+Oj(i.Ee);return ob(s)&&ob(i.Ee)?cW(a):lM(i.serializer,a)})(n,e)}function $ie(n,e,r){return n instanceof Wa?uW(n,e):n instanceof za?dW(n,e):r}function lW(n,e){return n instanceof Kl?(function(t){return ob(t)||(function(o){return!!o&&"doubleValue"in o})(t)})(e)?e:{integerValue:0}:null}var ql=class extends Rh{},Wa=class extends Rh{constructor(e){super(),this.elements=e}};function uW(n,e){let r=hW(e);for(let t of n.elements)r.some(i=>jo(i,t))||r.push(t);return{arrayValue:{values:r}}}var za=class extends Rh{constructor(e){super(),this.elements=e}};function dW(n,e){let r=hW(e);for(let t of n.elements)r=r.filter(i=>!jo(i,t));return{arrayValue:{values:r}}}var Kl=class extends Rh{constructor(e,r){super(),this.serializer=e,this.Ee=r}};function Oj(n){return Mt(n.integerValue||n.doubleValue)}function hW(n){return Zm(n)&&n.arrayValue.values?n.arrayValue.values.slice():[]}var Eb=class{constructor(e,r){this.field=e,this.transform=r}};function jie(n,e){return n.field.isEqual(e.field)&&(function(t,i){return t instanceof Wa&&i instanceof Wa||t instanceof za&&i instanceof za?gh(t.elements,i.elements,jo):t instanceof Kl&&i instanceof Kl?jo(t.Ee,i.Ee):t instanceof ql&&i instanceof ql})(n.transform,e.transform)}var _b=class{constructor(e,r){this.version=e,this.transformResults=r}},Gn=class n{constructor(e,r){this.updateTime=e,this.exists=r}static none(){return new n}static exists(e){return new n(void 0,e)}static updateTime(e){return new n(e)}get isNone(){return this.updateTime===void 0&&this.exists===void 0}isEqual(e){return this.exists===e.exists&&(this.updateTime?!!e.updateTime&&this.updateTime.isEqual(e.updateTime):!e.updateTime)}};function wv(n,e){return n.updateTime!==void 0?e.isFoundDocument()&&e.version.isEqual(n.updateTime):n.exists===void 0||n.exists===e.isFoundDocument()}var Ch=class{};function fW(n,e){if(!n.hasLocalMutations||e&&e.fields.length===0)return null;if(e===null)return n.isNoDocument()?new Yl(n.key,Gn.none()):new qa(n.key,n.data,Gn.none());{let r=n.data,t=nr.empty(),i=new at(Tn.comparator);for(let o of e.fields)if(!i.has(o)){let s=r.field(o);s===null&&o.length>1&&(o=o.popLast(),s=r.field(o)),s===null?t.delete(o):t.set(o,s),i=i.add(o)}return new Yi(n.key,t,new Yr(i.toArray()),Gn.none())}}function Hie(n,e,r){n instanceof qa?(function(i,o,s){let a=i.value.clone(),c=bj(i.fieldTransforms,o,s.transformResults);a.setAll(c),o.convertToFoundDocument(s.version,a).setHasCommittedMutations()})(n,e,r):n instanceof Yi?(function(i,o,s){if(!wv(i.precondition,o))return void o.convertToUnknownDocument(s.version);let a=bj(i.fieldTransforms,o,s.transformResults),c=o.data;c.setAll(gW(i)),c.setAll(a),o.convertToFoundDocument(s.version,c).setHasCommittedMutations()})(n,e,r):(function(i,o,s){o.convertToNoDocument(s.version).setHasCommittedMutations()})(0,e,r)}function Bm(n,e,r,t){return n instanceof qa?(function(o,s,a,c){if(!wv(o.precondition,s))return a;let l=o.value.clone(),u=Lj(o.fieldTransforms,c,s);return l.setAll(u),s.convertToFoundDocument(s.version,l).setHasLocalMutations(),null})(n,e,r,t):n instanceof Yi?(function(o,s,a,c){if(!wv(o.precondition,s))return a;let l=Lj(o.fieldTransforms,c,s),u=s.data;return u.setAll(gW(o)),u.setAll(l),s.convertToFoundDocument(s.version,u).setHasLocalMutations(),a===null?null:a.unionWith(o.fieldMask.fields).unionWith(o.fieldTransforms.map(d=>d.field))})(n,e,r,t):(function(o,s,a){return wv(o.precondition,s)?(s.convertToNoDocument(s.version).setHasLocalMutations(),null):a})(n,e,r)}function Wie(n,e){let r=null;for(let t of n.fieldTransforms){let i=e.data.field(t.field),o=lW(t.transform,i||null);o!=null&&(r===null&&(r=nr.empty()),r.set(t.field,o))}return r||null}function wj(n,e){return n.type===e.type&&!!n.key.isEqual(e.key)&&!!n.precondition.isEqual(e.precondition)&&!!(function(t,i){return t===void 0&&i===void 0||!(!t||!i)&&gh(t,i,(o,s)=>jie(o,s))})(n.fieldTransforms,e.fieldTransforms)&&(n.type===0?n.value.isEqual(e.value):n.type!==1||n.data.isEqual(e.data)&&n.fieldMask.isEqual(e.fieldMask))}var qa=class extends Ch{constructor(e,r,t,i=[]){super(),this.key=e,this.value=r,this.precondition=t,this.fieldTransforms=i,this.type=0}getFieldMask(){return null}},Yi=class extends Ch{constructor(e,r,t,i,o=[]){super(),this.key=e,this.data=r,this.fieldMask=t,this.precondition=i,this.fieldTransforms=o,this.type=1}getFieldMask(){return this.fieldMask}};function gW(n){let e=new Map;return n.fieldMask.fields.forEach(r=>{if(!r.isEmpty()){let t=n.data.field(r);e.set(r,t)}}),e}function bj(n,e,r){let t=new Map;he(n.length===r.length,32656,{Ae:r.length,Re:n.length});for(let i=0;i<r.length;i++){let o=n[i],s=o.transform,a=e.data.field(o.field);t.set(o.field,$ie(s,a,r[i]))}return t}function Lj(n,e,r){let t=new Map;for(let i of n){let o=i.transform,s=r.data.field(i.field);t.set(i.field,Gie(o,s,e))}return t}var Yl=class extends Ch{constructor(e,r){super(),this.key=e,this.precondition=r,this.type=2,this.fieldTransforms=[]}getFieldMask(){return null}},ep=class extends Ch{constructor(e,r){super(),this.key=e,this.precondition=r,this.type=3,this.fieldTransforms=[]}getFieldMask(){return null}};var tp=class{constructor(e,r,t,i){this.batchId=e,this.localWriteTime=r,this.baseMutations=t,this.mutations=i}applyToRemoteDocument(e,r){let t=r.mutationResults;for(let i=0;i<this.mutations.length;i++){let o=this.mutations[i];o.key.isEqual(e.key)&&Hie(o,e,t[i])}}applyToLocalView(e,r){for(let t of this.baseMutations)t.key.isEqual(e.key)&&(r=Bm(t,e,r,this.localWriteTime));for(let t of this.mutations)t.key.isEqual(e.key)&&(r=Bm(t,e,r,this.localWriteTime));return r}applyToLocalDocumentSet(e,r){let t=aW();return this.mutations.forEach(i=>{let o=e.get(i.key),s=o.overlayedDocument,a=this.applyToLocalView(s,o.mutatedFields);a=r.has(i.key)?null:a;let c=fW(s,a);c!==null&&t.set(i.key,c),s.isValidDocument()||s.convertToNoDocument(me.min())}),t}keys(){return this.mutations.reduce((e,r)=>e.add(r.key),Ve())}isEqual(e){return this.batchId===e.batchId&&gh(this.mutations,e.mutations,(r,t)=>wj(r,t))&&gh(this.baseMutations,e.baseMutations,(r,t)=>wj(r,t))}},Tb=class n{constructor(e,r,t,i){this.batch=e,this.commitVersion=r,this.mutationResults=t,this.docVersions=i}static from(e,r,t){he(e.mutations.length===t.length,58842,{Ve:e.mutations.length,me:t.length});let i=(function(){return kie})(),o=e.mutations;for(let s=0;s<o.length;s++)i=i.insert(o[s].key,t[s].version);return new n(e,r,t,i)}};var np=class{constructor(e,r){this.largestBatchId=e,this.mutation=r}getKey(){return this.mutation.key}isEqual(e){return e!==null&&this.mutation===e.mutation}toString(){return`Overlay{
155
- largestBatchId: ${this.largestBatchId},
156
- mutation: ${this.mutation.toString()}
157
- }`}};var Ib=class{constructor(e,r,t){this.alias=e,this.aggregateType=r,this.fieldPath=t}};var vb=class{constructor(e,r){this.count=e,this.unchangedNames=r}};var sn,He;function mW(n){switch(n){case j.OK:return ae(64938);case j.CANCELLED:case j.UNKNOWN:case j.DEADLINE_EXCEEDED:case j.RESOURCE_EXHAUSTED:case j.INTERNAL:case j.UNAVAILABLE:case j.UNAUTHENTICATED:return!1;case j.INVALID_ARGUMENT:case j.NOT_FOUND:case j.ALREADY_EXISTS:case j.PERMISSION_DENIED:case j.FAILED_PRECONDITION:case j.ABORTED:case j.OUT_OF_RANGE:case j.UNIMPLEMENTED:case j.DATA_LOSS:return!0;default:return ae(15467,{code:n})}}function pW(n){if(n===void 0)return Xt("GRPC error has no .code"),j.UNKNOWN;switch(n){case sn.OK:return j.OK;case sn.CANCELLED:return j.CANCELLED;case sn.UNKNOWN:return j.UNKNOWN;case sn.DEADLINE_EXCEEDED:return j.DEADLINE_EXCEEDED;case sn.RESOURCE_EXHAUSTED:return j.RESOURCE_EXHAUSTED;case sn.INTERNAL:return j.INTERNAL;case sn.UNAVAILABLE:return j.UNAVAILABLE;case sn.UNAUTHENTICATED:return j.UNAUTHENTICATED;case sn.INVALID_ARGUMENT:return j.INVALID_ARGUMENT;case sn.NOT_FOUND:return j.NOT_FOUND;case sn.ALREADY_EXISTS:return j.ALREADY_EXISTS;case sn.PERMISSION_DENIED:return j.PERMISSION_DENIED;case sn.FAILED_PRECONDITION:return j.FAILED_PRECONDITION;case sn.ABORTED:return j.ABORTED;case sn.OUT_OF_RANGE:return j.OUT_OF_RANGE;case sn.UNIMPLEMENTED:return j.UNIMPLEMENTED;case sn.DATA_LOSS:return j.DATA_LOSS;default:return ae(39323,{code:n})}}(He=sn||(sn={}))[He.OK=0]="OK",He[He.CANCELLED=1]="CANCELLED",He[He.UNKNOWN=2]="UNKNOWN",He[He.INVALID_ARGUMENT=3]="INVALID_ARGUMENT",He[He.DEADLINE_EXCEEDED=4]="DEADLINE_EXCEEDED",He[He.NOT_FOUND=5]="NOT_FOUND",He[He.ALREADY_EXISTS=6]="ALREADY_EXISTS",He[He.PERMISSION_DENIED=7]="PERMISSION_DENIED",He[He.UNAUTHENTICATED=16]="UNAUTHENTICATED",He[He.RESOURCE_EXHAUSTED=8]="RESOURCE_EXHAUSTED",He[He.FAILED_PRECONDITION=9]="FAILED_PRECONDITION",He[He.ABORTED=10]="ABORTED",He[He.OUT_OF_RANGE=11]="OUT_OF_RANGE",He[He.UNIMPLEMENTED=12]="UNIMPLEMENTED",He[He.INTERNAL=13]="INTERNAL",He[He.UNAVAILABLE=14]="UNAVAILABLE",He[He.DATA_LOSS=15]="DATA_LOSS";var Mj=null;var zie=new Ds([4294967295,4294967295],0);function Pj(n){let e=yH().encode(n),r=new Ow;return r.update(e),new Uint8Array(r.digest())}function xj(n){let e=new DataView(n.buffer),r=e.getUint32(0,!0),t=e.getUint32(4,!0),i=e.getUint32(8,!0),o=e.getUint32(12,!0);return[new Ds([r,t],0),new Ds([i,o],0)]}var yb=class n{constructor(e,r,t){if(this.bitmap=e,this.padding=r,this.hashCount=t,r<0||r>=8)throw new Vl(`Invalid padding: ${r}`);if(t<0)throw new Vl(`Invalid hash count: ${t}`);if(e.length>0&&this.hashCount===0)throw new Vl(`Invalid hash count: ${t}`);if(e.length===0&&r!==0)throw new Vl(`Invalid padding when bitmap length is 0: ${r}`);this.fe=8*e.length-r,this.ge=Ds.fromNumber(this.fe)}pe(e,r,t){let i=e.add(r.multiply(Ds.fromNumber(t)));return i.compare(zie)===1&&(i=new Ds([i.getBits(0),i.getBits(1)],0)),i.modulo(this.ge).toNumber()}ye(e){return!!(this.bitmap[Math.floor(e/8)]&1<<e%8)}mightContain(e){if(this.fe===0)return!1;let r=Pj(e),[t,i]=xj(r);for(let o=0;o<this.hashCount;o++){let s=this.pe(t,i,o);if(!this.ye(s))return!1}return!0}static create(e,r,t){let i=e%8==0?0:8-e%8,o=new Uint8Array(Math.ceil(e/8)),s=new n(o,i,r);return t.forEach(a=>s.insert(a)),s}insert(e){if(this.fe===0)return;let r=Pj(e),[t,i]=xj(r);for(let o=0;o<this.hashCount;o++){let s=this.pe(t,i,o);this.we(s)}}we(e){let r=Math.floor(e/8),t=e%8;this.bitmap[r]|=1<<t}},Vl=class extends Error{constructor(){super(...arguments),this.name="BloomFilterError"}};var rp=class n{constructor(e,r,t,i,o){this.snapshotVersion=e,this.targetChanges=r,this.targetMismatches=t,this.documentUpdates=i,this.resolvedLimboDocuments=o}static createSynthesizedRemoteEventForCurrentChange(e,r,t){let i=new Map;return i.set(e,ip.createSynthesizedTargetChangeForCurrentChange(e,r,t)),new n(me.min(),i,new Dt(Re),Qr(),Ve())}},ip=class n{constructor(e,r,t,i,o){this.resumeToken=e,this.current=r,this.addedDocuments=t,this.modifiedDocuments=i,this.removedDocuments=o}static createSynthesizedTargetChangeForCurrentChange(e,r,t){return new n(t,r,Ve(),Ve(),Ve())}};var hh=class{constructor(e,r,t,i){this.Se=e,this.removedTargetIds=r,this.key=t,this.be=i}},Kv=class{constructor(e,r){this.targetId=e,this.De=r}},Yv=class{constructor(e,r,t=un.EMPTY_BYTE_STRING,i=null){this.state=e,this.targetIds=r,this.resumeToken=t,this.cause=i}},Qv=class{constructor(){this.ve=0,this.Ce=Fj(),this.Fe=un.EMPTY_BYTE_STRING,this.Me=!1,this.xe=!0}get current(){return this.Me}get resumeToken(){return this.Fe}get Oe(){return this.ve!==0}get Ne(){return this.xe}Be(e){e.approximateByteSize()>0&&(this.xe=!0,this.Fe=e)}Le(){let e=Ve(),r=Ve(),t=Ve();return this.Ce.forEach((i,o)=>{switch(o){case 0:e=e.add(i);break;case 2:r=r.add(i);break;case 1:t=t.add(i);break;default:ae(38017,{changeType:o})}}),new ip(this.Fe,this.Me,e,r,t)}ke(){this.xe=!1,this.Ce=Fj()}qe(e,r){this.xe=!0,this.Ce=this.Ce.insert(e,r)}Qe(e){this.xe=!0,this.Ce=this.Ce.remove(e)}$e(){this.ve+=1}Ue(){this.ve-=1,he(this.ve>=0,3241,{ve:this.ve})}Ke(){this.xe=!0,this.Me=!0}},Sb=class{constructor(e){this.We=e,this.Ge=new Map,this.ze=Qr(),this.je=Iv(),this.Je=Iv(),this.He=new Dt(Re)}Ye(e){for(let r of e.Se)e.be&&e.be.isFoundDocument()?this.Ze(r,e.be):this.Xe(r,e.key,e.be);for(let r of e.removedTargetIds)this.Xe(r,e.key,e.be)}et(e){this.forEachTarget(e,r=>{let t=this.tt(r);switch(e.state){case 0:this.nt(r)&&t.Be(e.resumeToken);break;case 1:t.Ue(),t.Oe||t.ke(),t.Be(e.resumeToken);break;case 2:t.Ue(),t.Oe||this.removeTarget(r);break;case 3:this.nt(r)&&(t.Ke(),t.Be(e.resumeToken));break;case 4:this.nt(r)&&(this.rt(r),t.Be(e.resumeToken));break;default:ae(56790,{state:e.state})}})}forEachTarget(e,r){e.targetIds.length>0?e.targetIds.forEach(r):this.Ge.forEach((t,i)=>{this.nt(i)&&r(i)})}it(e){let r=e.targetId,t=e.De.count,i=this.st(r);if(i){let o=i.target;if(Wv(o))if(t===0){let s=new ie(o.path);this.Xe(r,s,In.newNoDocument(s,me.min()))}else he(t===1,20013,{expectedCount:t});else{let s=this.ot(r);if(s!==t){let a=this._t(e),c=a?this.ut(a,e,s):1;if(c!==0){this.rt(r);let l=c===2?"TargetPurposeExistenceFilterMismatchBloom":"TargetPurposeExistenceFilterMismatch";this.He=this.He.insert(r,l)}Mj?.ct((function(u,d,f,g,p){var _,T,D,b,G,M;let U={localCacheCount:u,existenceFilterCount:d.count,databaseId:f.database,projectId:f.projectId},k=d.unchangedNames;return k&&(U.bloomFilter={applied:p===0,hashCount:(_=k?.hashCount)!==null&&_!==void 0?_:0,bitmapLength:(b=(D=(T=k?.bits)===null||T===void 0?void 0:T.bitmap)===null||D===void 0?void 0:D.length)!==null&&b!==void 0?b:0,padding:(M=(G=k?.bits)===null||G===void 0?void 0:G.padding)!==null&&M!==void 0?M:0,mightContain:S=>{var A;return(A=g?.mightContain(S))!==null&&A!==void 0&&A}}),U})(s,e.De,this.We.lt(),a,c))}}}}_t(e){let r=e.De.unchangedNames;if(!r||!r.bits)return null;let{bits:{bitmap:t="",padding:i=0},hashCount:o=0}=r,s,a;try{s=Ls(t).toUint8Array()}catch(c){if(c instanceof $v)return ws("Decoding the base64 bloom filter in existence filter failed ("+c.message+"); ignoring the bloom filter and falling back to full re-query."),null;throw c}try{a=new yb(s,i,o)}catch(c){return ws(c instanceof Vl?"BloomFilter error: ":"Applying bloom filter failed: ",c),null}return a.fe===0?null:a}ut(e,r,t){return r.De.count===t-this.ht(e,r.targetId)?0:2}ht(e,r){let t=this.We.getRemoteKeysForTarget(r),i=0;return t.forEach(o=>{let s=this.We.lt(),a=`projects/${s.projectId}/databases/${s.database}/documents/${o.path.canonicalString()}`;e.mightContain(a)||(this.Xe(r,o,null),i++)}),i}Pt(e){let r=new Map;this.Ge.forEach((o,s)=>{let a=this.st(s);if(a){if(o.current&&Wv(a.target)){let c=new ie(a.target.path);this.Tt(c).has(s)||this.It(s,c)||this.Xe(s,c,In.newNoDocument(c,e))}o.Ne&&(r.set(s,o.Le()),o.ke())}});let t=Ve();this.Je.forEach((o,s)=>{let a=!0;s.forEachWhile(c=>{let l=this.st(c);return!l||l.purpose==="TargetPurposeLimboResolution"||(a=!1,!1)}),a&&(t=t.add(o))}),this.ze.forEach((o,s)=>s.setReadTime(e));let i=new rp(e,r,this.He,this.ze,t);return this.ze=Qr(),this.je=Iv(),this.Je=Iv(),this.He=new Dt(Re),i}Ze(e,r){if(!this.nt(e))return;let t=this.It(e,r.key)?2:0;this.tt(e).qe(r.key,t),this.ze=this.ze.insert(r.key,r),this.je=this.je.insert(r.key,this.Tt(r.key).add(e)),this.Je=this.Je.insert(r.key,this.dt(r.key).add(e))}Xe(e,r,t){if(!this.nt(e))return;let i=this.tt(e);this.It(e,r)?i.qe(r,1):i.Qe(r),this.Je=this.Je.insert(r,this.dt(r).delete(e)),this.Je=this.Je.insert(r,this.dt(r).add(e)),t&&(this.ze=this.ze.insert(r,t))}removeTarget(e){this.Ge.delete(e)}ot(e){let r=this.tt(e).Le();return this.We.getRemoteKeysForTarget(e).size+r.addedDocuments.size-r.removedDocuments.size}$e(e){this.tt(e).$e()}tt(e){let r=this.Ge.get(e);return r||(r=new Qv,this.Ge.set(e,r)),r}dt(e){let r=this.Je.get(e);return r||(r=new at(Re),this.Je=this.Je.insert(e,r)),r}Tt(e){let r=this.je.get(e);return r||(r=new at(Re),this.je=this.je.insert(e,r)),r}nt(e){let r=this.st(e)!==null;return r||X("WatchChangeAggregator","Detected inactive target",e),r}st(e){let r=this.Ge.get(e);return r&&r.Oe?null:this.We.Et(e)}rt(e){this.Ge.set(e,new Qv),this.We.getRemoteKeysForTarget(e).forEach(r=>{this.Xe(e,r,null)})}It(e,r){return this.We.getRemoteKeysForTarget(e).has(r)}};function Iv(){return new Dt(ie.comparator)}function Fj(){return new Dt(ie.comparator)}var qie={asc:"ASCENDING",desc:"DESCENDING"},Kie={"<":"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"},Yie={and:"AND",or:"OR"},Ab=class{constructor(e,r){this.databaseId=e,this.useProto3Json=r}};function Db(n,e){return n.useProto3Json||_p(e)?e:{value:e}}function Nh(n,e){return n.useProto3Json?`${new Date(1e3*e.seconds).toISOString().replace(/\.\d*/,"").replace("Z","")}.${("000000000"+e.nanoseconds).slice(-9)}Z`:{seconds:""+e.seconds,nanos:e.nanoseconds}}function EW(n,e){return n.useProto3Json?e.toBase64():e.toUint8Array()}function Qie(n,e){return Nh(n,e.toTimestamp())}function Ln(n){return he(!!n,49232),me.fromTimestamp((function(r){let t=bs(r);return new Pt(t.seconds,t.nanos)})(n))}function uM(n,e){return Rb(n,e).canonicalString()}function Rb(n,e){let r=(function(i){return new We(["projects",i.projectId,"databases",i.database])})(n).child("documents");return e===void 0?r:r.child(e)}function _W(n){let e=We.fromString(n);return he(RW(e),10190,{key:e.toString()}),e}function op(n,e){return uM(n.databaseId,e.path)}function Ns(n,e){let r=_W(e);if(r.get(1)!==n.databaseId.projectId)throw new Q(j.INVALID_ARGUMENT,"Tried to deserialize key from different project: "+r.get(1)+" vs "+n.databaseId.projectId);if(r.get(3)!==n.databaseId.database)throw new Q(j.INVALID_ARGUMENT,"Tried to deserialize key from different database: "+r.get(3)+" vs "+n.databaseId.database);return new ie(vW(r))}function TW(n,e){return uM(n.databaseId,e)}function IW(n){let e=_W(n);return e.length===4?We.emptyPath():vW(e)}function Cb(n){return new We(["projects",n.databaseId.projectId,"databases",n.databaseId.database]).canonicalString()}function vW(n){return he(n.length>4&&n.get(4)==="documents",29091,{key:n.toString()}),n.popFirst(5)}function kj(n,e,r){return{name:op(n,e),fields:r.value.mapValue.fields}}function Xie(n,e,r){let t=Ns(n,e.name),i=Ln(e.updateTime),o=e.createTime?Ln(e.createTime):me.min(),s=new nr({mapValue:{fields:e.fields}}),a=In.newFoundDocument(t,i,o,s);return r&&a.setHasCommittedMutations(),r?a.setHasCommittedMutations():a}function Jie(n,e){return"found"in e?(function(t,i){he(!!i.found,43571),i.found.name,i.found.updateTime;let o=Ns(t,i.found.name),s=Ln(i.found.updateTime),a=i.found.createTime?Ln(i.found.createTime):me.min(),c=new nr({mapValue:{fields:i.found.fields}});return In.newFoundDocument(o,s,a,c)})(n,e):"missing"in e?(function(t,i){he(!!i.missing,3894),he(!!i.readTime,22933);let o=Ns(t,i.missing),s=Ln(i.readTime);return In.newNoDocument(o,s)})(n,e):ae(7234,{result:e})}function Zie(n,e){let r;if("targetChange"in e){e.targetChange;let t=(function(l){return l==="NO_CHANGE"?0:l==="ADD"?1:l==="REMOVE"?2:l==="CURRENT"?3:l==="RESET"?4:ae(39313,{state:l})})(e.targetChange.targetChangeType||"NO_CHANGE"),i=e.targetChange.targetIds||[],o=(function(l,u){return l.useProto3Json?(he(u===void 0||typeof u=="string",58123),un.fromBase64String(u||"")):(he(u===void 0||u instanceof Buffer||u instanceof Uint8Array,16193),un.fromUint8Array(u||new Uint8Array))})(n,e.targetChange.resumeToken),s=e.targetChange.cause,a=s&&(function(l){let u=l.code===void 0?j.UNKNOWN:pW(l.code);return new Q(u,l.message||"")})(s);r=new Yv(t,i,o,a||null)}else if("documentChange"in e){e.documentChange;let t=e.documentChange;t.document,t.document.name,t.document.updateTime;let i=Ns(n,t.document.name),o=Ln(t.document.updateTime),s=t.document.createTime?Ln(t.document.createTime):me.min(),a=new nr({mapValue:{fields:t.document.fields}}),c=In.newFoundDocument(i,o,s,a),l=t.targetIds||[],u=t.removedTargetIds||[];r=new hh(l,u,c.key,c)}else if("documentDelete"in e){e.documentDelete;let t=e.documentDelete;t.document;let i=Ns(n,t.document),o=t.readTime?Ln(t.readTime):me.min(),s=In.newNoDocument(i,o),a=t.removedTargetIds||[];r=new hh([],a,s.key,s)}else if("documentRemove"in e){e.documentRemove;let t=e.documentRemove;t.document;let i=Ns(n,t.document),o=t.removedTargetIds||[];r=new hh([],o,i,null)}else{if(!("filter"in e))return ae(11601,{At:e});{e.filter;let t=e.filter;t.targetId;let{count:i=0,unchangedNames:o}=t,s=new vb(i,o),a=t.targetId;r=new Kv(a,s)}}return r}function sp(n,e){let r;if(e instanceof qa)r={update:kj(n,e.key,e.value)};else if(e instanceof Yl)r={delete:op(n,e.key)};else if(e instanceof Yi)r={update:kj(n,e.key,e.data),updateMask:soe(e.fieldMask)};else{if(!(e instanceof ep))return ae(16599,{Rt:e.type});r={verify:op(n,e.key)}}return e.fieldTransforms.length>0&&(r.updateTransforms=e.fieldTransforms.map(t=>(function(o,s){let a=s.transform;if(a instanceof ql)return{fieldPath:s.field.canonicalString(),setToServerValue:"REQUEST_TIME"};if(a instanceof Wa)return{fieldPath:s.field.canonicalString(),appendMissingElements:{values:a.elements}};if(a instanceof za)return{fieldPath:s.field.canonicalString(),removeAllFromArray:{values:a.elements}};if(a instanceof Kl)return{fieldPath:s.field.canonicalString(),increment:a.Ee};throw ae(20930,{transform:s.transform})})(0,t))),e.precondition.isNone||(r.currentDocument=(function(i,o){return o.updateTime!==void 0?{updateTime:Qie(i,o.updateTime)}:o.exists!==void 0?{exists:o.exists}:ae(27497)})(n,e.precondition)),r}function Nb(n,e){let r=e.currentDocument?(function(o){return o.updateTime!==void 0?Gn.updateTime(Ln(o.updateTime)):o.exists!==void 0?Gn.exists(o.exists):Gn.none()})(e.currentDocument):Gn.none(),t=e.updateTransforms?e.updateTransforms.map(i=>(function(s,a){let c=null;if("setToServerValue"in a)he(a.setToServerValue==="REQUEST_TIME",16630,{proto:a}),c=new ql;else if("appendMissingElements"in a){let u=a.appendMissingElements.values||[];c=new Wa(u)}else if("removeAllFromArray"in a){let u=a.removeAllFromArray.values||[];c=new za(u)}else"increment"in a?c=new Kl(s,a.increment):ae(16584,{proto:a});let l=Tn.fromServerFormat(a.fieldPath);return new Eb(l,c)})(n,i)):[];if(e.update){e.update.name;let i=Ns(n,e.update.name),o=new nr({mapValue:{fields:e.update.fields}});if(e.updateMask){let s=(function(c){let l=c.fieldPaths||[];return new Yr(l.map(u=>Tn.fromServerFormat(u)))})(e.updateMask);return new Yi(i,o,s,r,t)}return new qa(i,o,r,t)}if(e.delete){let i=Ns(n,e.delete);return new Yl(i,r)}if(e.verify){let i=Ns(n,e.verify);return new ep(i,r)}return ae(1463,{proto:e})}function eoe(n,e){return n&&n.length>0?(he(e!==void 0,14353),n.map(r=>(function(i,o){let s=i.updateTime?Ln(i.updateTime):Ln(o);return s.isEqual(me.min())&&(s=Ln(o)),new _b(s,i.transformResults||[])})(r,e))):[]}function yW(n,e){return{documents:[TW(n,e.path)]}}function dM(n,e){let r={structuredQuery:{}},t=e.path,i;e.collectionGroup!==null?(i=t,r.structuredQuery.from=[{collectionId:e.collectionGroup,allDescendants:!0}]):(i=t.popLast(),r.structuredQuery.from=[{collectionId:t.lastSegment()}]),r.parent=TW(n,i);let o=(function(l){if(l.length!==0)return DW(nt.create(l,"and"))})(e.filters);o&&(r.structuredQuery.where=o);let s=(function(l){if(l.length!==0)return l.map(u=>(function(f){return{field:Pa(f.field),direction:roe(f.dir)}})(u))})(e.orderBy);s&&(r.structuredQuery.orderBy=s);let a=Db(n,e.limit);return a!==null&&(r.structuredQuery.limit=a),e.startAt&&(r.structuredQuery.startAt=(function(l){return{before:l.inclusive,values:l.position}})(e.startAt)),e.endAt&&(r.structuredQuery.endAt=(function(l){return{before:!l.inclusive,values:l.position}})(e.endAt)),{Vt:r,parent:i}}function toe(n,e,r,t){let{Vt:i,parent:o}=dM(n,e),s={},a=[],c=0;return r.forEach(l=>{let u=t?l.alias:"aggregate_"+c++;s[u]=l.alias,l.aggregateType==="count"?a.push({alias:u,count:{}}):l.aggregateType==="avg"?a.push({alias:u,avg:{field:Pa(l.fieldPath)}}):l.aggregateType==="sum"&&a.push({alias:u,sum:{field:Pa(l.fieldPath)}})}),{request:{structuredAggregationQuery:{aggregations:a,structuredQuery:i.structuredQuery},parent:i.parent},ft:s,parent:o}}function SW(n){let e=IW(n.parent),r=n.structuredQuery,t=r.from?r.from.length:0,i=null;if(t>0){he(t===1,65062);let u=r.from[0];u.allDescendants?i=u.collectionId:e=e.child(u.collectionId)}let o=[];r.where&&(o=(function(d){let f=AW(d);return f instanceof nt&&sM(f)?f.getFilters():[f]})(r.where));let s=[];r.orderBy&&(s=(function(d){return d.map(f=>(function(p){return new Wl(ah(p.field),(function(T){switch(T){case"ASCENDING":return"asc";case"DESCENDING":return"desc";default:return}})(p.direction))})(f))})(r.orderBy));let a=null;r.limit&&(a=(function(d){let f;return f=typeof d=="object"?d.value:d,_p(f)?null:f})(r.limit));let c=null;r.startAt&&(c=(function(d){let f=!!d.before,g=d.values||[];return new Ho(g,f)})(r.startAt));let l=null;return r.endAt&&(l=(function(d){let f=!d.before,g=d.values||[];return new Ho(g,f)})(r.endAt)),eW(e,i,s,o,a,"F",c,l)}function noe(n,e){let r=(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 ae(28987,{purpose:i})}})(e.purpose);return r==null?null:{"goog-listen-tags":r}}function AW(n){return n.unaryFilter!==void 0?(function(r){switch(r.unaryFilter.op){case"IS_NAN":let t=ah(r.unaryFilter.field);return $e.create(t,"==",{doubleValue:NaN});case"IS_NULL":let i=ah(r.unaryFilter.field);return $e.create(i,"==",{nullValue:"NULL_VALUE"});case"IS_NOT_NAN":let o=ah(r.unaryFilter.field);return $e.create(o,"!=",{doubleValue:NaN});case"IS_NOT_NULL":let s=ah(r.unaryFilter.field);return $e.create(s,"!=",{nullValue:"NULL_VALUE"});case"OPERATOR_UNSPECIFIED":return ae(61313);default:return ae(60726)}})(n):n.fieldFilter!==void 0?(function(r){return $e.create(ah(r.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 ae(58110);default:return ae(50506)}})(r.fieldFilter.op),r.fieldFilter.value)})(n):n.compositeFilter!==void 0?(function(r){return nt.create(r.compositeFilter.filters.map(t=>AW(t)),(function(i){switch(i){case"AND":return"and";case"OR":return"or";default:return ae(1026)}})(r.compositeFilter.op))})(n):ae(30097,{filter:n})}function roe(n){return qie[n]}function ioe(n){return Kie[n]}function ooe(n){return Yie[n]}function Pa(n){return{fieldPath:n.canonicalString()}}function ah(n){return Tn.fromServerFormat(n.fieldPath)}function DW(n){return n instanceof $e?(function(r){if(r.op==="=="){if(vj(r.value))return{unaryFilter:{field:Pa(r.field),op:"IS_NAN"}};if(Ij(r.value))return{unaryFilter:{field:Pa(r.field),op:"IS_NULL"}}}else if(r.op==="!="){if(vj(r.value))return{unaryFilter:{field:Pa(r.field),op:"IS_NOT_NAN"}};if(Ij(r.value))return{unaryFilter:{field:Pa(r.field),op:"IS_NOT_NULL"}}}return{fieldFilter:{field:Pa(r.field),op:ioe(r.op),value:r.value}}})(n):n instanceof nt?(function(r){let t=r.getFilters().map(i=>DW(i));return t.length===1?t[0]:{compositeFilter:{op:ooe(r.op),filters:t}}})(n):ae(54877,{filter:n})}function soe(n){let e=[];return n.fields.forEach(r=>e.push(r.canonicalString())),{fieldPaths:e}}function RW(n){return n.length>=4&&n.get(0)==="projects"&&n.get(2)==="databases"}var Oh=class n{constructor(e,r,t,i,o=me.min(),s=me.min(),a=un.EMPTY_BYTE_STRING,c=null){this.target=e,this.targetId=r,this.purpose=t,this.sequenceNumber=i,this.snapshotVersion=o,this.lastLimboFreeSnapshotVersion=s,this.resumeToken=a,this.expectedCount=c}withSequenceNumber(e){return new n(this.target,this.targetId,this.purpose,e,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,this.expectedCount)}withResumeToken(e,r){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,r,this.lastLimboFreeSnapshotVersion,e,null)}withExpectedCount(e){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,e)}withLastLimboFreeSnapshotVersion(e){return new n(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,e,this.resumeToken,this.expectedCount)}};var Xv=class{constructor(e){this.gt=e}};function aoe(n,e){let r;if(e.document)r=Xie(n.gt,e.document,!!e.hasCommittedMutations);else if(e.noDocument){let t=ie.fromSegments(e.noDocument.path),i=Xl(e.noDocument.readTime);r=In.newNoDocument(t,i),e.hasCommittedMutations&&r.setHasCommittedMutations()}else{if(!e.unknownDocument)return ae(56709);{let t=ie.fromSegments(e.unknownDocument.path),i=Xl(e.unknownDocument.version);r=In.newUnknownDocument(t,i)}}return e.readTime&&r.setReadTime((function(i){let o=new Pt(i[0],i[1]);return me.fromTimestamp(o)})(e.readTime)),r}function Uj(n,e){let r=e.key,t={prefixPath:r.getCollectionPath().popLast().toArray(),collectionGroup:r.collectionGroup,documentId:r.path.lastSegment(),readTime:Jv(e.readTime),hasCommittedMutations:e.hasCommittedMutations};if(e.isFoundDocument())t.document=(function(o,s){return{name:op(o,s.key),fields:s.data.value.mapValue.fields,updateTime:Nh(o,s.version.toTimestamp()),createTime:Nh(o,s.createTime.toTimestamp())}})(n.gt,e);else if(e.isNoDocument())t.noDocument={path:r.path.toArray(),readTime:Ql(e.version)};else{if(!e.isUnknownDocument())return ae(57904,{document:e});t.unknownDocument={path:r.path.toArray(),version:Ql(e.version)}}return t}function Jv(n){let e=n.toTimestamp();return[e.seconds,e.nanoseconds]}function Ql(n){let e=n.toTimestamp();return{seconds:e.seconds,nanoseconds:e.nanoseconds}}function Xl(n){let e=new Pt(n.seconds,n.nanoseconds);return me.fromTimestamp(e)}function xl(n,e){let r=(e.baseMutations||[]).map(o=>Nb(n.gt,o));for(let o=0;o<e.mutations.length-1;++o){let s=e.mutations[o];if(o+1<e.mutations.length&&e.mutations[o+1].transform!==void 0){let a=e.mutations[o+1];s.updateTransforms=a.transform.fieldTransforms,e.mutations.splice(o+1,1),++o}}let t=e.mutations.map(o=>Nb(n.gt,o)),i=Pt.fromMillis(e.localWriteTimeMs);return new tp(e.batchId,i,r,t)}function Mm(n){let e=Xl(n.readTime),r=n.lastLimboFreeSnapshotVersion!==void 0?Xl(n.lastLimboFreeSnapshotVersion):me.min(),t;return t=(function(o){return o.documents!==void 0})(n.query)?(function(o){let s=o.documents.length;return he(s===1,1966,{count:s}),Xr(vp(IW(o.documents[0])))})(n.query):(function(o){return Xr(SW(o))})(n.query),new Oh(t,n.targetId,"TargetPurposeListen",n.lastListenSequenceNumber,e,r,un.fromBase64String(n.resumeToken))}function CW(n,e){let r=Ql(e.snapshotVersion),t=Ql(e.lastLimboFreeSnapshotVersion),i;i=Wv(e.target)?yW(n.gt,e.target):dM(n.gt,e.target).Vt;let o=e.resumeToken.toBase64();return{targetId:e.targetId,canonicalId:zl(e.target),readTime:r,resumeToken:o,lastListenSequenceNumber:e.sequenceNumber,lastLimboFreeSnapshotVersion:t,query:i}}function NW(n){let e=SW({parent:n.parent,structuredQuery:n.structuredQuery});return n.limitType==="LAST"?qv(e,e.limit,"L"):e}function xw(n,e){return new np(e.largestBatchId,Nb(n.gt,e.overlayMutation))}function Vj(n,e){let r=e.path.lastSegment();return[n,rr(e.path.popLast()),r]}function Bj(n,e,r,t){return{indexId:n,uid:e,sequenceNumber:r,readTime:Ql(t.readTime),documentKey:rr(t.documentKey.path),largestBatchId:t.largestBatchId}}var Ob=class{getBundleMetadata(e,r){return Gj(e).get(r).next(t=>{if(t)return(function(o){return{id:o.bundleId,createTime:Xl(o.createTime),version:o.version}})(t)})}saveBundleMetadata(e,r){return Gj(e).put((function(i){return{bundleId:i.id,createTime:Ql(Ln(i.createTime)),version:i.version}})(r))}getNamedQuery(e,r){return $j(e).get(r).next(t=>{if(t)return(function(o){return{name:o.name,query:NW(o.bundledQuery),readTime:Xl(o.readTime)}})(t)})}saveNamedQuery(e,r){return $j(e).put((function(i){return{name:i.name,readTime:Ql(Ln(i.readTime)),bundledQuery:i.bundledQuery}})(r))}};function Gj(n){return yn(n,wy)}function $j(n){return yn(n,by)}var Zv=class n{constructor(e,r){this.serializer=e,this.userId=r}static yt(e,r){let t=r.uid||"";return new n(e,t)}getOverlay(e,r){return Nm(e).get(Vj(this.userId,r)).next(t=>t?xw(this.serializer,t):null)}getOverlays(e,r){let t=Go();return B.forEach(r,i=>this.getOverlay(e,i).next(o=>{o!==null&&t.set(i,o)})).next(()=>t)}saveOverlays(e,r,t){let i=[];return t.forEach((o,s)=>{let a=new np(r,s);i.push(this.wt(e,a))}),B.waitFor(i)}removeOverlaysForBatchId(e,r,t){let i=new Set;r.forEach(s=>i.add(rr(s.getCollectionPath())));let o=[];return i.forEach(s=>{let a=IDBKeyRange.bound([this.userId,s,t],[this.userId,s,t+1],!1,!0);o.push(Nm(e).Y(nb,a))}),B.waitFor(o)}getOverlaysForCollection(e,r,t){let i=Go(),o=rr(r),s=IDBKeyRange.bound([this.userId,o,t],[this.userId,o,Number.POSITIVE_INFINITY],!0);return Nm(e).j(nb,s).next(a=>{for(let c of a){let l=xw(this.serializer,c);i.set(l.getKey(),l)}return i})}getOverlaysForCollectionGroup(e,r,t,i){let o=Go(),s,a=IDBKeyRange.bound([this.userId,r,t],[this.userId,r,Number.POSITIVE_INFINITY],!0);return Nm(e).X({index:xH,range:a},(c,l,u)=>{let d=xw(this.serializer,l);o.size()<i||d.largestBatchId===s?(o.set(d.getKey(),d),s=d.largestBatchId):u.done()}).next(()=>o)}wt(e,r){return Nm(e).put((function(i,o,s){let[a,c,l]=Vj(o,s.mutation.key);return{userId:o,collectionPath:c,documentId:l,collectionGroup:s.mutation.key.getCollectionGroup(),largestBatchId:s.largestBatchId,overlayMutation:sp(i.gt,s.mutation)}})(this.serializer,this.userId,r))}};function Nm(n){return yn(n,Ly)}var wb=class{St(e){return yn(e,nM)}getSessionToken(e){return this.St(e).get("sessionToken").next(r=>{let t=r?.value;return t?un.fromUint8Array(t):un.EMPTY_BYTE_STRING})}setSessionToken(e,r){return this.St(e).put({name:"sessionToken",value:r.toUint8Array()})}};var Cs=class{constructor(){}bt(e,r){this.Dt(e,r),r.vt()}Dt(e,r){if("nullValue"in e)this.Ct(r,5);else if("booleanValue"in e)this.Ct(r,10),r.Ft(e.booleanValue?1:0);else if("integerValue"in e)this.Ct(r,15),r.Ft(Mt(e.integerValue));else if("doubleValue"in e){let t=Mt(e.doubleValue);isNaN(t)?this.Ct(r,13):(this.Ct(r,15),Wm(t)?r.Ft(0):r.Ft(t))}else if("timestampValue"in e){let t=e.timestampValue;this.Ct(r,20),typeof t=="string"&&(t=bs(t)),r.Mt(`${t.seconds||""}`),r.Ft(t.nanos||0)}else if("stringValue"in e)this.xt(e.stringValue,r),this.Ot(r);else if("bytesValue"in e)this.Ct(r,30),r.Nt(Ls(e.bytesValue)),this.Ot(r);else if("referenceValue"in e)this.Bt(e.referenceValue,r);else if("geoPointValue"in e){let t=e.geoPointValue;this.Ct(r,45),r.Ft(t.latitude||0),r.Ft(t.longitude||0)}else"mapValue"in e?zH(e)?this.Ct(r,Number.MAX_SAFE_INTEGER):xy(e)?this.Lt(e.mapValue,r):(this.kt(e.mapValue,r),this.Ot(r)):"arrayValue"in e?(this.qt(e.arrayValue,r),this.Ot(r)):ae(19022,{Qt:e})}xt(e,r){this.Ct(r,25),this.$t(e,r)}$t(e,r){r.Mt(e)}kt(e,r){let t=e.fields||{};this.Ct(r,55);for(let i of Object.keys(t))this.xt(i,r),this.Dt(t[i],r)}Lt(e,r){var t,i;let o=e.fields||{};this.Ct(r,53);let s=Sh,a=((i=(t=o[s].arrayValue)===null||t===void 0?void 0:t.values)===null||i===void 0?void 0:i.length)||0;this.Ct(r,15),r.Ft(Mt(a)),this.xt(s,r),this.Dt(o[s],r)}qt(e,r){let t=e.values||[];this.Ct(r,50);for(let i of t)this.Dt(i,r)}Bt(e,r){this.Ct(r,37),ie.fromName(e).path.forEach(t=>{this.Ct(r,60),this.$t(t,r)})}Ct(e,r){e.Ft(r)}Ot(e){e.Ft(2)}};Cs.Ut=new Cs;var th=255;function coe(n){if(n===0)return 8;let e=0;return n>>4||(e+=4,n<<=4),n>>6||(e+=2,n<<=2),n>>7||(e+=1),e}function jj(n){let e=64-(function(t){let i=0;for(let o=0;o<8;++o){let s=coe(255&t[o]);if(i+=s,s!==8)break}return i})(n);return Math.ceil(e/8)}var bb=class{constructor(){this.buffer=new Uint8Array(1024),this.position=0}Kt(e){let r=e[Symbol.iterator](),t=r.next();for(;!t.done;)this.Wt(t.value),t=r.next();this.Gt()}zt(e){let r=e[Symbol.iterator](),t=r.next();for(;!t.done;)this.jt(t.value),t=r.next();this.Jt()}Ht(e){for(let r of e){let t=r.charCodeAt(0);if(t<128)this.Wt(t);else if(t<2048)this.Wt(960|t>>>6),this.Wt(128|63&t);else if(r<"\uD800"||"\uDBFF"<r)this.Wt(480|t>>>12),this.Wt(128|63&t>>>6),this.Wt(128|63&t);else{let i=r.codePointAt(0);this.Wt(240|i>>>18),this.Wt(128|63&i>>>12),this.Wt(128|63&i>>>6),this.Wt(128|63&i)}}this.Gt()}Yt(e){for(let r of e){let t=r.charCodeAt(0);if(t<128)this.jt(t);else if(t<2048)this.jt(960|t>>>6),this.jt(128|63&t);else if(r<"\uD800"||"\uDBFF"<r)this.jt(480|t>>>12),this.jt(128|63&t>>>6),this.jt(128|63&t);else{let i=r.codePointAt(0);this.jt(240|i>>>18),this.jt(128|63&i>>>12),this.jt(128|63&i>>>6),this.jt(128|63&i)}}this.Jt()}Zt(e){let r=this.Xt(e),t=jj(r);this.en(1+t),this.buffer[this.position++]=255&t;for(let i=r.length-t;i<r.length;++i)this.buffer[this.position++]=255&r[i]}tn(e){let r=this.Xt(e),t=jj(r);this.en(1+t),this.buffer[this.position++]=~(255&t);for(let i=r.length-t;i<r.length;++i)this.buffer[this.position++]=~(255&r[i])}nn(){this.rn(th),this.rn(255)}sn(){this._n(th),this._n(255)}reset(){this.position=0}seed(e){this.en(e.length),this.buffer.set(e,this.position),this.position+=e.length}an(){return this.buffer.slice(0,this.position)}Xt(e){let r=(function(o){let s=new DataView(new ArrayBuffer(8));return s.setFloat64(0,o,!1),new Uint8Array(s.buffer)})(e),t=!!(128&r[0]);r[0]^=t?255:128;for(let i=1;i<r.length;++i)r[i]^=t?255:0;return r}Wt(e){let r=255&e;r===0?(this.rn(0),this.rn(255)):r===th?(this.rn(th),this.rn(0)):this.rn(r)}jt(e){let r=255&e;r===0?(this._n(0),this._n(255)):r===th?(this._n(th),this._n(0)):this._n(e)}Gt(){this.rn(0),this.rn(1)}Jt(){this._n(0),this._n(1)}rn(e){this.en(1),this.buffer[this.position++]=e}_n(e){this.en(1),this.buffer[this.position++]=~e}en(e){let r=e+this.position;if(r<=this.buffer.length)return;let t=2*this.buffer.length;t<r&&(t=r);let i=new Uint8Array(t);i.set(this.buffer),this.buffer=i}},Lb=class{constructor(e){this.un=e}Nt(e){this.un.Kt(e)}Mt(e){this.un.Ht(e)}Ft(e){this.un.Zt(e)}vt(){this.un.nn()}},Mb=class{constructor(e){this.un=e}Nt(e){this.un.zt(e)}Mt(e){this.un.Yt(e)}Ft(e){this.un.tn(e)}vt(){this.un.sn()}},Fl=class{constructor(){this.un=new bb,this.cn=new Lb(this.un),this.ln=new Mb(this.un)}seed(e){this.un.seed(e)}hn(e){return e===0?this.cn:this.ln}an(){return this.un.an()}reset(){this.un.reset()}};var kl=class n{constructor(e,r,t,i){this.Pn=e,this.Tn=r,this.In=t,this.dn=i}En(){let e=this.dn.length,r=e===0||this.dn[e-1]===255?e+1:e,t=new Uint8Array(r);return t.set(this.dn,0),r!==e?t.set([0],this.dn.length):++t[t.length-1],new n(this.Pn,this.Tn,this.In,t)}An(e,r,t){return{indexId:this.Pn,uid:e,arrayValue:bv(this.In),directionalValue:bv(this.dn),orderedDocumentKey:bv(r),documentKey:t.path.toArray()}}Rn(e,r,t){let i=this.An(e,r,t);return[i.indexId,i.uid,i.arrayValue,i.directionalValue,i.orderedDocumentKey,i.documentKey]}};function ba(n,e){let r=n.Pn-e.Pn;return r!==0?r:(r=Hj(n.In,e.In),r!==0?r:(r=Hj(n.dn,e.dn),r!==0?r:ie.comparator(n.Tn,e.Tn)))}function Hj(n,e){for(let r=0;r<n.length&&r<e.length;++r){let t=n[r]-e[r];if(t!==0)return t}return n.length-e.length}function bv(n){return VC()?(function(r){let t="";for(let i=0;i<r.length;i++)t+=String.fromCharCode(r[i]);return t})(n):n}function Wj(n){return typeof n!="string"?n:(function(r){let t=new Uint8Array(r.length);for(let i=0;i<r.length;i++)t[i]=r.charCodeAt(i);return t})(n)}var ey=class{constructor(e){this.Vn=new at((r,t)=>Tn.comparator(r.field,t.field)),this.collectionId=e.collectionGroup!=null?e.collectionGroup:e.path.lastSegment(),this.mn=e.orderBy,this.fn=[];for(let r of e.filters){let t=r;t.isInequality()?this.Vn=this.Vn.add(t):this.fn.push(t)}}get gn(){return this.Vn.size>1}pn(e){if(he(e.collectionGroup===this.collectionId,49279),this.gn)return!1;let r=Yw(e);if(r!==void 0&&!this.yn(r))return!1;let t=Ll(e),i=new Set,o=0,s=0;for(;o<t.length&&this.yn(t[o]);++o)i=i.add(t[o].fieldPath.canonicalString());if(o===t.length)return!0;if(this.Vn.size>0){let a=this.Vn.getIterator().getNext();if(!i.has(a.field.canonicalString())){let c=t[o];if(!this.wn(a,c)||!this.Sn(this.mn[s++],c))return!1}++o}for(;o<t.length;++o){let a=t[o];if(s>=this.mn.length||!this.Sn(this.mn[s++],a))return!1}return!0}bn(){if(this.gn)return null;let e=new at(Tn.comparator),r=[];for(let t of this.fn)if(!t.field.isKeyField())if(t.op==="array-contains"||t.op==="array-contains-any")r.push(new uh(t.field,2));else{if(e.has(t.field))continue;e=e.add(t.field),r.push(new uh(t.field,0))}for(let t of this.mn)t.field.isKeyField()||e.has(t.field)||(e=e.add(t.field),r.push(new uh(t.field,t.dir==="asc"?0:1)));return new ph(ph.UNKNOWN_ID,this.collectionId,r,Hm.empty())}yn(e){for(let r of this.fn)if(this.wn(r,e))return!0;return!1}wn(e,r){if(e===void 0||!e.field.isEqual(r.fieldPath))return!1;let t=e.op==="array-contains"||e.op==="array-contains-any";return r.kind===2===t}Sn(e,r){return!!e.field.isEqual(r.fieldPath)&&(r.kind===0&&e.dir==="asc"||r.kind===1&&e.dir==="desc")}};function OW(n){var e,r;if(he(n instanceof $e||n instanceof nt,20012),n instanceof $e){if(n instanceof Hv){let i=((r=(e=n.value.arrayValue)===null||e===void 0?void 0:e.values)===null||r===void 0?void 0:r.map(o=>$e.create(n.field,"==",o)))||[];return nt.create(i,"or")}return n}let t=n.filters.map(i=>OW(i));return nt.create(t,n.op)}function loe(n){if(n.getFilters().length===0)return[];let e=Fb(OW(n));return he(wW(e),7391),Pb(e)||xb(e)?[e]:e.getFilters()}function Pb(n){return n instanceof $e}function xb(n){return n instanceof nt&&sM(n)}function wW(n){return Pb(n)||xb(n)||(function(r){if(r instanceof nt&&sb(r)){for(let t of r.getFilters())if(!Pb(t)&&!xb(t))return!1;return!0}return!1})(n)}function Fb(n){if(he(n instanceof $e||n instanceof nt,34018),n instanceof $e)return n;if(n.filters.length===1)return Fb(n.filters[0]);let e=n.filters.map(t=>Fb(t)),r=nt.create(e,n.op);return r=ty(r),wW(r)?r:(he(r instanceof nt,64498),he(Dh(r),40251),he(r.filters.length>1,57927),r.filters.reduce((t,i)=>hM(t,i)))}function hM(n,e){let r;return he(n instanceof $e||n instanceof nt,38388),he(e instanceof $e||e instanceof nt,25473),r=n instanceof $e?e instanceof $e?(function(i,o){return nt.create([i,o],"and")})(n,e):zj(n,e):e instanceof $e?zj(e,n):(function(i,o){if(he(i.filters.length>0&&o.filters.length>0,48005),Dh(i)&&Dh(o))return XH(i,o.getFilters());let s=sb(i)?i:o,a=sb(i)?o:i,c=s.filters.map(l=>hM(l,a));return nt.create(c,"or")})(n,e),ty(r)}function zj(n,e){if(Dh(e))return XH(e,n.getFilters());{let r=e.filters.map(t=>hM(n,t));return nt.create(r,"or")}}function ty(n){if(he(n instanceof $e||n instanceof nt,11850),n instanceof $e)return n;let e=n.getFilters();if(e.length===1)return ty(e[0]);if(YH(n))return n;let r=e.map(i=>ty(i)),t=[];return r.forEach(i=>{i instanceof $e?t.push(i):i instanceof nt&&(i.op===n.op?t.push(...i.filters):t.push(i))}),t.length===1?t[0]:nt.create(t,n.op)}var kb=class{constructor(){this.Dn=new ap}addToCollectionParentIndex(e,r){return this.Dn.add(r),B.resolve()}getCollectionParents(e,r){return B.resolve(this.Dn.getEntries(r))}addFieldIndex(e,r){return B.resolve()}deleteFieldIndex(e,r){return B.resolve()}deleteAllFieldIndexes(e){return B.resolve()}createTargetIndexes(e,r){return B.resolve()}getDocumentsMatchingTarget(e,r){return B.resolve(null)}getIndexType(e,r){return B.resolve(0)}getFieldIndexes(e,r){return B.resolve([])}getNextCollectionGroupToUpdate(e){return B.resolve(null)}getMinOffset(e,r){return B.resolve(_i.min())}getMinOffsetFromCollectionGroup(e,r){return B.resolve(_i.min())}updateCollectionGroup(e,r,t){return B.resolve()}updateIndexEntries(e,r){return B.resolve()}},ap=class{constructor(){this.index={}}add(e){let r=e.lastSegment(),t=e.popLast(),i=this.index[r]||new at(We.comparator),o=!i.has(t);return this.index[r]=i.add(t),o}has(e){let r=e.lastSegment(),t=e.popLast(),i=this.index[r];return i&&i.has(t)}getEntries(e){return(this.index[e]||new at(We.comparator)).toArray()}};var qj="IndexedDbIndexManager",vv=new Uint8Array(0),Ub=class{constructor(e,r){this.databaseId=r,this.vn=new ap,this.Cn=new Ki(t=>zl(t),(t,i)=>Ip(t,i)),this.uid=e.uid||""}addToCollectionParentIndex(e,r){if(!this.vn.has(r)){let t=r.lastSegment(),i=r.popLast();e.addOnCommittedListener(()=>{this.vn.add(r)});let o={collectionId:t,parent:rr(i)};return Kj(e).put(o)}return B.resolve()}getCollectionParents(e,r){let t=[],i=IDBKeyRange.bound([r,""],[SH(r),""],!1,!0);return Kj(e).j(i).next(o=>{for(let s of o){if(s.collectionId!==r)break;t.push(Bo(s.parent))}return t})}addFieldIndex(e,r){let t=Om(e),i=(function(a){return{indexId:a.indexId,collectionGroup:a.collectionGroup,fields:a.fields.map(c=>[c.fieldPath.canonicalString(),c.kind])}})(r);delete i.indexId;let o=t.add(i);if(r.indexState){let s=rh(e);return o.next(a=>{s.put(Bj(a,this.uid,r.indexState.sequenceNumber,r.indexState.offset))})}return o.next()}deleteFieldIndex(e,r){let t=Om(e),i=rh(e),o=nh(e);return t.delete(r.indexId).next(()=>i.delete(IDBKeyRange.bound([r.indexId],[r.indexId+1],!1,!0))).next(()=>o.delete(IDBKeyRange.bound([r.indexId],[r.indexId+1],!1,!0)))}deleteAllFieldIndexes(e){let r=Om(e),t=nh(e),i=rh(e);return r.Y().next(()=>t.Y()).next(()=>i.Y())}createTargetIndexes(e,r){return B.forEach(this.Fn(r),t=>this.getIndexType(e,t).next(i=>{if(i===0||i===1){let o=new ey(t).bn();if(o!=null)return this.addFieldIndex(e,o)}}))}getDocumentsMatchingTarget(e,r){let t=nh(e),i=!0,o=new Map;return B.forEach(this.Fn(r),s=>this.Mn(e,s).next(a=>{i&&(i=!!a),o.set(s,a)})).next(()=>{if(i){let s=Ve(),a=[];return B.forEach(o,(c,l)=>{X(qj,`Using index ${(function(G){return`id=${G.indexId}|cg=${G.collectionGroup}|f=${G.fields.map(M=>`${M.fieldPath}:${M.kind}`).join(",")}`})(c)} to execute ${zl(r)}`);let u=(function(G,M){let U=Yw(M);if(U===void 0)return null;for(let k of zv(G,U.fieldPath))switch(k.op){case"array-contains-any":return k.value.arrayValue.values||[];case"array-contains":return[k.value]}return null})(l,c),d=(function(G,M){let U=new Map;for(let k of Ll(M))for(let S of zv(G,k.fieldPath))switch(S.op){case"==":case"in":U.set(k.fieldPath.canonicalString(),S.value);break;case"not-in":case"!=":return U.set(k.fieldPath.canonicalString(),S.value),Array.from(U.values())}return null})(l,c),f=(function(G,M){let U=[],k=!0;for(let S of Ll(M)){let A=S.kind===0?Rj(G,S.fieldPath,G.startAt):Cj(G,S.fieldPath,G.startAt);U.push(A.value),k&&(k=A.inclusive)}return new Ho(U,k)})(l,c),g=(function(G,M){let U=[],k=!0;for(let S of Ll(M)){let A=S.kind===0?Cj(G,S.fieldPath,G.endAt):Rj(G,S.fieldPath,G.endAt);U.push(A.value),k&&(k=A.inclusive)}return new Ho(U,k)})(l,c),p=this.xn(c,l,f),_=this.xn(c,l,g),T=this.On(c,l,d),D=this.Nn(c.indexId,u,p,f.inclusive,_,g.inclusive,T);return B.forEach(D,b=>t.H(b,r.limit).next(G=>{G.forEach(M=>{let U=ie.fromSegments(M.documentKey);s.has(U)||(s=s.add(U),a.push(U))})}))}).next(()=>a)}return B.resolve(null)})}Fn(e){let r=this.Cn.get(e);return r||(e.filters.length===0?r=[e]:r=loe(nt.create(e.filters,"and")).map(t=>mb(e.path,e.collectionGroup,e.orderBy,t.getFilters(),e.limit,e.startAt,e.endAt)),this.Cn.set(e,r),r)}Nn(e,r,t,i,o,s,a){let c=(r!=null?r.length:1)*Math.max(t.length,o.length),l=c/(r!=null?r.length:1),u=[];for(let d=0;d<c;++d){let f=r?this.Bn(r[d/l]):vv,g=this.Ln(e,f,t[d%l],i),p=this.kn(e,f,o[d%l],s),_=a.map(T=>this.Ln(e,f,T,!0));u.push(...this.createRange(g,p,_))}return u}Ln(e,r,t,i){let o=new kl(e,ie.empty(),r,t);return i?o:o.En()}kn(e,r,t,i){let o=new kl(e,ie.empty(),r,t);return i?o.En():o}Mn(e,r){let t=new ey(r),i=r.collectionGroup!=null?r.collectionGroup:r.path.lastSegment();return this.getFieldIndexes(e,i).next(o=>{let s=null;for(let a of o)t.pn(a)&&(!s||a.fields.length>s.fields.length)&&(s=a);return s})}getIndexType(e,r){let t=2,i=this.Fn(r);return B.forEach(i,o=>this.Mn(e,o).next(s=>{s?t!==0&&s.fields.length<(function(c){let l=new at(Tn.comparator),u=!1;for(let d of c.filters)for(let f of d.getFlattenedFilters())f.field.isKeyField()||(f.op==="array-contains"||f.op==="array-contains-any"?u=!0:l=l.add(f.field));for(let d of c.orderBy)d.field.isKeyField()||(l=l.add(d.field));return l.size+(u?1:0)})(o)&&(t=1):t=0})).next(()=>(function(s){return s.limit!==null})(r)&&i.length>1&&t===2?1:t)}qn(e,r){let t=new Fl;for(let i of Ll(e)){let o=r.data.field(i.fieldPath);if(o==null)return null;let s=t.hn(i.kind);Cs.Ut.bt(o,s)}return t.an()}Bn(e){let r=new Fl;return Cs.Ut.bt(e,r.hn(0)),r.an()}Qn(e,r){let t=new Fl;return Cs.Ut.bt(Hl(this.databaseId,r),t.hn((function(o){let s=Ll(o);return s.length===0?0:s[s.length-1].kind})(e))),t.an()}On(e,r,t){if(t===null)return[];let i=[];i.push(new Fl);let o=0;for(let s of Ll(e)){let a=t[o++];for(let c of i)if(this.$n(r,s.fieldPath)&&Zm(a))i=this.Un(i,s,a);else{let l=c.hn(s.kind);Cs.Ut.bt(a,l)}}return this.Kn(i)}xn(e,r,t){return this.On(e,r,t.position)}Kn(e){let r=[];for(let t=0;t<e.length;++t)r[t]=e[t].an();return r}Un(e,r,t){let i=[...e],o=[];for(let s of t.arrayValue.values||[])for(let a of i){let c=new Fl;c.seed(a.an()),Cs.Ut.bt(s,c.hn(r.kind)),o.push(c)}return o}$n(e,r){return!!e.filters.find(t=>t instanceof $e&&t.field.isEqual(r)&&(t.op==="in"||t.op==="not-in"))}getFieldIndexes(e,r){let t=Om(e),i=rh(e);return(r?t.j(tb,IDBKeyRange.bound(r,r)):t.j()).next(o=>{let s=[];return B.forEach(o,a=>i.get([a.indexId,this.uid]).next(c=>{s.push((function(u,d){let f=d?new Hm(d.sequenceNumber,new _i(Xl(d.readTime),new ie(Bo(d.documentKey)),d.largestBatchId)):Hm.empty(),g=u.fields.map(([p,_])=>new uh(Tn.fromServerFormat(p),_));return new ph(u.indexId,u.collectionGroup,g,f)})(a,c))})).next(()=>s)})}getNextCollectionGroupToUpdate(e){return this.getFieldIndexes(e).next(r=>r.length===0?null:(r.sort((t,i)=>{let o=t.indexState.sequenceNumber-i.indexState.sequenceNumber;return o!==0?o:Re(t.collectionGroup,i.collectionGroup)}),r[0].collectionGroup))}updateCollectionGroup(e,r,t){let i=Om(e),o=rh(e);return this.Wn(e).next(s=>i.j(tb,IDBKeyRange.bound(r,r)).next(a=>B.forEach(a,c=>o.put(Bj(c.indexId,this.uid,s,t)))))}updateIndexEntries(e,r){let t=new Map;return B.forEach(r,(i,o)=>{let s=t.get(i.collectionGroup);return(s?B.resolve(s):this.getFieldIndexes(e,i.collectionGroup)).next(a=>(t.set(i.collectionGroup,a),B.forEach(a,c=>this.Gn(e,i,c).next(l=>{let u=this.zn(o,c);return l.isEqual(u)?B.resolve():this.jn(e,o,c,l,u)}))))})}Jn(e,r,t,i){return nh(e).put(i.An(this.uid,this.Qn(t,r.key),r.key))}Hn(e,r,t,i){return nh(e).delete(i.Rn(this.uid,this.Qn(t,r.key),r.key))}Gn(e,r,t){let i=nh(e),o=new at(ba);return i.X({index:PH,range:IDBKeyRange.only([t.indexId,this.uid,bv(this.Qn(t,r))])},(s,a)=>{o=o.add(new kl(t.indexId,r,Wj(a.arrayValue),Wj(a.directionalValue)))}).next(()=>o)}zn(e,r){let t=new at(ba),i=this.qn(r,e);if(i==null)return t;let o=Yw(r);if(o!=null){let s=e.data.field(o.fieldPath);if(Zm(s))for(let a of s.arrayValue.values||[])t=t.add(new kl(r.indexId,e.key,this.Bn(a),i))}else t=t.add(new kl(r.indexId,e.key,vv,i));return t}jn(e,r,t,i,o){X(qj,"Updating index entries for document '%s'",r.key);let s=[];return(function(c,l,u,d,f){let g=c.getIterator(),p=l.getIterator(),_=eh(g),T=eh(p);for(;_||T;){let D=!1,b=!1;if(_&&T){let G=u(_,T);G<0?b=!0:G>0&&(D=!0)}else _!=null?b=!0:D=!0;D?(d(T),T=eh(p)):b?(f(_),_=eh(g)):(_=eh(g),T=eh(p))}})(i,o,ba,a=>{s.push(this.Jn(e,r,t,a))},a=>{s.push(this.Hn(e,r,t,a))}),B.waitFor(s)}Wn(e){let r=1;return rh(e).X({index:MH,reverse:!0,range:IDBKeyRange.upperBound([this.uid,Number.MAX_SAFE_INTEGER])},(t,i,o)=>{o.done(),r=i.sequenceNumber+1}).next(()=>r)}createRange(e,r,t){t=t.sort((s,a)=>ba(s,a)).filter((s,a,c)=>!a||ba(s,c[a-1])!==0);let i=[];i.push(e);for(let s of t){let a=ba(s,e),c=ba(s,r);if(a===0)i[0]=e.En();else if(a>0&&c<0)i.push(s),i.push(s.En());else if(c>0)break}i.push(r);let o=[];for(let s=0;s<i.length;s+=2){if(this.Yn(i[s],i[s+1]))return[];let a=i[s].Rn(this.uid,vv,ie.empty()),c=i[s+1].Rn(this.uid,vv,ie.empty());o.push(IDBKeyRange.bound(a,c))}return o}Yn(e,r){return ba(e,r)>0}getMinOffsetFromCollectionGroup(e,r){return this.getFieldIndexes(e,r).next(Yj)}getMinOffset(e,r){return B.mapArray(this.Fn(r),t=>this.Mn(e,t).next(i=>i||ae(44426))).next(Yj)}};function Kj(n){return yn(n,Km)}function nh(n){return yn(n,km)}function Om(n){return yn(n,tM)}function rh(n){return yn(n,Fm)}function Yj(n){he(n.length!==0,28825);let e=n[0].indexState.offset,r=e.largestBatchId;for(let t=1;t<n.length;t++){let i=n[t].indexState.offset;JL(i,e)<0&&(e=i),r<i.largestBatchId&&(r=i.largestBatchId)}return new _i(e.readTime,e.documentKey,r)}var Qj={didRun:!1,sequenceNumbersCollected:0,targetsRemoved:0,documentsRemoved:0},bW=41943040,Nr=class n{static withCacheSize(e){return new n(e,n.DEFAULT_COLLECTION_PERCENTILE,n.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT)}constructor(e,r,t){this.cacheSizeCollectionThreshold=e,this.percentileToCollect=r,this.maximumSequenceNumbersToCollect=t}};function LW(n,e,r){let t=n.store(qi),i=n.store(_h),o=[],s=IDBKeyRange.only(r.batchId),a=0,c=t.X({range:s},(u,d,f)=>(a++,f.delete()));o.push(c.next(()=>{he(a===1,47070,{batchId:r.batchId})}));let l=[];for(let u of r.mutations){let d=wH(e,u.key.path,r.batchId);o.push(i.delete(d)),l.push(u.key)}return B.waitFor(o).next(()=>l)}function ny(n){if(!n)return 0;let e;if(n.document)e=n.document;else if(n.unknownDocument)e=n.unknownDocument;else{if(!n.noDocument)throw ae(14731);e=n.noDocument}return JSON.stringify(e).length}Nr.DEFAULT_COLLECTION_PERCENTILE=10,Nr.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT=1e3,Nr.DEFAULT=new Nr(bW,Nr.DEFAULT_COLLECTION_PERCENTILE,Nr.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT),Nr.DISABLED=new Nr(-1,0,0);var ry=class n{constructor(e,r,t,i){this.userId=e,this.serializer=r,this.indexManager=t,this.referenceDelegate=i,this.Zn={}}static yt(e,r,t,i){he(e.uid!=="",64387);let o=e.isAuthenticated()?e.uid:"";return new n(o,r,t,i)}checkEmpty(e){let r=!0,t=IDBKeyRange.bound([this.userId,Number.NEGATIVE_INFINITY],[this.userId,Number.POSITIVE_INFINITY]);return La(e).X({index:Ul,range:t},(i,o,s)=>{r=!1,s.done()}).next(()=>r)}addMutationBatch(e,r,t,i){let o=ch(e),s=La(e);return s.add({}).next(a=>{he(typeof a=="number",49019);let c=new tp(a,r,t,i),l=(function(g,p,_){let T=_.baseMutations.map(b=>sp(g.gt,b)),D=_.mutations.map(b=>sp(g.gt,b));return{userId:p,batchId:_.batchId,localWriteTimeMs:_.localWriteTime.toMillis(),baseMutations:T,mutations:D}})(this.serializer,this.userId,c),u=[],d=new at((f,g)=>Re(f.canonicalString(),g.canonicalString()));for(let f of i){let g=wH(this.userId,f.key.path,a);d=d.add(f.key.path.popLast()),u.push(s.put(l)),u.push(o.put(g,oie))}return d.forEach(f=>{u.push(this.indexManager.addToCollectionParentIndex(e,f))}),e.addOnCommittedListener(()=>{this.Zn[a]=c.keys()}),B.waitFor(u).next(()=>c)})}lookupMutationBatch(e,r){return La(e).get(r).next(t=>t?(he(t.userId===this.userId,48,"Unexpected user for mutation batch",{userId:t.userId,batchId:r}),xl(this.serializer,t)):null)}Xn(e,r){return this.Zn[r]?B.resolve(this.Zn[r]):this.lookupMutationBatch(e,r).next(t=>{if(t){let i=t.keys();return this.Zn[r]=i,i}return null})}getNextMutationBatchAfterBatchId(e,r){let t=r+1,i=IDBKeyRange.lowerBound([this.userId,t]),o=null;return La(e).X({index:Ul,range:i},(s,a,c)=>{a.userId===this.userId&&(he(a.batchId>=t,47524,{er:t}),o=xl(this.serializer,a)),c.done()}).next(()=>o)}getHighestUnacknowledgedBatchId(e){let r=IDBKeyRange.upperBound([this.userId,Number.POSITIVE_INFINITY]),t=Gl;return La(e).X({index:Ul,range:r,reverse:!0},(i,o,s)=>{t=o.batchId,s.done()}).next(()=>t)}getAllMutationBatches(e){let r=IDBKeyRange.bound([this.userId,Gl],[this.userId,Number.POSITIVE_INFINITY]);return La(e).j(Ul,r).next(t=>t.map(i=>xl(this.serializer,i)))}getAllMutationBatchesAffectingDocumentKey(e,r){let t=Dv(this.userId,r.path),i=IDBKeyRange.lowerBound(t),o=[];return ch(e).X({range:i},(s,a,c)=>{let[l,u,d]=s,f=Bo(u);if(l===this.userId&&r.path.isEqual(f))return La(e).get(d).next(g=>{if(!g)throw ae(61480,{tr:s,batchId:d});he(g.userId===this.userId,10503,"Unexpected user for mutation batch",{userId:g.userId,batchId:d}),o.push(xl(this.serializer,g))});c.done()}).next(()=>o)}getAllMutationBatchesAffectingDocumentKeys(e,r){let t=new at(Re),i=[];return r.forEach(o=>{let s=Dv(this.userId,o.path),a=IDBKeyRange.lowerBound(s),c=ch(e).X({range:a},(l,u,d)=>{let[f,g,p]=l,_=Bo(g);f===this.userId&&o.path.isEqual(_)?t=t.add(p):d.done()});i.push(c)}),B.waitFor(i).next(()=>this.nr(e,t))}getAllMutationBatchesAffectingQuery(e,r){let t=r.path,i=t.length+1,o=Dv(this.userId,t),s=IDBKeyRange.lowerBound(o),a=new at(Re);return ch(e).X({range:s},(c,l,u)=>{let[d,f,g]=c,p=Bo(f);d===this.userId&&t.isPrefixOf(p)?p.length===i&&(a=a.add(g)):u.done()}).next(()=>this.nr(e,a))}nr(e,r){let t=[],i=[];return r.forEach(o=>{i.push(La(e).get(o).next(s=>{if(s===null)throw ae(35274,{batchId:o});he(s.userId===this.userId,9748,"Unexpected user for mutation batch",{userId:s.userId,batchId:o}),t.push(xl(this.serializer,s))}))}),B.waitFor(i).next(()=>t)}removeMutationBatch(e,r){return LW(e.ce,this.userId,r).next(t=>(e.addOnCommittedListener(()=>{this.rr(r.batchId)}),B.forEach(t,i=>this.referenceDelegate.markPotentiallyOrphaned(e,i))))}rr(e){delete this.Zn[e]}performConsistencyCheck(e){return this.checkEmpty(e).next(r=>{if(!r)return B.resolve();let t=IDBKeyRange.lowerBound((function(s){return[s]})(this.userId)),i=[];return ch(e).X({range:t},(o,s,a)=>{if(o[0]===this.userId){let c=Bo(o[1]);i.push(c)}else a.done()}).next(()=>{he(i.length===0,56720,{ir:i.map(o=>o.canonicalString())})})})}containsKey(e,r){return MW(e,this.userId,r)}sr(e){return PW(e).get(this.userId).next(r=>r||{userId:this.userId,lastAcknowledgedBatchId:Gl,lastStreamToken:""})}};function MW(n,e,r){let t=Dv(e,r.path),i=t[1],o=IDBKeyRange.lowerBound(t),s=!1;return ch(n).X({range:o,Z:!0},(a,c,l)=>{let[u,d,f]=a;u===e&&d===i&&(s=!0),l.done()}).next(()=>s)}function La(n){return yn(n,qi)}function ch(n){return yn(n,_h)}function PW(n){return yn(n,zm)}var wh=class n{constructor(e){this._r=e}next(){return this._r+=2,this._r}static ar(){return new n(0)}static ur(){return new n(-1)}};var Vb=class{constructor(e,r){this.referenceDelegate=e,this.serializer=r}allocateTargetId(e){return this.cr(e).next(r=>{let t=new wh(r.highestTargetId);return r.highestTargetId=t.next(),this.lr(e,r).next(()=>r.highestTargetId)})}getLastRemoteSnapshotVersion(e){return this.cr(e).next(r=>me.fromTimestamp(new Pt(r.lastRemoteSnapshotVersion.seconds,r.lastRemoteSnapshotVersion.nanoseconds)))}getHighestSequenceNumber(e){return this.cr(e).next(r=>r.highestListenSequenceNumber)}setTargetsMetadata(e,r,t){return this.cr(e).next(i=>(i.highestListenSequenceNumber=r,t&&(i.lastRemoteSnapshotVersion=t.toTimestamp()),r>i.highestListenSequenceNumber&&(i.highestListenSequenceNumber=r),this.lr(e,i)))}addTargetData(e,r){return this.hr(e,r).next(()=>this.cr(e).next(t=>(t.targetCount+=1,this.Pr(r,t),this.lr(e,t))))}updateTargetData(e,r){return this.hr(e,r)}removeTargetData(e,r){return this.removeMatchingKeysForTargetId(e,r.targetId).next(()=>ih(e).delete(r.targetId)).next(()=>this.cr(e)).next(t=>(he(t.targetCount>0,8065),t.targetCount-=1,this.lr(e,t)))}removeTargets(e,r,t){let i=0,o=[];return ih(e).X((s,a)=>{let c=Mm(a);c.sequenceNumber<=r&&t.get(c.targetId)===null&&(i++,o.push(this.removeTargetData(e,c)))}).next(()=>B.waitFor(o)).next(()=>i)}forEachTarget(e,r){return ih(e).X((t,i)=>{let o=Mm(i);r(o)})}cr(e){return Xj(e).get(Bv).next(r=>(he(r!==null,2888),r))}lr(e,r){return Xj(e).put(Bv,r)}hr(e,r){return ih(e).put(CW(this.serializer,r))}Pr(e,r){let t=!1;return e.targetId>r.highestTargetId&&(r.highestTargetId=e.targetId,t=!0),e.sequenceNumber>r.highestListenSequenceNumber&&(r.highestListenSequenceNumber=e.sequenceNumber,t=!0),t}getTargetCount(e){return this.cr(e).next(r=>r.targetCount)}getTargetData(e,r){let t=zl(r),i=IDBKeyRange.bound([t,Number.NEGATIVE_INFINITY],[t,Number.POSITIVE_INFINITY]),o=null;return ih(e).X({range:i,index:LH},(s,a,c)=>{let l=Mm(a);Ip(r,l.target)&&(o=l,c.done())}).next(()=>o)}addMatchingKeys(e,r,t){let i=[],o=xa(e);return r.forEach(s=>{let a=rr(s.path);i.push(o.put({targetId:t,path:a})),i.push(this.referenceDelegate.addReference(e,t,s))}),B.waitFor(i)}removeMatchingKeys(e,r,t){let i=xa(e);return B.forEach(r,o=>{let s=rr(o.path);return B.waitFor([i.delete([t,s]),this.referenceDelegate.removeReference(e,t,o)])})}removeMatchingKeysForTargetId(e,r){let t=xa(e),i=IDBKeyRange.bound([r],[r+1],!1,!0);return t.delete(i)}getMatchingKeysForTargetId(e,r){let t=IDBKeyRange.bound([r],[r+1],!1,!0),i=xa(e),o=Ve();return i.X({range:t,Z:!0},(s,a,c)=>{let l=Bo(s[1]),u=new ie(l);o=o.add(u)}).next(()=>o)}containsKey(e,r){let t=rr(r.path),i=IDBKeyRange.bound([t],[SH(t)],!1,!0),o=0;return xa(e).X({index:eM,Z:!0,range:i},([s,a],c,l)=>{s!==0&&(o++,l.done())}).next(()=>o>0)}Et(e,r){return ih(e).get(r).next(t=>t?Mm(t):null)}};function ih(n){return yn(n,Th)}function Xj(n){return yn(n,$l)}function xa(n){return yn(n,Ih)}var Jj="LruGarbageCollector",xW=1048576;function Zj([n,e],[r,t]){let i=Re(n,r);return i===0?Re(e,t):i}var Bb=class{constructor(e){this.Tr=e,this.buffer=new at(Zj),this.Ir=0}dr(){return++this.Ir}Er(e){let r=[e,this.dr()];if(this.buffer.size<this.Tr)this.buffer=this.buffer.add(r);else{let t=this.buffer.last();Zj(r,t)<0&&(this.buffer=this.buffer.delete(t).add(r))}}get maxValue(){return this.buffer.last()[0]}},iy=class{constructor(e,r,t){this.garbageCollector=e,this.asyncQueue=r,this.localStore=t,this.Ar=null}start(){this.garbageCollector.params.cacheSizeCollectionThreshold!==-1&&this.Rr(6e4)}stop(){this.Ar&&(this.Ar.cancel(),this.Ar=null)}get started(){return this.Ar!==null}Rr(e){X(Jj,`Garbage collection scheduled in ${e}ms`),this.Ar=this.asyncQueue.enqueueAfterDelay("lru_garbage_collection",e,()=>I(this,null,function*(){this.Ar=null;try{yield this.localStore.collectGarbage(this.garbageCollector)}catch(r){Xa(r)?X(Jj,"Ignoring IndexedDB error during garbage collection: ",r):yield Qa(r)}yield this.Rr(3e5)}))}},Gb=class{constructor(e,r){this.Vr=e,this.params=r}calculateTargetCount(e,r){return this.Vr.mr(e).next(t=>Math.floor(r/100*t))}nthSequenceNumber(e,r){if(r===0)return B.resolve(Kr.ue);let t=new Bb(r);return this.Vr.forEachTarget(e,i=>t.Er(i.sequenceNumber)).next(()=>this.Vr.gr(e,i=>t.Er(i))).next(()=>t.maxValue)}removeTargets(e,r,t){return this.Vr.removeTargets(e,r,t)}removeOrphanedDocuments(e,r){return this.Vr.removeOrphanedDocuments(e,r)}collect(e,r){return this.params.cacheSizeCollectionThreshold===-1?(X("LruGarbageCollector","Garbage collection skipped; disabled"),B.resolve(Qj)):this.getCacheSize(e).next(t=>t<this.params.cacheSizeCollectionThreshold?(X("LruGarbageCollector",`Garbage collection skipped; Cache size ${t} is lower than threshold ${this.params.cacheSizeCollectionThreshold}`),Qj):this.pr(e,r))}getCacheSize(e){return this.Vr.getCacheSize(e)}pr(e,r){let t,i,o,s,a,c,l,u=Date.now();return this.calculateTargetCount(e,this.params.percentileToCollect).next(d=>(d>this.params.maximumSequenceNumbersToCollect?(X("LruGarbageCollector",`Capping sequence numbers to collect down to the maximum of ${this.params.maximumSequenceNumbersToCollect} from ${d}`),i=this.params.maximumSequenceNumbersToCollect):i=d,s=Date.now(),this.nthSequenceNumber(e,i))).next(d=>(t=d,a=Date.now(),this.removeTargets(e,t,r))).next(d=>(o=d,c=Date.now(),this.removeOrphanedDocuments(e,t))).next(d=>(l=Date.now(),oh()<=Fe.DEBUG&&X("LruGarbageCollector",`LRU Garbage Collection
158
- Counted targets in ${s-u}ms
159
- Determined least recently used ${i} in `+(a-s)+`ms
160
- Removed ${o} targets in `+(c-a)+`ms
161
- Removed ${d} documents in `+(l-c)+`ms
162
- Total Duration: ${l-u}ms`),B.resolve({didRun:!0,sequenceNumbersCollected:i,targetsRemoved:o,documentsRemoved:d})))}};function FW(n,e){return new Gb(n,e)}var $b=class{constructor(e,r){this.db=e,this.garbageCollector=FW(this,r)}mr(e){let r=this.yr(e);return this.db.getTargetCache().getTargetCount(e).next(t=>r.next(i=>t+i))}yr(e){let r=0;return this.gr(e,t=>{r++}).next(()=>r)}forEachTarget(e,r){return this.db.getTargetCache().forEachTarget(e,r)}gr(e,r){return this.wr(e,(t,i)=>r(i))}addReference(e,r,t){return yv(e,t)}removeReference(e,r,t){return yv(e,t)}removeTargets(e,r,t){return this.db.getTargetCache().removeTargets(e,r,t)}markPotentiallyOrphaned(e,r){return yv(e,r)}Sr(e,r){return(function(i,o){let s=!1;return PW(i).ee(a=>MW(i,a,o).next(c=>(c&&(s=!0),B.resolve(!c)))).next(()=>s)})(e,r)}removeOrphanedDocuments(e,r){let t=this.db.getRemoteDocumentCache().newChangeBuffer(),i=[],o=0;return this.wr(e,(s,a)=>{if(a<=r){let c=this.Sr(e,s).next(l=>{if(!l)return o++,t.getEntry(e,s).next(()=>(t.removeEntry(s,me.min()),xa(e).delete((function(d){return[0,rr(d.path)]})(s))))});i.push(c)}}).next(()=>B.waitFor(i)).next(()=>t.apply(e)).next(()=>o)}removeTarget(e,r){let t=r.withSequenceNumber(e.currentSequenceNumber);return this.db.getTargetCache().updateTargetData(e,t)}updateLimboDocument(e,r){return yv(e,r)}wr(e,r){let t=xa(e),i,o=Kr.ue;return t.X({index:eM},([s,a],{path:c,sequenceNumber:l})=>{s===0?(o!==Kr.ue&&r(new ie(Bo(i)),o),o=l,i=c):o=Kr.ue}).next(()=>{o!==Kr.ue&&r(new ie(Bo(i)),o)})}getCacheSize(e){return this.db.getRemoteDocumentCache().getSize(e)}};function yv(n,e){return xa(n).put((function(t,i){return{targetId:0,path:rr(t.path),sequenceNumber:i}})(e,n.currentSequenceNumber))}var oy=class{constructor(){this.changes=new Ki(e=>e.toString(),(e,r)=>e.isEqual(r)),this.changesApplied=!1}addEntry(e){this.assertNotApplied(),this.changes.set(e.key,e)}removeEntry(e,r){this.assertNotApplied(),this.changes.set(e,In.newInvalidDocument(e).setReadTime(r))}getEntry(e,r){this.assertNotApplied();let t=this.changes.get(r);return t!==void 0?B.resolve(t):this.getFromCache(e,r)}getEntries(e,r){return this.getAllFromCache(e,r)}apply(e){return this.assertNotApplied(),this.changesApplied=!0,this.applyChanges(e)}assertNotApplied(){}};var jb=class{constructor(e){this.serializer=e}setIndexManager(e){this.indexManager=e}addEntry(e,r,t){return bl(e).put(t)}removeEntry(e,r,t){return bl(e).delete((function(o,s){let a=o.path.toArray();return[a.slice(0,a.length-2),a[a.length-2],Jv(s),a[a.length-1]]})(r,t))}updateMetadata(e,r){return this.getMetadata(e).next(t=>(t.byteSize+=r,this.br(e,t)))}getEntry(e,r){let t=In.newInvalidDocument(r);return bl(e).X({index:Rv,range:IDBKeyRange.only(wm(r))},(i,o)=>{t=this.Dr(r,o)}).next(()=>t)}vr(e,r){let t={size:0,document:In.newInvalidDocument(r)};return bl(e).X({index:Rv,range:IDBKeyRange.only(wm(r))},(i,o)=>{t={document:this.Dr(r,o),size:ny(o)}}).next(()=>t)}getEntries(e,r){let t=Qr();return this.Cr(e,r,(i,o)=>{let s=this.Dr(i,o);t=t.insert(i,s)}).next(()=>t)}Fr(e,r){let t=Qr(),i=new Dt(ie.comparator);return this.Cr(e,r,(o,s)=>{let a=this.Dr(o,s);t=t.insert(o,a),i=i.insert(o,ny(s))}).next(()=>({documents:t,Mr:i}))}Cr(e,r,t){if(r.isEmpty())return B.resolve();let i=new at(nH);r.forEach(c=>i=i.add(c));let o=IDBKeyRange.bound(wm(i.first()),wm(i.last())),s=i.getIterator(),a=s.getNext();return bl(e).X({index:Rv,range:o},(c,l,u)=>{let d=ie.fromSegments([...l.prefixPath,l.collectionGroup,l.documentId]);for(;a&&nH(a,d)<0;)t(a,null),a=s.getNext();a&&a.isEqual(d)&&(t(a,l),a=s.hasNext()?s.getNext():null),a?u.G(wm(a)):u.done()}).next(()=>{for(;a;)t(a,null),a=s.hasNext()?s.getNext():null})}getDocumentsMatchingQuery(e,r,t,i,o){let s=r.path,a=[s.popLast().toArray(),s.lastSegment(),Jv(t.readTime),t.documentKey.path.isEmpty()?"":t.documentKey.path.lastSegment()],c=[s.popLast().toArray(),s.lastSegment(),[Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],""];return bl(e).j(IDBKeyRange.bound(a,c,!0)).next(l=>{o?.incrementDocumentReadCount(l.length);let u=Qr();for(let d of l){let f=this.Dr(ie.fromSegments(d.prefixPath.concat(d.collectionGroup,d.documentId)),d);f.isFoundDocument()&&(yp(r,f)||i.has(f.key))&&(u=u.insert(f.key,f))}return u})}getAllFromCollectionGroup(e,r,t,i){let o=Qr(),s=tH(r,t),a=tH(r,_i.max());return bl(e).X({index:bH,range:IDBKeyRange.bound(s,a,!0)},(c,l,u)=>{let d=this.Dr(ie.fromSegments(l.prefixPath.concat(l.collectionGroup,l.documentId)),l);o=o.insert(d.key,d),o.size===i&&u.done()}).next(()=>o)}newChangeBuffer(e){return new Hb(this,!!e&&e.trackRemovals)}getSize(e){return this.getMetadata(e).next(r=>r.byteSize)}getMetadata(e){return eH(e).get(eb).next(r=>(he(!!r,20021),r))}br(e,r){return eH(e).put(eb,r)}Dr(e,r){if(r){let t=aoe(this.serializer,r);if(!(t.isNoDocument()&&t.version.isEqual(me.min())))return t}return In.newInvalidDocument(e)}};function kW(n){return new jb(n)}var Hb=class extends oy{constructor(e,r){super(),this.Or=e,this.trackRemovals=r,this.Nr=new Ki(t=>t.toString(),(t,i)=>t.isEqual(i))}applyChanges(e){let r=[],t=0,i=new at((o,s)=>Re(o.canonicalString(),s.canonicalString()));return this.changes.forEach((o,s)=>{let a=this.Nr.get(o);if(r.push(this.Or.removeEntry(e,o,a.readTime)),s.isValidDocument()){let c=Uj(this.Or.serializer,s);i=i.add(o.path.popLast());let l=ny(c);t+=l-a.size,r.push(this.Or.addEntry(e,o,c))}else if(t-=a.size,this.trackRemovals){let c=Uj(this.Or.serializer,s.convertToNoDocument(me.min()));r.push(this.Or.addEntry(e,o,c))}}),i.forEach(o=>{r.push(this.Or.indexManager.addToCollectionParentIndex(e,o))}),r.push(this.Or.updateMetadata(e,t)),B.waitFor(r)}getFromCache(e,r){return this.Or.vr(e,r).next(t=>(this.Nr.set(r,{size:t.size,readTime:t.document.readTime}),t.document))}getAllFromCache(e,r){return this.Or.Fr(e,r).next(({documents:t,Mr:i})=>(i.forEach((o,s)=>{this.Nr.set(o,{size:s,readTime:t.get(o).readTime})}),t))}};function eH(n){return yn(n,qm)}function bl(n){return yn(n,Vv)}function wm(n){let e=n.path.toArray();return[e.slice(0,e.length-2),e[e.length-2],e[e.length-1]]}function tH(n,e){let r=e.documentKey.path.toArray();return[n,Jv(e.readTime),r.slice(0,r.length-2),r.length>0?r[r.length-1]:""]}function nH(n,e){let r=n.path.toArray(),t=e.path.toArray(),i=0;for(let o=0;o<r.length-2&&o<t.length-2;++o)if(i=Re(r[o],t[o]),i)return i;return i=Re(r.length,t.length),i||(i=Re(r[r.length-2],t[t.length-2]),i||Re(r[r.length-1],t[t.length-1]))}var Wb=class{constructor(e,r){this.overlayedDocument=e,this.mutatedFields=r}};var sy=class{constructor(e,r,t,i){this.remoteDocumentCache=e,this.mutationQueue=r,this.documentOverlayCache=t,this.indexManager=i}getDocument(e,r){let t=null;return this.documentOverlayCache.getOverlay(e,r).next(i=>(t=i,this.remoteDocumentCache.getEntry(e,r))).next(i=>(t!==null&&Bm(t.mutation,i,Yr.empty(),Pt.now()),i))}getDocuments(e,r){return this.remoteDocumentCache.getEntries(e,r).next(t=>this.getLocalViewOfDocuments(e,t,Ve()).next(()=>t))}getLocalViewOfDocuments(e,r,t=Ve()){let i=Go();return this.populateOverlays(e,i,r).next(()=>this.computeViews(e,r,i,t).next(o=>{let s=Lm();return o.forEach((a,c)=>{s=s.insert(a,c.overlayedDocument)}),s}))}getOverlayedDocuments(e,r){let t=Go();return this.populateOverlays(e,t,r).next(()=>this.computeViews(e,r,t,Ve()))}populateOverlays(e,r,t){let i=[];return t.forEach(o=>{r.has(o)||i.push(o)}),this.documentOverlayCache.getOverlays(e,i).next(o=>{o.forEach((s,a)=>{r.set(s,a)})})}computeViews(e,r,t,i){let o=Qr(),s=Vm(),a=(function(){return Vm()})();return r.forEach((c,l)=>{let u=t.get(l.key);i.has(l.key)&&(u===void 0||u.mutation instanceof Yi)?o=o.insert(l.key,l):u!==void 0?(s.set(l.key,u.mutation.getFieldMask()),Bm(u.mutation,l,u.mutation.getFieldMask(),Pt.now())):s.set(l.key,Yr.empty())}),this.recalculateAndSaveOverlays(e,o).next(c=>(c.forEach((l,u)=>s.set(l,u)),r.forEach((l,u)=>{var d;return a.set(l,new Wb(u,(d=s.get(l))!==null&&d!==void 0?d:null))}),a))}recalculateAndSaveOverlays(e,r){let t=Vm(),i=new Dt((s,a)=>s-a),o=Ve();return this.mutationQueue.getAllMutationBatchesAffectingDocumentKeys(e,r).next(s=>{for(let a of s)a.keys().forEach(c=>{let l=r.get(c);if(l===null)return;let u=t.get(c)||Yr.empty();u=a.applyToLocalView(l,u),t.set(c,u);let d=(i.get(a.batchId)||Ve()).add(c);i=i.insert(a.batchId,d)})}).next(()=>{let s=[],a=i.getReverseIterator();for(;a.hasNext();){let c=a.getNext(),l=c.key,u=c.value,d=aW();u.forEach(f=>{if(!o.has(f)){let g=fW(r.get(f),t.get(f));g!==null&&d.set(f,g),o=o.add(f)}}),s.push(this.documentOverlayCache.saveOverlays(e,l,d))}return B.waitFor(s)}).next(()=>t)}recalculateAndSaveOverlaysForDocumentKeys(e,r){return this.remoteDocumentCache.getEntries(e,r).next(t=>this.recalculateAndSaveOverlays(e,t))}getDocumentsMatchingQuery(e,r,t,i){return(function(s){return ie.isDocumentKey(s.path)&&s.collectionGroup===null&&s.filters.length===0})(r)?this.getDocumentsMatchingDocumentQuery(e,r.path):aM(r)?this.getDocumentsMatchingCollectionGroupQuery(e,r,t,i):this.getDocumentsMatchingCollectionQuery(e,r,t,i)}getNextDocuments(e,r,t,i){return this.remoteDocumentCache.getAllFromCollectionGroup(e,r,t,i).next(o=>{let s=i-o.size>0?this.documentOverlayCache.getOverlaysForCollectionGroup(e,r,t.largestBatchId,i-o.size):B.resolve(Go()),a=mh,c=o;return s.next(l=>B.forEach(l,(u,d)=>(a<d.largestBatchId&&(a=d.largestBatchId),o.get(u)?B.resolve():this.remoteDocumentCache.getEntry(e,u).next(f=>{c=c.insert(u,f)}))).next(()=>this.populateOverlays(e,l,o)).next(()=>this.computeViews(e,c,l,Ve())).next(u=>({batchId:a,changes:sW(u)})))})}getDocumentsMatchingDocumentQuery(e,r){return this.getDocument(e,new ie(r)).next(t=>{let i=Lm();return t.isFoundDocument()&&(i=i.insert(t.key,t)),i})}getDocumentsMatchingCollectionGroupQuery(e,r,t,i){let o=r.collectionGroup,s=Lm();return this.indexManager.getCollectionParents(e,o).next(a=>B.forEach(a,c=>{let l=(function(d,f){return new Wo(f,null,d.explicitOrderBy.slice(),d.filters.slice(),d.limit,d.limitType,d.startAt,d.endAt)})(r,c.child(o));return this.getDocumentsMatchingCollectionQuery(e,l,t,i).next(u=>{u.forEach((d,f)=>{s=s.insert(d,f)})})}).next(()=>s))}getDocumentsMatchingCollectionQuery(e,r,t,i){let o;return this.documentOverlayCache.getOverlaysForCollection(e,r.path,t.largestBatchId).next(s=>(o=s,this.remoteDocumentCache.getDocumentsMatchingQuery(e,r,t,o,i))).next(s=>{o.forEach((c,l)=>{let u=l.getKey();s.get(u)===null&&(s=s.insert(u,In.newInvalidDocument(u)))});let a=Lm();return s.forEach((c,l)=>{let u=o.get(c);u!==void 0&&Bm(u.mutation,l,Yr.empty(),Pt.now()),yp(r,l)&&(a=a.insert(c,l))}),a})}};var zb=class{constructor(e){this.serializer=e,this.Br=new Map,this.Lr=new Map}getBundleMetadata(e,r){return B.resolve(this.Br.get(r))}saveBundleMetadata(e,r){return this.Br.set(r.id,(function(i){return{id:i.id,version:i.version,createTime:Ln(i.createTime)}})(r)),B.resolve()}getNamedQuery(e,r){return B.resolve(this.Lr.get(r))}saveNamedQuery(e,r){return this.Lr.set(r.name,(function(i){return{name:i.name,query:NW(i.bundledQuery),readTime:Ln(i.readTime)}})(r)),B.resolve()}};var qb=class{constructor(){this.overlays=new Dt(ie.comparator),this.kr=new Map}getOverlay(e,r){return B.resolve(this.overlays.get(r))}getOverlays(e,r){let t=Go();return B.forEach(r,i=>this.getOverlay(e,i).next(o=>{o!==null&&t.set(i,o)})).next(()=>t)}saveOverlays(e,r,t){return t.forEach((i,o)=>{this.wt(e,r,o)}),B.resolve()}removeOverlaysForBatchId(e,r,t){let i=this.kr.get(t);return i!==void 0&&(i.forEach(o=>this.overlays=this.overlays.remove(o)),this.kr.delete(t)),B.resolve()}getOverlaysForCollection(e,r,t){let i=Go(),o=r.length+1,s=new ie(r.child("")),a=this.overlays.getIteratorFrom(s);for(;a.hasNext();){let c=a.getNext().value,l=c.getKey();if(!r.isPrefixOf(l.path))break;l.path.length===o&&c.largestBatchId>t&&i.set(c.getKey(),c)}return B.resolve(i)}getOverlaysForCollectionGroup(e,r,t,i){let o=new Dt((l,u)=>l-u),s=this.overlays.getIterator();for(;s.hasNext();){let l=s.getNext().value;if(l.getKey().getCollectionGroup()===r&&l.largestBatchId>t){let u=o.get(l.largestBatchId);u===null&&(u=Go(),o=o.insert(l.largestBatchId,u)),u.set(l.getKey(),l)}}let a=Go(),c=o.getIterator();for(;c.hasNext()&&(c.getNext().value.forEach((l,u)=>a.set(l,u)),!(a.size()>=i)););return B.resolve(a)}wt(e,r,t){let i=this.overlays.get(t.key);if(i!==null){let s=this.kr.get(i.largestBatchId).delete(t.key);this.kr.set(i.largestBatchId,s)}this.overlays=this.overlays.insert(t.key,new np(r,t));let o=this.kr.get(r);o===void 0&&(o=Ve(),this.kr.set(r,o)),this.kr.set(r,o.add(t.key))}};var Kb=class{constructor(){this.sessionToken=un.EMPTY_BYTE_STRING}getSessionToken(e){return B.resolve(this.sessionToken)}setSessionToken(e,r){return this.sessionToken=r,B.resolve()}};var cp=class{constructor(){this.qr=new at(an.Qr),this.$r=new at(an.Ur)}isEmpty(){return this.qr.isEmpty()}addReference(e,r){let t=new an(e,r);this.qr=this.qr.add(t),this.$r=this.$r.add(t)}Kr(e,r){e.forEach(t=>this.addReference(t,r))}removeReference(e,r){this.Wr(new an(e,r))}Gr(e,r){e.forEach(t=>this.removeReference(t,r))}zr(e){let r=new ie(new We([])),t=new an(r,e),i=new an(r,e+1),o=[];return this.$r.forEachInRange([t,i],s=>{this.Wr(s),o.push(s.key)}),o}jr(){this.qr.forEach(e=>this.Wr(e))}Wr(e){this.qr=this.qr.delete(e),this.$r=this.$r.delete(e)}Jr(e){let r=new ie(new We([])),t=new an(r,e),i=new an(r,e+1),o=Ve();return this.$r.forEachInRange([t,i],s=>{o=o.add(s.key)}),o}containsKey(e){let r=new an(e,0),t=this.qr.firstAfterOrEqual(r);return t!==null&&e.isEqual(t.key)}},an=class{constructor(e,r){this.key=e,this.Hr=r}static Qr(e,r){return ie.comparator(e.key,r.key)||Re(e.Hr,r.Hr)}static Ur(e,r){return Re(e.Hr,r.Hr)||ie.comparator(e.key,r.key)}};var Yb=class{constructor(e,r){this.indexManager=e,this.referenceDelegate=r,this.mutationQueue=[],this.er=1,this.Yr=new at(an.Qr)}checkEmpty(e){return B.resolve(this.mutationQueue.length===0)}addMutationBatch(e,r,t,i){let o=this.er;this.er++,this.mutationQueue.length>0&&this.mutationQueue[this.mutationQueue.length-1];let s=new tp(o,r,t,i);this.mutationQueue.push(s);for(let a of i)this.Yr=this.Yr.add(new an(a.key,o)),this.indexManager.addToCollectionParentIndex(e,a.key.path.popLast());return B.resolve(s)}lookupMutationBatch(e,r){return B.resolve(this.Zr(r))}getNextMutationBatchAfterBatchId(e,r){let t=r+1,i=this.Xr(t),o=i<0?0:i;return B.resolve(this.mutationQueue.length>o?this.mutationQueue[o]:null)}getHighestUnacknowledgedBatchId(){return B.resolve(this.mutationQueue.length===0?Gl:this.er-1)}getAllMutationBatches(e){return B.resolve(this.mutationQueue.slice())}getAllMutationBatchesAffectingDocumentKey(e,r){let t=new an(r,0),i=new an(r,Number.POSITIVE_INFINITY),o=[];return this.Yr.forEachInRange([t,i],s=>{let a=this.Zr(s.Hr);o.push(a)}),B.resolve(o)}getAllMutationBatchesAffectingDocumentKeys(e,r){let t=new at(Re);return r.forEach(i=>{let o=new an(i,0),s=new an(i,Number.POSITIVE_INFINITY);this.Yr.forEachInRange([o,s],a=>{t=t.add(a.Hr)})}),B.resolve(this.ei(t))}getAllMutationBatchesAffectingQuery(e,r){let t=r.path,i=t.length+1,o=t;ie.isDocumentKey(o)||(o=o.child(""));let s=new an(new ie(o),0),a=new at(Re);return this.Yr.forEachWhile(c=>{let l=c.key.path;return!!t.isPrefixOf(l)&&(l.length===i&&(a=a.add(c.Hr)),!0)},s),B.resolve(this.ei(a))}ei(e){let r=[];return e.forEach(t=>{let i=this.Zr(t);i!==null&&r.push(i)}),r}removeMutationBatch(e,r){he(this.ti(r.batchId,"removed")===0,55003),this.mutationQueue.shift();let t=this.Yr;return B.forEach(r.mutations,i=>{let o=new an(i.key,r.batchId);return t=t.delete(o),this.referenceDelegate.markPotentiallyOrphaned(e,i.key)}).next(()=>{this.Yr=t})}rr(e){}containsKey(e,r){let t=new an(r,0),i=this.Yr.firstAfterOrEqual(t);return B.resolve(r.isEqual(i&&i.key))}performConsistencyCheck(e){return this.mutationQueue.length,B.resolve()}ti(e,r){return this.Xr(e)}Xr(e){return this.mutationQueue.length===0?0:e-this.mutationQueue[0].batchId}Zr(e){let r=this.Xr(e);return r<0||r>=this.mutationQueue.length?null:this.mutationQueue[r]}};var Qb=class{constructor(e){this.ni=e,this.docs=(function(){return new Dt(ie.comparator)})(),this.size=0}setIndexManager(e){this.indexManager=e}addEntry(e,r){let t=r.key,i=this.docs.get(t),o=i?i.size:0,s=this.ni(r);return this.docs=this.docs.insert(t,{document:r.mutableCopy(),size:s}),this.size+=s-o,this.indexManager.addToCollectionParentIndex(e,t.path.popLast())}removeEntry(e){let r=this.docs.get(e);r&&(this.docs=this.docs.remove(e),this.size-=r.size)}getEntry(e,r){let t=this.docs.get(r);return B.resolve(t?t.document.mutableCopy():In.newInvalidDocument(r))}getEntries(e,r){let t=Qr();return r.forEach(i=>{let o=this.docs.get(i);t=t.insert(i,o?o.document.mutableCopy():In.newInvalidDocument(i))}),B.resolve(t)}getDocumentsMatchingQuery(e,r,t,i){let o=Qr(),s=r.path,a=new ie(s.child("__id-9223372036854775808__")),c=this.docs.getIteratorFrom(a);for(;c.hasNext();){let{key:l,value:{document:u}}=c.getNext();if(!s.isPrefixOf(l.path))break;l.path.length>s.length+1||JL(RH(u),t)<=0||(i.has(u.key)||yp(r,u))&&(o=o.insert(u.key,u.mutableCopy()))}return B.resolve(o)}getAllFromCollectionGroup(e,r,t,i){ae(9500)}ri(e,r){return B.forEach(this.docs,t=>r(t))}newChangeBuffer(e){return new Xb(this)}getSize(e){return B.resolve(this.size)}},Xb=class extends oy{constructor(e){super(),this.Or=e}applyChanges(e){let r=[];return this.changes.forEach((t,i)=>{i.isValidDocument()?r.push(this.Or.addEntry(e,i)):this.Or.removeEntry(t)}),B.waitFor(r)}getFromCache(e,r){return this.Or.getEntry(e,r)}getAllFromCache(e,r){return this.Or.getEntries(e,r)}};var Jb=class{constructor(e){this.persistence=e,this.ii=new Ki(r=>zl(r),Ip),this.lastRemoteSnapshotVersion=me.min(),this.highestTargetId=0,this.si=0,this.oi=new cp,this.targetCount=0,this._i=wh.ar()}forEachTarget(e,r){return this.ii.forEach((t,i)=>r(i)),B.resolve()}getLastRemoteSnapshotVersion(e){return B.resolve(this.lastRemoteSnapshotVersion)}getHighestSequenceNumber(e){return B.resolve(this.si)}allocateTargetId(e){return this.highestTargetId=this._i.next(),B.resolve(this.highestTargetId)}setTargetsMetadata(e,r,t){return t&&(this.lastRemoteSnapshotVersion=t),r>this.si&&(this.si=r),B.resolve()}hr(e){this.ii.set(e.target,e);let r=e.targetId;r>this.highestTargetId&&(this._i=new wh(r),this.highestTargetId=r),e.sequenceNumber>this.si&&(this.si=e.sequenceNumber)}addTargetData(e,r){return this.hr(r),this.targetCount+=1,B.resolve()}updateTargetData(e,r){return this.hr(r),B.resolve()}removeTargetData(e,r){return this.ii.delete(r.target),this.oi.zr(r.targetId),this.targetCount-=1,B.resolve()}removeTargets(e,r,t){let i=0,o=[];return this.ii.forEach((s,a)=>{a.sequenceNumber<=r&&t.get(a.targetId)===null&&(this.ii.delete(s),o.push(this.removeMatchingKeysForTargetId(e,a.targetId)),i++)}),B.waitFor(o).next(()=>i)}getTargetCount(e){return B.resolve(this.targetCount)}getTargetData(e,r){let t=this.ii.get(r)||null;return B.resolve(t)}addMatchingKeys(e,r,t){return this.oi.Kr(r,t),B.resolve()}removeMatchingKeys(e,r,t){this.oi.Gr(r,t);let i=this.persistence.referenceDelegate,o=[];return i&&r.forEach(s=>{o.push(i.markPotentiallyOrphaned(e,s))}),B.waitFor(o)}removeMatchingKeysForTargetId(e,r){return this.oi.zr(r),B.resolve()}getMatchingKeysForTargetId(e,r){let t=this.oi.Jr(r);return B.resolve(t)}containsKey(e,r){return B.resolve(this.oi.containsKey(r))}};var lp=class{constructor(e,r){this.ai={},this.overlays={},this.ui=new Kr(0),this.ci=!1,this.ci=!0,this.li=new Kb,this.referenceDelegate=e(this),this.hi=new Jb(this),this.indexManager=new kb,this.remoteDocumentCache=(function(i){return new Qb(i)})(t=>this.referenceDelegate.Pi(t)),this.serializer=new Xv(r),this.Ti=new zb(this.serializer)}start(){return Promise.resolve()}shutdown(){return this.ci=!1,Promise.resolve()}get started(){return this.ci}setDatabaseDeletedListener(){}setNetworkEnabled(){}getIndexManager(e){return this.indexManager}getDocumentOverlayCache(e){let r=this.overlays[e.toKey()];return r||(r=new qb,this.overlays[e.toKey()]=r),r}getMutationQueue(e,r){let t=this.ai[e.toKey()];return t||(t=new Yb(r,this.referenceDelegate),this.ai[e.toKey()]=t),t}getGlobalsCache(){return this.li}getTargetCache(){return this.hi}getRemoteDocumentCache(){return this.remoteDocumentCache}getBundleCache(){return this.Ti}runTransaction(e,r,t){X("MemoryPersistence","Starting transaction:",e);let i=new Zb(this.ui.next());return this.referenceDelegate.Ii(),t(i).next(o=>this.referenceDelegate.di(i).next(()=>o)).toPromise().then(o=>(i.raiseOnCommittedEvent(),o))}Ei(e,r){return B.or(Object.values(this.ai).map(t=>()=>t.containsKey(e,r)))}},Zb=class extends Fv{constructor(e){super(),this.currentSequenceNumber=e}},ay=class n{constructor(e){this.persistence=e,this.Ai=new cp,this.Ri=null}static Vi(e){return new n(e)}get mi(){if(this.Ri)return this.Ri;throw ae(60996)}addReference(e,r,t){return this.Ai.addReference(t,r),this.mi.delete(t.toString()),B.resolve()}removeReference(e,r,t){return this.Ai.removeReference(t,r),this.mi.add(t.toString()),B.resolve()}markPotentiallyOrphaned(e,r){return this.mi.add(r.toString()),B.resolve()}removeTarget(e,r){this.Ai.zr(r.targetId).forEach(i=>this.mi.add(i.toString()));let t=this.persistence.getTargetCache();return t.getMatchingKeysForTargetId(e,r.targetId).next(i=>{i.forEach(o=>this.mi.add(o.toString()))}).next(()=>t.removeTargetData(e,r))}Ii(){this.Ri=new Set}di(e){let r=this.persistence.getRemoteDocumentCache().newChangeBuffer();return B.forEach(this.mi,t=>{let i=ie.fromPath(t);return this.fi(e,i).next(o=>{o||r.removeEntry(i,me.min())})}).next(()=>(this.Ri=null,r.apply(e)))}updateLimboDocument(e,r){return this.fi(e,r).next(t=>{t?this.mi.delete(r.toString()):this.mi.add(r.toString())})}Pi(e){return 0}fi(e,r){return B.or([()=>B.resolve(this.Ai.containsKey(r)),()=>this.persistence.getTargetCache().containsKey(e,r),()=>this.persistence.Ei(e,r)])}},cy=class n{constructor(e,r){this.persistence=e,this.gi=new Ki(t=>rr(t.path),(t,i)=>t.isEqual(i)),this.garbageCollector=FW(this,r)}static Vi(e,r){return new n(e,r)}Ii(){}di(e){return B.resolve()}forEachTarget(e,r){return this.persistence.getTargetCache().forEachTarget(e,r)}mr(e){let r=this.yr(e);return this.persistence.getTargetCache().getTargetCount(e).next(t=>r.next(i=>t+i))}yr(e){let r=0;return this.gr(e,t=>{r++}).next(()=>r)}gr(e,r){return B.forEach(this.gi,(t,i)=>this.Sr(e,t,i).next(o=>o?B.resolve():r(i)))}removeTargets(e,r,t){return this.persistence.getTargetCache().removeTargets(e,r,t)}removeOrphanedDocuments(e,r){let t=0,i=this.persistence.getRemoteDocumentCache(),o=i.newChangeBuffer();return i.ri(e,s=>this.Sr(e,s,r).next(a=>{a||(t++,o.removeEntry(s,me.min()))})).next(()=>o.apply(e)).next(()=>t)}markPotentiallyOrphaned(e,r){return this.gi.set(r,e.currentSequenceNumber),B.resolve()}removeTarget(e,r){let t=r.withSequenceNumber(e.currentSequenceNumber);return this.persistence.getTargetCache().updateTargetData(e,t)}addReference(e,r,t){return this.gi.set(t,e.currentSequenceNumber),B.resolve()}removeReference(e,r,t){return this.gi.set(t,e.currentSequenceNumber),B.resolve()}updateLimboDocument(e,r){return this.gi.set(r,e.currentSequenceNumber),B.resolve()}Pi(e){let r=e.key.toString().length;return e.isFoundDocument()&&(r+=Nv(e.data.value)),r}Sr(e,r,t){return B.or([()=>this.persistence.Ei(e,r),()=>this.persistence.getTargetCache().containsKey(e,r),()=>{let i=this.gi.get(r);return B.resolve(i!==void 0&&i>t)}])}getCacheSize(e){return this.persistence.getRemoteDocumentCache().getSize(e)}};var eL=class{constructor(e){this.serializer=e}q(e,r,t,i){let o=new kv("createOrUpgrade",r);t<1&&i>=1&&((function(c){c.createObjectStore(Tp)})(e),(function(c){c.createObjectStore(zm,{keyPath:iie}),c.createObjectStore(qi,{keyPath:mj,autoIncrement:!0}).createIndex(Ul,pj,{unique:!0}),c.createObjectStore(_h)})(e),rH(e),(function(c){c.createObjectStore(Ml)})(e));let s=B.resolve();return t<3&&i>=3&&(t!==0&&((function(c){c.deleteObjectStore(Ih),c.deleteObjectStore(Th),c.deleteObjectStore($l)})(e),rH(e)),s=s.next(()=>(function(c){let l=c.store($l),u={highestTargetId:0,highestListenSequenceNumber:0,lastRemoteSnapshotVersion:me.min().toTimestamp(),targetCount:0};return l.put(Bv,u)})(o))),t<4&&i>=4&&(t!==0&&(s=s.next(()=>(function(c,l){return l.store(qi).j().next(d=>{c.deleteObjectStore(qi),c.createObjectStore(qi,{keyPath:mj,autoIncrement:!0}).createIndex(Ul,pj,{unique:!0});let f=l.store(qi),g=d.map(p=>f.put(p));return B.waitFor(g)})})(e,o))),s=s.next(()=>{(function(c){c.createObjectStore(vh,{keyPath:fie})})(e)})),t<5&&i>=5&&(s=s.next(()=>this.pi(o))),t<6&&i>=6&&(s=s.next(()=>((function(c){c.createObjectStore(qm)})(e),this.yi(o)))),t<7&&i>=7&&(s=s.next(()=>this.wi(o))),t<8&&i>=8&&(s=s.next(()=>this.Si(e,o))),t<9&&i>=9&&(s=s.next(()=>{(function(c){c.objectStoreNames.contains("remoteDocumentChanges")&&c.deleteObjectStore("remoteDocumentChanges")})(e)})),t<10&&i>=10&&(s=s.next(()=>this.bi(o))),t<11&&i>=11&&(s=s.next(()=>{(function(c){c.createObjectStore(wy,{keyPath:gie})})(e),(function(c){c.createObjectStore(by,{keyPath:mie})})(e)})),t<12&&i>=12&&(s=s.next(()=>{(function(c){let l=c.createObjectStore(Ly,{keyPath:yie});l.createIndex(nb,Sie,{unique:!1}),l.createIndex(xH,Aie,{unique:!1})})(e)})),t<13&&i>=13&&(s=s.next(()=>(function(c){let l=c.createObjectStore(Vv,{keyPath:sie});l.createIndex(Rv,aie),l.createIndex(bH,cie)})(e)).next(()=>this.Di(e,o)).next(()=>e.deleteObjectStore(Ml))),t<14&&i>=14&&(s=s.next(()=>this.Ci(e,o))),t<15&&i>=15&&(s=s.next(()=>(function(c){c.createObjectStore(tM,{keyPath:pie,autoIncrement:!0}).createIndex(tb,Eie,{unique:!1}),c.createObjectStore(Fm,{keyPath:_ie}).createIndex(MH,Tie,{unique:!1}),c.createObjectStore(km,{keyPath:Iie}).createIndex(PH,vie,{unique:!1})})(e))),t<16&&i>=16&&(s=s.next(()=>{r.objectStore(Fm).clear()}).next(()=>{r.objectStore(km).clear()})),t<17&&i>=17&&(s=s.next(()=>{(function(c){c.createObjectStore(nM,{keyPath:Die})})(e)})),t<18&&i>=18&&VC()&&(s=s.next(()=>{r.objectStore(Fm).clear()}).next(()=>{r.objectStore(km).clear()})),s}yi(e){let r=0;return e.store(Ml).X((t,i)=>{r+=ny(i)}).next(()=>{let t={byteSize:r};return e.store(qm).put(eb,t)})}pi(e){let r=e.store(zm),t=e.store(qi);return r.j().next(i=>B.forEach(i,o=>{let s=IDBKeyRange.bound([o.userId,Gl],[o.userId,o.lastAcknowledgedBatchId]);return t.j(Ul,s).next(a=>B.forEach(a,c=>{he(c.userId===o.userId,18650,"Cannot process batch from unexpected user",{batchId:c.batchId});let l=xl(this.serializer,c);return LW(e,o.userId,l).next(()=>{})}))}))}wi(e){let r=e.store(Ih),t=e.store(Ml);return e.store($l).get(Bv).next(i=>{let o=[];return t.X((s,a)=>{let c=new We(s),l=(function(d){return[0,rr(d)]})(c);o.push(r.get(l).next(u=>u?B.resolve():(d=>r.put({targetId:0,path:rr(d),sequenceNumber:i.highestListenSequenceNumber}))(c)))}).next(()=>B.waitFor(o))})}Si(e,r){e.createObjectStore(Km,{keyPath:hie});let t=r.store(Km),i=new ap,o=s=>{if(i.add(s)){let a=s.lastSegment(),c=s.popLast();return t.put({collectionId:a,parent:rr(c)})}};return r.store(Ml).X({Z:!0},(s,a)=>{let c=new We(s);return o(c.popLast())}).next(()=>r.store(_h).X({Z:!0},([s,a,c],l)=>{let u=Bo(a);return o(u.popLast())}))}bi(e){let r=e.store(Th);return r.X((t,i)=>{let o=Mm(i),s=CW(this.serializer,o);return r.put(s)})}Di(e,r){let t=r.store(Ml),i=[];return t.X((o,s)=>{let a=r.store(Vv),c=(function(d){return d.document?new ie(We.fromString(d.document.name).popFirst(5)):d.noDocument?ie.fromSegments(d.noDocument.path):d.unknownDocument?ie.fromSegments(d.unknownDocument.path):ae(36783)})(s).path.toArray(),l={prefixPath:c.slice(0,c.length-2),collectionGroup:c[c.length-2],documentId:c[c.length-1],readTime:s.readTime||[0,0],unknownDocument:s.unknownDocument,noDocument:s.noDocument,document:s.document,hasCommittedMutations:!!s.hasCommittedMutations};i.push(a.put(l))}).next(()=>B.waitFor(i))}Ci(e,r){let t=r.store(qi),i=kW(this.serializer),o=new lp(ay.Vi,this.serializer.gt);return t.j().next(s=>{let a=new Map;return s.forEach(c=>{var l;let u=(l=a.get(c.userId))!==null&&l!==void 0?l:Ve();xl(this.serializer,c).keys().forEach(d=>u=u.add(d)),a.set(c.userId,u)}),B.forEach(a,(c,l)=>{let u=new cn(l),d=Zv.yt(this.serializer,u),f=o.getIndexManager(u),g=ry.yt(u,this.serializer,f,o.referenceDelegate);return new sy(i,g,d,f).recalculateAndSaveOverlaysForDocumentKeys(new Ym(r,Kr.ue),c).next()})})}};function rH(n){n.createObjectStore(Ih,{keyPath:uie}).createIndex(eM,die,{unique:!0}),n.createObjectStore(Th,{keyPath:"targetId"}).createIndex(LH,lie,{unique:!0}),n.createObjectStore($l)}var Ma="IndexedDbPersistence",Fw=18e5,kw=5e3,Uw="Failed to obtain exclusive access to the persistence layer. To allow shared access, multi-tab synchronization has to be enabled in all tabs. If you are using `experimentalForceOwningTab:true`, make sure that only one tab has persistence enabled at any given time.",uoe="main",tL=class n{constructor(e,r,t,i,o,s,a,c,l,u,d=18){if(this.allowTabSynchronization=e,this.persistenceKey=r,this.clientId=t,this.Fi=o,this.window=s,this.document=a,this.Mi=l,this.xi=u,this.Oi=d,this.ui=null,this.ci=!1,this.isPrimary=!1,this.networkEnabled=!0,this.Ni=null,this.inForeground=!1,this.Bi=null,this.Li=null,this.ki=Number.NEGATIVE_INFINITY,this.qi=f=>Promise.resolve(),!n.C())throw new Q(j.UNIMPLEMENTED,"This platform is either missing IndexedDB or is known to have an incomplete implementation. Offline persistence has been disabled.");this.referenceDelegate=new $b(this,i),this.Qi=r+uoe,this.serializer=new Xv(c),this.$i=new Eh(this.Qi,this.Oi,new eL(this.serializer)),this.li=new wb,this.hi=new Vb(this.referenceDelegate,this.serializer),this.remoteDocumentCache=kW(this.serializer),this.Ti=new Ob,this.window&&this.window.localStorage?this.Ui=this.window.localStorage:(this.Ui=null,u===!1&&Xt(Ma,"LocalStorage is unavailable. As a result, persistence may not work reliably. In particular enablePersistence() could fail immediately after refreshing the page."))}start(){return this.Ki().then(()=>{if(!this.isPrimary&&!this.allowTabSynchronization)throw new Q(j.FAILED_PRECONDITION,Uw);return this.Wi(),this.Gi(),this.zi(),this.runTransaction("getHighestListenSequenceNumber","readonly",e=>this.hi.getHighestSequenceNumber(e))}).then(e=>{this.ui=new Kr(e,this.Mi)}).then(()=>{this.ci=!0}).catch(e=>(this.$i&&this.$i.close(),Promise.reject(e)))}ji(e){return this.qi=r=>I(this,null,function*(){if(this.started)return e(r)}),e(this.isPrimary)}setDatabaseDeletedListener(e){this.$i.setDatabaseDeletedListener(e)}setNetworkEnabled(e){this.networkEnabled!==e&&(this.networkEnabled=e,this.Fi.enqueueAndForget(()=>I(this,null,function*(){this.started&&(yield this.Ki())})))}Ki(){return this.runTransaction("updateClientMetadataAndTryBecomePrimary","readwrite",e=>Sv(e).put({clientId:this.clientId,updateTimeMs:Date.now(),networkEnabled:this.networkEnabled,inForeground:this.inForeground}).next(()=>{if(this.isPrimary)return this.Ji(e).next(r=>{r||(this.isPrimary=!1,this.Fi.enqueueRetryable(()=>this.qi(!1)))})}).next(()=>this.Hi(e)).next(r=>this.isPrimary&&!r?this.Yi(e).next(()=>!1):!!r&&this.Zi(e).next(()=>!0))).catch(e=>{if(Xa(e))return X(Ma,"Failed to extend owner lease: ",e),this.isPrimary;if(!this.allowTabSynchronization)throw e;return X(Ma,"Releasing owner lease after error during lease refresh",e),!1}).then(e=>{this.isPrimary!==e&&this.Fi.enqueueRetryable(()=>this.qi(e)),this.isPrimary=e})}Ji(e){return bm(e).get(Zd).next(r=>B.resolve(this.Xi(r)))}es(e){return Sv(e).delete(this.clientId)}ts(){return I(this,null,function*(){if(this.isPrimary&&!this.ns(this.ki,Fw)){this.ki=Date.now();let e=yield this.runTransaction("maybeGarbageCollectMultiClientState","readwrite-primary",r=>{let t=yn(r,vh);return t.j().next(i=>{let o=this.rs(i,Fw),s=i.filter(a=>o.indexOf(a)===-1);return B.forEach(s,a=>t.delete(a.clientId)).next(()=>s)})}).catch(()=>[]);if(this.Ui)for(let r of e)this.Ui.removeItem(this.ss(r.clientId))}})}zi(){this.Li=this.Fi.enqueueAfterDelay("client_metadata_refresh",4e3,()=>this.Ki().then(()=>this.ts()).then(()=>this.zi()))}Xi(e){return!!e&&e.ownerId===this.clientId}Hi(e){return this.xi?B.resolve(!0):bm(e).get(Zd).next(r=>{if(r!==null&&this.ns(r.leaseTimestampMs,kw)&&!this._s(r.ownerId)){if(this.Xi(r)&&this.networkEnabled)return!0;if(!this.Xi(r)){if(!r.allowTabSynchronization)throw new Q(j.FAILED_PRECONDITION,Uw);return!1}}return!(!this.networkEnabled||!this.inForeground)||Sv(e).j().next(t=>this.rs(t,kw).find(i=>{if(this.clientId!==i.clientId){let o=!this.networkEnabled&&i.networkEnabled,s=!this.inForeground&&i.inForeground,a=this.networkEnabled===i.networkEnabled;if(o||s&&a)return!0}return!1})===void 0)}).next(r=>(this.isPrimary!==r&&X(Ma,`Client ${r?"is":"is not"} eligible for a primary lease.`),r))}shutdown(){return I(this,null,function*(){this.ci=!1,this.us(),this.Li&&(this.Li.cancel(),this.Li=null),this.cs(),this.ls(),yield this.$i.runTransaction("shutdown","readwrite",[Tp,vh],e=>{let r=new Ym(e,Kr.ue);return this.Yi(r).next(()=>this.es(r))}),this.$i.close(),this.hs()})}rs(e,r){return e.filter(t=>this.ns(t.updateTimeMs,r)&&!this._s(t.clientId))}Ps(){return this.runTransaction("getActiveClients","readonly",e=>Sv(e).j().next(r=>this.rs(r,Fw).map(t=>t.clientId)))}get started(){return this.ci}getGlobalsCache(){return this.li}getMutationQueue(e,r){return ry.yt(e,this.serializer,r,this.referenceDelegate)}getTargetCache(){return this.hi}getRemoteDocumentCache(){return this.remoteDocumentCache}getIndexManager(e){return new Ub(e,this.serializer.gt.databaseId)}getDocumentOverlayCache(e){return Zv.yt(this.serializer,e)}getBundleCache(){return this.Ti}runTransaction(e,r,t){X(Ma,"Starting transaction:",e);let i=r==="readonly"?"readonly":"readwrite",o=(function(c){return c===18?Nie:c===17?VH:c===16?Cie:c===15?rM:c===14?UH:c===13?kH:c===12?Rie:c===11?FH:void ae(60245)})(this.Oi),s;return this.$i.runTransaction(e,i,o,a=>(s=new Ym(a,this.ui?this.ui.next():Kr.ue),r==="readwrite-primary"?this.Ji(s).next(c=>!!c||this.Hi(s)).next(c=>{if(!c)throw Xt(`Failed to obtain primary lease for action '${e}'.`),this.isPrimary=!1,this.Fi.enqueueRetryable(()=>this.qi(!1)),new Q(j.FAILED_PRECONDITION,CH);return t(s)}).next(c=>this.Zi(s).next(()=>c)):this.Ts(s).next(()=>t(s)))).then(a=>(s.raiseOnCommittedEvent(),a))}Ts(e){return bm(e).get(Zd).next(r=>{if(r!==null&&this.ns(r.leaseTimestampMs,kw)&&!this._s(r.ownerId)&&!this.Xi(r)&&!(this.xi||this.allowTabSynchronization&&r.allowTabSynchronization))throw new Q(j.FAILED_PRECONDITION,Uw)})}Zi(e){let r={ownerId:this.clientId,allowTabSynchronization:this.allowTabSynchronization,leaseTimestampMs:Date.now()};return bm(e).put(Zd,r)}static C(){return Eh.C()}Yi(e){let r=bm(e);return r.get(Zd).next(t=>this.Xi(t)?(X(Ma,"Releasing primary lease."),r.delete(Zd)):B.resolve())}ns(e,r){let t=Date.now();return!(e<t-r)&&(!(e>t)||(Xt(`Detected an update time that is in the future: ${e} > ${t}`),!1))}Wi(){this.document!==null&&typeof this.document.addEventListener=="function"&&(this.Bi=()=>{this.Fi.enqueueAndForget(()=>(this.inForeground=this.document.visibilityState==="visible",this.Ki()))},this.document.addEventListener("visibilitychange",this.Bi),this.inForeground=this.document.visibilityState==="visible")}cs(){this.Bi&&(this.document.removeEventListener("visibilitychange",this.Bi),this.Bi=null)}Gi(){var e;typeof((e=this.window)===null||e===void 0?void 0:e.addEventListener)=="function"&&(this.Ni=()=>{this.us();let r=/(?:Version|Mobile)\/1[456]/;UC()&&(navigator.appVersion.match(r)||navigator.userAgent.match(r))&&this.Fi.enterRestrictedMode(!0),this.Fi.enqueueAndForget(()=>this.shutdown())},this.window.addEventListener("pagehide",this.Ni))}ls(){this.Ni&&(this.window.removeEventListener("pagehide",this.Ni),this.Ni=null)}_s(e){var r;try{let t=((r=this.Ui)===null||r===void 0?void 0:r.getItem(this.ss(e)))!==null;return X(Ma,`Client '${e}' ${t?"is":"is not"} zombied in LocalStorage`),t}catch(t){return Xt(Ma,"Failed to get zombied client id.",t),!1}}us(){if(this.Ui)try{this.Ui.setItem(this.ss(this.clientId),String(Date.now()))}catch(e){Xt("Failed to set zombie client id.",e)}}hs(){if(this.Ui)try{this.Ui.removeItem(this.ss(this.clientId))}catch{}}ss(e){return`firestore_zombie_${this.persistenceKey}_${e}`}};function bm(n){return yn(n,Tp)}function Sv(n){return yn(n,vh)}function UW(n,e){let r=n.projectId;return n.isDefaultDatabase||(r+="."+n.database),"firestore/"+e+"/"+r+"/"}var nL=class n{constructor(e,r,t,i){this.targetId=e,this.fromCache=r,this.Is=t,this.ds=i}static Es(e,r){let t=Ve(),i=Ve();for(let o of r.docChanges)switch(o.type){case 0:t=t.add(o.doc.key);break;case 1:i=i.add(o.doc.key)}return new n(e,r.fromCache,t,i)}};var rL=class{constructor(){this._documentReadCount=0}get documentReadCount(){return this._documentReadCount}incrementDocumentReadCount(e){this._documentReadCount+=e}};var ly=class{constructor(){this.As=!1,this.Rs=!1,this.Vs=100,this.fs=(function(){return UC()?8:NH(En())>0?6:4})()}initialize(e,r){this.gs=e,this.indexManager=r,this.As=!0}getDocumentsMatchingQuery(e,r,t,i){let o={result:null};return this.ps(e,r).next(s=>{o.result=s}).next(()=>{if(!o.result)return this.ys(e,r,i,t).next(s=>{o.result=s})}).next(()=>{if(o.result)return;let s=new rL;return this.ws(e,r,s).next(a=>{if(o.result=a,this.Rs)return this.Ss(e,r,s,a.size)})}).next(()=>o.result)}Ss(e,r,t,i){return t.documentReadCount<this.Vs?(oh()<=Fe.DEBUG&&X("QueryEngine","SDK will not create cache indexes for query:",sh(r),"since it only creates cache indexes for collection contains","more than or equal to",this.Vs,"documents"),B.resolve()):(oh()<=Fe.DEBUG&&X("QueryEngine","Query:",sh(r),"scans",t.documentReadCount,"local documents and returns",i,"documents as results."),t.documentReadCount>this.fs*i?(oh()<=Fe.DEBUG&&X("QueryEngine","The SDK decides to create cache indexes for query:",sh(r),"as using cache indexes may help improve performance."),this.indexManager.createTargetIndexes(e,Xr(r))):B.resolve())}ps(e,r){if(Nj(r))return B.resolve(null);let t=Xr(r);return this.indexManager.getIndexType(e,t).next(i=>i===0?null:(r.limit!==null&&i===1&&(r=qv(r,null,"F"),t=Xr(r)),this.indexManager.getDocumentsMatchingTarget(e,t).next(o=>{let s=Ve(...o);return this.gs.getDocuments(e,s).next(a=>this.indexManager.getMinOffset(e,t).next(c=>{let l=this.bs(r,a);return this.Ds(r,l,s,c.readTime)?this.ps(e,qv(r,null,"F")):this.vs(e,l,r,c)}))})))}ys(e,r,t,i){return Nj(r)||i.isEqual(me.min())?B.resolve(null):this.gs.getDocuments(e,t).next(o=>{let s=this.bs(r,o);return this.Ds(r,s,t,i)?B.resolve(null):(oh()<=Fe.DEBUG&&X("QueryEngine","Re-using previous result from %s to execute query: %s",i.toString(),sh(r)),this.vs(e,s,r,DH(i,mh)).next(a=>a))})}bs(e,r){let t=new at(iW(e));return r.forEach((i,o)=>{yp(e,o)&&(t=t.add(o))}),t}Ds(e,r,t,i){if(e.limit===null)return!1;if(t.size!==r.size)return!0;let o=e.limitType==="F"?r.last():r.first();return!!o&&(o.hasPendingWrites||o.version.compareTo(i)>0)}ws(e,r,t){return oh()<=Fe.DEBUG&&X("QueryEngine","Using full collection scan to execute query:",sh(r)),this.gs.getDocumentsMatchingQuery(e,r,_i.min(),t)}vs(e,r,t,i){return this.gs.getDocumentsMatchingQuery(e,t,i).next(o=>(r.forEach(s=>{o=o.insert(s.key,s)}),o))}};var fM="LocalStore",doe=3e8,iL=class{constructor(e,r,t,i){this.persistence=e,this.Cs=r,this.serializer=i,this.Fs=new Dt(Re),this.Ms=new Ki(o=>zl(o),Ip),this.xs=new Map,this.Os=e.getRemoteDocumentCache(),this.hi=e.getTargetCache(),this.Ti=e.getBundleCache(),this.Ns(t)}Ns(e){this.documentOverlayCache=this.persistence.getDocumentOverlayCache(e),this.indexManager=this.persistence.getIndexManager(e),this.mutationQueue=this.persistence.getMutationQueue(e,this.indexManager),this.localDocuments=new sy(this.Os,this.mutationQueue,this.documentOverlayCache,this.indexManager),this.Os.setIndexManager(this.indexManager),this.Cs.initialize(this.localDocuments,this.indexManager)}collectGarbage(e){return this.persistence.runTransaction("Collect garbage","readwrite-primary",r=>e.collect(r,this.Fs))}};function VW(n,e,r,t){return new iL(n,e,r,t)}function BW(n,e){return I(this,null,function*(){let r=de(n);return yield r.persistence.runTransaction("Handle user change","readonly",t=>{let i;return r.mutationQueue.getAllMutationBatches(t).next(o=>(i=o,r.Ns(e),r.mutationQueue.getAllMutationBatches(t))).next(o=>{let s=[],a=[],c=Ve();for(let l of i){s.push(l.batchId);for(let u of l.mutations)c=c.add(u.key)}for(let l of o){a.push(l.batchId);for(let u of l.mutations)c=c.add(u.key)}return r.localDocuments.getDocuments(t,c).next(l=>({Bs:l,removedBatchIds:s,addedBatchIds:a}))})})})}function hoe(n,e){let r=de(n);return r.persistence.runTransaction("Acknowledge batch","readwrite-primary",t=>{let i=e.batch.keys(),o=r.Os.newChangeBuffer({trackRemovals:!0});return(function(a,c,l,u){let d=l.batch,f=d.keys(),g=B.resolve();return f.forEach(p=>{g=g.next(()=>u.getEntry(c,p)).next(_=>{let T=l.docVersions.get(p);he(T!==null,48541),_.version.compareTo(T)<0&&(d.applyToRemoteDocument(_,l),_.isValidDocument()&&(_.setReadTime(l.commitVersion),u.addEntry(_)))})}),g.next(()=>a.mutationQueue.removeMutationBatch(c,d))})(r,t,e,o).next(()=>o.apply(t)).next(()=>r.mutationQueue.performConsistencyCheck(t)).next(()=>r.documentOverlayCache.removeOverlaysForBatchId(t,i,e.batch.batchId)).next(()=>r.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(t,(function(a){let c=Ve();for(let l=0;l<a.mutationResults.length;++l)a.mutationResults[l].transformResults.length>0&&(c=c.add(a.batch.mutations[l].key));return c})(e))).next(()=>r.localDocuments.getDocuments(t,i))})}function GW(n){let e=de(n);return e.persistence.runTransaction("Get last remote snapshot version","readonly",r=>e.hi.getLastRemoteSnapshotVersion(r))}function foe(n,e){let r=de(n),t=e.snapshotVersion,i=r.Fs;return r.persistence.runTransaction("Apply remote event","readwrite-primary",o=>{let s=r.Os.newChangeBuffer({trackRemovals:!0});i=r.Fs;let a=[];e.targetChanges.forEach((u,d)=>{let f=i.get(d);if(!f)return;a.push(r.hi.removeMatchingKeys(o,u.removedDocuments,d).next(()=>r.hi.addMatchingKeys(o,u.addedDocuments,d)));let g=f.withSequenceNumber(o.currentSequenceNumber);e.targetMismatches.get(d)!==null?g=g.withResumeToken(un.EMPTY_BYTE_STRING,me.min()).withLastLimboFreeSnapshotVersion(me.min()):u.resumeToken.approximateByteSize()>0&&(g=g.withResumeToken(u.resumeToken,t)),i=i.insert(d,g),(function(_,T,D){return _.resumeToken.approximateByteSize()===0||T.snapshotVersion.toMicroseconds()-_.snapshotVersion.toMicroseconds()>=doe?!0:D.addedDocuments.size+D.modifiedDocuments.size+D.removedDocuments.size>0})(f,g,u)&&a.push(r.hi.updateTargetData(o,g))});let c=Qr(),l=Ve();if(e.documentUpdates.forEach(u=>{e.resolvedLimboDocuments.has(u)&&a.push(r.persistence.referenceDelegate.updateLimboDocument(o,u))}),a.push(goe(o,s,e.documentUpdates).next(u=>{c=u.Ls,l=u.ks})),!t.isEqual(me.min())){let u=r.hi.getLastRemoteSnapshotVersion(o).next(d=>r.hi.setTargetsMetadata(o,o.currentSequenceNumber,t));a.push(u)}return B.waitFor(a).next(()=>s.apply(o)).next(()=>r.localDocuments.getLocalViewOfDocuments(o,c,l)).next(()=>c)}).then(o=>(r.Fs=i,o))}function goe(n,e,r){let t=Ve(),i=Ve();return r.forEach(o=>t=t.add(o)),e.getEntries(n,t).next(o=>{let s=Qr();return r.forEach((a,c)=>{let l=o.get(a);c.isFoundDocument()!==l.isFoundDocument()&&(i=i.add(a)),c.isNoDocument()&&c.version.isEqual(me.min())?(e.removeEntry(a,c.readTime),s=s.insert(a,c)):!l.isValidDocument()||c.version.compareTo(l.version)>0||c.version.compareTo(l.version)===0&&l.hasPendingWrites?(e.addEntry(c),s=s.insert(a,c)):X(fM,"Ignoring outdated watch update for ",a,". Current version:",l.version," Watch version:",c.version)}),{Ls:s,ks:i}})}function moe(n,e){let r=de(n);return r.persistence.runTransaction("Get next mutation batch","readonly",t=>(e===void 0&&(e=Gl),r.mutationQueue.getNextMutationBatchAfterBatchId(t,e)))}function uy(n,e){let r=de(n);return r.persistence.runTransaction("Allocate target","readwrite",t=>{let i;return r.hi.getTargetData(t,e).next(o=>o?(i=o,B.resolve(i)):r.hi.allocateTargetId(t).next(s=>(i=new Oh(e,s,"TargetPurposeListen",t.currentSequenceNumber),r.hi.addTargetData(t,i).next(()=>i))))}).then(t=>{let i=r.Fs.get(t.targetId);return(i===null||t.snapshotVersion.compareTo(i.snapshotVersion)>0)&&(r.Fs=r.Fs.insert(t.targetId,t),r.Ms.set(e,t.targetId)),t})}function bh(n,e,r){return I(this,null,function*(){let t=de(n),i=t.Fs.get(e),o=r?"readwrite":"readwrite-primary";try{r||(yield t.persistence.runTransaction("Release target",o,s=>t.persistence.referenceDelegate.removeTarget(s,i)))}catch(s){if(!Xa(s))throw s;X(fM,`Failed to update sequence numbers for target ${e}: ${s}`)}t.Fs=t.Fs.remove(e),t.Ms.delete(i.target)})}function oL(n,e,r){let t=de(n),i=me.min(),o=Ve();return t.persistence.runTransaction("Execute query","readwrite",s=>(function(c,l,u){let d=de(c),f=d.Ms.get(u);return f!==void 0?B.resolve(d.Fs.get(f)):d.hi.getTargetData(l,u)})(t,s,Xr(e)).next(a=>{if(a)return i=a.lastLimboFreeSnapshotVersion,t.hi.getMatchingKeysForTargetId(s,a.targetId).next(c=>{o=c})}).next(()=>t.Cs.getDocumentsMatchingQuery(s,e,r?i:me.min(),r?o:Ve())).next(a=>(HW(t,rW(e),a),{documents:a,qs:o})))}function $W(n,e){let r=de(n),t=de(r.hi),i=r.Fs.get(e);return i?Promise.resolve(i.target):r.persistence.runTransaction("Get target data","readonly",o=>t.Et(o,e).next(s=>s?s.target:null))}function jW(n,e){let r=de(n),t=r.xs.get(e)||me.min();return r.persistence.runTransaction("Get new document changes","readonly",i=>r.Os.getAllFromCollectionGroup(i,e,DH(t,mh),Number.MAX_SAFE_INTEGER)).then(i=>(HW(r,e,i),i))}function HW(n,e,r){let t=n.xs.get(e)||me.min();r.forEach((i,o)=>{o.readTime.compareTo(t)>0&&(t=o.readTime)}),n.xs.set(e,t)}var WW="firestore_clients";function iH(n,e){return`${WW}_${n}_${e}`}var zW="firestore_mutations";function oH(n,e,r){let t=`${zW}_${n}_${r}`;return e.isAuthenticated()&&(t+=`_${e.uid}`),t}var qW="firestore_targets";function Vw(n,e){return`${qW}_${n}_${e}`}var Vo="SharedClientState",dy=class n{constructor(e,r,t,i){this.user=e,this.batchId=r,this.state=t,this.error=i}static Ks(e,r,t){let i=JSON.parse(t),o,s=typeof i=="object"&&["pending","acknowledged","rejected"].indexOf(i.state)!==-1&&(i.error===void 0||typeof i.error=="object");return s&&i.error&&(s=typeof i.error.message=="string"&&typeof i.error.code=="string",s&&(o=new Q(i.error.code,i.error.message))),s?new n(e,r,i.state,o):(Xt(Vo,`Failed to parse mutation state for ID '${r}': ${t}`),null)}Ws(){let e={state:this.state,updateTimeMs:Date.now()};return this.error&&(e.error={code:this.error.code,message:this.error.message}),JSON.stringify(e)}},Gm=class n{constructor(e,r,t){this.targetId=e,this.state=r,this.error=t}static Ks(e,r){let t=JSON.parse(r),i,o=typeof t=="object"&&["not-current","current","rejected"].indexOf(t.state)!==-1&&(t.error===void 0||typeof t.error=="object");return o&&t.error&&(o=typeof t.error.message=="string"&&typeof t.error.code=="string",o&&(i=new Q(t.error.code,t.error.message))),o?new n(e,t.state,i):(Xt(Vo,`Failed to parse target state for ID '${e}': ${r}`),null)}Ws(){let e={state:this.state,updateTimeMs:Date.now()};return this.error&&(e.error={code:this.error.code,message:this.error.message}),JSON.stringify(e)}},hy=class n{constructor(e,r){this.clientId=e,this.activeTargetIds=r}static Ks(e,r){let t=JSON.parse(r),i=typeof t=="object"&&t.activeTargetIds instanceof Array,o=cM();for(let s=0;i&&s<t.activeTargetIds.length;++s)i=OH(t.activeTargetIds[s]),o=o.add(t.activeTargetIds[s]);return i?new n(e,o):(Xt(Vo,`Failed to parse client data for instance '${e}': ${r}`),null)}},sL=class n{constructor(e,r){this.clientId=e,this.onlineState=r}static Ks(e){let r=JSON.parse(e);return typeof r=="object"&&["Unknown","Online","Offline"].indexOf(r.onlineState)!==-1&&typeof r.clientId=="string"?new n(r.clientId,r.onlineState):(Xt(Vo,`Failed to parse online state: ${e}`),null)}},up=class{constructor(){this.activeTargetIds=cM()}Gs(e){this.activeTargetIds=this.activeTargetIds.add(e)}zs(e){this.activeTargetIds=this.activeTargetIds.delete(e)}Ws(){let e={activeTargetIds:this.activeTargetIds.toArray(),updateTimeMs:Date.now()};return JSON.stringify(e)}},$m=class{constructor(e,r,t,i,o){this.window=e,this.Fi=r,this.persistenceKey=t,this.js=i,this.syncEngine=null,this.onlineStateHandler=null,this.sequenceNumberHandler=null,this.Js=this.Hs.bind(this),this.Ys=new Dt(Re),this.started=!1,this.Zs=[];let s=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");this.storage=this.window.localStorage,this.currentUser=o,this.Xs=iH(this.persistenceKey,this.js),this.eo=(function(c){return`firestore_sequence_number_${c}`})(this.persistenceKey),this.Ys=this.Ys.insert(this.js,new up),this.no=new RegExp(`^${WW}_${s}_([^_]*)$`),this.ro=new RegExp(`^${zW}_${s}_(\\d+)(?:_(.*))?$`),this.io=new RegExp(`^${qW}_${s}_(\\d+)$`),this.so=(function(c){return`firestore_online_state_${c}`})(this.persistenceKey),this.oo=(function(c){return`firestore_bundle_loaded_v2_${c}`})(this.persistenceKey),this.window.addEventListener("storage",this.Js)}static C(e){return!(!e||!e.localStorage)}start(){return I(this,null,function*(){let e=yield this.syncEngine.Ps();for(let t of e){if(t===this.js)continue;let i=this.getItem(iH(this.persistenceKey,t));if(i){let o=hy.Ks(t,i);o&&(this.Ys=this.Ys.insert(o.clientId,o))}}this._o();let r=this.storage.getItem(this.so);if(r){let t=this.ao(r);t&&this.uo(t)}for(let t of this.Zs)this.Hs(t);this.Zs=[],this.window.addEventListener("pagehide",()=>this.shutdown()),this.started=!0})}writeSequenceNumber(e){this.setItem(this.eo,JSON.stringify(e))}getAllActiveQueryTargets(){return this.co(this.Ys)}isActiveQueryTarget(e){let r=!1;return this.Ys.forEach((t,i)=>{i.activeTargetIds.has(e)&&(r=!0)}),r}addPendingMutation(e){this.lo(e,"pending")}updateMutationState(e,r,t){this.lo(e,r,t),this.ho(e)}addLocalQueryTarget(e,r=!0){let t="not-current";if(this.isActiveQueryTarget(e)){let i=this.storage.getItem(Vw(this.persistenceKey,e));if(i){let o=Gm.Ks(e,i);o&&(t=o.state)}}return r&&this.Po.Gs(e),this._o(),t}removeLocalQueryTarget(e){this.Po.zs(e),this._o()}isLocalQueryTarget(e){return this.Po.activeTargetIds.has(e)}clearQueryState(e){this.removeItem(Vw(this.persistenceKey,e))}updateQueryState(e,r,t){this.To(e,r,t)}handleUserChange(e,r,t){r.forEach(i=>{this.ho(i)}),this.currentUser=e,t.forEach(i=>{this.addPendingMutation(i)})}setOnlineState(e){this.Io(e)}notifyBundleLoaded(e){this.Eo(e)}shutdown(){this.started&&(this.window.removeEventListener("storage",this.Js),this.removeItem(this.Xs),this.started=!1)}getItem(e){let r=this.storage.getItem(e);return X(Vo,"READ",e,r),r}setItem(e,r){X(Vo,"SET",e,r),this.storage.setItem(e,r)}removeItem(e){X(Vo,"REMOVE",e),this.storage.removeItem(e)}Hs(e){let r=e;if(r.storageArea===this.storage){if(X(Vo,"EVENT",r.key,r.newValue),r.key===this.Xs)return void Xt("Received WebStorage notification for local change. Another client might have garbage-collected our state");this.Fi.enqueueRetryable(()=>I(this,null,function*(){if(this.started){if(r.key!==null){if(this.no.test(r.key)){if(r.newValue==null){let t=this.Ao(r.key);return this.Ro(t,null)}{let t=this.Vo(r.key,r.newValue);if(t)return this.Ro(t.clientId,t)}}else if(this.ro.test(r.key)){if(r.newValue!==null){let t=this.mo(r.key,r.newValue);if(t)return this.fo(t)}}else if(this.io.test(r.key)){if(r.newValue!==null){let t=this.po(r.key,r.newValue);if(t)return this.yo(t)}}else if(r.key===this.so){if(r.newValue!==null){let t=this.ao(r.newValue);if(t)return this.uo(t)}}else if(r.key===this.eo){let t=(function(o){let s=Kr.ue;if(o!=null)try{let a=JSON.parse(o);he(typeof a=="number",30636,{wo:o}),s=a}catch(a){Xt(Vo,"Failed to read sequence number from WebStorage",a)}return s})(r.newValue);t!==Kr.ue&&this.sequenceNumberHandler(t)}else if(r.key===this.oo){let t=this.So(r.newValue);yield Promise.all(t.map(i=>this.syncEngine.bo(i)))}}}else this.Zs.push(r)}))}}get Po(){return this.Ys.get(this.js)}_o(){this.setItem(this.Xs,this.Po.Ws())}lo(e,r,t){let i=new dy(this.currentUser,e,r,t),o=oH(this.persistenceKey,this.currentUser,e);this.setItem(o,i.Ws())}ho(e){let r=oH(this.persistenceKey,this.currentUser,e);this.removeItem(r)}Io(e){let r={clientId:this.js,onlineState:e};this.storage.setItem(this.so,JSON.stringify(r))}To(e,r,t){let i=Vw(this.persistenceKey,e),o=new Gm(e,r,t);this.setItem(i,o.Ws())}Eo(e){let r=JSON.stringify(Array.from(e));this.setItem(this.oo,r)}Ao(e){let r=this.no.exec(e);return r?r[1]:null}Vo(e,r){let t=this.Ao(e);return hy.Ks(t,r)}mo(e,r){let t=this.ro.exec(e),i=Number(t[1]),o=t[2]!==void 0?t[2]:null;return dy.Ks(new cn(o),i,r)}po(e,r){let t=this.io.exec(e),i=Number(t[1]);return Gm.Ks(i,r)}ao(e){return sL.Ks(e)}So(e){return JSON.parse(e)}fo(e){return I(this,null,function*(){if(e.user.uid===this.currentUser.uid)return this.syncEngine.Do(e.batchId,e.state,e.error);X(Vo,`Ignoring mutation for non-active user ${e.user.uid}`)})}yo(e){return this.syncEngine.vo(e.targetId,e.state,e.error)}Ro(e,r){let t=r?this.Ys.insert(e,r):this.Ys.remove(e),i=this.co(this.Ys),o=this.co(t),s=[],a=[];return o.forEach(c=>{i.has(c)||s.push(c)}),i.forEach(c=>{o.has(c)||a.push(c)}),this.syncEngine.Co(s,a).then(()=>{this.Ys=t})}uo(e){this.Ys.get(e.clientId)&&this.onlineStateHandler(e.onlineState)}co(e){let r=cM();return e.forEach((t,i)=>{r=r.unionWith(i.activeTargetIds)}),r}},fy=class{constructor(){this.Fo=new up,this.Mo={},this.onlineStateHandler=null,this.sequenceNumberHandler=null}addPendingMutation(e){}updateMutationState(e,r,t){}addLocalQueryTarget(e,r=!0){return r&&this.Fo.Gs(e),this.Mo[e]||"not-current"}updateQueryState(e,r,t){this.Mo[e]=r}removeLocalQueryTarget(e){this.Fo.zs(e)}isLocalQueryTarget(e){return this.Fo.activeTargetIds.has(e)}clearQueryState(e){delete this.Mo[e]}getAllActiveQueryTargets(){return this.Fo.activeTargetIds}isActiveQueryTarget(e){return this.Fo.activeTargetIds.has(e)}start(){return this.Fo=new up,Promise.resolve()}handleUserChange(e,r,t){}setOnlineState(e){}shutdown(){}writeSequenceNumber(e){}notifyBundleLoaded(e){}};var aL=class{xo(e){}shutdown(){}};var sH="ConnectivityMonitor",gy=class{constructor(){this.Oo=()=>this.No(),this.Bo=()=>this.Lo(),this.ko=[],this.qo()}xo(e){this.ko.push(e)}shutdown(){window.removeEventListener("online",this.Oo),window.removeEventListener("offline",this.Bo)}qo(){window.addEventListener("online",this.Oo),window.addEventListener("offline",this.Bo)}No(){X(sH,"Network connectivity changed: AVAILABLE");for(let e of this.ko)e(0)}Lo(){X(sH,"Network connectivity changed: UNAVAILABLE");for(let e of this.ko)e(1)}static C(){return typeof window<"u"&&window.addEventListener!==void 0&&window.removeEventListener!==void 0}};var Av=null;function cL(){return Av===null?Av=(function(){return 268435456+Math.round(2147483648*Math.random())})():Av++,"0x"+Av.toString(16)}var Bw="RestConnection",poe={BatchGetDocuments:"batchGet",Commit:"commit",RunQuery:"runQuery",RunAggregationQuery:"runAggregationQuery"},lL=class{get Qo(){return!1}constructor(e){this.databaseInfo=e,this.databaseId=e.databaseId;let r=e.ssl?"https":"http",t=encodeURIComponent(this.databaseId.projectId),i=encodeURIComponent(this.databaseId.database);this.$o=r+"://"+e.host,this.Uo=`projects/${t}/databases/${i}`,this.Ko=this.databaseId.database===Xm?`project_id=${t}`:`project_id=${t}&database_id=${i}`}Wo(e,r,t,i,o){let s=cL(),a=this.Go(e,r.toUriEncodedString());X(Bw,`Sending RPC '${e}' ${s}:`,a,t);let c={"google-cloud-resource-prefix":this.Uo,"x-goog-request-params":this.Ko};this.zo(c,i,o);let{host:l}=new URL(a),u=Hr(l);return this.jo(e,a,c,t,u).then(d=>(X(Bw,`Received RPC '${e}' ${s}: `,d),d),d=>{throw ws(Bw,`RPC '${e}' ${s} failed with error: `,d,"url: ",a,"request:",t),d})}Jo(e,r,t,i,o,s){return this.Wo(e,r,t,i,o)}zo(e,r,t){e["X-Goog-Api-Client"]=(function(){return"gl-js/ fire/"+Uh})(),e["Content-Type"]="text/plain",this.databaseInfo.appId&&(e["X-Firebase-GMPID"]=this.databaseInfo.appId),r&&r.headers.forEach((i,o)=>e[o]=i),t&&t.headers.forEach((i,o)=>e[o]=i)}Go(e,r){let t=poe[e];return`${this.$o}/v1/${r}:${t}`}terminate(){}};var uL=class{constructor(e){this.Ho=e.Ho,this.Yo=e.Yo}Zo(e){this.Xo=e}e_(e){this.t_=e}n_(e){this.r_=e}onMessage(e){this.i_=e}close(){this.Yo()}send(e){this.Ho(e)}s_(){this.Xo()}o_(){this.t_()}__(e){this.r_(e)}a_(e){this.i_(e)}};var tr="WebChannelConnection",dL=class extends lL{constructor(e){super(e),this.u_=[],this.forceLongPolling=e.forceLongPolling,this.autoDetectLongPolling=e.autoDetectLongPolling,this.useFetchStreams=e.useFetchStreams,this.longPollingOptions=e.longPollingOptions}jo(e,r,t,i,o){let s=cL();return new Promise((a,c)=>{let l=new ww;l.setWithCredentials(!0),l.listenOnce(bw.COMPLETE,()=>{try{switch(l.getLastErrorCode()){case Cm.NO_ERROR:let d=l.getResponseJson();X(tr,`XHR for RPC '${e}' ${s} received:`,JSON.stringify(d)),a(d);break;case Cm.TIMEOUT:X(tr,`RPC '${e}' ${s} timed out`),c(new Q(j.DEADLINE_EXCEEDED,"Request time out"));break;case Cm.HTTP_ERROR:let f=l.getStatus();if(X(tr,`RPC '${e}' ${s} failed with status:`,f,"response text:",l.getResponseText()),f>0){let g=l.getResponseJson();Array.isArray(g)&&(g=g[0]);let p=g?.error;if(p&&p.status&&p.message){let _=(function(D){let b=D.toLowerCase().replace(/_/g,"-");return Object.values(j).indexOf(b)>=0?b:j.UNKNOWN})(p.status);c(new Q(_,p.message))}else c(new Q(j.UNKNOWN,"Server responded with status "+l.getStatus()))}else c(new Q(j.UNAVAILABLE,"Connection failed."));break;default:ae(9055,{c_:e,streamId:s,l_:l.getLastErrorCode(),h_:l.getLastError()})}}finally{X(tr,`RPC '${e}' ${s} completed.`)}});let u=JSON.stringify(i);X(tr,`RPC '${e}' ${s} sending request:`,i),l.send(r,"POST",u,t,15)})}P_(e,r,t){let i=cL(),o=[this.$o,"/","google.firestore.v1.Firestore","/",e,"/channel"],s=Pw(),a=Mw(),c={httpSessionIdParam:"gsessionid",initMessageHeaders:{},messageUrlParams:{database:`projects/${this.databaseId.projectId}/databases/${this.databaseId.database}`},sendRawJson:!0,supportsCrossDomainXhr:!0,internalChannelParams:{forwardChannelRequestTimeoutMs:6e5},forceLongPolling:this.forceLongPolling,detectBufferingProxy:this.autoDetectLongPolling},l=this.longPollingOptions.timeoutSeconds;l!==void 0&&(c.longPollingTimeout=Math.round(1e3*l)),this.useFetchStreams&&(c.useFetchStreams=!0),this.zo(c.initMessageHeaders,r,t),c.encodeInitMessageHeaders=!0;let u=o.join("");X(tr,`Creating RPC '${e}' stream ${i}: ${u}`,c);let d=s.createWebChannel(u,c);this.T_(d);let f=!1,g=!1,p=new uL({Ho:T=>{g?X(tr,`Not sending because RPC '${e}' stream ${i} is closed:`,T):(f||(X(tr,`Opening RPC '${e}' stream ${i} transport.`),d.open(),f=!0),X(tr,`RPC '${e}' stream ${i} sending:`,T),d.send(T))},Yo:()=>d.close()}),_=(T,D,b)=>{T.listen(D,G=>{try{b(G)}catch(M){setTimeout(()=>{throw M},0)}})};return _(d,Jd.EventType.OPEN,()=>{g||(X(tr,`RPC '${e}' stream ${i} transport opened.`),p.s_())}),_(d,Jd.EventType.CLOSE,()=>{g||(g=!0,X(tr,`RPC '${e}' stream ${i} transport closed`),p.__(),this.I_(d))}),_(d,Jd.EventType.ERROR,T=>{g||(g=!0,ws(tr,`RPC '${e}' stream ${i} transport errored. Name:`,T.name,"Message:",T.message),p.__(new Q(j.UNAVAILABLE,"The operation could not be completed")))}),_(d,Jd.EventType.MESSAGE,T=>{var D;if(!g){let b=T.data[0];he(!!b,16349);let G=b,M=G?.error||((D=G[0])===null||D===void 0?void 0:D.error);if(M){X(tr,`RPC '${e}' stream ${i} received error:`,M);let U=M.status,k=(function(C){let O=sn[C];if(O!==void 0)return pW(O)})(U),S=M.message;k===void 0&&(k=j.INTERNAL,S="Unknown error status: "+U+" with message "+M.message),g=!0,p.__(new Q(k,S)),d.close()}else X(tr,`RPC '${e}' stream ${i} received:`,b),p.a_(b)}}),_(a,Lw.STAT_EVENT,T=>{T.stat===Tv.PROXY?X(tr,`RPC '${e}' stream ${i} detected buffering proxy`):T.stat===Tv.NOPROXY&&X(tr,`RPC '${e}' stream ${i} detected no buffering proxy`)}),setTimeout(()=>{p.o_()},0),p}terminate(){this.u_.forEach(e=>e.close()),this.u_=[]}T_(e){this.u_.push(e)}I_(e){this.u_=this.u_.filter(r=>r===e)}};function KW(){return typeof window<"u"?window:null}function Lv(){return typeof document<"u"?document:null}function ky(n){return new Ab(n,!0)}var dp=class{constructor(e,r,t=1e3,i=1.5,o=6e4){this.Fi=e,this.timerId=r,this.d_=t,this.E_=i,this.A_=o,this.R_=0,this.V_=null,this.m_=Date.now(),this.reset()}reset(){this.R_=0}f_(){this.R_=this.A_}g_(e){this.cancel();let r=Math.floor(this.R_+this.p_()),t=Math.max(0,Date.now()-this.m_),i=Math.max(0,r-t);i>0&&X("ExponentialBackoff",`Backing off for ${i} ms (base delay: ${this.R_} ms, delay with jitter: ${r} ms, last attempt: ${t} ms ago)`),this.V_=this.Fi.enqueueAfterDelay(this.timerId,i,()=>(this.m_=Date.now(),e())),this.R_*=this.E_,this.R_<this.d_&&(this.R_=this.d_),this.R_>this.A_&&(this.R_=this.A_)}y_(){this.V_!==null&&(this.V_.skipDelay(),this.V_=null)}cancel(){this.V_!==null&&(this.V_.cancel(),this.V_=null)}p_(){return(Math.random()-.5)*this.R_}};var aH="PersistentStream",my=class{constructor(e,r,t,i,o,s,a,c){this.Fi=e,this.w_=t,this.S_=i,this.connection=o,this.authCredentialsProvider=s,this.appCheckCredentialsProvider=a,this.listener=c,this.state=0,this.b_=0,this.D_=null,this.v_=null,this.stream=null,this.C_=0,this.F_=new dp(e,r)}M_(){return this.state===1||this.state===5||this.x_()}x_(){return this.state===2||this.state===3}start(){this.C_=0,this.state!==4?this.auth():this.O_()}stop(){return I(this,null,function*(){this.M_()&&(yield this.close(0))})}N_(){this.state=0,this.F_.reset()}B_(){this.x_()&&this.D_===null&&(this.D_=this.Fi.enqueueAfterDelay(this.w_,6e4,()=>this.L_()))}k_(e){this.q_(),this.stream.send(e)}L_(){return I(this,null,function*(){if(this.x_())return this.close(0)})}q_(){this.D_&&(this.D_.cancel(),this.D_=null)}Q_(){this.v_&&(this.v_.cancel(),this.v_=null)}close(e,r){return I(this,null,function*(){this.q_(),this.Q_(),this.F_.cancel(),this.b_++,e!==4?this.F_.reset():r&&r.code===j.RESOURCE_EXHAUSTED?(Xt(r.toString()),Xt("Using maximum backoff delay to prevent overloading the backend."),this.F_.f_()):r&&r.code===j.UNAUTHENTICATED&&this.state!==3&&(this.authCredentialsProvider.invalidateToken(),this.appCheckCredentialsProvider.invalidateToken()),this.stream!==null&&(this.U_(),this.stream.close(),this.stream=null),this.state=e,yield this.listener.n_(r)})}U_(){}auth(){this.state=1;let e=this.K_(this.b_),r=this.b_;Promise.all([this.authCredentialsProvider.getToken(),this.appCheckCredentialsProvider.getToken()]).then(([t,i])=>{this.b_===r&&this.W_(t,i)},t=>{e(()=>{let i=new Q(j.UNKNOWN,"Fetching auth token failed: "+t.message);return this.G_(i)})})}W_(e,r){let t=this.K_(this.b_);this.stream=this.z_(e,r),this.stream.Zo(()=>{t(()=>this.listener.Zo())}),this.stream.e_(()=>{t(()=>(this.state=2,this.v_=this.Fi.enqueueAfterDelay(this.S_,1e4,()=>(this.x_()&&(this.state=3),Promise.resolve())),this.listener.e_()))}),this.stream.n_(i=>{t(()=>this.G_(i))}),this.stream.onMessage(i=>{t(()=>++this.C_==1?this.j_(i):this.onNext(i))})}O_(){this.state=5,this.F_.g_(()=>I(this,null,function*(){this.state=0,this.start()}))}G_(e){return X(aH,`close with error: ${e}`),this.stream=null,this.close(4,e)}K_(e){return r=>{this.Fi.enqueueAndForget(()=>this.b_===e?r():(X(aH,"stream callback skipped by getCloseGuardedDispatcher."),Promise.resolve()))}}},hL=class extends my{constructor(e,r,t,i,o,s){super(e,"listen_stream_connection_backoff","listen_stream_idle","health_check_timeout",r,t,i,s),this.serializer=o}z_(e,r){return this.connection.P_("Listen",e,r)}j_(e){return this.onNext(e)}onNext(e){this.F_.reset();let r=Zie(this.serializer,e),t=(function(o){if(!("targetChange"in o))return me.min();let s=o.targetChange;return s.targetIds&&s.targetIds.length?me.min():s.readTime?Ln(s.readTime):me.min()})(e);return this.listener.J_(r,t)}H_(e){let r={};r.database=Cb(this.serializer),r.addTarget=(function(o,s){let a,c=s.target;if(a=Wv(c)?{documents:yW(o,c)}:{query:dM(o,c).Vt},a.targetId=s.targetId,s.resumeToken.approximateByteSize()>0){a.resumeToken=EW(o,s.resumeToken);let l=Db(o,s.expectedCount);l!==null&&(a.expectedCount=l)}else if(s.snapshotVersion.compareTo(me.min())>0){a.readTime=Nh(o,s.snapshotVersion.toTimestamp());let l=Db(o,s.expectedCount);l!==null&&(a.expectedCount=l)}return a})(this.serializer,e);let t=noe(this.serializer,e);t&&(r.labels=t),this.k_(r)}Y_(e){let r={};r.database=Cb(this.serializer),r.removeTarget=e,this.k_(r)}},fL=class extends my{constructor(e,r,t,i,o,s){super(e,"write_stream_connection_backoff","write_stream_idle","health_check_timeout",r,t,i,s),this.serializer=o}get Z_(){return this.C_>0}start(){this.lastStreamToken=void 0,super.start()}U_(){this.Z_&&this.X_([])}z_(e,r){return this.connection.P_("Write",e,r)}j_(e){return he(!!e.streamToken,31322),this.lastStreamToken=e.streamToken,he(!e.writeResults||e.writeResults.length===0,55816),this.listener.ea()}onNext(e){he(!!e.streamToken,12678),this.lastStreamToken=e.streamToken,this.F_.reset();let r=eoe(e.writeResults,e.commitTime),t=Ln(e.commitTime);return this.listener.ta(t,r)}na(){let e={};e.database=Cb(this.serializer),this.k_(e)}X_(e){let r={streamToken:this.lastStreamToken,writes:e.map(t=>sp(this.serializer,t))};this.k_(r)}};var gL=class{},mL=class extends gL{constructor(e,r,t,i){super(),this.authCredentials=e,this.appCheckCredentials=r,this.connection=t,this.serializer=i,this.ra=!1}ia(){if(this.ra)throw new Q(j.FAILED_PRECONDITION,"The client has already been terminated.")}Wo(e,r,t,i){return this.ia(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then(([o,s])=>this.connection.Wo(e,Rb(r,t),i,o,s)).catch(o=>{throw o.name==="FirebaseError"?(o.code===j.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),o):new Q(j.UNKNOWN,o.toString())})}Jo(e,r,t,i,o){return this.ia(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then(([s,a])=>this.connection.Jo(e,Rb(r,t),i,s,a,o)).catch(s=>{throw s.name==="FirebaseError"?(s.code===j.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),s):new Q(j.UNKNOWN,s.toString())})}terminate(){this.ra=!0,this.connection.terminate()}},pL=class{constructor(e,r){this.asyncQueue=e,this.onlineStateHandler=r,this.state="Unknown",this.sa=0,this.oa=null,this._a=!0}aa(){this.sa===0&&(this.ua("Unknown"),this.oa=this.asyncQueue.enqueueAfterDelay("online_state_timeout",1e4,()=>(this.oa=null,this.ca("Backend didn't respond within 10 seconds."),this.ua("Offline"),Promise.resolve())))}la(e){this.state==="Online"?this.ua("Unknown"):(this.sa++,this.sa>=1&&(this.ha(),this.ca(`Connection failed 1 times. Most recent error: ${e.toString()}`),this.ua("Offline")))}set(e){this.ha(),this.sa=0,e==="Online"&&(this._a=!1),this.ua(e)}ua(e){e!==this.state&&(this.state=e,this.onlineStateHandler(e))}ca(e){let r=`Could not reach Cloud Firestore backend. ${e}
163
- 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._a?(Xt(r),this._a=!1):X("OnlineStateTracker",r)}ha(){this.oa!==null&&(this.oa.cancel(),this.oa=null)}};var Jl="RemoteStore",EL=class{constructor(e,r,t,i,o){this.localStore=e,this.datastore=r,this.asyncQueue=t,this.remoteSyncer={},this.Pa=[],this.Ta=new Map,this.Ia=new Set,this.da=[],this.Ea=o,this.Ea.xo(s=>{t.enqueueAndForget(()=>I(this,null,function*(){nu(this)&&(X(Jl,"Restarting streams for network reachability change."),yield(function(c){return I(this,null,function*(){let l=de(c);l.Ia.add(4),yield Sp(l),l.Aa.set("Unknown"),l.Ia.delete(4),yield Uy(l)})})(this))}))}),this.Aa=new pL(t,i)}};function Uy(n){return I(this,null,function*(){if(nu(n))for(let e of n.da)yield e(!0)})}function Sp(n){return I(this,null,function*(){for(let e of n.da)yield e(!1)})}function Vy(n,e){let r=de(n);r.Ta.has(e.targetId)||(r.Ta.set(e.targetId,e),pM(r)?mM(r):Bh(r).x_()&&gM(r,e))}function Lh(n,e){let r=de(n),t=Bh(r);r.Ta.delete(e),t.x_()&&YW(r,e),r.Ta.size===0&&(t.x_()?t.B_():nu(r)&&r.Aa.set("Unknown"))}function gM(n,e){if(n.Ra.$e(e.targetId),e.resumeToken.approximateByteSize()>0||e.snapshotVersion.compareTo(me.min())>0){let r=n.remoteSyncer.getRemoteKeysForTarget(e.targetId).size;e=e.withExpectedCount(r)}Bh(n).H_(e)}function YW(n,e){n.Ra.$e(e),Bh(n).Y_(e)}function mM(n){n.Ra=new Sb({getRemoteKeysForTarget:e=>n.remoteSyncer.getRemoteKeysForTarget(e),Et:e=>n.Ta.get(e)||null,lt:()=>n.datastore.serializer.databaseId}),Bh(n).start(),n.Aa.aa()}function pM(n){return nu(n)&&!Bh(n).M_()&&n.Ta.size>0}function nu(n){return de(n).Ia.size===0}function QW(n){n.Ra=void 0}function Eoe(n){return I(this,null,function*(){n.Aa.set("Online")})}function _oe(n){return I(this,null,function*(){n.Ta.forEach((e,r)=>{gM(n,e)})})}function Toe(n,e){return I(this,null,function*(){QW(n),pM(n)?(n.Aa.la(e),mM(n)):n.Aa.set("Unknown")})}function Ioe(n,e,r){return I(this,null,function*(){if(n.Aa.set("Online"),e instanceof Yv&&e.state===2&&e.cause)try{yield(function(i,o){return I(this,null,function*(){let s=o.cause;for(let a of o.targetIds)i.Ta.has(a)&&(yield i.remoteSyncer.rejectListen(a,s),i.Ta.delete(a),i.Ra.removeTarget(a))})})(n,e)}catch(t){X(Jl,"Failed to remove targets %s: %s ",e.targetIds.join(","),t),yield py(n,t)}else if(e instanceof hh?n.Ra.Ye(e):e instanceof Kv?n.Ra.it(e):n.Ra.et(e),!r.isEqual(me.min()))try{let t=yield GW(n.localStore);r.compareTo(t)>=0&&(yield(function(o,s){let a=o.Ra.Pt(s);return a.targetChanges.forEach((c,l)=>{if(c.resumeToken.approximateByteSize()>0){let u=o.Ta.get(l);u&&o.Ta.set(l,u.withResumeToken(c.resumeToken,s))}}),a.targetMismatches.forEach((c,l)=>{let u=o.Ta.get(c);if(!u)return;o.Ta.set(c,u.withResumeToken(un.EMPTY_BYTE_STRING,u.snapshotVersion)),YW(o,c);let d=new Oh(u.target,c,l,u.sequenceNumber);gM(o,d)}),o.remoteSyncer.applyRemoteEvent(a)})(n,r))}catch(t){X(Jl,"Failed to raise snapshot:",t),yield py(n,t)}})}function py(n,e,r){return I(this,null,function*(){if(!Xa(e))throw e;n.Ia.add(1),yield Sp(n),n.Aa.set("Offline"),r||(r=()=>GW(n.localStore)),n.asyncQueue.enqueueRetryable(()=>I(null,null,function*(){X(Jl,"Retrying IndexedDB access"),yield r(),n.Ia.delete(1),yield Uy(n)}))})}function XW(n,e){return e().catch(r=>py(n,r,e))}function Vh(n){return I(this,null,function*(){let e=de(n),r=Ka(e),t=e.Pa.length>0?e.Pa[e.Pa.length-1].batchId:Gl;for(;voe(e);)try{let i=yield moe(e.localStore,t);if(i===null){e.Pa.length===0&&r.B_();break}t=i.batchId,yoe(e,i)}catch(i){yield py(e,i)}JW(e)&&ZW(e)})}function voe(n){return nu(n)&&n.Pa.length<10}function yoe(n,e){n.Pa.push(e);let r=Ka(n);r.x_()&&r.Z_&&r.X_(e.mutations)}function JW(n){return nu(n)&&!Ka(n).M_()&&n.Pa.length>0}function ZW(n){Ka(n).start()}function Soe(n){return I(this,null,function*(){Ka(n).na()})}function Aoe(n){return I(this,null,function*(){let e=Ka(n);for(let r of n.Pa)e.X_(r.mutations)})}function Doe(n,e,r){return I(this,null,function*(){let t=n.Pa.shift(),i=Tb.from(t,e,r);yield XW(n,()=>n.remoteSyncer.applySuccessfulWrite(i)),yield Vh(n)})}function Roe(n,e){return I(this,null,function*(){e&&Ka(n).Z_&&(yield(function(t,i){return I(this,null,function*(){if((function(s){return mW(s)&&s!==j.ABORTED})(i.code)){let o=t.Pa.shift();Ka(t).N_(),yield XW(t,()=>t.remoteSyncer.rejectFailedWrite(o.batchId,i)),yield Vh(t)}})})(n,e)),JW(n)&&ZW(n)})}function cH(n,e){return I(this,null,function*(){let r=de(n);r.asyncQueue.verifyOperationInProgress(),X(Jl,"RemoteStore received new credentials");let t=nu(r);r.Ia.add(3),yield Sp(r),t&&r.Aa.set("Unknown"),yield r.remoteSyncer.handleCredentialChange(e),r.Ia.delete(3),yield Uy(r)})}function _L(n,e){return I(this,null,function*(){let r=de(n);e?(r.Ia.delete(2),yield Uy(r)):e||(r.Ia.add(2),yield Sp(r),r.Aa.set("Unknown"))})}function Bh(n){return n.Va||(n.Va=(function(r,t,i){let o=de(r);return o.ia(),new hL(t,o.connection,o.authCredentials,o.appCheckCredentials,o.serializer,i)})(n.datastore,n.asyncQueue,{Zo:Eoe.bind(null,n),e_:_oe.bind(null,n),n_:Toe.bind(null,n),J_:Ioe.bind(null,n)}),n.da.push(e=>I(null,null,function*(){e?(n.Va.N_(),pM(n)?mM(n):n.Aa.set("Unknown")):(yield n.Va.stop(),QW(n))}))),n.Va}function Ka(n){return n.ma||(n.ma=(function(r,t,i){let o=de(r);return o.ia(),new fL(t,o.connection,o.authCredentials,o.appCheckCredentials,o.serializer,i)})(n.datastore,n.asyncQueue,{Zo:()=>Promise.resolve(),e_:Soe.bind(null,n),n_:Roe.bind(null,n),ea:Aoe.bind(null,n),ta:Doe.bind(null,n)}),n.da.push(e=>I(null,null,function*(){e?(n.ma.N_(),yield Vh(n)):(yield n.ma.stop(),n.Pa.length>0&&(X(Jl,`Stopping write stream with ${n.Pa.length} pending writes`),n.Pa=[]))}))),n.ma}var TL=class n{constructor(e,r,t,i,o){this.asyncQueue=e,this.timerId=r,this.targetTimeMs=t,this.op=i,this.removalCallback=o,this.deferred=new Or,this.then=this.deferred.promise.then.bind(this.deferred.promise),this.deferred.promise.catch(s=>{})}get promise(){return this.deferred.promise}static createAndSchedule(e,r,t,i,o){let s=Date.now()+t,a=new n(e,r,s,i,o);return a.start(t),a}start(e){this.timerHandle=setTimeout(()=>this.handleDelayElapsed(),e)}skipDelay(){return this.handleDelayElapsed()}cancel(e){this.timerHandle!==null&&(this.clearTimeout(),this.deferred.reject(new Q(j.CANCELLED,"Operation cancelled"+(e?": "+e:""))))}handleDelayElapsed(){this.asyncQueue.enqueueAndForget(()=>this.timerHandle!==null?(this.clearTimeout(),this.op().then(e=>this.deferred.resolve(e))):Promise.resolve())}clearTimeout(){this.timerHandle!==null&&(this.removalCallback(this),clearTimeout(this.timerHandle),this.timerHandle=null)}};function EM(n,e){if(Xt("AsyncQueue",`${e}: ${n}`),Xa(n))return new Q(j.UNAVAILABLE,`${e}: ${n}`);throw n}var Ey=class n{static emptySet(e){return new n(e.comparator)}constructor(e){this.comparator=e?(r,t)=>e(r,t)||ie.comparator(r.key,t.key):(r,t)=>ie.comparator(r.key,t.key),this.keyedMap=Lm(),this.sortedSet=new Dt(this.comparator)}has(e){return this.keyedMap.get(e)!=null}get(e){return this.keyedMap.get(e)}first(){return this.sortedSet.minKey()}last(){return this.sortedSet.maxKey()}isEmpty(){return this.sortedSet.isEmpty()}indexOf(e){let r=this.keyedMap.get(e);return r?this.sortedSet.indexOf(r):-1}get size(){return this.sortedSet.size}forEach(e){this.sortedSet.inorderTraversal((r,t)=>(e(r),!1))}add(e){let r=this.delete(e.key);return r.copy(r.keyedMap.insert(e.key,e),r.sortedSet.insert(e,null))}delete(e){let r=this.get(e);return r?this.copy(this.keyedMap.remove(e),this.sortedSet.remove(r)):this}isEqual(e){if(!(e instanceof n)||this.size!==e.size)return!1;let r=this.sortedSet.getIterator(),t=e.sortedSet.getIterator();for(;r.hasNext();){let i=r.getNext().key,o=t.getNext().key;if(!i.isEqual(o))return!1}return!0}toString(){let e=[];return this.forEach(r=>{e.push(r.toString())}),e.length===0?"DocumentSet ()":`DocumentSet (
164
- `+e.join(`
165
- `)+`
166
- )`}copy(e,r){let t=new n;return t.comparator=this.comparator,t.keyedMap=e,t.sortedSet=r,t}};var _y=class{constructor(){this.fa=new Dt(ie.comparator)}track(e){let r=e.doc.key,t=this.fa.get(r);t?e.type!==0&&t.type===3?this.fa=this.fa.insert(r,e):e.type===3&&t.type!==1?this.fa=this.fa.insert(r,{type:t.type,doc:e.doc}):e.type===2&&t.type===2?this.fa=this.fa.insert(r,{type:2,doc:e.doc}):e.type===2&&t.type===0?this.fa=this.fa.insert(r,{type:0,doc:e.doc}):e.type===1&&t.type===0?this.fa=this.fa.remove(r):e.type===1&&t.type===2?this.fa=this.fa.insert(r,{type:1,doc:t.doc}):e.type===0&&t.type===1?this.fa=this.fa.insert(r,{type:2,doc:e.doc}):ae(63341,{At:e,ga:t}):this.fa=this.fa.insert(r,e)}pa(){let e=[];return this.fa.inorderTraversal((r,t)=>{e.push(t)}),e}},Mh=class n{constructor(e,r,t,i,o,s,a,c,l){this.query=e,this.docs=r,this.oldDocs=t,this.docChanges=i,this.mutatedKeys=o,this.fromCache=s,this.syncStateChanged=a,this.excludesMetadataChanges=c,this.hasCachedResults=l}static fromInitialDocuments(e,r,t,i,o){let s=[];return r.forEach(a=>{s.push({type:0,doc:a})}),new n(e,r,Ey.emptySet(r),s,t,i,!0,!1,o)}get hasPendingWrites(){return!this.mutatedKeys.isEmpty()}isEqual(e){if(!(this.fromCache===e.fromCache&&this.hasCachedResults===e.hasCachedResults&&this.syncStateChanged===e.syncStateChanged&&this.mutatedKeys.isEqual(e.mutatedKeys)&&Fy(this.query,e.query)&&this.docs.isEqual(e.docs)&&this.oldDocs.isEqual(e.oldDocs)))return!1;let r=this.docChanges,t=e.docChanges;if(r.length!==t.length)return!1;for(let i=0;i<r.length;i++)if(r[i].type!==t[i].type||!r[i].doc.isEqual(t[i].doc))return!1;return!0}};var IL=class{constructor(){this.ya=void 0,this.wa=[]}Sa(){return this.wa.some(e=>e.ba())}},vL=class{constructor(){this.queries=lH(),this.onlineState="Unknown",this.Da=new Set}terminate(){(function(r,t){let i=de(r),o=i.queries;i.queries=lH(),o.forEach((s,a)=>{for(let c of a.wa)c.onError(t)})})(this,new Q(j.ABORTED,"Firestore shutting down"))}};function lH(){return new Ki(n=>nW(n),Fy)}function _M(n,e){return I(this,null,function*(){let r=de(n),t=3,i=e.query,o=r.queries.get(i);o?!o.Sa()&&e.ba()&&(t=2):(o=new IL,t=e.ba()?0:1);try{switch(t){case 0:o.ya=yield r.onListen(i,!0);break;case 1:o.ya=yield r.onListen(i,!1);break;case 2:yield r.onFirstRemoteStoreListen(i)}}catch(s){let a=EM(s,`Initialization of query '${sh(e.query)}' failed`);return void e.onError(a)}r.queries.set(i,o),o.wa.push(e),e.va(r.onlineState),o.ya&&e.Ca(o.ya)&&IM(r)})}function TM(n,e){return I(this,null,function*(){let r=de(n),t=e.query,i=3,o=r.queries.get(t);if(o){let s=o.wa.indexOf(e);s>=0&&(o.wa.splice(s,1),o.wa.length===0?i=e.ba()?0:1:!o.Sa()&&e.ba()&&(i=2))}switch(i){case 0:return r.queries.delete(t),r.onUnlisten(t,!0);case 1:return r.queries.delete(t),r.onUnlisten(t,!1);case 2:return r.onLastRemoteStoreUnlisten(t);default:return}})}function Coe(n,e){let r=de(n),t=!1;for(let i of e){let o=i.query,s=r.queries.get(o);if(s){for(let a of s.wa)a.Ca(i)&&(t=!0);s.ya=i}}t&&IM(r)}function Noe(n,e,r){let t=de(n),i=t.queries.get(e);if(i)for(let o of i.wa)o.onError(r);t.queries.delete(e)}function IM(n){n.Da.forEach(e=>{e.next()})}var yL,uH;(uH=yL||(yL={})).Fa="default",uH.Cache="cache";var hp=class{constructor(e,r,t){this.query=e,this.Ma=r,this.xa=!1,this.Oa=null,this.onlineState="Unknown",this.options=t||{}}Ca(e){if(!this.options.includeMetadataChanges){let t=[];for(let i of e.docChanges)i.type!==3&&t.push(i);e=new Mh(e.query,e.docs,e.oldDocs,t,e.mutatedKeys,e.fromCache,e.syncStateChanged,!0,e.hasCachedResults)}let r=!1;return this.xa?this.Na(e)&&(this.Ma.next(e),r=!0):this.Ba(e,this.onlineState)&&(this.La(e),r=!0),this.Oa=e,r}onError(e){this.Ma.error(e)}va(e){this.onlineState=e;let r=!1;return this.Oa&&!this.xa&&this.Ba(this.Oa,e)&&(this.La(this.Oa),r=!0),r}Ba(e,r){if(!e.fromCache||!this.ba())return!0;let t=r!=="Offline";return(!this.options.ka||!t)&&(!e.docs.isEmpty()||e.hasCachedResults||r==="Offline")}Na(e){if(e.docChanges.length>0)return!0;let r=this.Oa&&this.Oa.hasPendingWrites!==e.hasPendingWrites;return!(!e.syncStateChanged&&!r)&&this.options.includeMetadataChanges===!0}La(e){e=Mh.fromInitialDocuments(e.query,e.docs,e.mutatedKeys,e.fromCache,e.hasCachedResults),this.xa=!0,this.Ma.next(e)}ba(){return this.options.source!==yL.Cache}};var Ty=class{constructor(e){this.key=e}},Iy=class{constructor(e){this.key=e}},SL=class{constructor(e,r){this.query=e,this.Ha=r,this.Ya=null,this.hasCachedResults=!1,this.current=!1,this.Za=Ve(),this.mutatedKeys=Ve(),this.Xa=iW(e),this.eu=new Ey(this.Xa)}get tu(){return this.Ha}nu(e,r){let t=r?r.ru:new _y,i=r?r.eu:this.eu,o=r?r.mutatedKeys:this.mutatedKeys,s=i,a=!1,c=this.query.limitType==="F"&&i.size===this.query.limit?i.last():null,l=this.query.limitType==="L"&&i.size===this.query.limit?i.first():null;if(e.inorderTraversal((u,d)=>{let f=i.get(u),g=yp(this.query,d)?d:null,p=!!f&&this.mutatedKeys.has(f.key),_=!!g&&(g.hasLocalMutations||this.mutatedKeys.has(g.key)&&g.hasCommittedMutations),T=!1;f&&g?f.data.isEqual(g.data)?p!==_&&(t.track({type:3,doc:g}),T=!0):this.iu(f,g)||(t.track({type:2,doc:g}),T=!0,(c&&this.Xa(g,c)>0||l&&this.Xa(g,l)<0)&&(a=!0)):!f&&g?(t.track({type:0,doc:g}),T=!0):f&&!g&&(t.track({type:1,doc:f}),T=!0,(c||l)&&(a=!0)),T&&(g?(s=s.add(g),o=_?o.add(u):o.delete(u)):(s=s.delete(u),o=o.delete(u)))}),this.query.limit!==null)for(;s.size>this.query.limit;){let u=this.query.limitType==="F"?s.last():s.first();s=s.delete(u.key),o=o.delete(u.key),t.track({type:1,doc:u})}return{eu:s,ru:t,Ds:a,mutatedKeys:o}}iu(e,r){return e.hasLocalMutations&&r.hasCommittedMutations&&!r.hasLocalMutations}applyChanges(e,r,t,i){let o=this.eu;this.eu=e.eu,this.mutatedKeys=e.mutatedKeys;let s=e.ru.pa();s.sort((u,d)=>(function(g,p){let _=T=>{switch(T){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return ae(20277,{At:T})}};return _(g)-_(p)})(u.type,d.type)||this.Xa(u.doc,d.doc)),this.su(t),i=i!=null&&i;let a=r&&!i?this.ou():[],c=this.Za.size===0&&this.current&&!i?1:0,l=c!==this.Ya;return this.Ya=c,s.length!==0||l?{snapshot:new Mh(this.query,e.eu,o,s,e.mutatedKeys,c===0,l,!1,!!t&&t.resumeToken.approximateByteSize()>0),_u:a}:{_u:a}}va(e){return this.current&&e==="Offline"?(this.current=!1,this.applyChanges({eu:this.eu,ru:new _y,mutatedKeys:this.mutatedKeys,Ds:!1},!1)):{_u:[]}}au(e){return!this.Ha.has(e)&&!!this.eu.has(e)&&!this.eu.get(e).hasLocalMutations}su(e){e&&(e.addedDocuments.forEach(r=>this.Ha=this.Ha.add(r)),e.modifiedDocuments.forEach(r=>{}),e.removedDocuments.forEach(r=>this.Ha=this.Ha.delete(r)),this.current=e.current)}ou(){if(!this.current)return[];let e=this.Za;this.Za=Ve(),this.eu.forEach(t=>{this.au(t.key)&&(this.Za=this.Za.add(t.key))});let r=[];return e.forEach(t=>{this.Za.has(t)||r.push(new Iy(t))}),this.Za.forEach(t=>{e.has(t)||r.push(new Ty(t))}),r}uu(e){this.Ha=e.qs,this.Za=Ve();let r=this.nu(e.documents);return this.applyChanges(r,!0)}cu(){return Mh.fromInitialDocuments(this.query,this.eu,this.mutatedKeys,this.Ya===0,this.hasCachedResults)}},Gh="SyncEngine",AL=class{constructor(e,r,t){this.query=e,this.targetId=r,this.view=t}},DL=class{constructor(e){this.key=e,this.lu=!1}},RL=class{constructor(e,r,t,i,o,s){this.localStore=e,this.remoteStore=r,this.eventManager=t,this.sharedClientState=i,this.currentUser=o,this.maxConcurrentLimboResolutions=s,this.hu={},this.Pu=new Ki(a=>nW(a),Fy),this.Tu=new Map,this.Iu=new Set,this.du=new Dt(ie.comparator),this.Eu=new Map,this.Au=new cp,this.Ru={},this.Vu=new Map,this.mu=wh.ur(),this.onlineState="Unknown",this.fu=void 0}get isPrimaryClient(){return this.fu===!0}};function Ooe(n,e,r=!0){return I(this,null,function*(){let t=By(n),i,o=t.Pu.get(e);return o?(t.sharedClientState.addLocalQueryTarget(o.targetId),i=o.view.cu()):i=yield e3(t,e,r,!0),i})}function woe(n,e){return I(this,null,function*(){let r=By(n);yield e3(r,e,!0,!1)})}function e3(n,e,r,t){return I(this,null,function*(){let i=yield uy(n.localStore,Xr(e)),o=i.targetId,s=n.sharedClientState.addLocalQueryTarget(o,r),a;return t&&(a=yield vM(n,e,o,s==="current",i.resumeToken)),n.isPrimaryClient&&r&&Vy(n.remoteStore,i),a})}function vM(n,e,r,t,i){return I(this,null,function*(){n.gu=(d,f,g)=>(function(_,T,D,b){return I(this,null,function*(){let G=T.view.nu(D);G.Ds&&(G=yield oL(_.localStore,T.query,!1).then(({documents:S})=>T.view.nu(S,G)));let M=b&&b.targetChanges.get(T.targetId),U=b&&b.targetMismatches.get(T.targetId)!=null,k=T.view.applyChanges(G,_.isPrimaryClient,M,U);return CL(_,T.targetId,k._u),k.snapshot})})(n,d,f,g);let o=yield oL(n.localStore,e,!0),s=new SL(e,o.qs),a=s.nu(o.documents),c=ip.createSynthesizedTargetChangeForCurrentChange(r,t&&n.onlineState!=="Offline",i),l=s.applyChanges(a,n.isPrimaryClient,c);CL(n,r,l._u);let u=new AL(e,r,s);return n.Pu.set(e,u),n.Tu.has(r)?n.Tu.get(r).push(e):n.Tu.set(r,[e]),l.snapshot})}function boe(n,e,r){return I(this,null,function*(){let t=de(n),i=t.Pu.get(e),o=t.Tu.get(i.targetId);if(o.length>1)return t.Tu.set(i.targetId,o.filter(s=>!Fy(s,e))),void t.Pu.delete(e);t.isPrimaryClient?(t.sharedClientState.removeLocalQueryTarget(i.targetId),t.sharedClientState.isActiveQueryTarget(i.targetId)||(yield bh(t.localStore,i.targetId,!1).then(()=>{t.sharedClientState.clearQueryState(i.targetId),r&&Lh(t.remoteStore,i.targetId),Ph(t,i.targetId)}).catch(Qa))):(Ph(t,i.targetId),yield bh(t.localStore,i.targetId,!0))})}function Loe(n,e){return I(this,null,function*(){let r=de(n),t=r.Pu.get(e),i=r.Tu.get(t.targetId);r.isPrimaryClient&&i.length===1&&(r.sharedClientState.removeLocalQueryTarget(t.targetId),Lh(r.remoteStore,t.targetId))})}function Moe(n,e,r){return I(this,null,function*(){let t=DM(n);try{let i=yield(function(s,a){let c=de(s),l=Pt.now(),u=a.reduce((g,p)=>g.add(p.key),Ve()),d,f;return c.persistence.runTransaction("Locally write mutations","readwrite",g=>{let p=Qr(),_=Ve();return c.Os.getEntries(g,u).next(T=>{p=T,p.forEach((D,b)=>{b.isValidDocument()||(_=_.add(D))})}).next(()=>c.localDocuments.getOverlayedDocuments(g,p)).next(T=>{d=T;let D=[];for(let b of a){let G=Wie(b,d.get(b.key).overlayedDocument);G!=null&&D.push(new Yi(b.key,G,KH(G.value.mapValue),Gn.exists(!0)))}return c.mutationQueue.addMutationBatch(g,l,D,a)}).next(T=>{f=T;let D=T.applyToLocalDocumentSet(d,_);return c.documentOverlayCache.saveOverlays(g,T.batchId,D)})}).then(()=>({batchId:f.batchId,changes:sW(d)}))})(t.localStore,e);t.sharedClientState.addPendingMutation(i.batchId),(function(s,a,c){let l=s.Ru[s.currentUser.toKey()];l||(l=new Dt(Re)),l=l.insert(a,c),s.Ru[s.currentUser.toKey()]=l})(t,i.batchId,r),yield Za(t,i.changes),yield Vh(t.remoteStore)}catch(i){let o=EM(i,"Failed to persist write");r.reject(o)}})}function t3(n,e){return I(this,null,function*(){let r=de(n);try{let t=yield foe(r.localStore,e);e.targetChanges.forEach((i,o)=>{let s=r.Eu.get(o);s&&(he(i.addedDocuments.size+i.modifiedDocuments.size+i.removedDocuments.size<=1,22616),i.addedDocuments.size>0?s.lu=!0:i.modifiedDocuments.size>0?he(s.lu,14607):i.removedDocuments.size>0&&(he(s.lu,42227),s.lu=!1))}),yield Za(r,t,e)}catch(t){yield Qa(t)}})}function dH(n,e,r){let t=de(n);if(t.isPrimaryClient&&r===0||!t.isPrimaryClient&&r===1){let i=[];t.Pu.forEach((o,s)=>{let a=s.view.va(e);a.snapshot&&i.push(a.snapshot)}),(function(s,a){let c=de(s);c.onlineState=a;let l=!1;c.queries.forEach((u,d)=>{for(let f of d.wa)f.va(a)&&(l=!0)}),l&&IM(c)})(t.eventManager,e),i.length&&t.hu.J_(i),t.onlineState=e,t.isPrimaryClient&&t.sharedClientState.setOnlineState(e)}}function Poe(n,e,r){return I(this,null,function*(){let t=de(n);t.sharedClientState.updateQueryState(e,"rejected",r);let i=t.Eu.get(e),o=i&&i.key;if(o){let s=new Dt(ie.comparator);s=s.insert(o,In.newNoDocument(o,me.min()));let a=Ve().add(o),c=new rp(me.min(),new Map,new Dt(Re),s,a);yield t3(t,c),t.du=t.du.remove(o),t.Eu.delete(e),AM(t)}else yield bh(t.localStore,e,!1).then(()=>Ph(t,e,r)).catch(Qa)})}function xoe(n,e){return I(this,null,function*(){let r=de(n),t=e.batch.batchId;try{let i=yield hoe(r.localStore,e);SM(r,t,null),yM(r,t),r.sharedClientState.updateMutationState(t,"acknowledged"),yield Za(r,i)}catch(i){yield Qa(i)}})}function Foe(n,e,r){return I(this,null,function*(){let t=de(n);try{let i=yield(function(s,a){let c=de(s);return c.persistence.runTransaction("Reject batch","readwrite-primary",l=>{let u;return c.mutationQueue.lookupMutationBatch(l,a).next(d=>(he(d!==null,37113),u=d.keys(),c.mutationQueue.removeMutationBatch(l,d))).next(()=>c.mutationQueue.performConsistencyCheck(l)).next(()=>c.documentOverlayCache.removeOverlaysForBatchId(l,u,a)).next(()=>c.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(l,u)).next(()=>c.localDocuments.getDocuments(l,u))})})(t.localStore,e);SM(t,e,r),yM(t,e),t.sharedClientState.updateMutationState(e,"rejected",r),yield Za(t,i)}catch(i){yield Qa(i)}})}function yM(n,e){(n.Vu.get(e)||[]).forEach(r=>{r.resolve()}),n.Vu.delete(e)}function SM(n,e,r){let t=de(n),i=t.Ru[t.currentUser.toKey()];if(i){let o=i.get(e);o&&(r?o.reject(r):o.resolve(),i=i.remove(e)),t.Ru[t.currentUser.toKey()]=i}}function Ph(n,e,r=null){n.sharedClientState.removeLocalQueryTarget(e);for(let t of n.Tu.get(e))n.Pu.delete(t),r&&n.hu.pu(t,r);n.Tu.delete(e),n.isPrimaryClient&&n.Au.zr(e).forEach(t=>{n.Au.containsKey(t)||n3(n,t)})}function n3(n,e){n.Iu.delete(e.path.canonicalString());let r=n.du.get(e);r!==null&&(Lh(n.remoteStore,r),n.du=n.du.remove(e),n.Eu.delete(r),AM(n))}function CL(n,e,r){for(let t of r)t instanceof Ty?(n.Au.addReference(t.key,e),koe(n,t)):t instanceof Iy?(X(Gh,"Document no longer in limbo: "+t.key),n.Au.removeReference(t.key,e),n.Au.containsKey(t.key)||n3(n,t.key)):ae(19791,{yu:t})}function koe(n,e){let r=e.key,t=r.path.canonicalString();n.du.get(r)||n.Iu.has(t)||(X(Gh,"New document in limbo: "+r),n.Iu.add(t),AM(n))}function AM(n){for(;n.Iu.size>0&&n.du.size<n.maxConcurrentLimboResolutions;){let e=n.Iu.values().next().value;n.Iu.delete(e);let r=new ie(We.fromString(e)),t=n.mu.next();n.Eu.set(t,new DL(r)),n.du=n.du.insert(r,t),Vy(n.remoteStore,new Oh(Xr(vp(r.path)),t,"TargetPurposeLimboResolution",Kr.ue))}}function Za(n,e,r){return I(this,null,function*(){let t=de(n),i=[],o=[],s=[];t.Pu.isEmpty()||(t.Pu.forEach((a,c)=>{s.push(t.gu(c,e,r).then(l=>{var u;if((l||r)&&t.isPrimaryClient){let d=l?!l.fromCache:(u=r?.targetChanges.get(c.targetId))===null||u===void 0?void 0:u.current;t.sharedClientState.updateQueryState(c.targetId,d?"current":"not-current")}if(l){i.push(l);let d=nL.Es(c.targetId,l);o.push(d)}}))}),yield Promise.all(s),t.hu.J_(i),yield(function(c,l){return I(this,null,function*(){let u=de(c);try{yield u.persistence.runTransaction("notifyLocalViewChanges","readwrite",d=>B.forEach(l,f=>B.forEach(f.Is,g=>u.persistence.referenceDelegate.addReference(d,f.targetId,g)).next(()=>B.forEach(f.ds,g=>u.persistence.referenceDelegate.removeReference(d,f.targetId,g)))))}catch(d){if(!Xa(d))throw d;X(fM,"Failed to update sequence numbers: "+d)}for(let d of l){let f=d.targetId;if(!d.fromCache){let g=u.Fs.get(f),p=g.snapshotVersion,_=g.withLastLimboFreeSnapshotVersion(p);u.Fs=u.Fs.insert(f,_)}}})})(t.localStore,o))})}function Uoe(n,e){return I(this,null,function*(){let r=de(n);if(!r.currentUser.isEqual(e)){X(Gh,"User change. New user:",e.toKey());let t=yield BW(r.localStore,e);r.currentUser=e,(function(o,s){o.Vu.forEach(a=>{a.forEach(c=>{c.reject(new Q(j.CANCELLED,s))})}),o.Vu.clear()})(r,"'waitForPendingWrites' promise is rejected due to a user change."),r.sharedClientState.handleUserChange(e,t.removedBatchIds,t.addedBatchIds),yield Za(r,t.Bs)}})}function Voe(n,e){let r=de(n),t=r.Eu.get(e);if(t&&t.lu)return Ve().add(t.key);{let i=Ve(),o=r.Tu.get(e);if(!o)return i;for(let s of o){let a=r.Pu.get(s);i=i.unionWith(a.view.tu)}return i}}function Boe(n,e){return I(this,null,function*(){let r=de(n),t=yield oL(r.localStore,e.query,!0),i=e.view.uu(t);return r.isPrimaryClient&&CL(r,e.targetId,i._u),i})}function Goe(n,e){return I(this,null,function*(){let r=de(n);return jW(r.localStore,e).then(t=>Za(r,t))})}function $oe(n,e,r,t){return I(this,null,function*(){let i=de(n),o=yield(function(a,c){let l=de(a),u=de(l.mutationQueue);return l.persistence.runTransaction("Lookup mutation documents","readonly",d=>u.Xn(d,c).next(f=>f?l.localDocuments.getDocuments(d,f):B.resolve(null)))})(i.localStore,e);o!==null?(r==="pending"?yield Vh(i.remoteStore):r==="acknowledged"||r==="rejected"?(SM(i,e,t||null),yM(i,e),(function(a,c){de(de(a).mutationQueue).rr(c)})(i.localStore,e)):ae(6720,"Unknown batchState",{wu:r}),yield Za(i,o)):X(Gh,"Cannot apply mutation batch with id: "+e)})}function joe(n,e){return I(this,null,function*(){let r=de(n);if(By(r),DM(r),e===!0&&r.fu!==!0){let t=r.sharedClientState.getAllActiveQueryTargets(),i=yield hH(r,t.toArray());r.fu=!0,yield _L(r.remoteStore,!0);for(let o of i)Vy(r.remoteStore,o)}else if(e===!1&&r.fu!==!1){let t=[],i=Promise.resolve();r.Tu.forEach((o,s)=>{r.sharedClientState.isLocalQueryTarget(s)?t.push(s):i=i.then(()=>(Ph(r,s),bh(r.localStore,s,!0))),Lh(r.remoteStore,s)}),yield i,yield hH(r,t),(function(s){let a=de(s);a.Eu.forEach((c,l)=>{Lh(a.remoteStore,l)}),a.Au.jr(),a.Eu=new Map,a.du=new Dt(ie.comparator)})(r),r.fu=!1,yield _L(r.remoteStore,!1)}})}function hH(n,e,r){return I(this,null,function*(){let t=de(n),i=[],o=[];for(let s of e){let a,c=t.Tu.get(s);if(c&&c.length!==0){a=yield uy(t.localStore,Xr(c[0]));for(let l of c){let u=t.Pu.get(l),d=yield Boe(t,u);d.snapshot&&o.push(d.snapshot)}}else{let l=yield $W(t.localStore,s);a=yield uy(t.localStore,l),yield vM(t,r3(l),s,!1,a.resumeToken)}i.push(a)}return t.hu.J_(o),i})}function r3(n){return eW(n.path,n.collectionGroup,n.orderBy,n.filters,n.limit,"F",n.startAt,n.endAt)}function Hoe(n){return(function(r){return de(de(r).persistence).Ps()})(de(n).localStore)}function Woe(n,e,r,t){return I(this,null,function*(){let i=de(n);if(i.fu)return void X(Gh,"Ignoring unexpected query state notification.");let o=i.Tu.get(e);if(o&&o.length>0)switch(r){case"current":case"not-current":{let s=yield jW(i.localStore,rW(o[0])),a=rp.createSynthesizedRemoteEventForCurrentChange(e,r==="current",un.EMPTY_BYTE_STRING);yield Za(i,s,a);break}case"rejected":yield bh(i.localStore,e,!0),Ph(i,e,t);break;default:ae(64155,r)}})}function zoe(n,e,r){return I(this,null,function*(){let t=By(n);if(t.fu){for(let i of e){if(t.Tu.has(i)&&t.sharedClientState.isActiveQueryTarget(i)){X(Gh,"Adding an already active target "+i);continue}let o=yield $W(t.localStore,i),s=yield uy(t.localStore,o);yield vM(t,r3(o),s.targetId,!1,s.resumeToken),Vy(t.remoteStore,s)}for(let i of r)t.Tu.has(i)&&(yield bh(t.localStore,i,!1).then(()=>{Lh(t.remoteStore,i),Ph(t,i)}).catch(Qa))}})}function By(n){let e=de(n);return e.remoteStore.remoteSyncer.applyRemoteEvent=t3.bind(null,e),e.remoteStore.remoteSyncer.getRemoteKeysForTarget=Voe.bind(null,e),e.remoteStore.remoteSyncer.rejectListen=Poe.bind(null,e),e.hu.J_=Coe.bind(null,e.eventManager),e.hu.pu=Noe.bind(null,e.eventManager),e}function DM(n){let e=de(n);return e.remoteStore.remoteSyncer.applySuccessfulWrite=xoe.bind(null,e),e.remoteStore.remoteSyncer.rejectFailedWrite=Foe.bind(null,e),e}var RM=(()=>{class n{constructor(){this.kind="memory",this.synchronizeTabs=!1}initialize(r){return I(this,null,function*(){this.serializer=ky(r.databaseInfo.databaseId),this.sharedClientState=this.bu(r),this.persistence=this.Du(r),yield this.persistence.start(),this.localStore=this.vu(r),this.gcScheduler=this.Cu(r,this.localStore),this.indexBackfillerScheduler=this.Fu(r,this.localStore)})}Cu(r,t){return null}Fu(r,t){return null}vu(r){return VW(this.persistence,new ly,r.initialUser,this.serializer)}Du(r){return new lp(ay.Vi,this.serializer)}bu(r){return new fy}terminate(){return I(this,null,function*(){var r,t;(r=this.gcScheduler)===null||r===void 0||r.stop(),(t=this.indexBackfillerScheduler)===null||t===void 0||t.stop(),this.sharedClientState.shutdown(),yield this.persistence.shutdown()})}}return n.provider={build:()=>new n},n})(),NL=class extends RM{constructor(e){super(),this.cacheSizeBytes=e}Cu(e,r){he(this.persistence.referenceDelegate instanceof cy,46915);let t=this.persistence.referenceDelegate.garbageCollector;return new iy(t,e.asyncQueue,r)}Du(e){let r=this.cacheSizeBytes!==void 0?Nr.withCacheSize(this.cacheSizeBytes):Nr.DEFAULT;return new lp(t=>cy.Vi(t,r),this.serializer)}},vy=class n extends RM{constructor(e,r,t){super(),this.Mu=e,this.cacheSizeBytes=r,this.forceOwnership=t,this.kind="persistent",this.synchronizeTabs=!1}initialize(e){return I(this,null,function*(){yield pc(n.prototype,this,"initialize").call(this,e),yield this.Mu.initialize(this,e),yield DM(this.Mu.syncEngine),yield Vh(this.Mu.remoteStore),yield this.persistence.ji(()=>(this.gcScheduler&&!this.gcScheduler.started&&this.gcScheduler.start(),this.indexBackfillerScheduler&&!this.indexBackfillerScheduler.started&&this.indexBackfillerScheduler.start(),Promise.resolve()))})}vu(e){return VW(this.persistence,new ly,e.initialUser,this.serializer)}Cu(e,r){let t=this.persistence.referenceDelegate.garbageCollector;return new iy(t,e.asyncQueue,r)}Fu(e,r){let t=new Zw(r,this.persistence);return new Jw(e.asyncQueue,t)}Du(e){let r=UW(e.databaseInfo.databaseId,e.databaseInfo.persistenceKey),t=this.cacheSizeBytes!==void 0?Nr.withCacheSize(this.cacheSizeBytes):Nr.DEFAULT;return new tL(this.synchronizeTabs,r,e.clientId,t,e.asyncQueue,KW(),Lv(),this.serializer,this.sharedClientState,!!this.forceOwnership)}bu(e){return new fy}},OL=class n extends vy{constructor(e,r){super(e,r,!1),this.Mu=e,this.cacheSizeBytes=r,this.synchronizeTabs=!0}initialize(e){return I(this,null,function*(){yield pc(n.prototype,this,"initialize").call(this,e);let r=this.Mu.syncEngine;this.sharedClientState instanceof $m&&(this.sharedClientState.syncEngine={Do:$oe.bind(null,r),vo:Woe.bind(null,r),Co:zoe.bind(null,r),Ps:Hoe.bind(null,r),bo:Goe.bind(null,r)},yield this.sharedClientState.start()),yield this.persistence.ji(t=>I(this,null,function*(){yield joe(this.Mu.syncEngine,t),this.gcScheduler&&(t&&!this.gcScheduler.started?this.gcScheduler.start():t||this.gcScheduler.stop()),this.indexBackfillerScheduler&&(t&&!this.indexBackfillerScheduler.started?this.indexBackfillerScheduler.start():t||this.indexBackfillerScheduler.stop())}))})}bu(e){let r=KW();if(!$m.C(r))throw new Q(j.UNIMPLEMENTED,"IndexedDB persistence is only available on platforms that support LocalStorage.");let t=UW(e.databaseInfo.databaseId,e.databaseInfo.persistenceKey);return new $m(r,e.asyncQueue,t,e.clientId,e.initialUser)}},CM=(()=>{class n{initialize(r,t){return I(this,null,function*(){this.localStore||(this.localStore=r.localStore,this.sharedClientState=r.sharedClientState,this.datastore=this.createDatastore(t),this.remoteStore=this.createRemoteStore(t),this.eventManager=this.createEventManager(t),this.syncEngine=this.createSyncEngine(t,!r.synchronizeTabs),this.sharedClientState.onlineStateHandler=i=>dH(this.syncEngine,i,1),this.remoteStore.remoteSyncer.handleCredentialChange=Uoe.bind(null,this.syncEngine),yield _L(this.remoteStore,this.syncEngine.isPrimaryClient))})}createEventManager(r){return(function(){return new vL})()}createDatastore(r){let t=ky(r.databaseInfo.databaseId),i=(function(s){return new dL(s)})(r.databaseInfo);return(function(s,a,c,l){return new mL(s,a,c,l)})(r.authCredentials,r.appCheckCredentials,i,t)}createRemoteStore(r){return(function(i,o,s,a,c){return new EL(i,o,s,a,c)})(this.localStore,this.datastore,r.asyncQueue,t=>dH(this.syncEngine,t,0),(function(){return gy.C()?new gy:new aL})())}createSyncEngine(r,t){return(function(o,s,a,c,l,u,d){let f=new RL(o,s,a,c,l,u);return d&&(f.fu=!0),f})(this.localStore,this.remoteStore,this.eventManager,this.sharedClientState,r.initialUser,r.maxConcurrentLimboResolutions,t)}terminate(){return I(this,null,function*(){var r,t;yield(function(o){return I(this,null,function*(){let s=de(o);X(Jl,"RemoteStore shutting down."),s.Ia.add(5),yield Sp(s),s.Ea.shutdown(),s.Aa.set("Unknown")})})(this.remoteStore),(r=this.datastore)===null||r===void 0||r.terminate(),(t=this.eventManager)===null||t===void 0||t.terminate()})}}return n.provider={build:()=>new n},n})();var fp=class{constructor(e){this.observer=e,this.muted=!1}next(e){this.muted||this.observer.next&&this.xu(this.observer.next,e)}error(e){this.muted||(this.observer.error?this.xu(this.observer.error,e):Xt("Uncaught Error in snapshot listener:",e.toString()))}Ou(){this.muted=!0}xu(e,r){setTimeout(()=>{this.muted||e(r)},0)}};var wL=class{constructor(e){this.datastore=e,this.readVersions=new Map,this.mutations=[],this.committed=!1,this.lastTransactionError=null,this.writtenDocs=new Set}lookup(e){return I(this,null,function*(){if(this.ensureCommitNotCalled(),this.mutations.length>0)throw this.lastTransactionError=new Q(j.INVALID_ARGUMENT,"Firestore transactions require all reads to be executed before all writes."),this.lastTransactionError;let r=yield(function(i,o){return I(this,null,function*(){let s=de(i),a={documents:o.map(d=>op(s.serializer,d))},c=yield s.Jo("BatchGetDocuments",s.serializer.databaseId,We.emptyPath(),a,o.length),l=new Map;c.forEach(d=>{let f=Jie(s.serializer,d);l.set(f.key.toString(),f)});let u=[];return o.forEach(d=>{let f=l.get(d.toString());he(!!f,55234,{key:d}),u.push(f)}),u})})(this.datastore,e);return r.forEach(t=>this.recordVersion(t)),r})}set(e,r){this.write(r.toMutation(e,this.precondition(e))),this.writtenDocs.add(e.toString())}update(e,r){try{this.write(r.toMutation(e,this.preconditionForUpdate(e)))}catch(t){this.lastTransactionError=t}this.writtenDocs.add(e.toString())}delete(e){this.write(new Yl(e,this.precondition(e))),this.writtenDocs.add(e.toString())}commit(){return I(this,null,function*(){if(this.ensureCommitNotCalled(),this.lastTransactionError)throw this.lastTransactionError;let e=this.readVersions;this.mutations.forEach(r=>{e.delete(r.key.toString())}),e.forEach((r,t)=>{let i=ie.fromPath(t);this.mutations.push(new ep(i,this.precondition(i)))}),yield(function(t,i){return I(this,null,function*(){let o=de(t),s={writes:i.map(a=>sp(o.serializer,a))};yield o.Wo("Commit",o.serializer.databaseId,We.emptyPath(),s)})})(this.datastore,this.mutations),this.committed=!0})}recordVersion(e){let r;if(e.isFoundDocument())r=e.version;else{if(!e.isNoDocument())throw ae(50498,{Wu:e.constructor.name});r=me.min()}let t=this.readVersions.get(e.key.toString());if(t){if(!r.isEqual(t))throw new Q(j.ABORTED,"Document version changed between two reads.")}else this.readVersions.set(e.key.toString(),r)}precondition(e){let r=this.readVersions.get(e.toString());return!this.writtenDocs.has(e.toString())&&r?r.isEqual(me.min())?Gn.exists(!1):Gn.updateTime(r):Gn.none()}preconditionForUpdate(e){let r=this.readVersions.get(e.toString());if(!this.writtenDocs.has(e.toString())&&r){if(r.isEqual(me.min()))throw new Q(j.INVALID_ARGUMENT,"Can't update a document that doesn't exist.");return Gn.updateTime(r)}return Gn.exists(!0)}write(e){this.ensureCommitNotCalled(),this.mutations.push(e)}ensureCommitNotCalled(){}};var bL=class{constructor(e,r,t,i,o){this.asyncQueue=e,this.datastore=r,this.options=t,this.updateFunction=i,this.deferred=o,this.Gu=t.maxAttempts,this.F_=new dp(this.asyncQueue,"transaction_retry")}zu(){this.Gu-=1,this.ju()}ju(){this.F_.g_(()=>I(this,null,function*(){let e=new wL(this.datastore),r=this.Ju(e);r&&r.then(t=>{this.asyncQueue.enqueueAndForget(()=>e.commit().then(()=>{this.deferred.resolve(t)}).catch(i=>{this.Hu(i)}))}).catch(t=>{this.Hu(t)})}))}Ju(e){try{let r=this.updateFunction(e);return!_p(r)&&r.catch&&r.then?r:(this.deferred.reject(Error("Transaction callback must return a Promise")),null)}catch(r){return this.deferred.reject(r),null}}Hu(e){this.Gu>0&&this.Yu(e)?(this.Gu-=1,this.asyncQueue.enqueueAndForget(()=>(this.ju(),Promise.resolve()))):this.deferred.reject(e)}Yu(e){if(e.name==="FirebaseError"){let r=e.code;return r==="aborted"||r==="failed-precondition"||r==="already-exists"||!mW(r)}return!1}};var Ya="FirestoreClient",LL=class{constructor(e,r,t,i,o){this.authCredentials=e,this.appCheckCredentials=r,this.asyncQueue=t,this.databaseInfo=i,this.user=cn.UNAUTHENTICATED,this.clientId=jm.newId(),this.authCredentialListener=()=>Promise.resolve(),this.appCheckCredentialListener=()=>Promise.resolve(),this._uninitializedComponentsProvider=o,this.authCredentials.start(t,s=>I(this,null,function*(){X(Ya,"Received user=",s.uid),yield this.authCredentialListener(s),this.user=s})),this.appCheckCredentials.start(t,s=>(X(Ya,"Received new app check token=",s),this.appCheckCredentialListener(s,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(e){this.authCredentialListener=e}setAppCheckTokenChangeListener(e){this.appCheckCredentialListener=e}terminate(){this.asyncQueue.enterRestrictedMode();let e=new Or;return this.asyncQueue.enqueueAndForgetEvenWhileRestricted(()=>I(this,null,function*(){try{this._onlineComponents&&(yield this._onlineComponents.terminate()),this._offlineComponents&&(yield this._offlineComponents.terminate()),this.authCredentials.shutdown(),this.appCheckCredentials.shutdown(),e.resolve()}catch(r){let t=EM(r,"Failed to shutdown persistence");e.reject(t)}})),e.promise}};function Gw(n,e){return I(this,null,function*(){n.asyncQueue.verifyOperationInProgress(),X(Ya,"Initializing OfflineComponentProvider");let r=n.configuration;yield e.initialize(r);let t=r.initialUser;n.setCredentialChangeListener(i=>I(null,null,function*(){t.isEqual(i)||(yield BW(e.localStore,i),t=i)})),e.persistence.setDatabaseDeletedListener(()=>{ws("Terminating Firestore due to IndexedDb database deletion"),n.terminate().then(()=>{X("Terminating Firestore due to IndexedDb database deletion completed successfully")}).catch(i=>{ws("Terminating Firestore due to IndexedDb database deletion failed",i)})}),n._offlineComponents=e})}function fH(n,e){return I(this,null,function*(){n.asyncQueue.verifyOperationInProgress();let r=yield qoe(n);X(Ya,"Initializing OnlineComponentProvider"),yield e.initialize(r,n.configuration),n.setCredentialChangeListener(t=>cH(e.remoteStore,t)),n.setAppCheckTokenChangeListener((t,i)=>cH(e.remoteStore,i)),n._onlineComponents=e})}function qoe(n){return I(this,null,function*(){if(!n._offlineComponents)if(n._uninitializedComponentsProvider){X(Ya,"Using user provided OfflineComponentProvider");try{yield Gw(n,n._uninitializedComponentsProvider._offline)}catch(e){let r=e;if(!(function(i){return i.name==="FirebaseError"?i.code===j.FAILED_PRECONDITION||i.code===j.UNIMPLEMENTED:!(typeof DOMException<"u"&&i instanceof DOMException)||i.code===22||i.code===20||i.code===11})(r))throw r;ws("Error using user provided cache. Falling back to memory cache: "+r),yield Gw(n,new RM)}}else X(Ya,"Using default OfflineComponentProvider"),yield Gw(n,new NL(void 0));return n._offlineComponents})}function NM(n){return I(this,null,function*(){return n._onlineComponents||(n._uninitializedComponentsProvider?(X(Ya,"Using user provided OnlineComponentProvider"),yield fH(n,n._uninitializedComponentsProvider._online)):(X(Ya,"Using default OnlineComponentProvider"),yield fH(n,new CM))),n._onlineComponents})}function Koe(n){return NM(n).then(e=>e.syncEngine)}function i3(n){return NM(n).then(e=>e.datastore)}function yy(n){return I(this,null,function*(){let e=yield NM(n),r=e.eventManager;return r.onListen=Ooe.bind(null,e.syncEngine),r.onUnlisten=boe.bind(null,e.syncEngine),r.onFirstRemoteStoreListen=woe.bind(null,e.syncEngine),r.onLastRemoteStoreUnlisten=Loe.bind(null,e.syncEngine),r})}function Yoe(n,e,r={}){let t=new Or;return n.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){return(function(o,s,a,c,l){let u=new fp({next:f=>{u.Ou(),s.enqueueAndForget(()=>TM(o,d));let g=f.docs.has(a);!g&&f.fromCache?l.reject(new Q(j.UNAVAILABLE,"Failed to get document because the client is offline.")):g&&f.fromCache&&c&&c.source==="server"?l.reject(new Q(j.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.)')):l.resolve(f)},error:f=>l.reject(f)}),d=new hp(vp(a.path),u,{includeMetadataChanges:!0,ka:!0});return _M(o,d)})(yield yy(n),n.asyncQueue,e,r,t)})),t.promise}function Qoe(n,e,r={}){let t=new Or;return n.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){return(function(o,s,a,c,l){let u=new fp({next:f=>{u.Ou(),s.enqueueAndForget(()=>TM(o,d)),f.fromCache&&c.source==="server"?l.reject(new Q(j.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.)')):l.resolve(f)},error:f=>l.reject(f)}),d=new hp(a,u,{includeMetadataChanges:!0,ka:!0});return _M(o,d)})(yield yy(n),n.asyncQueue,e,r,t)})),t.promise}function Xoe(n,e,r){let t=new Or;return n.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){try{let i=yield i3(n);t.resolve((function(s,a,c){return I(this,null,function*(){var l;let u=de(s),{request:d,ft:f,parent:g}=toe(u.serializer,Pie(a),c);u.connection.Qo||delete d.parent;let p=(yield u.Jo("RunAggregationQuery",u.serializer.databaseId,g,d,1)).filter(T=>!!T.result);he(p.length===1,64727);let _=(l=p[0].result)===null||l===void 0?void 0:l.aggregateFields;return Object.keys(_).reduce((T,D)=>(T[f[D]]=_[D],T),{})})})(i,e,r))}catch(i){t.reject(i)}})),t.promise}function o3(n){let e={};return n.timeoutSeconds!==void 0&&(e.timeoutSeconds=n.timeoutSeconds),e}var gH=new Map;var s3="firestore.googleapis.com",mH=!0,Sy=class{constructor(e){var r,t;if(e.host===void 0){if(e.ssl!==void 0)throw new Q(j.INVALID_ARGUMENT,"Can't provide ssl option if host option is not set");this.host=s3,this.ssl=mH}else this.host=e.host,this.ssl=(r=e.ssl)!==null&&r!==void 0?r:mH;if(this.isUsingEmulator=e.emulatorOptions!==void 0,this.credentials=e.credentials,this.ignoreUndefinedProperties=!!e.ignoreUndefinedProperties,this.localCache=e.localCache,e.cacheSizeBytes===void 0)this.cacheSizeBytes=bW;else{if(e.cacheSizeBytes!==-1&&e.cacheSizeBytes<xW)throw new Q(j.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");this.cacheSizeBytes=e.cacheSizeBytes}tie("experimentalForceLongPolling",e.experimentalForceLongPolling,"experimentalAutoDetectLongPolling",e.experimentalAutoDetectLongPolling),this.experimentalForceLongPolling=!!e.experimentalForceLongPolling,this.experimentalForceLongPolling?this.experimentalAutoDetectLongPolling=!1:e.experimentalAutoDetectLongPolling===void 0?this.experimentalAutoDetectLongPolling=!0:this.experimentalAutoDetectLongPolling=!!e.experimentalAutoDetectLongPolling,this.experimentalLongPollingOptions=o3((t=e.experimentalLongPollingOptions)!==null&&t!==void 0?t:{}),(function(o){if(o.timeoutSeconds!==void 0){if(isNaN(o.timeoutSeconds))throw new Q(j.INVALID_ARGUMENT,`invalid long polling timeout: ${o.timeoutSeconds} (must not be NaN)`);if(o.timeoutSeconds<5)throw new Q(j.INVALID_ARGUMENT,`invalid long polling timeout: ${o.timeoutSeconds} (minimum allowed value is 5)`);if(o.timeoutSeconds>30)throw new Q(j.INVALID_ARGUMENT,`invalid long polling timeout: ${o.timeoutSeconds} (maximum allowed value is 30)`)}})(this.experimentalLongPollingOptions),this.useFetchStreams=!!e.useFetchStreams}isEqual(e){return this.host===e.host&&this.ssl===e.ssl&&this.credentials===e.credentials&&this.cacheSizeBytes===e.cacheSizeBytes&&this.experimentalForceLongPolling===e.experimentalForceLongPolling&&this.experimentalAutoDetectLongPolling===e.experimentalAutoDetectLongPolling&&(function(t,i){return t.timeoutSeconds===i.timeoutSeconds})(this.experimentalLongPollingOptions,e.experimentalLongPollingOptions)&&this.ignoreUndefinedProperties===e.ignoreUndefinedProperties&&this.useFetchStreams===e.useFetchStreams}},Zl=class{constructor(e,r,t,i){this._authCredentials=e,this._appCheckCredentials=r,this._databaseId=t,this._app=i,this.type="firestore-lite",this._persistenceKey="(lite)",this._settings=new Sy({}),this._settingsFrozen=!1,this._emulatorOptions={},this._terminateTask="notTerminated"}get app(){if(!this._app)throw new Q(j.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(e){if(this._settingsFrozen)throw new Q(j.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 Sy(e),this._emulatorOptions=e.emulatorOptions||{},e.credentials!==void 0&&(this._authCredentials=(function(t){if(!t)return new $w;switch(t.type){case"firstParty":return new zw(t.sessionIndex||"0",t.iamToken||null,t.authTokenFactory||null);case"provider":return t.client;default:throw new Q(j.INVALID_ARGUMENT,"makeAuthCredentialsProvider failed due to invalid credential type")}})(e.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}_restart(){return I(this,null,function*(){this._terminateTask==="notTerminated"?yield this._terminate():this._terminateTask="notTerminated"})}toJSON(){return{app:this._app,databaseId:this._databaseId,settings:this._settings}}_terminate(){return(function(r){let t=gH.get(r);t&&(X("ComponentProvider","Removing Datastore"),gH.delete(r),t.terminate())})(this),Promise.resolve()}};function a3(n,e,r,t={}){var i;n=wr(n,Zl);let o=Hr(e),s=n._getSettings(),a=Object.assign(Object.assign({},s),{emulatorOptions:n._getEmulatorOptions()}),c=`${e}:${r}`;o&&(ha(`https://${c}`),sl("Firestore",!0)),s.host!==s3&&s.host!==c&&ws("Host has been set in both settings() and connectFirestoreEmulator(), emulator host will be used.");let l=Object.assign(Object.assign({},s),{host:c,ssl:o,emulatorOptions:t});if(!Vi(l,a)&&(n._setSettings(l),t.mockUserToken)){let u,d;if(typeof t.mockUserToken=="string")u=t.mockUserToken,d=cn.MOCK_USER;else{u=KT(t.mockUserToken,(i=n._app)===null||i===void 0?void 0:i.options.projectId);let f=t.mockUserToken.sub||t.mockUserToken.user_id;if(!f)throw new Q(j.INVALID_ARGUMENT,"mockUserToken must contain 'sub' or 'user_id' field!");d=new cn(f)}n._authCredentials=new jw(new Mv(u,d))}}var Qi=class n{constructor(e,r,t){this.converter=r,this._query=t,this.type="query",this.firestore=e}withConverter(e){return new n(this.firestore,e,this._query)}},vn=class n{constructor(e,r,t){this.converter=r,this._key=t,this.type="document",this.firestore=e}get _path(){return this._key.path}get id(){return this._key.path.lastSegment()}get path(){return this._key.path.canonicalString()}get parent(){return new Ua(this.firestore,this.converter,this._key.path.popLast())}withConverter(e){return new n(this.firestore,e,this._key)}toJSON(){return{type:n._jsonSchemaVersion,referencePath:this._key.toString()}}static fromJSON(e,r,t){if(Ep(r,n._jsonSchema))return new n(e,t||null,new ie(We.fromString(r.referencePath)))}};vn._jsonSchemaVersion="firestore/documentReference/1.0",vn._jsonSchema={type:ln("string",vn._jsonSchemaVersion),referencePath:ln("string")};var Ua=class n extends Qi{constructor(e,r,t){super(e,r,vp(t)),this._path=t,this.type="collection"}get id(){return this._query.path.lastSegment()}get path(){return this._query.path.canonicalString()}get parent(){let e=this._path.popLast();return e.isEmpty()?null:new vn(this.firestore,null,new ie(e))}withConverter(e){return new n(this.firestore,e,this._path)}};function c3(n,e,...r){if(n=Ge(n),XL("collection","path",e),n instanceof Zl){let t=We.fromString(e,...r);return uj(t),new Ua(n,null,t)}{if(!(n instanceof vn||n instanceof Ua))throw new Q(j.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");let t=n._path.child(We.fromString(e,...r));return uj(t),new Ua(n.firestore,null,t)}}function l3(n,e){if(n=wr(n,Zl),XL("collectionGroup","collection id",e),e.indexOf("/")>=0)throw new Q(j.INVALID_ARGUMENT,`Invalid collection ID '${e}' passed to function collectionGroup(). Collection IDs must not contain '/'.`);return new Qi(n,null,(function(t){return new Wo(We.emptyPath(),t)})(e))}function u3(n,e,...r){if(n=Ge(n),arguments.length===1&&(e=jm.newId()),XL("doc","path",e),n instanceof Zl){let t=We.fromString(e,...r);return lj(t),new vn(n,null,new ie(t))}{if(!(n instanceof vn||n instanceof Ua))throw new Q(j.INVALID_ARGUMENT,"Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore");let t=n._path.child(We.fromString(e,...r));return lj(t),new vn(n.firestore,n instanceof Ua?n.converter:null,new ie(t))}}var pH="AsyncQueue",Ay=class{constructor(e=Promise.resolve()){this.Zu=[],this.Xu=!1,this.ec=[],this.tc=null,this.nc=!1,this.rc=!1,this.sc=[],this.F_=new dp(this,"async_queue_retry"),this.oc=()=>{let t=Lv();t&&X(pH,"Visibility state changed to "+t.visibilityState),this.F_.y_()},this._c=e;let r=Lv();r&&typeof r.addEventListener=="function"&&r.addEventListener("visibilitychange",this.oc)}get isShuttingDown(){return this.Xu}enqueueAndForget(e){this.enqueue(e)}enqueueAndForgetEvenWhileRestricted(e){this.ac(),this.uc(e)}enterRestrictedMode(e){if(!this.Xu){this.Xu=!0,this.rc=e||!1;let r=Lv();r&&typeof r.removeEventListener=="function"&&r.removeEventListener("visibilitychange",this.oc)}}enqueue(e){if(this.ac(),this.Xu)return new Promise(()=>{});let r=new Or;return this.uc(()=>this.Xu&&this.rc?Promise.resolve():(e().then(r.resolve,r.reject),r.promise)).then(()=>r.promise)}enqueueRetryable(e){this.enqueueAndForget(()=>(this.Zu.push(e),this.cc()))}cc(){return I(this,null,function*(){if(this.Zu.length!==0){try{yield this.Zu[0](),this.Zu.shift(),this.F_.reset()}catch(e){if(!Xa(e))throw e;X(pH,"Operation failed with retryable error: "+e)}this.Zu.length>0&&this.F_.g_(()=>this.cc())}})}uc(e){let r=this._c.then(()=>(this.nc=!0,e().catch(t=>{throw this.tc=t,this.nc=!1,Xt("INTERNAL UNHANDLED ERROR: ",EH(t)),t}).then(t=>(this.nc=!1,t))));return this._c=r,r}enqueueAfterDelay(e,r,t){this.ac(),this.sc.indexOf(e)>-1&&(r=0);let i=TL.createAndSchedule(this,e,r,t,o=>this.lc(o));return this.ec.push(i),i}ac(){this.tc&&ae(47125,{hc:EH(this.tc)})}verifyOperationInProgress(){}Pc(){return I(this,null,function*(){let e;do e=this._c,yield e;while(e!==this._c)})}Tc(e){for(let r of this.ec)if(r.timerId===e)return!0;return!1}Ic(e){return this.Pc().then(()=>{this.ec.sort((r,t)=>r.targetTimeMs-t.targetTimeMs);for(let r of this.ec)if(r.skipDelay(),e!=="all"&&r.timerId===e)break;return this.Pc()})}dc(e){this.sc.push(e)}lc(e){let r=this.ec.indexOf(e);this.ec.splice(r,1)}};function EH(n){let e=n.message||"";return n.stack&&(e=n.stack.includes(n.message)?n.stack:n.message+`
167
- `+n.stack),e}function _H(n){return(function(r,t){if(typeof r!="object"||r===null)return!1;let i=r;for(let o of t)if(o in i&&typeof i[o]=="function")return!0;return!1})(n,["next","error","complete"])}var Xi=class extends Zl{constructor(e,r,t,i){super(e,r,t,i),this.type="firestore",this._queue=new Ay,this._persistenceKey=i?.name||"[DEFAULT]"}_terminate(){return I(this,null,function*(){if(this._firestoreClient){let e=this._firestoreClient.terminate();this._queue=new Ay(e),this._firestoreClient=void 0,yield e}})}};function Gy(n,e,r){r||(r=Xm);let t=Po(n,"firestore");if(t.isInitialized(r)){let i=t.getImmediate({identifier:r}),o=t.getOptions(r);if(Vi(o,e))return i;throw new Q(j.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(e.cacheSizeBytes!==void 0&&e.localCache!==void 0)throw new Q(j.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(e.cacheSizeBytes!==void 0&&e.cacheSizeBytes!==-1&&e.cacheSizeBytes<xW)throw new Q(j.INVALID_ARGUMENT,"cacheSizeBytes must be at least 1048576");return e.host&&Hr(e.host)&&ha(e.host),t.initialize({options:e,instanceIdentifier:r})}function $h(n,e){let r=typeof n=="object"?n:Sr(),t=typeof n=="string"?n:e||Xm,i=Po(r,"firestore").getImmediate({identifier:t});if(!i._initialized){let o=Nd("firestore");o&&a3(i,...o)}return i}function jh(n){if(n._terminated)throw new Q(j.FAILED_PRECONDITION,"The client has already been terminated.");return n._firestoreClient||Joe(n),n._firestoreClient}function Joe(n){var e,r,t;let i=n._freezeSettings(),o=(function(a,c,l,u){return new rb(a,c,l,u.host,u.ssl,u.experimentalForceLongPolling,u.experimentalAutoDetectLongPolling,o3(u.experimentalLongPollingOptions),u.useFetchStreams,u.isUsingEmulator)})(n._databaseId,((e=n._app)===null||e===void 0?void 0:e.options.appId)||"",n._persistenceKey,i);n._componentsProvider||!((r=i.localCache)===null||r===void 0)&&r._offlineComponentProvider&&(!((t=i.localCache)===null||t===void 0)&&t._onlineComponentProvider)&&(n._componentsProvider={_offline:i.localCache._offlineComponentProvider,_online:i.localCache._onlineComponentProvider}),n._firestoreClient=new LL(n._authCredentials,n._appCheckCredentials,n._queue,o,n._componentsProvider&&(function(a){let c=a?._online.build();return{_offline:a?._offline.build(c),_online:c}})(n._componentsProvider))}var ML=class{constructor(e="count",r){this._internalFieldPath=r,this.type="AggregateField",this.aggregateType=e}},PL=class{constructor(e,r,t){this._userDataWriter=r,this._data=t,this.type="AggregateQuerySnapshot",this.query=e}data(){return this._userDataWriter.convertObjectMap(this._data)}};var Os=class n{constructor(e){this._byteString=e}static fromBase64String(e){try{return new n(un.fromBase64String(e))}catch(r){throw new Q(j.INVALID_ARGUMENT,"Failed to construct data from Base64 string: "+r)}}static fromUint8Array(e){return new n(un.fromUint8Array(e))}toBase64(){return this._byteString.toBase64()}toUint8Array(){return this._byteString.toUint8Array()}toString(){return"Bytes(base64: "+this.toBase64()+")"}isEqual(e){return this._byteString.isEqual(e._byteString)}toJSON(){return{type:n._jsonSchemaVersion,bytes:this.toBase64()}}static fromJSON(e){if(Ep(e,n._jsonSchema))return n.fromBase64String(e.bytes)}};Os._jsonSchemaVersion="firestore/bytes/1.0",Os._jsonSchema={type:ln("string",Os._jsonSchemaVersion),bytes:ln("string")};var xh=class{constructor(...e){for(let r=0;r<e.length;++r)if(e[r].length===0)throw new Q(j.INVALID_ARGUMENT,"Invalid field name at argument $(i + 1). Field names must not be empty.");this._internalPath=new Tn(e)}isEqual(e){return this._internalPath.isEqual(e._internalPath)}};var gp=class{constructor(e){this._methodName=e}};var Va=class n{constructor(e,r){if(!isFinite(e)||e<-90||e>90)throw new Q(j.INVALID_ARGUMENT,"Latitude must be a number between -90 and 90, but was: "+e);if(!isFinite(r)||r<-180||r>180)throw new Q(j.INVALID_ARGUMENT,"Longitude must be a number between -180 and 180, but was: "+r);this._lat=e,this._long=r}get latitude(){return this._lat}get longitude(){return this._long}isEqual(e){return this._lat===e._lat&&this._long===e._long}_compareTo(e){return Re(this._lat,e._lat)||Re(this._long,e._long)}toJSON(){return{latitude:this._lat,longitude:this._long,type:n._jsonSchemaVersion}}static fromJSON(e){if(Ep(e,n._jsonSchema))return new n(e.latitude,e.longitude)}};Va._jsonSchemaVersion="firestore/geoPoint/1.0",Va._jsonSchema={type:ln("string",Va._jsonSchemaVersion),latitude:ln("number"),longitude:ln("number")};var Ba=class n{constructor(e){this._values=(e||[]).map(r=>r)}toArray(){return this._values.map(e=>e)}isEqual(e){return(function(t,i){if(t.length!==i.length)return!1;for(let o=0;o<t.length;++o)if(t[o]!==i[o])return!1;return!0})(this._values,e._values)}toJSON(){return{type:n._jsonSchemaVersion,vectorValues:this._values}}static fromJSON(e){if(Ep(e,n._jsonSchema)){if(Array.isArray(e.vectorValues)&&e.vectorValues.every(r=>typeof r=="number"))return new n(e.vectorValues);throw new Q(j.INVALID_ARGUMENT,"Expected 'vectorValues' field to be a number array")}}};Ba._jsonSchemaVersion="firestore/vectorValue/1.0",Ba._jsonSchema={type:ln("string",Ba._jsonSchemaVersion),vectorValues:ln("object")};var Zoe=/^__.*__$/,xL=class{constructor(e,r,t){this.data=e,this.fieldMask=r,this.fieldTransforms=t}toMutation(e,r){return this.fieldMask!==null?new Yi(e,this.data,this.fieldMask,r,this.fieldTransforms):new qa(e,this.data,r,this.fieldTransforms)}},Dy=class{constructor(e,r,t){this.data=e,this.fieldMask=r,this.fieldTransforms=t}toMutation(e,r){return new Yi(e,this.data,this.fieldMask,r,this.fieldTransforms)}};function d3(n){switch(n){case 0:case 2:case 1:return!0;case 3:case 4:return!1;default:throw ae(40011,{Ec:n})}}var FL=class n{constructor(e,r,t,i,o,s){this.settings=e,this.databaseId=r,this.serializer=t,this.ignoreUndefinedProperties=i,o===void 0&&this.Ac(),this.fieldTransforms=o||[],this.fieldMask=s||[]}get path(){return this.settings.path}get Ec(){return this.settings.Ec}Rc(e){return new n(Object.assign(Object.assign({},this.settings),e),this.databaseId,this.serializer,this.ignoreUndefinedProperties,this.fieldTransforms,this.fieldMask)}Vc(e){var r;let t=(r=this.path)===null||r===void 0?void 0:r.child(e),i=this.Rc({path:t,mc:!1});return i.fc(e),i}gc(e){var r;let t=(r=this.path)===null||r===void 0?void 0:r.child(e),i=this.Rc({path:t,mc:!1});return i.Ac(),i}yc(e){return this.Rc({path:void 0,mc:!0})}wc(e){return Cy(e,this.settings.methodName,this.settings.Sc||!1,this.path,this.settings.bc)}contains(e){return this.fieldMask.find(r=>e.isPrefixOf(r))!==void 0||this.fieldTransforms.find(r=>e.isPrefixOf(r.field))!==void 0}Ac(){if(this.path)for(let e=0;e<this.path.length;e++)this.fc(this.path.get(e))}fc(e){if(e.length===0)throw this.wc("Document fields must not be empty");if(d3(this.Ec)&&Zoe.test(e))throw this.wc('Document fields cannot begin and end with "__"')}},kL=class{constructor(e,r,t){this.databaseId=e,this.ignoreUndefinedProperties=r,this.serializer=t||ky(e)}Dc(e,r,t,i=!1){return new FL({Ec:e,methodName:r,bc:t,path:Tn.emptyPath(),mc:!1,Sc:i},this.databaseId,this.serializer,this.ignoreUndefinedProperties)}};function $y(n){let e=n._freezeSettings(),r=ky(n._databaseId);return new kL(n._databaseId,!!e.ignoreUndefinedProperties,r)}function h3(n,e,r,t,i,o={}){let s=n.Dc(o.merge||o.mergeFields?2:0,e,r,i);OM("Data must be an object, but it was:",s,t);let a=g3(t,s),c,l;if(o.merge)c=new Yr(s.fieldMask),l=s.fieldTransforms;else if(o.mergeFields){let u=[];for(let d of o.mergeFields){let f=UL(e,d,r);if(!s.contains(f))throw new Q(j.INVALID_ARGUMENT,`Field '${f}' is specified in your field mask but missing from your input data.`);p3(u,f)||u.push(f)}c=new Yr(u),l=s.fieldTransforms.filter(d=>c.covers(d.field))}else c=null,l=s.fieldTransforms;return new xL(new nr(a),c,l)}var Ry=class n extends gp{_toFieldTransform(e){if(e.Ec!==2)throw e.Ec===1?e.wc(`${this._methodName}() can only appear at the top level of your update data`):e.wc(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);return e.fieldMask.push(e.path),null}isEqual(e){return e instanceof n}};function ese(n,e,r,t){let i=n.Dc(1,e,r);OM("Data must be an object, but it was:",i,t);let o=[],s=nr.empty();Ja(t,(c,l)=>{let u=wM(e,c,r);l=Ge(l);let d=i.gc(u);if(l instanceof Ry)o.push(u);else{let f=Ap(l,d);f!=null&&(o.push(u),s.set(u,f))}});let a=new Yr(o);return new Dy(s,a,i.fieldTransforms)}function tse(n,e,r,t,i,o){let s=n.Dc(1,e,r),a=[UL(e,t,r)],c=[i];if(o.length%2!=0)throw new Q(j.INVALID_ARGUMENT,`Function ${e}() needs to be called with an even number of arguments that alternate between field names and values.`);for(let f=0;f<o.length;f+=2)a.push(UL(e,o[f])),c.push(o[f+1]);let l=[],u=nr.empty();for(let f=a.length-1;f>=0;--f)if(!p3(l,a[f])){let g=a[f],p=c[f];p=Ge(p);let _=s.gc(g);if(p instanceof Ry)l.push(g);else{let T=Ap(p,_);T!=null&&(l.push(g),u.set(g,T))}}let d=new Yr(l);return new Dy(u,d,s.fieldTransforms)}function f3(n,e,r,t=!1){return Ap(r,n.Dc(t?4:3,e))}function Ap(n,e){if(m3(n=Ge(n)))return OM("Unsupported field value:",e,n),g3(n,e);if(n instanceof gp)return(function(t,i){if(!d3(i.Ec))throw i.wc(`${t._methodName}() can only be used with update() and set()`);if(!i.path)throw i.wc(`${t._methodName}() is not currently supported inside arrays`);let o=t._toFieldTransform(i);o&&i.fieldTransforms.push(o)})(n,e),null;if(n===void 0&&e.ignoreUndefinedProperties)return null;if(e.path&&e.fieldMask.push(e.path),n instanceof Array){if(e.settings.mc&&e.Ec!==4)throw e.wc("Nested arrays are not supported");return(function(t,i){let o=[],s=0;for(let a of t){let c=Ap(a,i.yc(s));c==null&&(c={nullValue:"NULL_VALUE"}),o.push(c),s++}return{arrayValue:{values:o}}})(n,e)}return(function(t,i){if((t=Ge(t))===null)return{nullValue:"NULL_VALUE"};if(typeof t=="number")return Bie(i.serializer,t);if(typeof t=="boolean")return{booleanValue:t};if(typeof t=="string")return{stringValue:t};if(t instanceof Date){let o=Pt.fromDate(t);return{timestampValue:Nh(i.serializer,o)}}if(t instanceof Pt){let o=new Pt(t.seconds,1e3*Math.floor(t.nanoseconds/1e3));return{timestampValue:Nh(i.serializer,o)}}if(t instanceof Va)return{geoPointValue:{latitude:t.latitude,longitude:t.longitude}};if(t instanceof Os)return{bytesValue:EW(i.serializer,t._byteString)};if(t instanceof vn){let o=i.databaseId,s=t.firestore._databaseId;if(!s.isEqual(o))throw i.wc(`Document reference is for database ${s.projectId}/${s.database} but should be for database ${o.projectId}/${o.database}`);return{referenceValue:uM(t.firestore._databaseId||i.databaseId,t._key.path)}}if(t instanceof Ba)return(function(s,a){return{mapValue:{fields:{[iM]:{stringValue:oM},[Sh]:{arrayValue:{values:s.toArray().map(l=>{if(typeof l!="number")throw a.wc("VectorValues must only contain numeric values.");return lM(a.serializer,l)})}}}}}})(t,i);throw i.wc(`Unsupported field value: ${Oy(t)}`)})(n,e)}function g3(n,e){let r={};return BH(n)?e.path&&e.path.length>0&&e.fieldMask.push(e.path):Ja(n,(t,i)=>{let o=Ap(i,e.Vc(t));o!=null&&(r[t]=o)}),{mapValue:{fields:r}}}function m3(n){return!(typeof n!="object"||n===null||n instanceof Array||n instanceof Date||n instanceof Pt||n instanceof Va||n instanceof Os||n instanceof vn||n instanceof gp||n instanceof Ba)}function OM(n,e,r){if(!m3(r)||!AH(r)){let t=Oy(r);throw t==="an object"?e.wc(n+" a custom object"):e.wc(n+" "+t)}}function UL(n,e,r){if((e=Ge(e))instanceof xh)return e._internalPath;if(typeof e=="string")return wM(n,e);throw Cy("Field path arguments must be of type string or ",n,!1,void 0,r)}var nse=new RegExp("[~\\*/\\[\\]]");function wM(n,e,r){if(e.search(nse)>=0)throw Cy(`Invalid field path (${e}). Paths must not contain '~', '*', '/', '[', or ']'`,n,!1,void 0,r);try{return new xh(...e.split("."))._internalPath}catch{throw Cy(`Invalid field path (${e}). Paths must not be empty, begin with '.', end with '.', or contain '..'`,n,!1,void 0,r)}}function Cy(n,e,r,t,i){let o=t&&!t.isEmpty(),s=i!==void 0,a=`Function ${e}() called with invalid data`;r&&(a+=" (via `toFirestore()`)"),a+=". ";let c="";return(o||s)&&(c+=" (found",o&&(c+=` in field ${t}`),s&&(c+=` in document ${i}`),c+=")"),new Q(j.INVALID_ARGUMENT,a+n+c)}function p3(n,e){return n.some(r=>r.isEqual(e))}var eu=class{constructor(e,r,t,i,o){this._firestore=e,this._userDataWriter=r,this._key=t,this._document=i,this._converter=o}get id(){return this._key.path.lastSegment()}get ref(){return new vn(this._firestore,this._converter,this._key)}exists(){return this._document!==null}data(){if(this._document){if(this._converter){let e=new VL(this._firestore,this._userDataWriter,this._key,this._document,null);return this._converter.fromFirestore(e)}return this._userDataWriter.convertValue(this._document.data.value)}}get(e){if(this._document){let r=this._document.data.field(jy("DocumentSnapshot.get",e));if(r!==null)return this._userDataWriter.convertValue(r)}}},VL=class extends eu{data(){return super.data()}};function jy(n,e){return typeof e=="string"?wM(n,e):e instanceof xh?e._internalPath:e._delegate._internalPath}function E3(n){if(n.limitType==="L"&&n.explicitOrderBy.length===0)throw new Q(j.UNIMPLEMENTED,"limitToLast() queries require specifying at least one orderBy() clause")}var mp=class{},Fh=class extends mp{};function _3(n,e,...r){let t=[];e instanceof mp&&t.push(e),t=t.concat(r),(function(o){let s=o.filter(c=>c instanceof kh).length,a=o.filter(c=>c instanceof pp).length;if(s>1||s>0&&a>0)throw new Q(j.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(...)))`.")})(t);for(let i of t)n=i._apply(n);return n}var pp=class n extends Fh{constructor(e,r,t){super(),this._field=e,this._op=r,this._value=t,this.type="where"}static _create(e,r,t){return new n(e,r,t)}_apply(e){let r=this._parse(e);return D3(e._query,r),new Qi(e.firestore,e.converter,pb(e._query,r))}_parse(e){let r=$y(e.firestore);return(function(o,s,a,c,l,u,d){let f;if(l.isKeyField()){if(u==="array-contains"||u==="array-contains-any")throw new Q(j.INVALID_ARGUMENT,`Invalid Query. You can't perform '${u}' queries on documentId().`);if(u==="in"||u==="not-in"){IH(d,u);let p=[];for(let _ of d)p.push(TH(c,o,_));f={arrayValue:{values:p}}}else f=TH(c,o,d)}else u!=="in"&&u!=="not-in"&&u!=="array-contains-any"||IH(d,u),f=f3(a,s,d,u==="in"||u==="not-in");return $e.create(l,u,f)})(e._query,"where",r,e.firestore._databaseId,this._field,this._op,this._value)}};function T3(n,e,r){let t=e,i=jy("where",n);return pp._create(i,t,r)}var kh=class n extends mp{constructor(e,r){super(),this.type=e,this._queryConstraints=r}static _create(e,r){return new n(e,r)}_parse(e){let r=this._queryConstraints.map(t=>t._parse(e)).filter(t=>t.getFilters().length>0);return r.length===1?r[0]:nt.create(r,this._getOperator())}_apply(e){let r=this._parse(e);return r.getFilters().length===0?e:((function(i,o){let s=i,a=o.getFlattenedFilters();for(let c of a)D3(s,c),s=pb(s,c)})(e._query,r),new Qi(e.firestore,e.converter,pb(e._query,r)))}_getQueryConstraints(){return this._queryConstraints}_getOperator(){return this.type==="and"?"and":"or"}};function I3(...n){return n.forEach(e=>R3("or",e)),kh._create("or",n)}function v3(...n){return n.forEach(e=>R3("and",e)),kh._create("and",n)}var BL=class n extends Fh{constructor(e,r){super(),this._field=e,this._direction=r,this.type="orderBy"}static _create(e,r){return new n(e,r)}_apply(e){let r=(function(i,o,s){if(i.startAt!==null)throw new Q(j.INVALID_ARGUMENT,"Invalid query. You must not call startAt() or startAfter() before calling orderBy().");if(i.endAt!==null)throw new Q(j.INVALID_ARGUMENT,"Invalid query. You must not call endAt() or endBefore() before calling orderBy().");return new Wl(o,s)})(e._query,this._field,this._direction);return new Qi(e.firestore,e.converter,(function(i,o){let s=i.explicitOrderBy.concat([o]);return new Wo(i.path,i.collectionGroup,s,i.filters.slice(),i.limit,i.limitType,i.startAt,i.endAt)})(e._query,r))}};function y3(n,e="asc"){let r=e,t=jy("orderBy",n);return BL._create(t,r)}var GL=class n extends Fh{constructor(e,r,t){super(),this.type=e,this._limit=r,this._limitType=t}static _create(e,r,t){return new n(e,r,t)}_apply(e){return new Qi(e.firestore,e.converter,qv(e._query,this._limit,this._limitType))}};function S3(n){return nie("limit",n),GL._create("limit",n,"F")}var $L=class n extends Fh{constructor(e,r,t){super(),this.type=e,this._docOrFields=r,this._inclusive=t}static _create(e,r,t){return new n(e,r,t)}_apply(e){let r=rse(e,this.type,this._docOrFields,this._inclusive);return new Qi(e.firestore,e.converter,(function(i,o){return new Wo(i.path,i.collectionGroup,i.explicitOrderBy.slice(),i.filters.slice(),i.limit,i.limitType,o,i.endAt)})(e._query,r))}};function A3(...n){return $L._create("startAfter",n,!1)}function rse(n,e,r,t){if(r[0]=Ge(r[0]),r[0]instanceof eu)return(function(o,s,a,c,l){if(!c)throw new Q(j.NOT_FOUND,`Can't use a DocumentSnapshot that doesn't exist for ${a}().`);let u=[];for(let d of dh(o))if(d.field.isKeyField())u.push(Hl(s,c.key));else{let f=c.data.field(d.field);if(My(f))throw new Q(j.INVALID_ARGUMENT,'Invalid query. You are trying to start or end a query using a document for which the field "'+d.field+'" is an uncommitted server timestamp. (Since the value of this field is unknown, you cannot start/end a query with it.)');if(f===null){let g=d.field.canonicalString();throw new Q(j.INVALID_ARGUMENT,`Invalid query. You are trying to start or end a query using a document for which the field '${g}' (used as the orderBy) does not exist.`)}u.push(f)}return new Ho(u,l)})(n._query,n.firestore._databaseId,e,r[0]._document,t);{let i=$y(n.firestore);return(function(s,a,c,l,u,d){let f=s.explicitOrderBy;if(u.length>f.length)throw new Q(j.INVALID_ARGUMENT,`Too many arguments provided to ${l}(). The number of arguments must be less than or equal to the number of orderBy() clauses`);let g=[];for(let p=0;p<u.length;p++){let _=u[p];if(f[p].field.isKeyField()){if(typeof _!="string")throw new Q(j.INVALID_ARGUMENT,`Invalid query. Expected a string for document ID in ${l}(), but got a ${typeof _}`);if(!aM(s)&&_.indexOf("/")!==-1)throw new Q(j.INVALID_ARGUMENT,`Invalid query. When querying a collection and ordering by documentId(), the value passed to ${l}() must be a plain document ID, but '${_}' contains a slash.`);let T=s.path.child(We.fromString(_));if(!ie.isDocumentKey(T))throw new Q(j.INVALID_ARGUMENT,`Invalid query. When querying a collection group and ordering by documentId(), the value passed to ${l}() must result in a valid document path, but '${T}' is not because it contains an odd number of segments.`);let D=new ie(T);g.push(Hl(a,D))}else{let T=f3(c,l,_);g.push(T)}}return new Ho(g,d)})(n._query,n.firestore._databaseId,i,e,r,t)}}function TH(n,e,r){if(typeof(r=Ge(r))=="string"){if(r==="")throw new Q(j.INVALID_ARGUMENT,"Invalid query. When querying with documentId(), you must provide a valid document ID, but it was an empty string.");if(!aM(e)&&r.indexOf("/")!==-1)throw new Q(j.INVALID_ARGUMENT,`Invalid query. When querying a collection by documentId(), you must provide a plain document ID, but '${r}' contains a '/' character.`);let t=e.path.child(We.fromString(r));if(!ie.isDocumentKey(t))throw new Q(j.INVALID_ARGUMENT,`Invalid query. When querying a collection group by documentId(), the value provided must result in a valid document path, but '${t}' is not because it has an odd number of segments (${t.length}).`);return Hl(n,new ie(t))}if(r instanceof vn)return Hl(n,r._key);throw new Q(j.INVALID_ARGUMENT,`Invalid query. When querying with documentId(), you must provide a valid string or a DocumentReference, but it was: ${Oy(r)}.`)}function IH(n,e){if(!Array.isArray(n)||n.length===0)throw new Q(j.INVALID_ARGUMENT,`Invalid Query. A non-empty array is required for '${e.toString()}' filters.`)}function D3(n,e){let r=(function(i,o){for(let s of i)for(let a of s.getFlattenedFilters())if(o.indexOf(a.op)>=0)return a.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[]}})(e.op));if(r!==null)throw r===e.op?new Q(j.INVALID_ARGUMENT,`Invalid query. You cannot use more than one '${e.op.toString()}' filter.`):new Q(j.INVALID_ARGUMENT,`Invalid query. You cannot use '${e.op.toString()}' filters with '${r.toString()}' filters.`)}function R3(n,e){if(!(e instanceof pp||e instanceof kh))throw new Q(j.INVALID_ARGUMENT,`Function ${n}() requires AppliableConstraints created with a call to 'where(...)', 'or(...)', or 'and(...)'.`)}var Ny=class{convertValue(e,r="none"){switch(ja(e)){case 0:return null;case 1:return e.booleanValue;case 2:return Mt(e.integerValue||e.doubleValue);case 3:return this.convertTimestamp(e.timestampValue);case 4:return this.convertServerTimestamp(e,r);case 5:return e.stringValue;case 6:return this.convertBytes(Ls(e.bytesValue));case 7:return this.convertReference(e.referenceValue);case 8:return this.convertGeoPoint(e.geoPointValue);case 9:return this.convertArray(e.arrayValue,r);case 11:return this.convertObject(e.mapValue,r);case 10:return this.convertVectorValue(e.mapValue);default:throw ae(62114,{value:e})}}convertObject(e,r){return this.convertObjectMap(e.fields,r)}convertObjectMap(e,r="none"){let t={};return Ja(e,(i,o)=>{t[i]=this.convertValue(o,r)}),t}convertVectorValue(e){var r,t,i;let o=(i=(t=(r=e.fields)===null||r===void 0?void 0:r[Sh].arrayValue)===null||t===void 0?void 0:t.values)===null||i===void 0?void 0:i.map(s=>Mt(s.doubleValue));return new Ba(o)}convertGeoPoint(e){return new Va(Mt(e.latitude),Mt(e.longitude))}convertArray(e,r){return(e.values||[]).map(t=>this.convertValue(t,r))}convertServerTimestamp(e,r){switch(r){case"previous":let t=Py(e);return t==null?null:this.convertValue(t,r);case"estimate":return this.convertTimestamp(Qm(e));default:return null}}convertTimestamp(e){let r=bs(e);return new Pt(r.seconds,r.nanos)}convertDocumentKey(e,r){let t=We.fromString(e);he(RW(t),9688,{name:e});let i=new yh(t.get(1),t.get(3)),o=new ie(t.popFirst(5));return i.isEqual(r)||Xt(`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 (${r.projectId}/${r.database}) instead.`),o}};function C3(n,e,r){let t;return t=n?r&&(r.merge||r.mergeFields)?n.toFirestore(e,r):n.toFirestore(e):e,t}var jL=class extends Ny{constructor(e){super(),this.firestore=e}convertBytes(e){return new Os(e)}convertReference(e){let r=this.convertDocumentKey(e,this.firestore._databaseId);return new vn(this.firestore,null,r)}};function ise(){return new ML("count")}var ka=class{constructor(e,r){this.hasPendingWrites=e,this.fromCache=r}isEqual(e){return this.hasPendingWrites===e.hasPendingWrites&&this.fromCache===e.fromCache}},Ga=class n extends eu{constructor(e,r,t,i,o,s){super(e,r,t,i,s),this._firestore=e,this._firestoreImpl=e,this.metadata=o}exists(){return super.exists()}data(e={}){if(this._document){if(this._converter){let r=new fh(this._firestore,this._userDataWriter,this._key,this._document,this.metadata,null);return this._converter.fromFirestore(r,e)}return this._userDataWriter.convertValue(this._document.data.value,e.serverTimestamps)}}get(e,r={}){if(this._document){let t=this._document.data.field(jy("DocumentSnapshot.get",e));if(t!==null)return this._userDataWriter.convertValue(t,r.serverTimestamps)}}toJSON(){if(this.metadata.hasPendingWrites)throw new Q(j.FAILED_PRECONDITION,"DocumentSnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().");let e=this._document,r={};return r.type=n._jsonSchemaVersion,r.bundle="",r.bundleSource="DocumentSnapshot",r.bundleName=this._key.toString(),!e||!e.isValidDocument()||!e.isFoundDocument()?r:(this._userDataWriter.convertObjectMap(e.data.value.mapValue.fields,"previous"),r.bundle=(this._firestore,this.ref.path,"NOT SUPPORTED"),r)}};Ga._jsonSchemaVersion="firestore/documentSnapshot/1.0",Ga._jsonSchema={type:ln("string",Ga._jsonSchemaVersion),bundleSource:ln("string","DocumentSnapshot"),bundleName:ln("string"),bundle:ln("string")};var fh=class extends Ga{data(e={}){return super.data(e)}},jl=class n{constructor(e,r,t,i){this._firestore=e,this._userDataWriter=r,this._snapshot=i,this.metadata=new ka(i.hasPendingWrites,i.fromCache),this.query=t}get docs(){let e=[];return this.forEach(r=>e.push(r)),e}get size(){return this._snapshot.docs.size}get empty(){return this.size===0}forEach(e,r){this._snapshot.docs.forEach(t=>{e.call(r,new fh(this._firestore,this._userDataWriter,t.key,t,new ka(this._snapshot.mutatedKeys.has(t.key),this._snapshot.fromCache),this.query.converter))})}docChanges(e={}){let r=!!e.includeMetadataChanges;if(r&&this._snapshot.excludesMetadataChanges)throw new Q(j.INVALID_ARGUMENT,"To include metadata changes with your document changes, you must also pass { includeMetadataChanges:true } to onSnapshot().");return this._cachedChanges&&this._cachedChangesIncludeMetadataChanges===r||(this._cachedChanges=(function(i,o){if(i._snapshot.oldDocs.isEmpty()){let s=0;return i._snapshot.docChanges.map(a=>{let c=new fh(i._firestore,i._userDataWriter,a.doc.key,a.doc,new ka(i._snapshot.mutatedKeys.has(a.doc.key),i._snapshot.fromCache),i.query.converter);return a.doc,{type:"added",doc:c,oldIndex:-1,newIndex:s++}})}{let s=i._snapshot.oldDocs;return i._snapshot.docChanges.filter(a=>o||a.type!==3).map(a=>{let c=new fh(i._firestore,i._userDataWriter,a.doc.key,a.doc,new ka(i._snapshot.mutatedKeys.has(a.doc.key),i._snapshot.fromCache),i.query.converter),l=-1,u=-1;return a.type!==0&&(l=s.indexOf(a.doc.key),s=s.delete(a.doc.key)),a.type!==1&&(s=s.add(a.doc),u=s.indexOf(a.doc.key)),{type:ose(a.type),doc:c,oldIndex:l,newIndex:u}})}})(this,r),this._cachedChangesIncludeMetadataChanges=r),this._cachedChanges}toJSON(){if(this.metadata.hasPendingWrites)throw new Q(j.FAILED_PRECONDITION,"QuerySnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().");let e={};e.type=n._jsonSchemaVersion,e.bundleSource="QuerySnapshot",e.bundleName=jm.newId(),this._firestore._databaseId.database,this._firestore._databaseId.projectId;let r=[],t=[],i=[];return this.docs.forEach(o=>{o._document!==null&&(r.push(o._document),t.push(this._userDataWriter.convertObjectMap(o._document.data.value.mapValue.fields,"previous")),i.push(o.ref.path))}),e.bundle=(this._firestore,this.query._query,e.bundleName,"NOT SUPPORTED"),e}};function ose(n){switch(n){case 0:return"added";case 2:case 3:return"modified";case 1:return"removed";default:return ae(61501,{type:n})}}function N3(n){n=wr(n,vn);let e=wr(n.firestore,Xi);return Yoe(jh(e),n._key).then(r=>P3(e,n,r))}jl._jsonSchemaVersion="firestore/querySnapshot/1.0",jl._jsonSchema={type:ln("string",jl._jsonSchemaVersion),bundleSource:ln("string","QuerySnapshot"),bundleName:ln("string"),bundle:ln("string")};var tu=class extends Ny{constructor(e){super(),this.firestore=e}convertBytes(e){return new Os(e)}convertReference(e){let r=this.convertDocumentKey(e,this.firestore._databaseId);return new vn(this.firestore,null,r)}};function O3(n){n=wr(n,Qi);let e=wr(n.firestore,Xi),r=jh(e),t=new tu(e);return E3(n._query),Qoe(r,n._query).then(i=>new jl(e,t,n,i))}function w3(n,e,r){n=wr(n,vn);let t=wr(n.firestore,Xi),i=C3(n.converter,e,r);return M3(t,[h3($y(t),"setDoc",n._key,i,n.converter!==null,r).toMutation(n._key,Gn.none())])}function b3(n){return M3(wr(n.firestore,Xi),[new Yl(n._key,Gn.none())])}function L3(n,...e){var r,t,i;n=Ge(n);let o={includeMetadataChanges:!1,source:"default"},s=0;typeof e[s]!="object"||_H(e[s])||(o=e[s++]);let a={includeMetadataChanges:o.includeMetadataChanges,source:o.source};if(_H(e[s])){let d=e[s];e[s]=(r=d.next)===null||r===void 0?void 0:r.bind(d),e[s+1]=(t=d.error)===null||t===void 0?void 0:t.bind(d),e[s+2]=(i=d.complete)===null||i===void 0?void 0:i.bind(d)}let c,l,u;if(n instanceof vn)l=wr(n.firestore,Xi),u=vp(n._key.path),c={next:d=>{e[s]&&e[s](P3(l,n,d))},error:e[s+1],complete:e[s+2]};else{let d=wr(n,Qi);l=wr(d.firestore,Xi),u=d._query;let f=new tu(l);c={next:g=>{e[s]&&e[s](new jl(l,f,d,g))},error:e[s+1],complete:e[s+2]},E3(n._query)}return(function(f,g,p,_){let T=new fp(_),D=new hp(g,T,p);return f.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){return _M(yield yy(f),D)})),()=>{T.Ou(),f.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){return TM(yield yy(f),D)}))}})(jh(l),u,a,c)}function M3(n,e){return(function(t,i){let o=new Or;return t.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){return Moe(yield Koe(t),i,o)})),o.promise})(jh(n),e)}function P3(n,e,r){let t=r.docs.get(e._key),i=new tu(n);return new Ga(n,i,e._key,t,new ka(r.hasPendingWrites,r.fromCache),e.converter)}function x3(n){return F3(n,{count:ise()})}function F3(n,e){let r=wr(n.firestore,Xi),t=jh(r),i=Oie(e,(o,s)=>new Ib(s,o.aggregateType,o._internalFieldPath));return Xoe(t,n._query,i).then(o=>(function(a,c,l){let u=new tu(a);return new PL(c,u,l)})(r,n,o))}var HL=class{constructor(e){let r;this.kind="persistent",e?.tabManager?(e.tabManager._initialize(e),r=e.tabManager):(r=sse(void 0),r._initialize(e)),this._onlineComponentProvider=r._onlineComponentProvider,this._offlineComponentProvider=r._offlineComponentProvider}toJSON(){return{kind:this.kind}}};function bM(n){return new HL(n)}var WL=class{constructor(e){this.forceOwnership=e,this.kind="persistentSingleTab"}toJSON(){return{kind:this.kind}}_initialize(e){this._onlineComponentProvider=CM.provider,this._offlineComponentProvider={build:r=>new vy(r,e?.cacheSizeBytes,this.forceOwnership)}}},zL=class{constructor(){this.kind="PersistentMultipleTab"}toJSON(){return{kind:this.kind}}_initialize(e){this._onlineComponentProvider=CM.provider,this._offlineComponentProvider={build:r=>new OL(r,e?.cacheSizeBytes)}}};function sse(n){return new WL(n?.forceOwnership)}function LM(){return new zL}var ase={maxAttempts:5};function Pm(n,e){if((n=Ge(n)).firestore!==e)throw new Q(j.INVALID_ARGUMENT,"Provided document reference is from a different Firestore instance.");return n}var qL=class{constructor(e,r){this._firestore=e,this._transaction=r,this._dataReader=$y(e)}get(e){let r=Pm(e,this._firestore),t=new jL(this._firestore);return this._transaction.lookup([r._key]).then(i=>{if(!i||i.length!==1)return ae(24041);let o=i[0];if(o.isFoundDocument())return new eu(this._firestore,t,o.key,o,r.converter);if(o.isNoDocument())return new eu(this._firestore,t,r._key,null,r.converter);throw ae(18433,{doc:o})})}set(e,r,t){let i=Pm(e,this._firestore),o=C3(i.converter,r,t),s=h3(this._dataReader,"Transaction.set",i._key,o,i.converter!==null,t);return this._transaction.set(i._key,s),this}update(e,r,t,...i){let o=Pm(e,this._firestore),s;return s=typeof(r=Ge(r))=="string"||r instanceof xh?tse(this._dataReader,"Transaction.update",o._key,r,t,i):ese(this._dataReader,"Transaction.update",o._key,r),this._transaction.update(o._key,s),this}delete(e){let r=Pm(e,this._firestore);return this._transaction.delete(r._key),this}};var KL=class extends qL{constructor(e,r){super(e,r),this._firestore=e}get(e){let r=Pm(e,this._firestore),t=new tu(this._firestore);return super.get(e).then(i=>new Ga(this._firestore,t,r._key,i._document,new ka(!1,!1),r.converter))}};function k3(n,e,r){n=wr(n,Xi);let t=Object.assign(Object.assign({},ase),r);return(function(o){if(o.maxAttempts<1)throw new Q(j.INVALID_ARGUMENT,"Max attempts must be at least 1")})(t),(function(o,s,a){let c=new Or;return o.asyncQueue.enqueueAndForget(()=>I(null,null,function*(){let l=yield i3(o);new bL(o.asyncQueue,l,a,s,c).zu()})),c.promise})(jh(n),i=>e(new KL(n,i)),t)}(function(e,r=!0){(function(i){Uh=i})(pa),ur(new _n("firestore",(t,{instanceIdentifier:i,options:o})=>{let s=t.getProvider("app").getImmediate(),a=new Xi(new Hw(t.getProvider("auth-internal")),new qw(s,t.getProvider("app-check-internal")),(function(l,u){if(!Object.prototype.hasOwnProperty.apply(l.options,["projectId"]))throw new Q(j.INVALID_ARGUMENT,'"projectId" not provided in firebase.initializeApp.');return new yh(l.options.projectId,u)})(s,i),s);return o=Object.assign({useFetchStreams:r},o),a._setSettings(o),a},"PUBLIC").setMultipleInstances(!0)),Qe(oj,sj,e),Qe(oj,sj,"esm2017")})();var MM=pe(v3,!0,2);var Dp=pe(c3,!0,2),PM=pe(l3,!0,2);var Hy=pe(b3,!0,2);var Hh=pe(u3,!0,2);var U3=pe(x3,!0),V3=pe(N3,!0);var B3=pe(O3,!0);var Lxe=pe(S3,!0,2);var xM=pe(L3,!0);var Mxe=pe(I3,!0,2),Pxe=pe(y3,!0,2),FM=pe(_3,!0,2);var kM=pe(k3,!0),UM=pe(w3,!0,2);var xxe=pe(A3,!0,2);var Ji=pe(T3,!0,2);var Wy=(()=>{let e=class e{constructor(t,i,o){this.authService=t,this.configService=i,this.loggingService=o,this.db$=new Y(null);try{this.authService.getFirebaseConfig$().subscribe(s=>{if(s){let a=this.configService.getProxyConfig(),c=s.firebaseOptions.databaseURL;a?.v1DbHost&&c&&(c=OV(c,a.v1DbHost),a?.forceLongPolling&&hw());let l=dv(void 0,c);a?.v1DbHost&&c&&this.lockDatabaseHost(l),this.db$.next(l)}},s=>{this.loggingService.catch("Error in DatabaseService constructor: ",s)})}catch(s){this.loggingService.catch("Error in DatabaseService constructor:",s)}}getDb(){return this.db$.asObservable()}getDbValue(){return this.db$.getValue()}lockDatabaseHost(t){try{let o=t?._repo?.repoInfo_;if(o){let s=o.host;Object.defineProperty(o,"host",{get:()=>s,set:()=>{},configurable:!0}),o.internalHost=s}}catch(i){this.loggingService.catch("Error in DatabaseService lockDatabaseHost: ",i)}}};e.\u0275fac=function(i){return new(i||e)(w(Cr),w(Rr),w(_e))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var zo=(()=>{let e=class e{constructor(t,i,o){this.coreActionsService=t,this.loggingService=i,this.analyticsService=o,this.resolveTimeout=60*1e3,this.retrySaveConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryDeleteConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryGetConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.commentAnnotationDataProvider$=new Y(null),this.commentAnnotationById$=new Y({}),this.fieldsToRemove=[],this.additionalFields=[],this.additionalSaveEvents=[],this.getCommentAnnotationById=s=>{try{return this.commentAnnotationDataProviderAvailable()?this.commentAnnotationById$.value?.[s]:void 0}catch(a){this.loggingService.catch("Error in CommentAnnotationsResolverService getCommentAnnotationById:",a);return}};try{this.loggingService.log("CommentAnnotationsResolverService initialized"),this.commentAnnotationDataProvider$.subscribe(s=>{s&&(s.config?.resolveTimeout&&(this.resolveTimeout=s.config.resolveTimeout),s.config?.saveRetryConfig&&(this.retrySaveConfig=s.config.saveRetryConfig),s.config?.deleteRetryConfig&&(this.retryDeleteConfig=s.config.deleteRetryConfig),s.config?.getRetryConfig&&(this.retryGetConfig=s.config.getRetryConfig),s.config?.fieldsToRemove&&(this.fieldsToRemove=s.config.fieldsToRemove),s.config?.additionalFields&&(this.additionalFields=s.config.additionalFields||[]),this.additionalSaveEvents=(s.config?.additionalSaveEvents||[]).map(a=>a?.event).filter(a=>!!a))})}catch(s){this.loggingService.catch("Error in CommentAnnotationsResolverService constructor:",s)}}getProvider(){try{let t=this.commentAnnotationDataProvider$.getValue();return t||void 0}catch(t){this.loggingService.catch("Error in CommentAnnotationsResolverService getProvider:",t);return}}ngOnDestroy(){try{this.commentAnnotationById$.next({})}catch(t){this.loggingService.catch("Error in CommentAnnotationsResolverService ngOnDestroy:",t)}}resolveCommentAnnotations(s){return I(this,arguments,function*({request:t,uniqueId:i,moduleName:o}){try{if(this.loggingService.log("%c[WB] Calling CommentAnnotationsResolverService FUNCTION: resolveCommentAnnotations","color: green;"),!this.commentAnnotationDataProviderAvailable())return{};let a,c=!1,l=!1,u=()=>{a&&(clearTimeout(a),a=void 0,l=!0)};return new Promise((d,f)=>{a=setTimeout(()=>{if(!l){c=!0,u();let b=i||J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:new Error("Comment annotation resolution timeout"),request:t}}),f(new Error("Comment annotation resolution timeout"))}},this.commentAnnotationDataProvider$.value?.config?.resolveTimeout||this.resolveTimeout);let g=this.getProvider();if(!g)return u(),d({});let p={},_=[...new Set(t.commentAnnotationIds||[])],T=le(x({},t),{commentAnnotationIds:_});I(this,null,function*(){try{if(_.length>0||t.documentIds?.length||t.folderId){let b=i||J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:b,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{request:T}});let G=kt(()=>g?.config?.getConfig?.url?Ht(g.config.getConfig.url,g.config.getConfig.headers,T,!0,g.config.getConfig.credentials):g?.get?.(T)||Promise.resolve(void 0),"getCommentAnnotations",this.retryGetConfig).then(M=>c?{}:(u(),M&&M.statusCode!==200?(this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{result:M,request:T}}),this.loggingService.catch(M?.message??"Error in CommentAnnotationsResolverService resolveCommentAnnotations:"),{}):M?.data)).catch(M=>{throw u(),M});try{p=(yield G)||{},this.analyticsService.trackEvent(L.Events.Resolver.COMMENT_RESOLVER_GET,{sourceMethod:"resolveCommentAnnotations",source:"sdk",commentAnnotationIds:_});let M={};Object.entries(p).forEach(([U,k])=>{let S=this.commentAnnotationById$.value?.[U];S?S&&JSON.stringify(S)!==JSON.stringify(k)&&(M[U]=k):M[U]=k}),Object.keys(M).length>0&&this.commentAnnotationById$.next(x(x({},this.commentAnnotationById$.getValue()),M)),this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:b,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{result:M,request:T}}),d(M)}catch(M){let U=i||J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:U,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:M,request:T}}),c||f(M),d(p)}}else u(),d({})}catch(b){u();let G=i||J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:G,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:b,request:T}}),f(b)}})})}catch(a){this.loggingService.catch("Error in CommentAnnotationsResolverService resolveCommentAnnotations:",a);let c=i||J();return this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:c,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:a,request:t}}),{}}})}saveCommentAnnotation(t,i){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling CommentAnnotationsResolverService FUNCTION: saveCommentAnnotation","color: green;");let o=this.getProvider();if(!this.commentAnnotationDataProviderAvailable())throw new Error("Comment annotation save data provider not available");let s=i||J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_SAVE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:s,methodName:Et.SAVE_COMMENT_ANNOTATION,source:"internal",payload:{request:t}});let a=JSON.parse(JSON.stringify(this.commentAnnotationById$.getValue()));this.commentAnnotationById$._value=x(x({},a),t.commentAnnotation);let c=this.getTargetComment(t.commentAnnotation,t.commentId),l=yield kt(()=>{if(o?.config?.saveConfig?.url){let u={commentAnnotation:t.commentAnnotation,event:t.eventType,commentId:t.commentId,targetComment:c,metadata:Object.values(t.commentAnnotation??{})?.[0]?.metadata};return Ht(o.config.saveConfig.url,o.config.saveConfig.headers,u,!1,o.config.saveConfig.credentials)}return o?.save?.({commentAnnotation:t.commentAnnotation,event:t.eventType,commentId:t.commentId,targetComment:c,metadata:Object.values(t.commentAnnotation??{})?.[0]?.metadata})||Promise.resolve(void 0)},"saveCommentAnnotation",this.retrySaveConfig);return l&&l.statusCode!==200?(this.retrySaveConfig.revertOnFailure&&(this.commentAnnotationById$._value=a),this.loggingService.catch(l?.message??"Error in CommentAnnotationsResolverService saveCommentAnnotation:"),this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:Et.SAVE_COMMENT_ANNOTATION,source:"internal",payload:{error:l,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.COMMENT_RESOLVER_SAVE,{sourceMethod:"saveCommentAnnotation",source:"sdk",commentAnnotationIds:Object.keys(t.commentAnnotation),eventType:t.eventType,commentId:t.commentId}),this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_SAVE_RESULT,timestamp:new Date().getTime(),uniqueId:s,methodName:Et.SAVE_COMMENT_ANNOTATION,source:"internal",payload:{result:{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0},request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0})}catch(o){this.loggingService.warn("Error in CommentAnnotationsResolverService saveCommentAnnotation:",o);let s=i||J();return this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:Et.SAVE_COMMENT_ANNOTATION,source:"internal",payload:{error:o,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0}}})}getTargetComment(t,i){if(!(!i||!t))for(let o of Object.values(t)){let s=o?.comments?.[i];if(s)return s}}deleteCommentAnnotation(t,i,o){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling CommentAnnotationsResolverService FUNCTION: deleteCommentAnnotation","color: green;");let s=this.getProvider();if(!this.commentAnnotationDataProviderAvailable())throw new Error("Comment annotation delete data provider not available");let a=this.commentAnnotationById$.getValue(),l=a?.[t]?.metadata??(i?Cn(i):void 0),u=l?x({apiKey:l.apiKey??null,documentId:l.documentId??null,organizationId:l.organizationId??null},l.folderId&&{folderId:l.folderId}):void 0,d=o||J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_DELETE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:d,methodName:Et.DELETE_COMMENT_ANNOTATION,source:"internal",payload:{commentAnnotationId:t.toString(),metadata:u}});let f=x({},a);delete f?.[t],this.commentAnnotationById$._value=f;let g=yield kt(()=>{if(s?.config?.deleteConfig?.url){let p={commentAnnotationId:t.toString(),metadata:u,event:Qt.COMMENT_ANNOTATION_DELETE};return Ht(s.config.deleteConfig.url,s.config.deleteConfig.headers,p,!1,s.config.deleteConfig.credentials)}return s?.delete?.({commentAnnotationId:t.toString(),metadata:u,event:Qt.COMMENT_ANNOTATION_DELETE})||Promise.resolve(void 0)},"deleteCommentAnnotation",this.retryDeleteConfig);return g&&g.statusCode!==200?(this.retryDeleteConfig.revertOnFailure&&(this.commentAnnotationById$._value=a),this.loggingService.catch(g?.message??"Error in CommentAnnotationsResolverService deleteCommentAnnotation:"),this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:d,methodName:Et.DELETE_COMMENT_ANNOTATION,source:"internal",payload:{error:g,commentAnnotationId:t.toString(),metadata:u}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.COMMENT_RESOLVER_DELETE,{sourceMethod:"deleteCommentAnnotation",source:"sdk",commentAnnotationId:t.toString()}),this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_DELETE_RESULT,timestamp:new Date().getTime(),uniqueId:d,methodName:Et.DELETE_COMMENT_ANNOTATION,source:"internal",payload:{result:{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0},commentAnnotationId:t.toString(),metadata:u}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0})}catch(s){this.loggingService.warn("Error in CommentAnnotationsResolverService deleteCommentAnnotation:",s);let a=o||J(),c=i?Cn(i):void 0;return this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:a,methodName:Et.DELETE_COMMENT_ANNOTATION,source:"internal",payload:{error:s,commentAnnotationId:t.toString(),metadata:c}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0}}})}getCommentAnnotationsById$(){try{return this.commentAnnotationDataProviderAvailable()?(this.loggingService.log("%c[WB] Calling CommentAnnotationsResolverService FUNCTION: getCommentAnnotationsById$","color: green;"),this.commentAnnotationById$.asObservable()):ue(void 0)}catch(t){return this.loggingService.catch("Error in CommentAnnotationsResolverService getCommentAnnotationsById$:",t),ue(void 0)}}getAnnotationById(t){try{return this.commentAnnotationDataProviderAvailable()?this.commentAnnotationById$.getValue()?.[t]:void 0}catch(i){this.loggingService.catch("Error in CommentAnnotationsResolverService getAnnotationById:",i);return}}getFieldsToRemove(){try{return this.fieldsToRemove}catch(t){return this.loggingService.catch("Error in CommentAnnotationsResolverService getFieldsToRemove:",t),this.fieldsToRemove}}getAdditionalFields(){try{return this.additionalFields}catch(t){return this.loggingService.catch("Error in CommentAnnotationsResolverService getAdditionalFields:",t),this.additionalFields}}getAdditionalSaveEvents(){try{return this.additionalSaveEvents}catch(t){return this.loggingService.catch("Error in CommentAnnotationsResolverService getAdditionalSaveEvents:",t),this.additionalSaveEvents}}setCommentAnnotationDataProvider(t){try{if(t){this.loggingService.log("Setting comment annotation data provider");let i=t.config,o=[{method:"get",configKey:"getConfig"},{method:"save",configKey:"saveConfig"},{method:"delete",configKey:"deleteConfig"}],s=[];if(o.forEach(({method:a,configKey:c})=>{let l=i?.[c]?.url,u=a in t&&typeof t[a]=="function";!l&&!u&&s.push(a)}),s.length>0){let a=`DataProviders.comment is invalid. The following methods are missing or are not functions (and no corresponding config provided): ${s.join(", ")}.`;this.loggingService.catch(a);return}else this.commentAnnotationDataProvider$.next(t)}}catch(i){this.loggingService.catch("Error in CommentAnnotationsResolverService setCommentAnnotationDataProvider:",i)}}commentAnnotationDataProviderAvailable(){try{return!!this.commentAnnotationDataProvider$.getValue()}catch(t){return this.loggingService.catch("Error in CommentAnnotationsResolverService commentAnnotationDataProviderAvailable:",t),!1}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var qo=(()=>{let e=class e{constructor(t,i,o){this.coreActionsService=t,this.loggingService=i,this.analyticsService=o,this.resolveTimeout=60*1e3,this.retrySaveConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryDeleteConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryGetConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.reactionAnnotationDataProvider$=new Y(null),this.reactionAnnotationById$=new Y({}),this.getReactionAnnotationById=s=>{try{return this.reactionAnnotationDataProviderAvailable()?this.reactionAnnotationById$.value?.[s]:void 0}catch(a){this.loggingService.catch("Error in ReactionAnnotationsResolverService getReactionAnnotationById:",a);return}};try{this.loggingService.log("ReactionAnnotationsResolverService initialized"),this.reactionAnnotationDataProvider$.subscribe(s=>{s&&(s.config?.resolveTimeout&&(this.resolveTimeout=s.config.resolveTimeout),s.config?.saveRetryConfig&&(this.retrySaveConfig=s.config.saveRetryConfig),s.config?.deleteRetryConfig&&(this.retryDeleteConfig=s.config.deleteRetryConfig),s.config?.getRetryConfig&&(this.retryGetConfig=s.config.getRetryConfig))})}catch(s){this.loggingService.catch("Error in ReactionAnnotationsResolverService constructor:",s)}}getProvider(){try{let t=this.reactionAnnotationDataProvider$.getValue();return t||void 0}catch(t){this.loggingService.catch("Error in ReactionAnnotationsResolverService getProvider:",t);return}}ngOnDestroy(){try{this.reactionAnnotationById$.next({})}catch(t){this.loggingService.catch("Error in ReactionAnnotationsResolverService ngOnDestroy:",t)}}resolveReactionAnnotations(s){return I(this,arguments,function*({request:t,uniqueId:i,moduleName:o}){try{if(this.loggingService.log("%c[WB] Calling ReactionAnnotationsResolverService FUNCTION: resolveReactionAnnotations","color: green;"),!this.reactionAnnotationDataProviderAvailable())return{};let a,c=!1,l=!1,u=()=>{a&&(clearTimeout(a),a=void 0,l=!0)};return new Promise((d,f)=>{a=setTimeout(()=>{if(!l){c=!0,u();let b=i||J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:new Error("Reaction annotation resolution timeout"),request:t}}),f(new Error("Reaction annotation resolution timeout"))}},this.reactionAnnotationDataProvider$.value?.config?.resolveTimeout||this.resolveTimeout);let g=this.getProvider();if(!g)return u(),d({});let p={},_=[...new Set(t.reactionAnnotationIds||[])],T=le(x({},t),{reactionAnnotationIds:_});I(this,null,function*(){try{if(_.length>0||t.documentIds?.length||t.folderId){let b=i||J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:b,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{request:T}});let G=kt(()=>g?.config?.getConfig?.url?Ht(g.config.getConfig.url,g.config.getConfig.headers,T,!0,g.config.getConfig.credentials):g?.get?.(T)||Promise.resolve(void 0),"getReactionAnnotations",this.retryGetConfig).then(M=>c?{}:(u(),M&&M.statusCode!==200?(this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{result:M,request:T}}),this.loggingService.catch(M?.message??"Error in ReactionAnnotationsResolverService resolveReactionAnnotations:"),{}):M?.data)).catch(M=>{throw u(),M});try{p=(yield G)||{},this.analyticsService.trackEvent(L.Events.Resolver.REACTION_RESOLVER_GET,{sourceMethod:"resolveReactionAnnotations",source:"sdk",reactionAnnotationIds:_});let M={};Object.entries(p).forEach(([U,k])=>{let S=this.reactionAnnotationById$.value?.[U];S?S&&JSON.stringify(S)!==JSON.stringify(k)&&(M[U]=k):M[U]=k}),Object.keys(M).length>0&&this.reactionAnnotationById$.next(x(x({},this.reactionAnnotationById$.getValue()),M)),this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:b,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{result:M,request:T}}),d(M)}catch(M){let U=i||J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:U,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:M,request:T}}),c||f(M),d(p)}}else u(),d({})}catch(b){u();let G=i||J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:G,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:b,request:T}}),f(b)}})})}catch(a){this.loggingService.catch("Error in ReactionAnnotationsResolverService resolveReactionAnnotations:",a);let c=i||J();return this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:c,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:a,request:t}}),{}}})}saveReactionAnnotation(t,i){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling ReactionAnnotationsResolverService FUNCTION: saveReactionAnnotation","color: green;");let o=this.getProvider();if(!this.reactionAnnotationDataProviderAvailable())throw new Error("Reaction annotation save data provider not available");let s=i||J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_SAVE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:s,methodName:_t.SAVE_REACTION_ANNOTATION,source:"internal",payload:{request:t}});let a=JSON.parse(JSON.stringify(this.reactionAnnotationById$.getValue()));this.reactionAnnotationById$._value=x(x({},a),t);let c={reactionAnnotation:t,event:Qt.REACTION_ADD,metadata:Object.values(t??{})?.[0]?.metadata},l=yield kt(()=>o?.config?.saveConfig?.url?Ht(o.config.saveConfig.url,o.config.saveConfig.headers,c,!1,o.config.saveConfig.credentials):o?.save?.(c)||Promise.resolve(void 0),"saveReactionAnnotation",this.retrySaveConfig);return l&&l.statusCode!==200?(this.retrySaveConfig.revertOnFailure&&(this.reactionAnnotationById$._value=a),this.loggingService.catch(l?.message??"Error in ReactionAnnotationsResolverService saveReactionAnnotation:"),this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:_t.SAVE_REACTION_ANNOTATION,source:"internal",payload:{error:l,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.REACTION_RESOLVER_SAVE,{sourceMethod:"saveReactionAnnotation",source:"sdk",reactionAnnotationIds:Object.keys(t),eventType:c.event}),this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_SAVE_RESULT,timestamp:new Date().getTime(),uniqueId:s,methodName:_t.SAVE_REACTION_ANNOTATION,source:"internal",payload:{result:{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0},request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0})}catch(o){this.loggingService.warn("Error in ReactionAnnotationsResolverService saveReactionAnnotation:",o);let s=i||J();return this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:_t.SAVE_REACTION_ANNOTATION,source:"internal",payload:{error:o,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0}}})}deleteReactionAnnotation(t,i,o){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling ReactionAnnotationsResolverService FUNCTION: deleteReactionAnnotation","color: green;");let s=this.getProvider();if(!this.reactionAnnotationDataProviderAvailable())throw new Error("Reaction annotation delete data provider not available");let a=JSON.parse(JSON.stringify(this.reactionAnnotationById$.getValue())),c=i??a?.[t]?.metadata,l=c?Cn(c):void 0,u=l?x({apiKey:l.apiKey??null,documentId:l.documentId??null,organizationId:l.organizationId??null},l.folderId&&{folderId:l.folderId}):void 0,d=o||J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_DELETE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:d,methodName:_t.DELETE_REACTION_ANNOTATION,source:"internal",payload:{reactionAnnotationId:t.toString(),metadata:u}});let f=x({},a);delete f?.[t],this.reactionAnnotationById$._value=f;let g=yield kt(()=>{if(s?.config?.deleteConfig?.url){let p={reactionAnnotationId:t.toString(),metadata:u,event:Qt.REACTION_DELETE};return Ht(s.config.deleteConfig.url,s.config.deleteConfig.headers,p,!1,s.config.deleteConfig.credentials)}return s?.delete?.({reactionAnnotationId:t.toString(),metadata:u,event:Qt.REACTION_DELETE})||Promise.resolve(void 0)},"deleteReactionAnnotation",this.retryDeleteConfig);return g&&g.statusCode!==200?(this.retryDeleteConfig.revertOnFailure&&(this.reactionAnnotationById$._value=a),this.loggingService.catch(g?.message??"Error in ReactionAnnotationsResolverService deleteReactionAnnotation:"),this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:d,methodName:_t.DELETE_REACTION_ANNOTATION,source:"internal",payload:{error:g,reactionAnnotationId:t.toString(),metadata:u}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.REACTION_RESOLVER_DELETE,{sourceMethod:"deleteReactionAnnotation",source:"sdk",reactionAnnotationId:t.toString()}),this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_DELETE_RESULT,timestamp:new Date().getTime(),uniqueId:d,methodName:_t.DELETE_REACTION_ANNOTATION,source:"internal",payload:{result:{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0},reactionAnnotationId:t.toString(),metadata:u}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0})}catch(s){this.loggingService.warn("Error in ReactionAnnotationsResolverService deleteReactionAnnotation:",s);let a=o||J(),c=i?Cn(i):void 0;return this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:a,methodName:_t.DELETE_REACTION_ANNOTATION,source:"internal",payload:{error:s,reactionAnnotationId:t.toString(),metadata:c}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0}}})}getReactionAnnotationsById$(){try{return this.reactionAnnotationDataProviderAvailable()?(this.loggingService.log("%c[WB] Calling ReactionAnnotationsResolverService FUNCTION: getReactionAnnotationsById$","color: green;"),this.reactionAnnotationById$.asObservable()):ue(void 0)}catch(t){return this.loggingService.catch("Error in ReactionAnnotationsResolverService getReactionAnnotationsById$:",t),ue(void 0)}}getAnnotationById(t){try{return this.reactionAnnotationDataProviderAvailable()?this.reactionAnnotationById$.getValue()?.[t]:void 0}catch(i){this.loggingService.catch("Error in ReactionAnnotationsResolverService getAnnotationById:",i);return}}setReactionAnnotationDataProvider(t){try{if(t){this.loggingService.log("Setting reaction annotation data provider");let i=t.config,o=[{method:"get",configKey:"getConfig"},{method:"save",configKey:"saveConfig"},{method:"delete",configKey:"deleteConfig"}],s=[];if(o.forEach(({method:a,configKey:c})=>{let l=i?.[c]?.url,u=a in t&&typeof t[a]=="function";!l&&!u&&s.push(a)}),s.length>0){let a=`DataProviders.reaction is invalid. The following methods are missing or are not functions (and no corresponding config provided): ${s.join(", ")}.`;this.loggingService.catch(a);return}else this.reactionAnnotationDataProvider$.next(t)}}catch(i){this.loggingService.catch("Error in ReactionAnnotationsResolverService setReactionAnnotationDataProvider:",i)}}reactionAnnotationDataProviderAvailable(){try{return!!this.reactionAnnotationDataProvider$.getValue()}catch(t){return this.loggingService.catch("Error in ReactionAnnotationsResolverService reactionAnnotationDataProviderAvailable:",t),!1}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Wh=(()=>{let e=class e{constructor(t,i,o){this.coreActionsService=t,this.loggingService=i,this.analyticsService=o,this.providers=new Map,this.retrySaveConfigs=new Map,this.retryDeleteConfigs=new Map,this.defaultRetryConfig={retryCount:0,retryDelay:0,revertOnFailure:!1};try{this.loggingService.log("AttachmentResolverService initialized")}catch(s){this.loggingService.catch("Error in AttachmentResolverService constructor:",s)}}getProvider(t){try{let i=t||"default";return this.providers.get(i)||void 0}catch(i){this.loggingService.catch("Error in AttachmentResolverService getProvider:",i);return}}getRetrySaveConfig(t){let i=t||"default";return this.retrySaveConfigs.get(i)||this.defaultRetryConfig}getRetryDeleteConfig(t){let i=t||"default";return this.retryDeleteConfigs.get(i)||this.defaultRetryConfig}makeAttachmentConfigBasedRequest(t,i,o,s,a){return I(this,null,function*(){try{let c=typeof i=="function"?yield i():i||{},l=new FormData;l.append("file",o);let u={attachment:{attachmentId:s.attachment.attachmentId,name:s.attachment.name,mimeType:s.attachment.mimeType},metadata:s.metadata,event:s.event};l.append("request",JSON.stringify(u));let d={};Object.entries(c).forEach(([p,_])=>{p.toLowerCase()!=="content-type"&&(d[p]=_)});let f=yield fetch(t,x({method:"POST",headers:d,body:l},a?{credentials:a}:{}));return f.ok?{data:(yield f.json())?.data??{},success:!0,statusCode:200}:(H.catch(`Error in makeAttachmentConfigBasedRequest: ${f.status} ${f.statusText}`),{data:{},success:!1,statusCode:f.status})}catch(c){return H.catch("Error in makeAttachmentConfigBasedRequest:",c),{data:{},success:!1,statusCode:500}}})}saveAttachment(t,i,o){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling AttachmentResolverService FUNCTION: saveAttachment","color: green;");let s=this.getProvider(o);if(!this.attachmentDataProviderAvailable(o))throw new Error("Attachment save data provider not available");let a=this.getRetrySaveConfig(o),c=i||J();this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_SAVE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:c,methodName:No.SAVE_ATTACHMENT,source:"internal",payload:{request:t}});let l=yield kt(()=>I(this,null,function*(){if(s?.config?.saveConfig?.url){let u=t.attachment,{file:d}=u,f=dS(u,["file"]);return this.makeAttachmentConfigBasedRequest(s.config.saveConfig.url,s.config.saveConfig.headers,d,{attachment:f,event:t.eventType,metadata:t.attachment.metadata},s.config.saveConfig.credentials)}return s?.save?.({attachment:t.attachment,event:t.eventType,metadata:t.attachment.metadata})||Promise.resolve(void 0)}),"saveAttachment",a);if(l?.statusCode!==200){this.loggingService.catch(l?.message??"Error in AttachmentResolverService saveAttachment:"),this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:c,methodName:No.SAVE_ATTACHMENT,source:"internal",payload:{error:l,request:t}});return}return this.analyticsService.trackEvent(L.Events.Resolver.ATTACHMENT_RESOLVER_SAVE,{sourceMethod:"saveAttachment",source:"sdk",attachmentId:t.attachment.attachmentId,eventType:t.eventType}),this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_SAVE_RESULT,timestamp:new Date().getTime(),uniqueId:c,methodName:No.SAVE_ATTACHMENT,source:"internal",payload:{result:l,request:t}}),l}catch(s){this.loggingService.warn("Error in AttachmentResolverService saveAttachment:",s);let a=i||J();this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:a,methodName:No.SAVE_ATTACHMENT,source:"internal",payload:{error:s,request:t}});return}})}deleteAttachment(a,c,l){return I(this,arguments,function*({attachmentId:t,metadata:i},o,s){try{this.loggingService.log("%c[WB] Calling AttachmentResolverService FUNCTION: deleteAttachment","color: green;");let u=this.getProvider(s);if(!this.attachmentDataProviderAvailable(s))throw new Error("Attachment delete data provider not available");let d=i?x({apiKey:i.apiKey??null,documentId:i.documentId??null,organizationId:i.organizationId??null},i.folderId&&{folderId:i.folderId}):void 0,f=this.getRetryDeleteConfig(s),g=o||J();this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_DELETE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:g,methodName:No.DELETE_ATTACHMENT,source:"internal",payload:{attachmentId:t,metadata:d}});let p=yield kt(()=>{if(u?.config?.deleteConfig?.url){let _={attachmentId:t,metadata:d,event:Qt.ATTACHMENT_DELETE};return Ht(u.config.deleteConfig.url,u.config.deleteConfig.headers,_,!1,u.config.deleteConfig.credentials)}return u?.delete?.({attachmentId:t,metadata:d,event:Qt.ATTACHMENT_DELETE})||Promise.resolve(void 0)},"deleteAttachment",f);return p?.statusCode!==200?(this.loggingService.catch(p?.message??"Error in AttachmentResolverService deleteAttachment:"),this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:g,methodName:No.DELETE_ATTACHMENT,source:"internal",payload:{error:p,attachmentId:t,metadata:d}}),{revertOnFailure:f.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.ATTACHMENT_RESOLVER_DELETE,{sourceMethod:"deleteAttachment",source:"sdk",attachmentId:t}),this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_DELETE_RESULT,timestamp:new Date().getTime(),uniqueId:g,methodName:No.DELETE_ATTACHMENT,source:"internal",payload:{result:{revertOnFailure:f.revertOnFailure,isSuccess:!0},attachmentId:t,metadata:d}}),{revertOnFailure:f.revertOnFailure,isSuccess:!0})}catch(u){this.loggingService.warn("Error in AttachmentResolverService deleteAttachment:",u);let d=this.getRetryDeleteConfig(s),f=o||J(),g=i?x({apiKey:i.apiKey??null,documentId:i.documentId??null,organizationId:i.organizationId??null},i.folderId&&{folderId:i.folderId}):void 0;return this.coreActionsService.triggerAction($.ATTACHMENT_RESOLVER,{event:L.Events.Resolver.ATTACHMENT_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:f,methodName:No.DELETE_ATTACHMENT,source:"internal",payload:{error:u,attachmentId:t,metadata:g}}),{revertOnFailure:d.revertOnFailure,isSuccess:!0}}})}setAttachmentDataProvider(t,i="default"){try{if(t){this.loggingService.log(`Setting attachment data provider for scope: ${i}`);let o=t.config,s=[{method:"save",configKey:"saveConfig"},{method:"delete",configKey:"deleteConfig"}],a=[];if(s.forEach(({method:c,configKey:l})=>{let u=o?.[l]?.url,d=c in t&&typeof t[c]=="function";!u&&!d&&a.push(c)}),a.length>0){let c=`DataProviders.attachment is invalid. The following methods are missing or are not functions (and no corresponding config provided): ${a.join(", ")}.`;this.loggingService.catch(c);return}else this.providers.set(i,t),t.config?.saveRetryConfig&&this.retrySaveConfigs.set(i,t.config.saveRetryConfig),t.config?.deleteRetryConfig&&this.retryDeleteConfigs.set(i,t.config.deleteRetryConfig)}}catch(o){this.loggingService.catch("Error in AttachmentResolverService setAttachmentDataProvider:",o)}}attachmentDataProviderAvailable(t){try{let i=t||"default";return this.providers.has(i)}catch(i){return this.loggingService.catch("Error in AttachmentResolverService attachmentDataProviderAvailable:",i),!1}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var ec=(()=>{let e=class e{constructor(t,i,o,s){this.coreActionsService=t,this.loggingService=i,this.analyticsService=o,this.attachmentResolverService=s,this.resolveTimeout=60*1e3,this.retrySaveConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryDeleteConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryGetConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.recorderAnnotationDataProvider$=new Y(null),this.recorderAnnotationById$=new Y({}),this.additionalFields=[],this.uploadChunks=!1,this.getRecorderAnnotationById=a=>{try{return this.recorderAnnotationDataProviderAvailable()?this.recorderAnnotationById$.value?.[a]:void 0}catch(c){this.loggingService.catch("Error in RecorderAnnotationsResolverService getRecorderAnnotationById:",c);return}};try{this.loggingService.log("RecorderAnnotationsResolverService initialized"),this.recorderAnnotationDataProvider$.subscribe(a=>{a&&(a.config?.resolveTimeout&&(this.resolveTimeout=a.config.resolveTimeout),a.config?.saveRetryConfig&&(this.retrySaveConfig=a.config.saveRetryConfig),a.config?.deleteRetryConfig&&(this.retryDeleteConfig=a.config.deleteRetryConfig),a.config?.getRetryConfig&&(this.retryGetConfig=a.config.getRetryConfig),a.config?.additionalFields&&(this.additionalFields=a.config.additionalFields||[]),this.uploadChunks=a.uploadChunks??!1)})}catch(a){this.loggingService.catch("Error in RecorderAnnotationsResolverService constructor:",a)}}getProvider(){try{let t=this.recorderAnnotationDataProvider$.getValue();return t||void 0}catch(t){this.loggingService.catch("Error in RecorderAnnotationsResolverService getProvider:",t);return}}ngOnDestroy(){try{this.recorderAnnotationById$.next({})}catch(t){this.loggingService.catch("Error in RecorderAnnotationsResolverService ngOnDestroy:",t)}}resolveRecorderAnnotations(s){return I(this,arguments,function*({request:t,uniqueId:i,moduleName:o}){try{if(this.loggingService.log("%c[WB] Calling RecorderAnnotationsResolverService FUNCTION: resolveRecorderAnnotations","color: green;"),!this.recorderAnnotationDataProviderAvailable())return{};let a,c=!1,l=!1,u=()=>{a&&(clearTimeout(a),a=void 0,l=!0)};return new Promise((d,f)=>{a=setTimeout(()=>{if(!l){c=!0,u();let b=i||J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:new Error("Recorder annotation resolution timeout"),request:t}}),f(new Error("Recorder annotation resolution timeout"))}},this.recorderAnnotationDataProvider$.value?.config?.resolveTimeout||this.resolveTimeout);let g=this.getProvider();if(!g)return u(),d({});let p={},_=[...new Set(t.recorderAnnotationIds||[])],T=le(x({},t),{recorderAnnotationIds:_});I(this,null,function*(){try{if(_.length>0||t.documentIds?.length){let b=i||J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:b,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{request:T}});let G=kt(()=>g?.config?.getConfig?.url?Ht(g.config.getConfig.url,g.config.getConfig.headers,T,!0,g.config.getConfig.credentials):g?.get?.(T)||Promise.resolve(void 0),"getRecorderAnnotations",this.retryGetConfig).then(M=>c?{}:(u(),M&&M.statusCode!==200?(this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{result:M,request:T}}),this.loggingService.catch(M?.message??"Error in RecorderAnnotationsResolverService resolveRecorderAnnotations:"),{}):M?.data)).catch(M=>{throw u(),M});try{p=(yield G)||{},this.analyticsService.trackEvent(L.Events.Resolver.RECORDER_RESOLVER_GET,{sourceMethod:"resolveRecorderAnnotations",source:"sdk",recorderAnnotationIds:_});let M={};Object.entries(p).forEach(([U,k])=>{let S=this.recorderAnnotationById$.value?.[U];S?S&&JSON.stringify(S)!==JSON.stringify(k)&&(M[U]=k):M[U]=k}),Object.keys(M).length>0&&this.recorderAnnotationById$.next(x(x({},this.recorderAnnotationById$.getValue()),M)),this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:b,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{result:M,request:T}}),d(M)}catch(M){let U=i||J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:U,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:M,request:T}}),c||f(M),d(p)}}else u(),d({})}catch(b){u();let G=i||J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:G,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:b,request:T}}),f(b)}})})}catch(a){this.loggingService.catch("Error in RecorderAnnotationsResolverService resolveRecorderAnnotations:",a);let c=i||J();return this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:c,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:o,source:"internal",payload:{error:a,request:t}}),{}}})}saveRecorderAnnotation(t,i){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling RecorderAnnotationsResolverService FUNCTION: saveRecorderAnnotation","color: green;");let o=this.getProvider();if(!this.recorderAnnotationDataProviderAvailable())throw new Error("Recorder annotation save data provider not available");let s=i||J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_SAVE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:s,methodName:Tt.SAVE_RECORDER_ANNOTATION,source:"internal",payload:{request:t}});let a=JSON.parse(JSON.stringify(this.recorderAnnotationById$.getValue()));this.recorderAnnotationById$._value=x(x({},a),t.recorderAnnotation);let c=yield kt(()=>{if(o?.config?.saveConfig?.url){let l={recorderAnnotation:t.recorderAnnotation,event:t.eventType,metadata:Object.values(t.recorderAnnotation??{})?.[0]?.metadata};return Ht(o.config.saveConfig.url,o.config.saveConfig.headers,l,!1,o.config.saveConfig.credentials)}return o?.save?.({recorderAnnotation:t.recorderAnnotation,event:t.eventType,metadata:Object.values(t.recorderAnnotation??{})?.[0]?.metadata})||Promise.resolve(void 0)},"saveRecorderAnnotation",this.retrySaveConfig);return c&&c.statusCode!==200?(this.retrySaveConfig.revertOnFailure&&(this.recorderAnnotationById$._value=a),this.loggingService.catch(c?.message??"Error in RecorderAnnotationsResolverService saveRecorderAnnotation:"),this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:Tt.SAVE_RECORDER_ANNOTATION,source:"internal",payload:{error:c,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.RECORDER_RESOLVER_SAVE,{sourceMethod:"saveRecorderAnnotation",source:"sdk",recorderAnnotationIds:Object.keys(t.recorderAnnotation),eventType:t.eventType}),this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_SAVE_RESULT,timestamp:new Date().getTime(),uniqueId:s,methodName:Tt.SAVE_RECORDER_ANNOTATION,source:"internal",payload:{result:{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0},request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0})}catch(o){this.loggingService.warn("Error in RecorderAnnotationsResolverService saveRecorderAnnotation:",o);let s=i||J();return this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:Tt.SAVE_RECORDER_ANNOTATION,source:"internal",payload:{error:o,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0}}})}deleteRecorderAnnotation(t,i,o){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling RecorderAnnotationsResolverService FUNCTION: deleteRecorderAnnotation","color: green;");let s=this.getProvider();if(!this.recorderAnnotationDataProviderAvailable())throw new Error("Recorder annotation delete data provider not available");let a=this.recorderAnnotationById$.getValue(),l=a?.[t]?.metadata??(i?Cn(i):void 0),u=l?x({apiKey:l.apiKey??null,documentId:l.documentId??null,organizationId:l.organizationId??null},l.folderId&&{folderId:l.folderId}):void 0,d=o||J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_DELETE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:d,methodName:Tt.DELETE_RECORDER_ANNOTATION,source:"internal",payload:{recorderAnnotationId:t.toString(),metadata:u}});let f=x({},a);delete f?.[t],this.recorderAnnotationById$._value=f;let g=yield kt(()=>{if(s?.config?.deleteConfig?.url){let p={recorderAnnotationId:t.toString(),metadata:u,event:Qt.RECORDER_ANNOTATION_DELETE};return Ht(s.config.deleteConfig.url,s.config.deleteConfig.headers,p,!1,s.config.deleteConfig.credentials)}return s?.delete?.({recorderAnnotationId:t.toString(),metadata:u,event:Qt.RECORDER_ANNOTATION_DELETE})||Promise.resolve(void 0)},"deleteRecorderAnnotation",this.retryDeleteConfig);return g&&g.statusCode!==200?(this.retryDeleteConfig.revertOnFailure&&(this.recorderAnnotationById$._value=a),this.loggingService.catch(g?.message??"Error in RecorderAnnotationsResolverService deleteRecorderAnnotation:"),this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:d,methodName:Tt.DELETE_RECORDER_ANNOTATION,source:"internal",payload:{error:g,recorderAnnotationId:t.toString(),metadata:u}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.RECORDER_RESOLVER_DELETE,{sourceMethod:"deleteRecorderAnnotation",source:"sdk",recorderAnnotationId:t.toString()}),this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_DELETE_RESULT,timestamp:new Date().getTime(),uniqueId:d,methodName:Tt.DELETE_RECORDER_ANNOTATION,source:"internal",payload:{result:{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0},recorderAnnotationId:t.toString(),metadata:u}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0})}catch(s){this.loggingService.warn("Error in RecorderAnnotationsResolverService deleteRecorderAnnotation:",s);let a=o||J(),c=i?Cn(i):void 0;return this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:a,methodName:Tt.DELETE_RECORDER_ANNOTATION,source:"internal",payload:{error:s,recorderAnnotationId:t.toString(),metadata:c}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0}}})}getRecorderAnnotationsById$(){try{return this.recorderAnnotationDataProviderAvailable()?(this.loggingService.log("%c[WB] Calling RecorderAnnotationsResolverService FUNCTION: getRecorderAnnotationsById$","color: green;"),this.recorderAnnotationById$.asObservable()):ue(void 0)}catch(t){return this.loggingService.catch("Error in RecorderAnnotationsResolverService getRecorderAnnotationsById$:",t),ue(void 0)}}getAnnotationById(t){try{return this.recorderAnnotationDataProviderAvailable()?this.recorderAnnotationById$.getValue()?.[t]:void 0}catch(i){this.loggingService.catch("Error in RecorderAnnotationsResolverService getAnnotationById:",i);return}}getAdditionalFields(){try{return this.additionalFields}catch(t){return this.loggingService.catch("Error in RecorderAnnotationsResolverService getAdditionalFields:",t),this.additionalFields}}shouldUploadChunks(){return this.uploadChunks}shouldUploadFullRecording(){return this.recorderAnnotationDataProviderAvailable()&&!this.uploadChunks}setRecorderAnnotationDataProvider(t){try{if(t){this.loggingService.log("Setting recorder annotation data provider");let i=t.config,o=[{method:"get",configKey:"getConfig"},{method:"save",configKey:"saveConfig"},{method:"delete",configKey:"deleteConfig"}],s=[];if(o.forEach(({method:a,configKey:c})=>{let l=i?.[c]?.url,u=a in t&&typeof t[a]=="function";!l&&!u&&s.push(a)}),s.length>0){let a=`DataProviders.recorder is invalid. The following methods are missing or are not functions (and no corresponding config provided): ${s.join(", ")}.`;this.loggingService.catch(a);return}else t.storage&&this.attachmentResolverService.setAttachmentDataProvider(t.storage,"recorder"),this.attachmentResolverService.attachmentDataProviderAvailable("recorder")||this.loggingService.catch("Recording resolver is configured without storage resolver. Recording files (chunks, thumbnails) will be stored on Velt's infrastructure. Configure storage resolver for full self-hosting.",void 0,void 0,!0),this.recorderAnnotationDataProvider$.next(t)}}catch(i){this.loggingService.catch("Error in RecorderAnnotationsResolverService setRecorderAnnotationDataProvider:",i)}}recorderAnnotationDataProviderAvailable(){try{return!!this.recorderAnnotationDataProvider$.getValue()}catch(t){return this.loggingService.catch("Error in RecorderAnnotationsResolverService recorderAnnotationDataProviderAvailable:",t),!1}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(Lt),w(Wh))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var qy=class{};var zh=(()=>{let e=class e{constructor(t,i,o,s,a,c,l,u,d,f,g,p){this.analyticsService=t,this.authService=i,this.databaseService=o,this.domService=s,this.configService=a,this.loggingService=c,this.commentResolverService=l,this.reactionResolverService=u,this.recorderResolverService=d,this.coreActionsService=f,this.functions=g,this.serviceBook=p,this.documentPaths$=new Y(null),this.docContext$=new Y(null),this.documentIds$=new Y([]),this.organizationConfig$=new Y(null),this.firestorePaths$=new Y(null),this.location$=new Y(null),this.excludedLocationIds$=new Y([]),this.organizationMetadata$=new Y(null),this.documentMetadata$=new Y(null),this.locationMetadata$=new Y(null),this.customerMetadata$=new Y(null),this.currentDocumentId=null,this.isCustomDocId=!1,this.locations$=new Y({}),this.preDocumentIdChangeFunctions=new Map,this.draftDocuments=[],this.clientDocumentMetadataMap={},this.uiState=new Y({}),this.lastSetDocumentIdExecutionTime=0,this.lastSetDocumentIdCallTime=0,this.setDocumentIdSubject=new Ot,this.DEBOUNCE_TIME=5e3,this.currentDebounceTime=this.DEBOUNCE_TIME,this.MAX_QUEUE_SIZE=100,this.queueSize=0,this.isDocumentIdInDebounceQueue=!1,this.currentValidationToken=null,this.pendingDocumentIds=[],this.pendingOptions={},this.draftLocationMap={locations:[],options:void 0};try{this.loggingService.log("%c[WB] Creating CLASS: DocService","color: blue;"),this.domService.setDocService(this),this.authService.setDocService(this),this.serviceBook.observe(pd).subscribe(_=>{this.commentService=_??void 0}),B1(()=>this.documentPaths$.value?.clientDocumentId),this.setDocumentIdSubject.pipe(SS(()=>Ci(this.currentDebounceTime))).subscribe({next:_=>I(this,null,function*(){try{yield this.setDocumentIdImpl(_.documentId,_.clientOrganizationId,_.options),this.lastSetDocumentIdExecutionTime=Date.now(),this.isDocumentIdInDebounceQueue=!1,this.draftLocationMap.locations.length&&(yield this.setLocations({locations:this.draftLocationMap.locations,options:this.draftLocationMap.options,source:"internal"})),this.draftLocationMap={locations:[],options:void 0}}finally{this.queueSize--}}),error:_=>{this.loggingService.catch("Error in setDocumentId subscription:",_),this.queueSize--}}),this.databaseService.getDb().pipe(Ct(_=>!!_),Nt(1)).subscribe(_=>{_&&(this.db=_)}),this.configService.getApiKey$().subscribe(_=>{if(this.apiKey=_,this.apiKey){if(!this.isCustomDocId){let T=HT(window.location.href);this.currentUrl=T}this.analyticsService.updateDefaultProperties({apiKey:_})}}),this.authService.getUser$().subscribe(_=>I(this,null,function*(){if(_&&(this.analyticsService.updateDefaultProperties({organizationId:_?.organizationId,clientOrganizationId:_?.clientOrganizationId}),this.draftDocuments?.length?(yield this.setDocuments({documents:this.draftDocuments,options:this.draftOptions??void 0,source:"internal"}),this.draftDocuments=[],this.draftOptions=void 0,this.draftLocationMap.locations.length&&(yield this.setLocations({locations:this.draftLocationMap.locations,options:this.draftLocationMap.options,source:"internal"}).then(()=>this.draftLocationMap={locations:[],options:void 0}))):this.documentPaths$?.value&&_?.organizationId&&this.documentPaths$.value?.organizationId!==_?.organizationId&&(yield this.setDocuments({documents:this.documentIds$.value.length?this.documentIds$.value.map(T=>({id:T.clientDocumentId})):[{id:this.documentPaths$.value?.clientDocumentId}],options:void 0,source:"internal"})),setTimeout(()=>{this.documentPaths$.value||this.loggingService.catch("Error in DocService constructor:","Please set document id to continue.")},1e4),_?.organizationId&&_?.clientOrganizationId)){let T={organizationId:_?.organizationId,clientOrganizationId:_?.clientOrganizationId};this.getOrganizationConfig()||this.setOrganizationConfig({organizationId:_?.organizationId,clientOrganizationId:_?.clientOrganizationId}),yield this.updateOrganizationMetadata(T)}})),this.documentPaths$.subscribe(_=>{let T={documentId:_?.documentId,clientDocumentId:_?.clientDocumentId,folderId:_?.folderId,allDocuments:_?.allDocuments,veltFolderId:_?.veltFolderId};_?.organizationId&&(T.organizationId=_.organizationId,T.clientOrganizationId=_.clientOrganizationId),this.analyticsService.updateDefaultProperties(T),this.domService.resetSelectedAnnotationsMap()}),this.location$.subscribe(_=>{this.analyticsService.updateDefaultProperties({clientLocation:_?.location,locationId:_?.locationId})}),this.organizationMetadata$.subscribe(_=>{this.authService.setUserOrganization(_?.[this.documentPaths$.value?.organizationId])}),this.documentPaths$.pipe(Ct(_=>!!_),Nt(1)).subscribe(()=>{try{this.subscribeToCustomerMetadata()}catch(_){this.loggingService.catch("Error in DocService subscribeToCustomerMetadata:",_)}},_=>{this.loggingService.catch("Error in DocService subscribeToCustomerMetadata:",_)}),this.loggingService.log("%c[WB] Creating CLASS: DocService 2","color: blue;"),this.onWindowPopstate(),this.onWindowClick()}catch(_){this.loggingService.catch("Error in DocService constructor:",_)}}getOptionsFromDocumentPaths(){try{return this.documentPaths$.value?{organizationId:this.documentPaths$.value?.clientOrganizationId,folderId:this.documentPaths$.value?.folderId,allDocuments:this.documentPaths$.value?.allDocuments,locationId:this.documentPaths$.value?.locationId,optimisticPermissions:this.documentPaths$.value?.optimisticPermissions}:null}catch(t){return this.loggingService.catch("Error in getOptionsFromDocumentPaths:",t),null}}clearCacheOnUserCascade(){this.loggingService.log("%c[WB] Calling FUNCTION: clearCacheOnUserCascade in DocService","color: green;");try{this.setOrganizationConfig(null),this.organizationMetadata$.next(null),this.customerMetadata$.next(null),this.customerMetadataSubscription?.unsubscribe(),this.documentPaths$.value&&(this.draftOptions=this.getOptionsFromDocumentPaths(),this.draftDocuments=this.documentIds$.value.map(t=>({id:t.clientDocumentId})),this.draftLocationMap={locations:[this.location$.value?.location??null,...Object.values(this.locations$.value||{}).map(t=>t.location)].filter(t=>t!==null),options:{rootLocationId:this.location$.value?.location?.id}},this.currentDocumentId=null,this.documentPaths$.next(null),this.firestorePaths$.next(null)),this.unsetDocuments({source:"internal"})}catch(t){this.loggingService.catch("Error in DocService clearCacheOnUserCascade: ",t)}}setUsersService(t){try{this.usersService=t}catch(i){this.loggingService.catch("Error in setUsersService:",i)}}setCommonDbService(t){try{this.commonDbService=t}catch(i){this.loggingService.catch("Error in setCommonDbService:",i)}}setUserPermissionService(t){try{this.userPermissionService=t}catch(i){this.loggingService.catch("Error in setUserPermissionService:",i)}}setCommentService(t){try{this.commentService=t}catch(i){this.loggingService.catch("Error in setCommentService:",i)}}onWindowPopstate(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowPopstate","color: green;");try{this.domService.onWindowPopState$().subscribe(()=>{this.loggingService.log("location",location.href);let t=HT(location.href);this.currentUrl!==t&&(this.currentUrl=t,!this.isCustomDocId&&this.apiKey&&this.loggingService.log("current url in doc service",this.currentUrl))},t=>{this.loggingService.catch("Error in DocService onWindowPopstate subscription: ",t)})}catch(t){this.loggingService.catch("Error in onWindowPopstate: ",t)}}onWindowClick(){this.loggingService.log("%c[WB] Calling FUNCTION: onWindowClick","color: green;");try{this.domService.onWindowClick$().subscribe(()=>{let t=HT(location.href);this.currentUrl!==t&&(this.currentUrl=t,this.isCustomDocId||this.loggingService.log("current url in doc service",this.currentUrl))},t=>{this.loggingService.catch("Error in DocService onWindowClick subscription: ",t)})}catch(t){this.loggingService.catch("Error in onWindowClick: ",t)}}setDocument(a){return I(this,arguments,function*({documentId:t,documentMetadata:i,options:o,source:s="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDocument","color: green;"),s==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_DOCUMENTS_TRIGGERED,{payload:{id:t,documentMetadata:i,methodName:"setDocument",source:s}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_DOCUMENTS_TRIGGERED,methodName:kn.SET_DOCUMENTS,source:s,payload:{documentId:t,documentMetadata:i,options:o}}),yield this.setDocumentsImpl({documents:[{id:t,metadata:i}],options:x({organizationId:i?.organizationId},o??{}),source:s})}catch(c){this.loggingService.catch("Error in DocService setDocument:",c)}})}shouldSetDocumentsAgain(t,i={}){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: shouldSetDocumentsAgain","color: green;"),this.pendingDocumentIds.length>0&&t.length===this.pendingDocumentIds.length&&t.every(d=>this.pendingDocumentIds.includes(d.id))&&ki(i,this.pendingOptions))return!1;let o=this.documentPaths$.value?.clientDocumentId,s=i?.rootDocumentId??t[0]?.id,a=this.documentIds$.value.map(u=>u.clientDocumentId),c=jT(this.getOptionsFromDocumentPaths()??{})??{};return!t.every(u=>a.includes(u.id))||!ki(c,i)||o!==s}catch(o){return this.loggingService.catch("Error in DocService shouldSetDocumentsAgain:",o),!0}}getDocumentIdsFromDocuments({documents:t,setClientDocumentMetadataMap:i=!1}){try{let o=[];return t.forEach(s=>{let a=s.id,c=`${Tr(a)}`;i&&s?.metadata&&typeof s.metadata=="object"&&(this.clientDocumentMetadataMap[a]=s.metadata),o.push({documentId:c,clientDocumentId:a})}),o}catch(o){return this.loggingService.catch("Error in DocService getDocumentIdsFromDocuments:",o),[]}}setDocuments(a){return I(this,arguments,function*({documents:t,options:i,source:o="internal",skipPermissionValidation:s=!1}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDocuments","color: green;"),o==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_DOCUMENTS_TRIGGERED,{payload:{documents:t,options:i,methodName:"setDocuments",source:o}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_DOCUMENTS_TRIGGERED,methodName:kn.SET_DOCUMENTS,source:o,payload:{documents:t,options:i}}),yield this.setDocumentsImpl({documents:t,options:i??{},source:o,skipPermissionValidation:s})}catch(c){this.loggingService.catch("Error in DocService setDocuments:",c)}})}setRootDocument(o){return I(this,arguments,function*({document:t,source:i="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setRootDocument","color: green;"),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_ROOT_DOCUMENT_TRIGGERED,methodName:kn.SET_ROOT_DOCUMENT,source:i,payload:{document:t}});let s=this.getOptionsFromDocumentPaths()??{},a=this.documentIds$.value.map(c=>c.clientDocumentId);if(!a.includes(t.id)){let c=[...a.map(u=>({id:u})),{id:t.id}],l=this.getDocumentIdsFromDocuments({documents:c,setClientDocumentMetadataMap:!0});this.documentIds$.next(l)}yield this.setDocumentIdImpl(t.id,this.documentPaths$.value?.clientOrganizationId,s)}catch(s){this.loggingService.catch("Error in DocService setRootDocument:",s)}})}setDocContext(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDocContext","color: green;");let i=JSON.parse(JSON.stringify(t??null));this.docContext$.next(i)}catch(i){this.loggingService.catch("Error in setDocContext: ",i)}}getDocContext(){return this.docContext$.getValue()}getDocContext$(){return this.docContext$.asObservable().pipe(it(Ft))}getProcessedDocContext(){return GV(this.getDocContext())}filterRelevantDocuments(s){return I(this,arguments,function*({options:t,documentIds:i,skipPermissionValidation:o=!1}){try{let a=this.authService.getUser();return!a||!this.commonDbService?.shouldUseFirestore()||(i=yield this.fetchDocumentsFromFolder(t,i,a),yield this.handlePermissionProvider(t,i,a),i=yield this.filterDocumentsByPermissions(t,i,a,o),i=i.slice(0,50)),i}catch(a){return this.loggingService.catch("Error in DocService filterRelevantDocuments:",a),i}})}fetchDocumentsFromFolder(t,i,o){return I(this,null,function*(){if(!t?.folderId||!t?.allDocuments)return i;try{let s=Dr(this.functions,Ir({url:st?.cloudFunction?.sdkProxy,apiProxyDomain:this.configService?.getApiProxyDomain()}));(yield Ad({methodName:"getDocuments",data:{type:"getDocuments",metadata:{organizationId:t?.organizationId??o?.clientOrganizationId,folderId:t?.folderId}},getSdkProxy:s,userId:o?.userId??""}))?.data?.forEach(c=>{i.find(l=>l.clientDocumentId===c.id)||i.push({documentId:da(c.id),clientDocumentId:c.id})})}catch(s){this.loggingService.warn("Error in DocService fetchDocumentsFromFolder:",s)}return i})}buildPermissionRequests(t,i,o){try{let s=[];return t.organizationId&&t.organizationId!==o.clientOrganizationId&&s.push({userId:o.userId,resource:{id:t.organizationId,type:di.ORGANIZATION,source:Un.SET_DOCUMENTS,organizationId:t.organizationId,context:t?.context}}),t.folderId&&s.push({userId:o.userId,resource:{id:t.folderId,type:di.FOLDER,source:Un.SET_DOCUMENTS,organizationId:t?.organizationId??o?.clientOrganizationId??"",context:t?.context}}),i&&i.forEach(a=>{s.push({userId:o.userId,resource:x({id:a.clientDocumentId,type:di.DOCUMENT,source:Un.SET_DOCUMENTS,organizationId:t?.organizationId??o?.clientOrganizationId??"",context:t?.context},t?.folderId&&{parentFolderId:t.folderId})})}),t?.context&&this.userPermissionService?.getIsContextEnabled()&&$V({input:t?.context}).forEach(c=>{let l=JSON.stringify(c.access);s.push({userId:o.userId,resource:{id:l,type:di.CONTEXT,source:Un.SET_DOCUMENTS,organizationId:t?.organizationId??o?.clientOrganizationId??"",context:c}})}),s}catch(s){return this.loggingService.catch("Error in buildPermissionRequests:",s),[]}}processAccessibleContexts(t,i){try{if(!t?.success||!t?.data?.length||!this.userPermissionService?.getIsContextEnabled())return;let o=t.data.filter(s=>s.type===di.CONTEXT&&s.hasAccess).map(s=>s.resourceId);if(this.loggingService.logContext("[CONTEXT] processAccessibleContexts called with accessibleContextIds:",JSON.parse(JSON.stringify(o??"nil"))),o?.length){let s=i.filter(c=>o.includes(c.resource.id)).map(c=>c.resource.context).filter(c=>!!c),a=jV({input:s});this.loggingService.logContext("[CONTEXT] processAccessibleContexts called with accessibleContext:",JSON.parse(JSON.stringify(a??"nil"))),a?.access&&(this.loggingService.logContext("[CONTEXT] setting accessibleContext in docContext:",JSON.parse(JSON.stringify(a??"nil"))),this.setDocContext(a))}}catch(o){this.loggingService.catch("Error in processAccessibleContexts:",o)}}handlePermissionProvider(t,i,o){return I(this,null,function*(){if(this.userPermissionService?.isPermissionProviderAvailable())try{this.loggingService.logContext("[CONTEXT] handlePermissionProvider called with options:",JSON.parse(JSON.stringify(t??"nil")),"documentIds:",JSON.parse(JSON.stringify(i??"nil")),"user:",JSON.parse(JSON.stringify(o??"nil")));let s=this.buildPermissionRequests(t,i,o),a=J();this.coreActionsService.triggerAction($.PERMISSION_PROVIDER,{event:L.Events.PermissionProvider.RESOURCE_ACCESS_REQUEST_FORMED,methodName:Un.SET_DOCUMENTS,uniqueId:a,timestamp:new Date().getTime(),source:"internal",payload:{requests:s}}),this.userPermissionService?.cancelPendingRevokes(s);let c=yield this.userPermissionService?.onResourceAccessRequired({requests:s,uniqueId:a,methodName:Un.SET_DOCUMENTS,fromCache:!1});this.loggingService.logContext("[CONTEXT] handlePermissionProvider called with res:",JSON.parse(JSON.stringify(c??"nil")),"requests:",JSON.parse(JSON.stringify(s??"nil"))),this.processAccessibleContexts(c,s)}catch(s){this.loggingService.catch("Error in handlePermissionProvider:",s)}})}filterDocumentsByPermissions(t,i,o,s=!1){return I(this,null,function*(){if(s)return i;if(this.loggingService.logContext("[CONTEXT] filterDocumentsByPermissions called with options:",JSON.parse(JSON.stringify(t??"nil")),"documentIds:",JSON.parse(JSON.stringify(i??"nil")),"user:",JSON.parse(JSON.stringify(o??"nil"))),!(t?.optimisticPermissions!==!1))return yield this.validateAndFilterPermissions(t,i,o);let c=this.currentValidationToken,l=[...i];return c&&this.validatePermissionsInBackground(t,i,o,c),l})}validateAndFilterPermissions(t,i,o){return I(this,null,function*(){try{let s=t?.organizationId??o?.clientOrganizationId,a=yield this.userPermissionService?.getUserPermissions({organizationId:s,documentIds:i.map(u=>u.clientDocumentId),folderIds:t?.folderId?[t?.folderId]:[]});if(!a)return i;this.userPermissionService?.setCurrentUserPermissions(a),s&&a?.[o.userId]?.organization?.[s]?.errorCode===Oo.PERMISSION_DENIED&&this.loggingService.catch(`User does not have access to organization: ${s}`,void 0,void 0,!0),t?.folderId&&a?.[o.userId]?.folders?.[t?.folderId]?.errorCode===Oo.PERMISSION_DENIED&&this.loggingService.catch(`User does not have access to folder: ${t?.folderId}`,void 0,void 0,!0);let c=new Set;Object.entries(a?.[o.userId]?.documents??{}).forEach(([u,d])=>{d?.errorCode===Oo.PERMISSION_DENIED&&c.add(u)}),c.size>0&&(this.loggingService.catch(`User does not have access to documents: ${[...c].join(", ")}`,void 0,void 0,!0),this.coreActionsService.triggerAction($.ERROR,{event:L.Events.Core.SDK_ERROR,sourceMethod:"validateAndFilterPermissions",message:"Access denied to documents in strict validation mode",documentIds:[...c],userId:o.userId,timestamp:new Date().getTime()}));let l=i.filter(u=>!c.has(u.clientDocumentId));return l.length===0&&i.length>0&&this.loggingService.catch("Error in validateAndFilterPermissions: All documents provided are denied"),l}catch(s){return this.loggingService.catch("Error in validateAndFilterPermissions:",s),i}})}validatePermissionsInBackground(t,i,o,s){let a=t?.organizationId??o?.clientOrganizationId;this.userPermissionService?.getUserPermissions({organizationId:a,documentIds:i.map(c=>c.clientDocumentId),folderIds:t?.folderId?[t?.folderId]:[]}).then(c=>{if(this.currentValidationToken===s&&c){this.userPermissionService?.setCurrentUserPermissions(c);let l=[];Object.entries(c?.[o.userId]?.documents??{}).forEach(([u,d])=>{d?.errorCode===Oo.PERMISSION_DENIED&&l.push(u)}),a&&c?.[o.userId]?.organization?.[a]?.errorCode===Oo.PERMISSION_DENIED&&this.loggingService.catch(`User does not have access to organization: ${a}`,void 0,void 0,!0),t?.folderId&&c?.[o.userId]?.folders?.[t?.folderId]?.errorCode===Oo.PERMISSION_DENIED&&this.loggingService.catch(`User does not have access to folder: ${t?.folderId}`,void 0,void 0,!0),l.length>0&&(this.loggingService.catch(`User does not have access to documents: ${l.join(", ")}`,void 0,void 0,!0),this.handleDeniedDocumentAccess(l,o,s))}}).catch(c=>{this.loggingService.catch("Error in background permission validation:",c)})}handleDeniedDocumentAccess(t,i,o){try{if(this.currentValidationToken!==o)return;let s=this.documentPaths$.value;this.coreActionsService.triggerAction($.ERROR,{event:L.Events.Core.SDK_ERROR,sourceMethod:"handleDeniedDocumentAccess",message:"Access denied to document after optimistic load",documentIds:t,userId:i.userId,timestamp:new Date().getTime()});let a=this.documentIds$.value||[],c=a.filter(l=>!t.includes(l.clientDocumentId));c.length!==a.length&&(c.length>0?this.setDocuments({documents:c.map(l=>({id:l.clientDocumentId})),options:{organizationId:s?.clientOrganizationId},source:"internal",skipPermissionValidation:!0}):(this.loggingService.catch("Error in DocService handleDeniedDocumentAccess: Documents provided are all denied"),this.coreActionsService.triggerAction($.ERROR,{event:L.Events.Core.SDK_ERROR,sourceMethod:"handleDeniedDocumentAccess",message:"All documents provided are denied",documentIds:t,userId:i.userId,timestamp:new Date().getTime()}),this.unsetDocuments({source:"internal"})))}catch(s){this.loggingService.catch("Error in handleDeniedDocumentAccess:",s)}}addUserInfoToOrganization(a){return I(this,arguments,function*({organizationId:t,user:i,notificationsConfig:o,currentUserId:s}){try{let c=Dr(this.functions,Ir({url:st?.cloudFunction?.sdkProxy,apiProxyDomain:this.configService?.getApiProxyDomain()}));yield Ad({data:x({type:"addUserInfoToOrganization",metadata:{organizationId:t},user:this.usersService?.externalUserDataProviderAvailable()?{userId:i?.userId}:i},o&&{notificationsConfig:o}),getSdkProxy:c,userId:s??i?.userId??""})}catch(c){this.loggingService.warn("Error in DocService addUserInfoToOrganization:",c)}})}setDocumentsImpl(a){return I(this,arguments,function*({documents:t,options:i,source:o,skipPermissionValidation:s=!1}){try{if(this.loggingService.logContext("[CONTEXT] setDocumentsImpl called with documents:",JSON.parse(JSON.stringify(t??"nil")),"options:",JSON.parse(JSON.stringify(i??"nil"))),!this.shouldSetDocumentsAgain(t,jT(i))){o==="external"&&this.loggingService.catch("setDocuments called with previous request");return}let c=J();this.currentValidationToken=c;let l=this.getDocumentIdsFromDocuments({documents:t,setClientDocumentMetadataMap:!0});if(l?.length===0){this.loggingService.warn("Minimum one document must be set in setDocuments");return}let u=this.authService.getUser();if(!u){this.draftDocuments=t,this.draftOptions=i;return}this.pendingDocumentIds=t.map(f=>f.id),this.pendingOptions=jT(i)??{},this.documentPaths$.value?.organizationId&&i?.organizationId&&this.documentPaths$.value?.clientOrganizationId!==i?.organizationId?this.authService.resetServicesCache():this.unsetDocuments({source:"internal",unsetDocumentPaths:!1});let d=i?.organizationId??u?.clientOrganizationId;if(d&&this.addUserInfoToOrganization({organizationId:d,user:u}),l=yield this.filterRelevantDocuments({options:i,documentIds:l,skipPermissionValidation:s}),this.documentIds$.next(l),l?.length){let f=l[0]?.clientDocumentId;i?.rootDocumentId&&l.find(g=>g.clientDocumentId===i?.rootDocumentId)&&(f=i?.rootDocumentId),yield this.debounceSetDocuments({documentId:f,clientOrganizationId:i?.organizationId,options:i})}this.pendingDocumentIds=[],this.pendingOptions={};return}catch(c){this.pendingDocumentIds=[],this.pendingOptions={},this.loggingService.catch("Error in DocService setDocumentsImpl:",c)}})}setDocumentId(s){return I(this,arguments,function*({documentId:t,clientOrganizationId:i,source:o="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDocumentId","color: green;"),o==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_DOCUMENTS_TRIGGERED,{payload:{id:t,clientOrganizationId:i,methodName:"setDocumentId",source:o}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_DOCUMENTS_TRIGGERED,methodName:kn.SET_DOCUMENT_ID,source:o,payload:{documentId:t,clientOrganizationId:i}}),yield this.setDocumentsImpl({documents:[{id:t}],options:{organizationId:i},source:o})}catch(a){this.loggingService.catch("Error in setDocumentId:",a);return}})}debounceSetDocuments(s){return I(this,arguments,function*({documentId:t,clientOrganizationId:i,options:o}){try{this.loggingService.log("%c[WB] Calling FUNCTION: debounceSetDocuments","color: green;");let a=o?.debounceTime??this.DEBOUNCE_TIME;this.currentDebounceTime=a;let c=Date.now(),l=c-this.lastSetDocumentIdCallTime,u=c-this.lastSetDocumentIdExecutionTime;if(this.lastSetDocumentIdCallTime=c,this.queueSize>=this.MAX_QUEUE_SIZE){this.loggingService.warn("SetDocumentId queue size exceeded limit");return}if(!this.documentPaths$.value&&!this.isDocumentIdInDebounceQueue||l>a&&u>a){yield this.setDocumentIdImpl(t,i,o),this.lastSetDocumentIdExecutionTime=c;return}this.documentPaths$.next(null),this.isDocumentIdInDebounceQueue=!0,this.draftLocationMap={locations:[],options:void 0},this.queueSize++,this.setDocumentIdSubject.next({documentId:t,clientOrganizationId:i,options:o??void 0});return}catch(a){this.loggingService.catch("Error in debounceSetDocuments:",a)}})}setDocumentIdImpl(t,i,o){return I(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: setDocumentIdImpl","color: green;");try{let s=this.authService.getUser();if(!s)return;this.currentDocumentId&&this.documentPaths$.value&&(yield this.callPreDocumentIdChangeFunctions(this.documentPaths$.value));let a=this.currentDocumentId;if(this.apiKey){let c=`${Tr(t)}`,l=o?.folderId,u=o?.folderId?wo(o?.folderId):void 0,d=o?.locationId,f=o?.allDocuments,g=o?.optimisticPermissions,p=s?.organizationId?i?Fi(i):s?.organizationId:void 0,_=J(),T=Td.SET_DOCUMENTS;this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:_,methodName:Et.INIT_DOCUMENTS,moduleName:T,source:"internal",payload:{documentIds:this.documentIds$.value.map(U=>U.clientDocumentId),organizationId:i??s?.clientOrganizationId??""}});let D=J(),b=Id.SET_DOCUMENTS;this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:D,moduleName:b,methodName:_t.INIT_DOCUMENTS,source:"internal",payload:{documentIds:this.documentIds$.value.map(U=>U.clientDocumentId),organizationId:i??s?.clientOrganizationId??""}});let G=J(),M=vd.GET_RECORDER_ANNOTATIONS;if(this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:G,moduleName:M,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,source:"internal",payload:{documentIds:this.documentIds$.value.map(U=>U.clientDocumentId),organizationId:i??s?.clientOrganizationId??""}}),yield Promise.allSettled([this.commentResolverService.resolveCommentAnnotations({request:{documentIds:this.documentIds$.value.map(U=>U.clientDocumentId),organizationId:i??s?.clientOrganizationId??""},uniqueId:_,moduleName:T}),this.reactionResolverService.resolveReactionAnnotations({request:{documentIds:this.documentIds$.value.map(U=>U.clientDocumentId),organizationId:i??s?.clientOrganizationId??""},uniqueId:D,moduleName:b}),this.recorderResolverService.resolveRecorderAnnotations({request:{documentIds:this.documentIds$.value.map(U=>U.clientDocumentId),organizationId:i??s?.clientOrganizationId??""},uniqueId:G,moduleName:M})]),this.currentDocumentId!==c||this.documentPaths$.value?.organizationId!==p){this.loggingService.log("setting new docid"),this.currentDocumentId=c;let U=new xT,k=new qy;U.clientDocumentId=t,k.clientDocumentId=t,U.folderId=l,k.folderId=l,U.locationId=d,k.locationId=d,U.allDocuments=f,U.optimisticPermissions=g,k.allDocuments=f,k.optimisticPermissions=g,U.veltFolderId=u,k.veltFolderId=u,U.documentId=c,k.documentId=c,p&&(U.organizationId=p,U.clientOrganizationId=i??s?.clientOrganizationId,k.organizationId=p,k.clientOrganizationId=i??s?.clientOrganizationId);let S=`${this.apiKey}`,A=`apiKey/${this.apiKey}`;p&&(S=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATIONS}/${U.organizationId}`,A=`${A}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATIONS}/${U.organizationId}`),k.organization=`apiKey/${this.apiKey}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATIONS}`,k.document=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}`,U.presence=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_PRESENCE}/`,U.cursor=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_CURSOR}/`,U.comment=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_COMMENT}/`,k.comment=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_COMMENT}`,U.multiThread=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_MULTI_THREAD}/`,k.multiThread=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_MULTI_THREAD}`,U.tag=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_TAG}/`,U.area=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_AREA}/`,k.area=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_AREA}`,U.arrow=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_ARROW}/`,U.selection=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_SELECTION}/`,U.audioHuddle=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_AUDIO_HUDDLE}/`,U.huddle=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_HUDDLE}/`,U.recorder=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_RECORDER}/`,k.recorder=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_RECORDER}`,U.flock=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_FOLLOW_ALONG}/`,U.syncVideoPlayer=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_SYNC_VIDEO_PLAYER}/`,U.liveState=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_LIVE_STATE}/`,U.liveStateSingleEditorMode=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_LIVE_STATE}/default/singleEditorMode`,U.reaction=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_REACTION}/`,k.reaction=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_REACTION}`,U.crdt=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_CRDT}/`,k.crdt=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_CRDT}`,U.customerMetadata=`${this.apiKey}/${v.FIREBASE_PARTIAL_PATH_CUSTOMER_METADATA}/`,U.views=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_VIEWS}/`,k.notificationViews=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATION_VIEWS}`,k.documentViews=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_DOCUMENT_VIEWS}`,k.locationViews=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_LOCATION_VIEWS}`,U.notifications=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATIONS}/`,U.metadata=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_METADATA}/`,U.users=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_USERS}/`,U.documentIam=`${S}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_IAM}/`,U.workspaceIam=`${this.apiKey}/${v.FIREBASE_PARTIAL_PATH_IAM}/`,U.groupContacts=`${S}/${v.FIREBASE_PARTIAL_PATH_CONTACTS}/${v.FIREBASE_PARTIAL_PATH_GROUPS}/`,U.globalContacts=`${S}/${v.FIREBASE_PARTIAL_PATH_CONTACTS}/${v.FIREBASE_PARTIAL_PATH_GLOBAL}/`,U.logins=`${S}/${v.FIREBASE_PARTIAL_PATH_CONTACTS}/${v.FIREBASE_PARTIAL_PATH_LOGINS}/`,U.userFeedback=`${S}/${v.FIREBASE_PARTIAL_PATH_USER_REQUESTS}/${v.FIREBASE_PARTIAL_PATH_FEEDBACK}/`,U.userReportBugs=`${S}/${v.FIREBASE_PARTIAL_PATH_USER_REQUESTS}/${v.FIREBASE_PARTIAL_PATH_BUGS}/`,U.userContactUs=`${S}/${v.FIREBASE_PARTIAL_PATH_USER_REQUESTS}/${v.FIREBASE_PARTIAL_PATH_CONTACT_US}/`,p&&(U.organizationMetadata=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_METADATA}/`,U.organizationIam=`${S}/${v.FIREBASE_PARTIAL_PATH_IAM}/`,U.organizationGroups=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_GROUPS}/`,U.organizationNotifications=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/`,c&&(U.organizationNotificationsWithDocumentId=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/`,U.heartbeatByDocument=`${S}/${v.FIREBASE_PARTIAL_PATH_HEARTBEAT_BY_DOCUMENT}/${c}/`),U.organizationNotificationsLastNotificationTimestamp=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/${v.FIREBASE_PARTIAL_PATH_LAST_NOTIFICATION_TIMESTAMP}/${v.FIREBASE_PARTIAL_PATH_DOCS}/`,U.organizationNotificationsUsers=`${S}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/${v.FIREBASE_PARTIAL_PATH_USERS}/`,U.heartbeat=`${S}/${v.FIREBASE_PARTIAL_PATH_HEARTBEAT}/`),k.organizationUsers=`${A}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_USERS}`,k.users=`${A}/${v.FIREBASE_PARTIAL_PATH_CENTRAL_USERS}`,k.documentUsers=`${A}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${c}/${v.FIREBASE_PARTIAL_PATH_DOCUMENT_USERS}`,k.notificationDocs=`${A}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATION_DOCS}`,k.notificationUsers=`${A}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATION_USERS}`,this.documentPaths$.next(U),this.firestorePaths$.next(k),U?.clientOrganizationId&&U?.organizationId&&!(U?.clientOrganizationId===this.getOrganizationConfig()?.clientOrganizationId&&U?.organizationId===this.getOrganizationConfig()?.organizationId)&&this.setOrganizationConfig({organizationId:U?.organizationId,clientOrganizationId:U?.clientOrganizationId}),Promise.allSettled([this.updateFolderMetadata(),this.updateDocumentMetadata(),this.fetchLocationMetadata(),this.updateOrganizationMetadata()]),a&&this.location$.value&&this.removeLocation({}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Doc.SET_DOCUMENTS_SUCCESS,payload:{documentId:c,clientDocumentId:t}}),this.analyticsService.trackEvent(L.Events.Doc.SET_DOCUMENTS_SUCCESS,{documentId:c,clientDocumentId:t},!0,this.getUserIdForAnalytics())}}else this.loggingService.catch("Error in setDocumentIdImpl: API key is not provided.")}catch(s){this.loggingService.catch("Error in setDocumentIdImpl: ",s)}})}unsetDocumentId({source:t,unsetDocumentPaths:i}){this.loggingService.log("%c[WB] Calling FUNCTION: unsetDocumentId","color: green;");try{t==="internal"&&this.analyticsService.trackEvent(L.Events.Core.UNSET_DOCUMENTS_TRIGGERED,{payload:{methodName:"unsetDocumentId",source:t}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Doc.UNSET_DOCUMENTS_TRIGGERED,methodName:kn.UNSET_DOCUMENT_ID,source:t}),this.unsetDocumentImpl({source:t,unsetDocumentPaths:i})}catch(o){this.loggingService.catch("Error in unsetDocumentId: ",o)}}unsetDocumentImpl({source:t,unsetDocumentPaths:i}){this.loggingService.log("%c[WB] Calling FUNCTION: unsetDocumentImpl","color: green;");try{let o=JSON.parse(JSON.stringify(this.documentIds$.value??[])),s=JSON.parse(JSON.stringify(this.documentPaths$.value?.folderId??"")),a=this.getDocContext();this.currentDocumentId&&this.documentPaths$.value&&this.callPreDocumentIdChangeFunctions(this.documentPaths$.value),i&&(this.documentPaths$.next(null),this.firestorePaths$.next(null)),this.currentDocumentId=null,this.location$.next(null),this.excludedLocationIds$.next([]),this.documentMetadata$.next(null),this.locationMetadata$.next(null),this.locations$.next({}),this.documentIds$.next([]),this.setDocContext(null),this.userPermissionService?.revokeAccessOnDocumentUnset({documentIds:o,folderId:s,context:a}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Doc.UNSET_DOCUMENTS_SUCCESS,source:t}),this.analyticsService.trackEvent(L.Events.Doc.UNSET_DOCUMENTS_SUCCESS,{documentId:this.currentDocumentId,documentMetadata:this.documentMetadata$.value?.[this.currentDocumentId??""],message:t==="external"?"User unset document id":"System unset document id",source:t},!0,this.getUserIdForAnalytics())}catch(o){this.loggingService.catch("Error in unsetDocumentImpl: ",o)}}unsetDocuments({source:t,unsetDocumentPaths:i=!0}){this.loggingService.log("%c[WB] Calling FUNCTION: unsetDocuments","color: green;");try{t==="internal"&&this.analyticsService.trackEvent(L.Events.Core.UNSET_DOCUMENTS_TRIGGERED,{payload:{methodName:"unsetDocuments",source:t}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Doc.UNSET_DOCUMENTS_TRIGGERED,source:t,methodName:kn.UNSET_DOCUMENTS}),this.unsetDocumentImpl({source:t,unsetDocumentPaths:i})}catch(o){this.loggingService.catch("Error in unsetDocuments: ",o)}}addPreDocumentIdChangeFunction(t,i){try{this.loggingService.log("%c[WB] Calling FUNCTION: addPreDocumentIdChangeFunction","color: green;"),this.preDocumentIdChangeFunctions.set(t,i)}catch(o){this.loggingService.catch("Error in addPreDocumentIdChangeFunction: ",o)}}callPreDocumentIdChangeFunctions(t){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling FUNCTION: callPreDocumentIdChangeFunctions","color: green;");for(let[i,o]of this.preDocumentIdChangeFunctions)try{yield o(t)}catch(s){this.loggingService.catch("Error in callPreDocumentIdChangeFunctions: ",s)}}catch(i){this.loggingService.catch("Error in callPreDocumentIdChangeFunctions: ",i)}})}fetchOrganizationMetadata(t){return I(this,null,function*(){this.loggingService.log("%c[WB] Calling FUNCTION: fetchOrganizationMetadata","color: green;");try{if(!t&&this.getOrganizationConfig()&&(t=this.getOrganizationConfig()),this.db&&t?.organizationId){let i=t?.organizationId,o=t?.clientOrganizationId,s=this.authService.getUser()?.userId??"",a=yield this.userPermissionService?.getUserPermissionsFromCacheOrFetch({organizationId:o});if(s&&a?.[s]?.organization?.[o]?.errorCode===Oo.PERMISSION_DENIED)return;yield this.commonDbService?.getData({feature:"organizationMetadata",properties:{apiKey:this.apiKey??"",organizationId:i,field:"metadata"}}).then(c=>{c&&!c?.errorCode&&this.organizationMetadata$.next(le(x({},this.organizationMetadata$.value),{[i]:c}))}).catch(c=>{this.loggingService.catch("Error in fetchOrganizationMetadata: ",c)})}}catch(i){this.loggingService.catch("Error in fetchOrganizationMetadata: ",i)}})}fetchDocumentMetadata(t){return I(this,null,function*(){try{if(this.db&&this.authService.getUser()){let i=this.documentPaths$.value,o=this.documentMetadata$.value;if(t=t.filter(s=>!o?.[s.documentId]),t?.some(s=>!s?.documentId||!s?.clientDocumentId)||!i)return;if(this.commonDbService?.shouldUseFirestore()){let s=i?.folderId,a=[],c={organizationId:i?.clientOrganizationId,folderId:s},l=[],u=20;for(let f=0;f<t.length;f+=u)l.push(t.slice(f,f+u));l.forEach(f=>{let g=JSON.parse(JSON.stringify(c));g.documentIds=f.map(p=>p.clientDocumentId),a.push(this.fetchDocuments(g))});let d={};a.length>0&&(yield Promise.all(a).then(f=>{f?.forEach(g=>{g?.forEach(p=>{p?.metadata?.documentId&&(d[p.metadata.documentId]=p.metadata)})}),this.setAllDocumentMetadata(x(x({},this.documentMetadata$.value),d))}).catch(f=>{this.loggingService.catch("Error in fetchDocumentMetadata: ",f)}))}else o?.[i?.documentId??t?.[0]?.documentId]||this.commonDbService?.queryData({feature:"allDocuments",properties:{apiKey:this.apiKey??"",organizationId:i?.organizationId,documentId:i?.documentId??t?.[0]?.documentId,skipObjectValues:!0}}).then(s=>{s?.documentId&&this.setDocumentMetadata(s.documentId,s)}).catch(s=>{this.loggingService.catch("Error in fetchDocumentMetadata: ",s)})}}catch(i){this.loggingService.catch("Error in fetchDocumentMetadata: ",i)}})}fetchLocationMetadata(){return I(this,null,function*(){try{if(this.db&&this.authService.getUser()){let t=this.documentPaths$.value,i=this.documentIds$.value,o=t?.folderId,s=t?.allDocuments,a=[],c={organizationId:t?.clientOrganizationId,folderId:o,allDocuments:s},l=[],u=20;for(let f=0;f<i.length;f+=u)l.push(i.slice(f,f+u));l.forEach(f=>{let g=JSON.parse(JSON.stringify(c));g.documentIds=f.map(p=>p.clientDocumentId),a.push(this.fetchLocations(g))});let d=this.locationMetadata$.value??{};a.length>0&&Promise.all(a).then(f=>{f?.forEach(g=>{g?.forEach(p=>{p?.metadata?.documentId&&(d[p.metadata.documentId]=le(x({},d?.[p.metadata.documentId]??{}),{[p.location.id]:p}))})}),Object.keys(d||{}).length>0&&this.locationMetadata$.next(d)}).catch(f=>{this.loggingService.catch("Error in fetchLocationMetadata: ",f)})}}catch(t){this.loggingService.catch("Error in fetchLocationMetadata: ",t)}})}getLocationMetadatas(){return this.locationMetadata$.value}subscribeToCustomerMetadata(){this.loggingService.log("%c[WB] Calling FUNCTION: subscribeToCustomerMetadata","color: green;");try{if(this.customerMetadataSubscription)return;this.db&&this.authService.getUser()&&this.documentPaths$.value&&(this.customerMetadataSubscription=this.commonDbService?.dbListener({feature:"customerMetadata",properties:{skipFirestore:!0}}).pipe(ts(i=>ue(null))).subscribe(i=>{this.customerMetadata$.next(i?.data)}))}catch(t){this.loggingService.catch("Error in subscribeToCustomerMetadata: ",t)}}getDocumentId(){return this.loggingService.log("%c[WB] Calling FUNCTION: getDocumentId","color: green;"),this.documentPaths$.value?.documentId}getClientDocumentId(){return this.loggingService.log("%c[WB] Calling FUNCTION: getClientDocumentId","color: green;"),this.documentPaths$.value?.clientDocumentId}getDocumentIds$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getDocumentIds$","color: green;"),this.documentIds$.asObservable().pipe(fe(t=>t?.slice()))}getDocumentIds(){return this.loggingService.log("%c[WB] Calling FUNCTION: getDocumentIds","color: green;"),this.documentIds$.value?.slice()}getLocationMetadata$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getLocationMetadata$","color: green;"),this.locationMetadata$.asObservable().pipe()}getDocumentPaths$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getDocumentPaths$","color: green;"),this.documentPaths$.asObservable()}getFirestorePaths$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getFirestorePaths$","color: green;"),this.firestorePaths$.asObservable()}getDocumentPaths(){return this.loggingService.log("%c[WB] Calling FUNCTION: getDocumentPaths","color: green;"),this.documentPaths$.value}generateDocumentId(t){try{return`${Tr(t)}`}catch(i){return this.loggingService.catch("Error in generateDocumentId: ",i),""}}generateOrganizationId(t){try{return`${Fi(t)}`}catch(i){return this.loggingService.catch("Error in generateOrganizationId: ",i),""}}getFirestorePaths(){return this.loggingService.log("%c[WB] Calling FUNCTION: getFirestorePaths","color: green;"),this.firestorePaths$.value}setLocation(o){return I(this,arguments,function*({location:t,source:i="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setLocation","color: green;"),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_LOCATIONS_TRIGGERED,{payload:{locations:[t],options:void 0,methodName:"setLocation",source:i}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_LOCATIONS_TRIGGERED,source:i,methodName:kn.SET_LOCATION,payload:{locations:[t],options:void 0}}),this.setLocationsImpl({locations:[t]})}catch(s){this.loggingService.catch("Error in setLocation: ",s)}})}setLocations(s){return I(this,arguments,function*({locations:t,options:i,source:o="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setLocations","color: green;"),o==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_LOCATIONS_TRIGGERED,{payload:{locations:t,options:i,methodName:"setLocations",source:o}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_LOCATIONS_TRIGGERED,methodName:kn.SET_LOCATIONS,source:o,payload:{locations:t,options:i}}),this.setLocationsImpl({locations:t,options:i})}catch(a){this.loggingService.catch("Error in setLocations: ",a)}})}getValidLocations(t){try{let i=[];return t&&Array.isArray(t)&&t.forEach(o=>{if(o&&typeof o=="object"){let s=!0;o?.version&&(!o?.version?.id||!o?.version?.name)&&(this.loggingService.catch(`Error in setting location for locationId: ${o?.id}, If you're setting version then add id and name fields to version object.`),s=!1),s&&i.push(o)}}),i}catch(i){this.loggingService.catch("Error in getValidLocations: ",i)}return t}setRootLocation(o){return I(this,arguments,function*({location:t,source:i="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: setRootLocation","color: green;"),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_ROOT_LOCATION_TRIGGERED,{payload:{location:t,methodName:"setRootLocation",source:i}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_ROOT_LOCATION_TRIGGERED,methodName:kn.SET_ROOT_LOCATION,source:i,payload:{location:t}});let s=Object.values(this.locations$.value).map(a=>a.location).filter(a=>String(a.id)!==String(t.id));this.setLocationsImpl({locations:[t,...s],options:{rootLocationId:t.id}})}catch(s){this.loggingService.catch("Error in DocService setRootLocation:",s)}})}setLocationsImpl({locations:t,options:i}){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: setLocationsImpl","color: green;"),t.length===0)return;if(!this.authService.getUser()){!i?.appendLocation&&t.length>0&&(this.draftLocationMap.options=le(x(x({},this.draftLocationMap.options??{}),i??{}),{rootLocationId:t[0].id})),this.draftLocationMap.locations=[...this.draftLocationMap.locations,...t],this.draftLocationMap.options=x(x({},this.draftLocationMap.options),i);return}let s=this.getValidLocations(t),a=[],c=[];this.location$.value?.location.id&&c.push(this.location$.value?.location.id),c=[...c,...Object.values(this.locations$.value).map(d=>d.location.id)].filter(d=>d!==void 0);let l;if(i?.rootLocationId&&i?.rootLocationId!==this.location$.value?.location.id&&(l=s.find(d=>d.id===i?.rootLocationId),!l)){this.loggingService.catch(`Error in setting locations, rootLocationId: ${i?.rootLocationId} not found in locations.`);return}if(i?.appendLocation){if(l){let d=Sd(l),f=Tr(JSON.stringify(d));d.id&&a.push({locationId:f,location:d}),this.location$.next({locationId:f,location:d})}}else{l||(l=s[0]);let d=Sd(l),f=Tr(JSON.stringify(d));d.id&&a.push({locationId:f,location:d}),this.location$.next({locationId:f,location:d})}let u=[];return s.slice(i?.appendLocation?0:1).forEach(d=>{if(d.id!==this.location$.value?.location.id){let f=x({},d),g=this.locations$.value;d?.id&&Object.keys(g).forEach(D=>{let b=g[D];b.location?.id===d.id&&(f=x(x({},b.location),d),delete g?.[D])});let p=this.genarateLocationId(f),_={locationId:p,location:f};f.id&&a.push({locationId:p,location:f}),u.push(_);let T=le(x({},g),{[p]:_});this.locations$.next(T)}}),this.updateDocumentLocationMetadata(a),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Doc.SET_LOCATIONS_SUCCESS,methodName:kn.SET_LOCATIONS,payload:{locations:s,options:i}}),this.analyticsService.trackEvent(L.Events.Doc.SET_LOCATIONS_SUCCESS,{locations:s,options:i},!0,this.getUserIdForAnalytics()),u}catch(o){this.loggingService.catch("Error in setLocationImpl: ",o);return}}addLocation({location:t,source:i="internal"}){try{return this.loggingService.log("%c[WB] Calling FUNCTION: addLocation","color: green;"),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.SET_LOCATIONS_TRIGGERED,{payload:{locations:[t],options:{appendLocation:!0},methodName:"addLocation",source:i}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.SET_LOCATIONS_TRIGGERED,methodName:kn.ADD_LOCATION,source:i,payload:{locations:[t],options:{appendLocation:!0}}}),this.setLocationsImpl({locations:[t],options:{appendLocation:!0}})}catch(o){this.loggingService.catch("Error in DocService addLocation:",o);return}}removeLocation({location:t,source:i="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: removeLocation","color: green;"),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.REMOVE_LOCATIONS_TRIGGERED,{payload:{locations:[t],methodName:"removeLocation",source:i}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.REMOVE_LOCATIONS_TRIGGERED,source:i,methodName:kn.REMOVE_LOCATION,payload:{locations:[t]}}),t&&this.removeLocationsImpl([t],i)}catch(o){this.loggingService.catch("Error in removeLocation: ",o)}}removeLocations({locations:t,source:i="internal"}){try{this.loggingService.log("%c[WB] Calling FUNCTION: removeLocations","color: green;"),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.REMOVE_LOCATIONS_TRIGGERED,{payload:{locations:t,methodName:"removeLocations",source:i}}),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.REMOVE_LOCATIONS_TRIGGERED,methodName:kn.REMOVE_LOCATIONS,source:i,payload:{locations:t}}),this.removeLocationsImpl(t,i)}catch(o){this.loggingService.catch("Error in removeLocations: ",o)}}removeLocationsImpl(t,i="internal"){try{this.loggingService.log("%c[WB] Calling FUNCTION: removeLocations","color: green;"),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.REMOVE_LOCATIONS_TRIGGERED,{payload:{locations:t},methodName:"removeLocations",message:"System removed locations",source:i},!0,this.getUserIdForAnalytics()),t?t.forEach(o=>{let s=this.genarateLocationId(o);this.getLocation()?.locationId===s&&(this.location$.next(null),i!=="internal"&&(this.draftLocationMap.locations=this.draftLocationMap.locations.filter(a=>a.id!==o.id))),this.removeCustomLocation(o)}):(this.location$.next(null),this.locations$.next({}),i!=="internal"&&(this.draftLocationMap.options=void 0,this.draftLocationMap.locations=[])),this.analyticsService.trackEvent(L.Events.Doc.REMOVE_LOCATIONS_SUCCESS,{payload:{locations:t},source:i},!0,this.getUserIdForAnalytics())}catch(o){this.loggingService.catch("Error in removeLocation: ",o)}}unsetLocationIds(t,i="internal"){try{this.loggingService.log("%c[WB] Calling FUNCTION: unsetLocationIds","color: green;"),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Core.UNSET_LOCATIONS_TRIGGERED,methodName:kn.UNSET_LOCATION_IDS,source:i,payload:{locationIds:t}}),i==="internal"&&this.analyticsService.trackEvent(L.Events.Core.UNSET_LOCATIONS_TRIGGERED,{payload:{locationIds:t},methodName:"unsetLocationIds",message:"System unset location ids",source:i},!0,this.getUserIdForAnalytics()),t?.length?t.forEach(o=>{this.getLocation()?.location.id===o&&(this.location$.next(null),i!=="internal"&&(this.draftLocationMap.locations=this.draftLocationMap.locations.filter(s=>s.id!==o))),this.removeCustomLocationId(o)}):(this.location$.next(null),this.locations$.next({}),i!=="internal"&&(this.draftLocationMap.options=void 0,this.draftLocationMap.locations=[])),this.coreActionsService.triggerAction($.INIT_UPDATE,{event:L.Events.Doc.REMOVE_LOCATIONS_SUCCESS,methodName:kn.REMOVE_LOCATIONS_SUCCESS,source:i,payload:{locationIds:t}}),this.analyticsService.trackEvent(L.Events.Doc.REMOVE_LOCATIONS_SUCCESS,{payload:{locationIds:t},source:i},!0,this.getUserIdForAnalytics())}catch(o){this.loggingService.catch("Error in unsetLocationIds: ",o)}}getLocation$(){return this.loggingService.log("%c[WB] Calling FUNCTION: getLocation$","color: green;"),this.location$.asObservable()}getLocation(){return this.loggingService.log("%c[WB] Calling FUNCTION: getLocation$","color: green;"),this.location$.value?JSON.parse(JSON.stringify(this.location$.value)):null}excludeLocationIds(t){try{this.excludedLocationIds$.next([...t])}catch(i){this.loggingService.catch("Error in excludeLocationIds: ",i)}}getExcludedLocationIds$(){try{return this.excludedLocationIds$.asObservable()}catch(t){return this.loggingService.catch("Error in getExcludedLocationIds$: ",t),ue([])}}updateOrganizationMetadata(t){return I(this,null,function*(){try{!t&&this.getOrganizationConfig()&&(t=this.getOrganizationConfig());let i=t?.organizationId,o=t?.clientOrganizationId,s=this.documentPaths$.value;if(this.db&&i&&s?.documentId){if(this.organizationMetadata$.value?.[i])return;let c=new kT;c.apiKey=this.configService?.getApiKey()??"",c.organizationId=i,c.clientOrganizationId=o;let l=this.authService.getUser()?.userId??"",u=o?yield this.userPermissionService?.getUserPermissionsFromCacheOrFetch({organizationId:o}):null;!!(l&&o&&u?.[l]?.organization?.[o]?.errorCode===Oo.PERMISSION_DENIED)?this.loggingService.log(`%c[WB] updateOrganizationMetadata skipped \u2014 user does not have access to organization: ${o}`,"color: orange;"):this.userPermissionService?.hasEditAccess({organizationId:i})&&(yield this.commonDbService?.updateData({feature:"organizationMetadata",data:JSON.parse(JSON.stringify(c)),properties:{organizationId:i,documentId:s?.documentId??""}})),yield this.fetchOrganizationMetadata(t)}}catch(i){this.loggingService.catch("Error in updateOrganizationMetadata: ",i)}})}updateFolderMetadata(){return I(this,null,function*(){try{if(this.loggingService.log("%c[WB] Calling FUNCTION: updateFolderMetadata","color: green;"),this.db&&this.authService.getUser()&&this.documentPaths$.value?.folderId){let t=this.documentPaths$.value;if(!t?.veltFolderId||!t?.organizationId)return;if(!(yield this.commonDbService?.getData({feature:"folderMetadata",properties:{organizationId:t?.organizationId??"",folderId:t?.veltFolderId??""}}))?.metadata){let o={folderId:this.documentPaths$.value?.folderId,clientOrganizationId:t?.clientOrganizationId,parentFolderId:"root"};if(this.userPermissionService?.hasEditAccess({folderId:this.documentPaths$.value?.veltFolderId??""})){let s=Dr(this.functions,Ir({url:st?.cloudFunction?.sdkProxy,apiProxyDomain:this.configService?.getApiProxyDomain()}));yield Ad({methodName:"createFolder",data:{type:"createFolder",metadata:o},getSdkProxy:s,userId:this.authService.getUser()?.userId??""})}}}}catch(t){this.loggingService.catch("Error in updateFolderMetadata: ",t)}})}updateDocumentMetadata(){return I(this,null,function*(){try{if(this.db&&this.authService.getUser()){let t=this.documentPaths$.value;if(t){let i=this.getDocumentIds();i.find(s=>s.documentId===t.documentId)||i.push({documentId:t.documentId??"",clientDocumentId:t.clientDocumentId??""});let o=i.map(s=>I(this,null,function*(){let a=new PT;this.clientDocumentMetadataMap?.[s.clientDocumentId]&&(a=x(x({},this.clientDocumentMetadataMap[s.clientDocumentId]),a)),a.apiKey=this.configService?.getApiKey()??"",a.documentId=s.documentId,a.clientDocumentId=s.clientDocumentId,a.organizationId=t.organizationId,a.clientOrganizationId=t.clientOrganizationId,a.pageInfo=Cg(s.clientDocumentId);let c=t?.folderId,l=t?.veltFolderId;a?.pageInfo?.deviceInfo&&delete a?.pageInfo?.deviceInfo;let u=!0,d=this.documentMetadata$.value?.[s.documentId];if(c&&l){let f=this.getDocumentMetadata(s?.documentId??"")??(yield this.commonDbService?.getData({feature:"documentMetadata",properties:{documentId:s?.documentId??"",organizationId:t?.organizationId??"",field:"metadata"}}));f?.clientDocumentId&&!f?.errorCode?f?.folderId&&(f?.folderId!==c||f?.veltFolderId!==l)?(this.loggingService.catch(`Folder id mismatch for document ${s?.clientDocumentId??""}`),u=!1):f?.folderId===c?(c&&(a.folderId=c),l&&(a.veltFolderId=l)):(this.loggingService.catch(`Document ${s?.clientDocumentId??""} is not in the folder ${c??""}`),u=!1):(c&&(a.folderId=c),l&&(a.veltFolderId=l))}if(d){let f={};Object.entries(a).forEach(([g,p])=>{f[g]=p}),ki(f,d)&&(u=!1)}u&&this.userPermissionService?.hasEditAccess({documentId:s?.documentId??"",folderId:t?.allDocuments&&t?.veltFolderId?t?.veltFolderId:void 0})&&(yield this.commonDbService?.updateData({feature:"documentMetadata",data:JSON.parse(JSON.stringify(a)),properties:{organizationId:t?.organizationId??"",documentId:s?.documentId??""}}))}));yield Promise.allSettled(o),yield this.fetchDocumentMetadata(i)}}}catch(t){this.loggingService.catch("Error in updateDocumentMetadata: ",t)}})}updateDocumentLocationMetadata(t){return I(this,null,function*(){try{if(this.db&&this.authService.getUser()){let i=this.documentPaths$.value;if(i){let o=this.getDocumentIds();o.find(s=>s.documentId===i.documentId)||o.push({documentId:i.documentId??"",clientDocumentId:i.clientDocumentId??""});for(let s of o){let a=yield this.commonDbService?.getData({feature:"documentMetadata",properties:{documentId:s?.documentId??"",organizationId:i?.organizationId??"",field:"metadata"}});a?.errorCode&&(a={});let c=[];for(let l of t){let u=new FT;u.locationId=l?.locationId,u.veltLocationId=CC(l?.location?.id??""),u.location=l?.location,u.pageInfo=Cg(s?.clientDocumentId),u?.pageInfo?.deviceInfo&&delete u?.pageInfo?.deviceInfo;let d=le(x({},a),{[v.FIREBASE_PARTIAL_PATH_LOCATIONS]:le(x({},a[v.FIREBASE_PARTIAL_PATH_LOCATIONS]??{}),{[l?.locationId]:u})});this.commonDbService?.shouldUseFirestore()||c.push(this.commonDbService?.updateData({feature:"documentMetadata",data:JSON.parse(JSON.stringify(d)),properties:{documentId:s?.documentId??"",organizationId:i?.organizationId??""}}));let f=this.locationMetadata$.value;if(f||(f={}),l?.location?.id){let g=f?.[s.documentId],p=g?.[l?.location?.id??""];f&&(g||(f[s.documentId]={}),p||(f[s.documentId][l?.location?.id??""]={}),f[s.documentId][l?.location?.id??""]=le(x({},p),{location:l?.location})),Object.keys(f||{}).length>0&&this.locationMetadata$.next(f)}}yield Promise.allSettled(c)}}}}catch(i){this.loggingService.catch("Error in updateDocumentLocationMetadata: ",i)}})}genarateLocationId(t){try{return t&&typeof t=="object"?Tr(JSON.stringify(Sd(t))):0}catch(i){return this.loggingService.catch("Error in genarateLocationId: ",i),0}}removeCustomLocation(t,i="internal"){try{let o=this.genarateLocationId(t),s=this.locations$.value;s[o]&&(delete s[o],this.locations$.next(x({},s)),i!=="internal"&&this.isDocumentIdInDebounceQueue&&(this.draftLocationMap.locations=this.draftLocationMap.locations.filter(a=>a.id!==t.id)))}catch(o){this.loggingService.catch("Error in DocService removeLocation:",o)}}removeCustomLocationId(t,i="internal"){try{this.loggingService.log("%c[WB] Calling FUNCTION: removeCustomLocationId","color: green;");let o=this.locations$.value;Object.entries(o).forEach(([s,a])=>{a.location.id===t&&(delete o[s],this.locations$.next(x({},o)),i!=="internal"&&this.isDocumentIdInDebounceQueue&&(this.draftLocationMap.locations=this.draftLocationMap.locations.filter(c=>c.id!==t)))})}catch(o){this.loggingService.catch("Error in DocService removeCustomLocationId:",o)}}getLocationByClientLocationId(t){try{let i=this.getLocation()?.location;if(i?.id===t)return i;{let o=this.getLocations();Object.keys(o).forEach(s=>{let a=o[s];a.location?.id===t&&(i=a.location)})}return i}catch(i){this.loggingService.catch("Error in DocService getLocationByClientLocationId:",i);return}}removeLocationIfNotInDom(){try{let t=this.locations$.value,i=document.querySelectorAll(`[${v.ATTRIBUTES.VELT_LOCATION}]`),o=[];i.forEach(s=>{let a=s.getAttribute(v.ATTRIBUTES.VELT_LOCATION);if(a){let c=JSON.parse(a),l=this.genarateLocationId(c);o.push(l)}}),Object.keys(t).forEach(s=>{let a=t[s];o.includes(a.locationId)||delete t[s]}),this.locations$.next(x({},t))}catch(t){this.loggingService.catch("Error in DocService removeLocationIfNotInDom:",t)}}getLocations$(){try{return this.locations$.asObservable()}catch(t){return this.loggingService.catch("Error in DocService getLocations$:",t),ue({})}}getLocations(){try{return this.locations$.value}catch(t){return this.loggingService.catch("Error in DocService getLocations:",t),{}}}getLocationFromElement(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: getLocationFromElement","color: green;");let i=null;if(t?.getAttribute(v.ATTRIBUTES.VELT_LOCATION)?i=t:i=t.closest(`[${v.ATTRIBUTES.VELT_LOCATION}]`),i){let o=i?.getAttribute(v.ATTRIBUTES.VELT_LOCATION);if(o){let s=JSON.parse(o);return{locationId:this.genarateLocationId(s),location:s}}}return null}catch(i){return this.loggingService.catch("Error in DocService getLocationFromElement:",i),null}}getElementMapWithLocation(){try{this.loggingService.log("%c[WB] Calling FUNCTION: getElementMapWithLocation","color: green;");let t={};return document.querySelectorAll(`[${v.ATTRIBUTES.VELT_LOCATION}], [${v.ATTRIBUTES.VELT_LOCATION_ID}]`).forEach(o=>{if(o.getAttribute(v.ATTRIBUTES.VELT_LOCATION)){let s=this.getLocationFromElement(o);s?.locationId&&(t[s.locationId]={element:o,location:s})}else if(o.getAttribute(v.ATTRIBUTES.VELT_LOCATION_ID)){let s=o.getAttribute(v.ATTRIBUTES.VELT_LOCATION_ID);if(s){let a=this.getLocationByClientLocationId(s);a?.locationId&&(t[a.locationId]={element:o,location:a});let c={id:s},l=this.genarateLocationId(c);t[s]={element:o,location:{locationId:l,location:c}}}}}),t}catch(t){return this.loggingService.catch("Error in DocService getElementMapWithLocation:",t),{}}}getAdditionLocationFromElement(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: getAdditionLocationFromElement","color: green;");let i;if(i=t?.closest(`[${v.ATTRIBUTES.VELT_LOCATION}], [${v.ATTRIBUTES.VELT_LOCATION_ID}]`),i){if(i?.getAttribute(v.ATTRIBUTES.VELT_LOCATION)){let o=i?.getAttribute(v.ATTRIBUTES.VELT_LOCATION);if(o)return JSON.parse(o)}else if(i?.getAttribute(v.ATTRIBUTES.VELT_LOCATION_ID)){let o=i?.getAttribute(v.ATTRIBUTES.VELT_LOCATION_ID);if(o)return{id:o}}}return null}catch(i){return this.loggingService.catch("Error in DocService getAdditionLocationFromElement:",i),null}}getAdditionalDocumentIdFromElement(t){try{return t?.closest(`[${v.ATTRIBUTES.VELT_DOCUMENT_ID}]`)?.getAttribute(v.ATTRIBUTES.VELT_DOCUMENT_ID)||null}catch(i){return this.loggingService.catch("Error in DocService getAdditionalDocumentIdFromElement:",i),null}}getDocumentMetadata(t){try{return t?this.documentMetadata$.value?.[t]||null:this.documentMetadata$.value?.[this.documentPaths$.value?.documentId??""]||null}catch(i){return this.loggingService.catch("Error in DocService getDocumentMetadata:",i),null}}getAllDocumentMetadata$(t){return this.getAllDocumentMetadataMap$().pipe(fe(i=>i?.[t??this.documentPaths$.value?.documentId??""]||null),it(Ft))}getAllDocumentMetadata(){try{return Object.values(this.documentMetadata$.value||{})}catch(t){return this.loggingService.catch("Error in DocService getAllDocumentMetadata:",t),[]}}getAllDocumentMetadataMap$(){return this.documentMetadata$.asObservable().pipe(fe(t=>t||{}),it(Ft))}getAllDocumentMetadataMap(){try{return this.documentMetadata$.value||{}}catch(t){return this.loggingService.catch("Error in DocService getAllDocumentMetadata:",t),{}}}getDocumentMetadataOfAvailableDocuments(){try{this.loggingService.log("%c[WB] Calling FUNCTION: getDocumentMetadataOfAvailableDocuments","color: green;");let t=this.documentMetadata$.value||{},i={},o=this.documentPaths$.value?.veltFolderId,s=this.documentPaths$.value?.allDocuments;if(o&&s)Object.values(t).forEach(a=>{a?.documentId&&a?.veltFolderId===o&&(i[a.documentId]=a)});else{let a=this.documentIds$.value;if(a?.length)a.forEach(c=>{let l=t?.[c.documentId];l&&(i[c.documentId]=l)});else if(this.documentPaths$.value?.documentId){let c=t?.[this.documentPaths$.value?.documentId];c&&(i[this.documentPaths$.value?.documentId]=c)}}return Object.values(i)}catch(t){return this.loggingService.catch("Error in DocService getDocumentMetadataOfAvailableDocuments:",t),[]}}getDocumentMetadata$(t){return this.documentMetadata$.asObservable().pipe(fe(i=>i?.[t??this.documentPaths$.value?.documentId??""]||null),it(Ft))}setDocumentMetadata(t,i){try{this.loggingService.log("%c[WB] Calling FUNCTION: setDocumentMetadata","color: green;");let o=JSON.parse(JSON.stringify(this.documentMetadata$.value??{}));o[t]=i,this.documentMetadata$.next(o)}catch(o){this.loggingService.catch("Error in DocService setDocumentMetadata:",o)}}setAllDocumentMetadata(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setAllDocumentMetadata","color: green;"),this.documentMetadata$.next(t)}catch(i){this.loggingService.catch("Error in DocService setAllDocumentMetadata:",i)}}getOrganizationMetadata(t){return this.organizationMetadata$.value?.[t]||null}getOrganizationMetadata$(t){return this.organizationMetadata$.asObservable().pipe(fe(i=>i?.[t]||null))}getOrganizationMetadataMap$(){return this.organizationMetadata$.asObservable().pipe(fe(t=>t||{}),it(Ft))}getCustomerMetadata(){return this.customerMetadata$.value}getCustomerMetadata$(){return this.customerMetadata$.asObservable()}getOrganizationConfig$(){return this.organizationConfig$.asObservable().pipe(it(Ft))}getOrganizationConfig(){return this.organizationConfig$.value}setOrganizationConfig(t){try{this.loggingService.log("%c[WB] Calling FUNCTION: setOrganizationConfig","color: green;");let i=JSON.parse(JSON.stringify(t));this.organizationConfig$.next(i)}catch(i){return this.loggingService.catch("Error in DocService setOrganizationConfig:",i),!1}return!0}getMetadataFromType(t,i){try{switch(t){case"area":return;case"comment":return i?.multiThreadAnnotationId?this.commentService?.getMultiThreadAnnotationById(i.multiThreadAnnotationId)?.metadata:void 0;case"reaction":case"recorder":return i?.commentAnnotationId?this.commentService?.getAnnotationById(i.commentAnnotationId)?.metadata:void 0;default:return}}catch(o){this.loggingService.catch("Error in DocService getMetadataFromType:",o);return}}getDefaultMetadata({clientDocumentId:t,documentId:i}){try{let o=this.documentPaths$.value;if(!o)return;let s=t||o.clientDocumentId,a=i||o.documentId,c=this.getDocumentMetadata(a);if(!c)return;let l=c?.folderId,u=c?.veltFolderId;return x(x({apiKey:this.configService.getApiKey()??void 0,clientDocumentId:s,clientOrganizationId:o.clientOrganizationId,documentId:a,organizationId:o.organizationId},l?{folderId:l}:{}),u?{veltFolderId:u}:{})}catch(o){this.loggingService.catch("Error in DocService getDefaultMetadata:",o);return}}getBaseMetadata(t,i){try{let o,s;i?.element?o=this.getAdditionalDocumentIdFromElement(i.element)||void 0:i?.clientDocumentId&&(o=i.clientDocumentId),o&&(s=this.generateDocumentId(o));let a=this.getMetadataFromType(t,i),c=this.getDefaultMetadata({clientDocumentId:o,documentId:s}),l=a||c||{};return l.sdkVersion=jr(),l}catch(o){return this.loggingService.catch("Error in DocService getBaseMetadata:",o),{}}}getServerId({documentId:t,organizationId:i}){try{return t&&(t=this.generateDocumentId(t)),i&&(i=this.generateOrganizationId(i)),{documentId:t,organizationId:i}}catch(o){return this.loggingService.catch("Error in DocService getServerId:",o),null}}fetchDocuments(t){return I(this,null,function*(){try{if(!this.authService.getUser())return this.loggingService.catch("User not found. Ensure Identify method is called.",void 0,void 0,!0),[];let o=[];if(!t?.organizationId)return this.loggingService.catch("Error in fetchDocuments: organizationId is required"),[];if(t?.folderId){let a=wo(t?.folderId);o.push(Ji("metadata.veltFolderId","==",a))}return t?.documentIds?.length&&!t?.allDocuments&&o.push(Ji("metadata.documentId","in",t?.documentIds?.map(a=>this.generateDocumentId(a)).slice(0,30))),yield this.commonDbService?.queryData({feature:"allDocuments",properties:{firestoreQuery:o,apiKey:this.apiKey??"",organizationId:this.generateOrganizationId(t?.organizationId)??this.documentPaths$.value?.organizationId,documentId:this.documentPaths$.value?.documentId}})}catch(i){return this.loggingService.catch("Error in DocService fetchDocuments:",i),[]}})}fetchLocations(t){return I(this,null,function*(){try{if(!this.authService.getUser())return this.loggingService.catch("User not found. Ensure Identify method is called.",void 0,void 0,!0),[];let o=[];if(!t?.organizationId)return this.commonDbService?.shouldUseFirestore()&&this.loggingService.catch("Error in fetchLocations: organizationId is required"),[];if(t?.folderId){let a=wo(t?.folderId);o.push(Ji("metadata.veltFolderId","==",a))}return t?.documentIds?.length&&!t?.allDocuments&&o.push(Ji("metadata.documentId","in",t?.documentIds?.map(a=>this.generateDocumentId(a)).slice(0,30))),yield this.commonDbService?.queryData({feature:"allLocations",properties:{firestoreQuery:o,apiKey:this.apiKey??"",organizationId:this.generateOrganizationId(t?.organizationId)??this.documentPaths$.value?.organizationId,documentId:this.documentPaths$.value?.documentId}})}catch(i){return this.loggingService.catch("Error in DocService fetchLocations:",i),[]}})}updateDocuments(t){return I(this,null,function*(){try{if(typeof t=="object"&&(t=JSON.parse(JSON.stringify(t??{}))),!this.authService.getUser())return this.loggingService.catch("User not found. Ensure Identify method is called.",void 0,void 0,!0),[];let{organizationId:o,documents:s,folderId:a}=t;if(!o&&(o=this.documentPaths$.value?.clientOrganizationId,!o))return this.loggingService.catch("Error in updateDocuments: organizationId is required"),[];let c=Ts(o);if(!s||s.length===0)return this.loggingService.catch("Error in updateDocuments: documents is required"),[];let l=[],u=this.documentMetadata$.value??{};for(let d of s)if(d?.documentId){d.organizationId=c,d.clientOrganizationId=o,d.clientDocumentId=d.documentId;let f=da(d.documentId);d.documentId=f,d.apiKey=this.configService.getApiKey()??void 0,(a||this.documentPaths$.value?.folderId)&&(d.folderId=a||this.documentPaths$.value?.folderId,d.veltFolderId=wo(a||this.documentPaths$.value?.folderId||""));let g=()=>{if(a&&this.documentPaths$.value?.folderId&&a!==this.documentPaths$.value?.folderId)return;let _=u?.[f];_?u[f]=x(x({},_),d):u[f]=d},p=yield this.commonDbService?.getData({feature:"documentMetadata",properties:{documentId:f,organizationId:c,field:"metadata"}});if(p?.errorCode&&(p={}),p&&p.apiKey&&p.folderId&&a&&p.folderId!=d.folderId){this.loggingService.catch(`Error in updateDocuments: document ${d.clientDocumentId} already exists with different folderId: ${p.folderId}`);continue}if(p&&p.apiKey&&!p.folderId&&d.folderId){this.loggingService.catch(`Error in updateDocuments: document ${d.clientDocumentId} already exists, move this document to folder with REST API`);continue}g(),d&&this.commonDbService&&this.userPermissionService?.hasEditAccess({documentId:d?.documentId??""})&&l.push(this.commonDbService.updateData({feature:"documentMetadata",data:JSON.parse(JSON.stringify(d)),properties:{organizationId:c,documentId:f}}))}yield Promise.all(l),this.setAllDocumentMetadata(u)}catch(i){return this.loggingService.catch("Error in DocService updateDocuments:",i),[]}})}updateLocations(t){return I(this,null,function*(){try{if(!this.authService.getUser())return this.loggingService.catch("User not found. Ensure Identify method is called.",void 0,void 0,!0),[];let{organizationId:o,locations:s,documentIds:a}=t;if((!a||a.length===0)&&(a=this.documentIds$.value.map(d=>d.clientDocumentId)??[],a.length===0))return this.loggingService.catch("Error in updateLocations: documentId is required"),[];if(!o&&(o=this.documentPaths$.value?.clientOrganizationId,!o))return this.loggingService.catch("Error in updateLocations: organizationId is required"),[];if(!s||s.length===0)return this.loggingService.catch("Error in updateLocations: locations is required"),[];let c=a.map(d=>da(d)),l=[],u=this.locationMetadata$.value;u||(u={}),c.forEach(d=>{s.forEach(f=>{let g=this.location$.value;if(f?.id===g?.location?.id&&this.location$.next({locationId:g?.locationId,location:f}),f?.id){delete f?.metadata;let p=CC(f.id),_=u?.[d],T=_?.[f.id];u&&(_||(u[d]={}),T||(u[d][f.id]={}),u[d][f.id]=le(x({},T),{location:f})),f&&this.commonDbService&&l.push(this.commonDbService.updateData({feature:"locationMetadata",data:JSON.parse(JSON.stringify({location:f})),properties:{organizationId:Ts(o),documentId:d,id:p}}))}})}),yield Promise.all(l),Object.keys(u||{}).length>0&&this.locationMetadata$.next(u)}catch(i){return this.loggingService.catch("Error in DocService updateLocations:",i),[]}})}fetchFolders(t){return I(this,null,function*(){try{if(!this.authService.getUser())return this.loggingService.catch("User not found. Ensure Identify method is called.",void 0,void 0,!0),[];let o=[];if(!t?.organizationId)return this.loggingService.catch("Error in fetchFolders: organizationId is required"),{data:[],parentFolders:[]};let s=[],a=this.generateOrganizationId(t?.organizationId);if(t?.folderId){let c=wo(t?.folderId);o=yield this.commonDbService?.getData({feature:"folder",properties:{folderId:c,apiKey:this.apiKey??"",organizationId:a,documentId:this.documentPaths$.value?.documentId}}),o&&(o=[o]),s=yield this.commonDbService?.queryData({feature:"allFolders",properties:{firestoreQuery:[Ji("metadata.veltParentFolderId","==",c)],folderId:c,apiKey:this.apiKey??"",organizationId:a,documentId:this.documentPaths$.value?.documentId}})}else o=yield this.commonDbService?.queryData({feature:"allFolders",properties:{apiKey:this.apiKey??"",organizationId:a,documentId:this.documentPaths$.value?.documentId}});return{data:o,parentFolders:s}}catch(i){return this.loggingService.catch("Error in DocService getFoldersRequest:",i),{data:[],parentFolders:[]}}})}getDocumentIam$(){return this.authService.getUser$().pipe(mt(t=>t?this.documentPaths$.pipe(mt(i=>i?.documentIam?this.commonDbService?.dbListener({feature:"documentIam",properties:{documentId:i.documentId,organizationId:i.organizationId,isCollection:!1}}).pipe(fe(o=>o?.data?.docIamConfig??o?.data),it((o,s)=>JSON.stringify(o??{})===JSON.stringify(s??{}))):ue(null))):ue(null)))}getDocumentAccessType(t){try{return t&&t.features&&t.features.all?t.features.all.restricted?wt.RESTRICTED:wt.PUBLIC:t&&t.documentAccessType?t.documentAccessType:wt.PUBLIC}catch(i){return this.loggingService.catch("Error in DocService getDocumentAccessType:",i),wt.PUBLIC}}changeDocumentAccessType(t){return I(this,null,function*(){try{let i=this.documentPaths$.value;if(i){let o=yield this.commonDbService?.getData({feature:"documentMetadata",properties:{documentId:i?.documentId??"",organizationId:i?.organizationId??"",field:"docIamConfig"}});if(o?.errorCode)return;switch(delete o.documentAccessType,o.features||(o.features={}),o.features.all||(o.features.all={}),t){case wt.PUBLIC:o.features.all.restricted=!1;break;case wt.RESTRICTED:o.features.all.restricted=!0,o.features.all.guestMode=!1;break;default:break}this.commonDbService?.updateData({feature:"documentAccessType",data:JSON.parse(JSON.stringify(o)),properties:{documentId:i?.documentId??"",organizationId:i?.organizationId??""}})}}catch(i){this.loggingService.catch("Error in DocService changeDocumentAccessType:",i)}})}getUserIdForAnalytics(){try{return this.authService?.getAuthUser()?.uid||""}catch(t){return this.loggingService.catch("Error in DocService getUserIdForAnalytics:",t),""}}setUIState(t){try{this.uiState.next(x(x({},this.uiState.value),t))}catch(i){this.loggingService.catch("Error in DocService setUIState:",i)}}getUIState$(){return this.uiState.asObservable()}};e.\u0275fac=function(i){return new(i||e)(w(Lt),w(Cr),w(Wy),w(Ev),w(Rr),w(_e),w(zo),w(qo),w(ec),w(It),w(dr),w(li))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var zt=(()=>{let e=class e{constructor(t,i,o,s,a){this.analyticsService=t,this.authService=i,this.coreActionsService=o,this.docService=s,this.loggingService=a,this.resolveOrganizationUsers=new Y(!0),this.resolveFolderUsers=new Y(!0),this.resolveDocumentUsers=new Y(!0),this.unresolvedUsers=new Y([]),this.resolveTimeout=60*1e3,this.resolveAttempts=new Map,this.subscriptions=new gt,this.userDataProvider$=new Y(null),this.anonymousUserDataProvider$=new Y(null),this.userIdByEmailCache={},this.userById$=new Y({}),this.customContactUserById$=new Y({}),this.userByIdCalled$=new Y({}),this.pendingResolutions=new Set,this.getUserById=c=>{try{let l=this.userById$.value?.[c],u=this.customContactUserById$.value?.[c];return u?l?x(x({},l),u):u:l}catch(l){this.loggingService.catch("Error in UsersService getUserById:",l);return}};try{this.docService.setUsersService(this),this.analyticsService.setUserService(this),this.authService.setUsersService(this),this.docService.getDocumentPaths$().pipe(Ct(c=>!!c),mt(()=>this.getUnresolvedUsers$().pipe(Ct(c=>c.length>0),Au(300),Nt(20),mt(c=>{let l=this.docService.getOrganizationConfig()?.organizationId;return this.commonDbService?this.commonDbService?.dbListener({feature:"allOrganizationUsers",properties:{organizationId:l,isCollection:!0,useQuery:!0,firestoreQuery:[MM(Ji("user.userId","in",c.slice(0,20)))]}}).pipe(fe(u=>u?.data),Ks(u=>{if(u&&typeof u=="object"){delete u.undefined,delete u.null;let d=Object.values(u??{});this.setUserByIds(d.map(g=>g.user));let f=c.filter(g=>!d.some(p=>p.user.userId===g));f.length!==c.length&&this.setUnresolvedUsers(f)}})):ue([])})))).subscribe()}catch(c){this.loggingService.catch("Error in UsersService constructor:",c)}}setCommonDbService(t){try{this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setCommonDbService","color: green;"),this.commonDbService=t}catch(i){this.loggingService.catch("Error in UsersService setCommonDbService:",i)}}setContactService(t){try{this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setContactService","color: green;"),this.contactService=t}catch(i){this.loggingService.catch("Error in UsersService setContactService:",i)}}ngOnDestroy(){try{this.subscriptions.unsubscribe(),this.pendingResolutions.clear(),this.resolveAttempts.clear()}catch(t){this.loggingService.catch("Error in UsersService ngOnDestroy:",t)}}isResolverForFeatureDisabled(t){let i=this.userDataProvider$.getValue();try{switch(t){case"allOrganizationUsers":return i?!this.resolveOrganizationUsers.value:!0;case"allFolderUsers":return i?!this.resolveFolderUsers.value:!0;case"allDocumentUsers":return i?!this.resolveDocumentUsers.value:!0;default:return!1}}catch(o){return this.loggingService.catch("Error in UsersService isResolverForFeatureDisabled:",o),!1}}resolveUsers(u){return I(this,arguments,function*({userIds:t,forceResolve:i,feature:o,organizationId:s,skipUserCheck:a=!1,uniqueId:c,moduleName:l}){try{this.loggingService.log("%c[WB] Calling UsersService FUNCTION: resolveUsers","color: green;");let d=!1;if(o&&(d=this.isResolverForFeatureDisabled(o)),d)return{};{let f={},g=[],p={};if(t?.forEach(_=>{let T=this.getUserById(_);T?f[_]=T:this.userByIdCalled$.getValue()[_]?i&&g.push(_):(g.push(_),this.userByIdCalled$.next(le(x({},this.userByIdCalled$.getValue()),{[_]:!0})))}),g.length>0){let _=c||J();this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:_,moduleName:l,methodName:xn.RESOLVE_USERS,source:"internal",payload:{userIds:g,organizationId:s,feature:o,forceResolve:i,skipUserCheck:a,externalUserDataProviderAvailable:this.externalUserDataProviderAvailable()}});let T={};try{let D,b=new Promise((G,M)=>{D=setTimeout(()=>{M(new Error("User resolution timeout"))},this.userDataProvider$.getValue()?.config?.resolveTimeout||this.userDataProvider$.getValue()?.resolveTimeout||this.resolveTimeout)});T=yield Promise.race([this.getUsersFromDB({userIds:g,organizationId:s,skipUserCheck:a}).finally(()=>{clearTimeout(D)}),b]),this.analyticsService.trackEvent(L.Events.Resolver.USER_RESOLVER_GET,{sourceMethod:"resolveUsers",source:"sdk",userIds:g}),this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:_,methodName:xn.RESOLVE_USERS,moduleName:l,source:"internal",payload:{result:T,userIds:g,externalUserDataProviderAvailable:this.externalUserDataProviderAvailable()}})}catch(D){this.loggingService.catch("Error in UsersService resolveUsers getUsers:",D,{userIds:g}),this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:_,methodName:xn.RESOLVE_USERS,moduleName:l,source:"internal",payload:{error:D,userIds:g,externalUserDataProviderAvailable:this.externalUserDataProviderAvailable()}})}finally{g?.forEach(D=>{if(!T[D]){let b=new Set([...this.getUnresolvedUsers(),D]);this.unresolvedUsers.next(Array.from(b)),T[D]={userId:D,name:`User ${D}`}}})}Object.entries(T).forEach(([D,b])=>{b&&(f[D]=T?.[D],p[D]=T?.[D])})}return Object.keys(p).length>0&&(this.authService.setOptionalPropertiesToUsers(Object.values(p)),this.mergeUsersIntoStore(Object.values(p)),Object.keys(p).forEach(_=>{let T=this.getUserById(_);T&&(f[_]=T)})),f}}catch(d){this.loggingService.catch("Error in UsersService resolveUsers:",d);let f=c||J();return this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:f,methodName:xn.RESOLVE_USERS,moduleName:l,source:"internal",payload:{error:d,userIds:t,externalUserDataProviderAvailable:this.externalUserDataProviderAvailable()}}),{}}})}getUnresolvedUsers$(){return this.unresolvedUsers.asObservable()}getUnresolvedUsers(){this.loggingService.log("%c[WB] Calling UsersService FUNCTION: getUnresolvedUsers","color: green;");try{return JSON.parse(JSON.stringify(this.unresolvedUsers.getValue()))}catch(t){return this.loggingService.catch("Error in UsersService getUnresolvedUsers:",t),[]}}setUnresolvedUsers(t){this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setUnresolvedUsers","color: green;");try{if(Array.isArray(t)){let i=JSON.parse(JSON.stringify(t));this.unresolvedUsers.next(i)}}catch(i){this.loggingService.catch("Error in UsersService setUnresolvedUsers:",i)}}getUsersFromDB(s){return I(this,arguments,function*({userIds:t,organizationId:i,skipUserCheck:o=!1}){this.loggingService.log("%c[WB] Calling UsersService FUNCTION: getUsersFromDB","color: green;");try{let a=this.userDataProvider$.getValue();if(a){if(a.config?.getConfig?.url){if(i||(i=this.docService.getOrganizationConfig()?.organizationId),!i)return this.loggingService.catch("Error in getUsersFromDB: organizationId is required when using getConfig"),{};let d={organizationId:i,userIds:t},f=yield Ht(a.config.getConfig.url,a.config.getConfig.headers,d,!0,a.config.getConfig.credentials);return f.statusCode!==200?(this.loggingService.catch(`Error in getUsersFromDB: config-based request failed with statusCode ${f.statusCode}. Message: ${f.message||"Unknown error"}`),{}):f.data??{}}let u=yield a.get(t);if(u&&typeof u=="object"&&"success"in u&&"statusCode"in u&&typeof u.success=="boolean"&&typeof u.statusCode=="number"){let d=u;return d.statusCode===200&&d.data?d.data:(this.loggingService.catch(`Error in getUsersFromDB: provider returned error response with statusCode ${d.statusCode}`),{})}return u}if(i||(i=this.docService.getOrganizationConfig()?.organizationId),!i)return{};let c=(yield this.getUsersFromDBWithBatching({userIds:t,organizationId:i,skipUserCheck:o}))??[];this.contactService?.setResolvedUsers(c.flat());let l={};return c.forEach(u=>{u.forEach(d=>{d?.user?.userId&&(l[d.user.userId]=d.user)})}),l}catch(a){return this.loggingService.catch("Error in UsersService getUsersFromDB:",a),{}}})}getUsersFromDBWithBatching(s){return I(this,arguments,function*({userIds:t,organizationId:i,skipUserCheck:o=!1}){try{if(!t?.length)return[];let a=[];for(let u=0;u<t.length;u+=30)a.push(t.slice(u,u+30));let c=a.map((u,d)=>I(this,null,function*(){try{return(yield this.commonDbService?.queryData({feature:"allOrganizationUsers",properties:{organizationId:i,useCollectionGroup:!1,isCollection:!0,firestoreQuery:[Ji("user.userId","in",u)],skipUserCheck:o}}))||[]}catch(f){return this.loggingService.catch(`Error in batch ${d+1}:`,f),[]}}));return yield Promise.all(c)}catch(a){return this.loggingService.catch("Error in getUsersFromDBWithBatching:",a),[]}})}getTemporaryUsersFromDBWithBatching(s){return I(this,arguments,function*({userIds:t,organizationId:i,resourceIds:o}){try{if(!t?.length||!o?.length)return[];let a=[];for(let _=0;_<t.length;_+=30)a.push(t.slice(_,_+30));let c=[];for(let _=0;_<o.length;_+=30)c.push(o.slice(_,_+30));let l=[],u=0,d=(_,T)=>I(this,null,function*(){try{return((yield this.commonDbService?.queryData({feature:"allPermissionsUsers",properties:{organizationId:i,useCollectionGroup:!1,isCollection:!0,firestoreQuery:[MM(Ji("userId","in",_),Ji("veltResourceId","in",T))]}}))??[])||[]}catch(D){return this.loggingService.catch(`Error in batch ${u+1}:`,D),[]}});for(let _ of a)for(let T of c)l.push(d(_,T)),u++;return(yield Promise.all(l)).flat().filter((_,T,D)=>T===D.findIndex(b=>b.userId===_.userId&&b.resourceId===_.resourceId))}catch(a){return this.loggingService.catch("Error in getTemporaryUsersFromDBWithBatching:",a),[]}})}getResolveOrganizationUsers$(){return this.resolveOrganizationUsers.asObservable()}getResolveFolderUsers$(){return this.resolveFolderUsers.asObservable()}getResolveDocumentUsers$(){return this.resolveDocumentUsers.asObservable()}getUserById$(){try{return this.loggingService.log("%c[WB] Calling UsersService FUNCTION: getUserById$","color: green;"),Zr([this.userById$,this.customContactUserById$]).pipe(fe(([t,i])=>this.applyContactOverlay(t,i)),it(Ft))}catch(t){return this.loggingService.catch("Error in UsersService getUserById$:",t),ue({})}}applyContactOverlay(t,i){let o=x({},t??{});return Object.entries(i??{}).forEach(([s,a])=>{o[s]=x(x({},o[s]??{}),a)}),o}setUserByIds(t){try{this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setUserByIds","color: green;"),this.mergeUsersIntoStore(t)}catch(i){this.loggingService.catch("Error in UsersService setUserByIds:",i)}}setContactListUsers(t){try{this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setContactListUsers","color: green;");let i={};(t??[]).forEach(o=>{let s=o?.userId;s&&(i[s]=JSON.parse(JSON.stringify(o)))}),this.customContactUserById$.next(i)}catch(i){this.loggingService.catch("Error in UsersService setContactListUsers:",i)}}getContactListUser(t){try{return this.customContactUserById$.value?.[t]}catch(i){this.loggingService.catch("Error in UsersService getContactListUser:",i);return}}mergeUsersIntoStore(t){try{let i=JSON.parse(JSON.stringify(this.userById$.getValue()??{}));(t??[]).forEach(o=>{let s=o?.userId;s&&(i[s]=x(x({},i?.[s]??{}),o))}),this.userById$.next(i)}catch(i){this.loggingService.catch("Error in UsersService mergeUsersIntoStore:",i)}}setUserDataProvider(t){try{this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setUserDataProvider","color: green;");let i=t.config?.getConfig?.url,o="get"in t&&typeof t.get=="function";if(!i&&!o){this.loggingService.catch("DataProviders.user is invalid. The get method is missing or is not a function (and no getConfig provided).");return}this.userDataProvider$.next(t),t.config?.resolveUsersConfig?.organization===!1?this.resolveOrganizationUsers.next(!1):this.resolveOrganizationUsers.next(!0),t.config?.resolveUsersConfig?.folder===!1?this.resolveFolderUsers.next(!1):this.resolveFolderUsers.next(!0),t.config?.resolveUsersConfig?.document===!1?this.resolveDocumentUsers.next(!1):this.resolveDocumentUsers.next(!0)}catch(i){this.loggingService.catch("Error in UsersService setUserDataProvider:",i)}}setAnonymousUserDataProvider(t){try{if(this.loggingService.log("%c[WB] Calling UsersService FUNCTION: setAnonymousUserDataProvider","color: green;"),!("resolveUserIdsByEmail"in t)||typeof t.resolveUserIdsByEmail!="function"){this.loggingService.catch("setAnonymousUserDataProvider is invalid. The resolveUserIdsByEmail method is missing or is not a function.");return}this.anonymousUserDataProvider$.next(t)}catch(i){this.loggingService.catch("Error in UsersService setAnonymousUserDataProvider:",i)}}resolveUserIdsByEmail(o){return I(this,arguments,function*({emails:t,uniqueId:i}){try{if(this.loggingService.log("%c[WB] Calling UsersService FUNCTION: resolveUserIdsByEmail","color: green;"),!t?.length)return{};let s=this.anonymousUserDataProvider$.getValue();if(!s||typeof s.resolveUserIdsByEmail!="function")return{};let a=[...new Set(t.filter(M=>!!M))];if(a.length===0)return{};let c={},l=[];if(a.forEach(M=>{let U=this.userIdByEmailCache[M];U?c[M]=U:l.push(M)}),l.length===0)return c;let u=this.docService.getOrganizationConfig()?.clientOrganizationId||"",d=this.docService.getDocumentPaths()?.clientDocumentId||"",f=this.docService.getDocumentPaths()?.folderId||"",g={organizationId:u,documentId:d,folderId:f,emails:l},p=i||J();this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.EMAIL_USER_ID_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:p,methodName:xn.RESOLVE_USER_IDS_BY_EMAIL,source:"internal",payload:{emails:l,organizationId:u,documentId:d,folderId:f}});let _=s.config?.resolveTimeout||this.resolveTimeout,T,D=new Promise((M,U)=>{T=setTimeout(()=>{U(new Error("resolveUserIdsByEmail timeout"))},_)}),b=s.config?.getRetryConfig||{retryCount:0,retryDelay:0},G=I(this,null,function*(){try{let M=yield kt(()=>s.resolveUserIdsByEmail(g),"resolveUserIdsByEmail",b);return M?.statusCode===200&&M?.data?M.data:(this.loggingService.catch(`Error in resolveUserIdsByEmail: provider returned statusCode ${M?.statusCode}. Message: ${M?.message||"Unknown error"}`),{})}finally{clearTimeout(T)}});try{let M=yield Promise.race([G,D]);return Object.entries(M).forEach(([U,k])=>{k&&(this.userIdByEmailCache[U]=k,c[U]=k,this.externalUserDataProviderAvailable()||this.docService.addUserInfoToOrganization({organizationId:this.docService.getOrganizationConfig()?.clientOrganizationId??"",user:{userId:k,name:U,email:U},currentUserId:this.authService.getUser()?.userId??""}).catch(S=>{this.loggingService.catch("Error in UsersService resolveUserIdsByEmail addUserInfoToOrganization:",S)}))}),this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.EMAIL_USER_ID_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:p,methodName:xn.RESOLVE_USER_IDS_BY_EMAIL,source:"internal",payload:{result:M,emails:l}}),c}catch(M){return this.loggingService.catch("Error in UsersService resolveUserIdsByEmail (timeout/race):",M),this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.EMAIL_USER_ID_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:p,methodName:xn.RESOLVE_USER_IDS_BY_EMAIL,source:"internal",payload:{error:M,emails:l}}),c}}catch(s){return this.loggingService.catch("Error in UsersService resolveUserIdsByEmail:",s),{}}})}externalUserDataProviderAvailable(){try{return this.loggingService.log("%c[WB] Calling UsersService FUNCTION: externalUserDataProviderAvailable","color: green;"),!!this.commonDbService?.shouldUseFirestore()&&!!this.userDataProvider$.getValue()}catch(t){return this.loggingService.catch("Error in UsersService externalUserDataProviderAvailable:",t),!1}}userDataProviderAvailable(){try{return this.loggingService.log("%c[WB] Calling UsersService FUNCTION: userDataProviderAvailable","color: green;"),!!this.commonDbService?.shouldUseFirestore()}catch(t){return this.loggingService.catch("Error in UsersService userDataProviderAvailable:",t),!1}}};e.\u0275fac=function(i){return new(i||e)(w(Lt),w(Cr),w(It),w(zh),w(_e))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var tc=class{static getFirestoreProdDbName(e,r){return r?.databaseURL?.includes("snippyly-plugin.firebaseio.com")||r?.databaseURL?.includes("snippyly-plugin-staging.firebaseio.com")?"sfdb":r?.storeDbId??(this.isTestingDb(r?.databaseURL??"")?"sdktest":`apikey${e.toLowerCase()}`)}static isTestingDb(e){try{return e.includes("-test")}catch(r){return H.error("Error in isTestingDb:",r),!1}}};var Ky=(()=>{let e=class e{constructor(t,i,o,s,a,c,l,u){this.loggingService=t,this.usersService=i,this.authService=o,this.functions=s,this.configService=a,this.commentAnnotationsResolverService=c,this.attachmentResolverService=l,this.coreActionsService=u,this.notificationActionTypeMap={[Ie.NEWLY_ADDED]:Qt.COMMENT_ANNOTATION_ADD,[Ie.ADDED]:Qt.COMMENT_ADD,[Ie.UPDATED]:Qt.COMMENT_UPDATE,[Ie.DELETED]:Qt.COMMENT_DELETE},this.additionalEventTypeMap={[Ie.STATUS_CHANGED]:Xn.STATUS_CHANGE,[Ie.PRIORITY_CHANGED]:Xn.PRIORITY_CHANGE,[Ie.ASSIGNED]:Xn.ASSIGN,[Ie.ACCESS_MODE_CHANGED]:Xn.ACCESS_MODE_CHANGE,[Ie.CUSTOM_LIST_CHANGED]:Xn.CUSTOM_LIST_CHANGE,[Ie.APPROVED]:Xn.APPROVE,[Ie.ACCEPTED]:Xn.ACCEPT,[Ie.REJECTED]:Xn.REJECT,[Ie.SUGGESTION_ACCEPTED]:Xn.SUGGESTION_ACCEPT,[Ie.SUGGESTION_REJECTED]:Xn.SUGGESTION_REJECT,[Ie.REACTION_ADDED]:Xn.REACTION_ADD,[Ie.REACTION_DELETED]:Xn.REACTION_DELETE,[Ie.SUBSCRIBED]:Xn.SUBSCRIBE,[Ie.UNSUBSCRIBED]:Xn.UNSUBSCRIBE}}setNotificationService(t){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: setNotificationService","color: green;"),this.notificationService=t}catch(i){this.loggingService.catch("Error in CommentUtilsService setNotificationService: ",i)}}setUserPermissionService(t){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: setUserPermissionService","color: green;"),this.userPermissionService=t}catch(i){this.loggingService.catch("Error in CommentUtilsService setUserPermissionService: ",i)}}getUserIdsToResolveFromComments(t){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: getUserIdsToResolveFromComments","color: green;");let i=new Set;for(let o of t){if(o?.from?.userId&&i.add(o?.from?.userId),o?.comments)for(let s of o?.comments){if(s?.from?.userId&&i.add(s?.from?.userId),s?.to)for(let a of s?.to)a?.userId&&i.add(a?.userId);if(s?.taggedUserContacts)for(let a of s?.taggedUserContacts)a?.userId&&i.add(a?.userId)}if(o?.assignedTo?.userId&&i.add(o?.assignedTo?.userId),o?.resolvedByUserId&&i.add(o?.resolvedByUserId),o?.suggestion?.resolvedBy?.userId&&i.add(o?.suggestion?.resolvedBy?.userId),o?.subscribedUsers)for(let s of Object.values(o?.subscribedUsers))s.user.userId&&i.add(s.user.userId);if(o?.unsubscribedUsers)for(let s of Object.values(o?.unsubscribedUsers))s.user.userId&&i.add(s.user.userId)}return Array.from(i)}catch(i){return this.loggingService.catch("Error in CommentUtilsService getUserIdsToResolveFromComments:",i),[]}}mergeCommentWithUser(t){try{if(this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: mergeCommentWithUser","color: green;"),t?.from?.userId){let i=this.usersService.getUserById(t?.from?.userId);i&&(t.from=i)}if(t?.suggestion?.resolvedBy?.userId){let i=this.usersService.getUserById(t?.suggestion?.resolvedBy?.userId);i&&(t.suggestion.resolvedBy=i)}if(t?.comments)for(let i of t?.comments){if(i?.from?.userId){let s=this.usersService.getUserById(i?.from?.userId);s&&(i.from=s)}i?.to&&(i.to=i?.to?.map(s=>{if(s?.userId){let a=this.usersService.getUserById(s?.userId);if(a)return x(x({},s),a)}return s})),i?.taggedUserContacts&&(i.taggedUserContacts=i?.taggedUserContacts?.map(s=>{if(s?.contact){let a=this.usersService.getUserById(s?.contact?.userId);a&&(s.contact=a,(a?.name||a?.email)&&(s.text=`@${a?.name||a?.email}`))}return s}));let o=i?.taggedUserContacts?.filter((s,a,c)=>c.findIndex(l=>l.text===s.text)===a)||[];o.sort((s,a)=>(a.text?.length||0)-(s.text?.length||0)),o.forEach(s=>{if(s?.text){let a=new RegExp(rl(`{{${s.userId}}}`),"g");i.commentText?.includes(`@User ${s.userId}`)&&(a=new RegExp(rl(`@User ${s.userId}`),"g")),i.commentText=i.commentText?.replaceAll(a,s.text),i.commentHtml=i.commentHtml?.replaceAll(a,s.text)}})}if(t?.assignedTo?.userId){let i=this.usersService.getUserById(t?.assignedTo?.userId);i&&(t.assignedTo=i)}if(t?.resolvedByUserId){let i=this.usersService.getUserById(t?.resolvedByUserId);i&&(t.resolvedByUser=i)}if(t?.subscribedUsers)for(let i of Object.values(t?.subscribedUsers)){let o=this.usersService.getUserById(i.user.userId);o&&t?.subscribedUsers?.id?.user&&(t.subscribedUsers.id.user=o)}if(t?.unsubscribedUsers)for(let i of Object.values(t?.unsubscribedUsers)){let o=this.usersService.getUserById(i.user.userId);o&&t?.unsubscribedUsers?.id?.user&&(t.unsubscribedUsers.id.user=o)}return t}catch(i){return this.loggingService.catch("Error in CommentUtilsService mergeCommentWithUser:",i),t}}formatCommentData(t){try{if(this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: formatCommentData","color: green;"),t?.comments?.forEach(i=>{i?.commentText&&i?.commentText?.length>0&&(i.isCommentTextAvailable=!0)}),t?.viewedBy&&delete t.viewedBy,t?.unread!==void 0&&delete t.unread,t?.resolvedByUser!==void 0&&delete t.resolvedByUser,t?.comments&&t.comments.forEach(i=>{i?.reactionAnnotations&&delete i.reactionAnnotations}),this.usersService.userDataProviderAvailable()){if(t?.from?.userId&&(t.from={userId:t.from.userId}),t?.assignedTo?.userId&&(t.assignedTo={userId:t.assignedTo.userId}),t?.subscribedUsers)for(let i of Object.keys(t?.subscribedUsers))t.subscribedUsers[i].user={userId:t?.subscribedUsers[i].user.userId};if(t?.unsubscribedUsers)for(let i of Object.keys(t?.unsubscribedUsers))t.unsubscribedUsers[i].user={userId:t?.unsubscribedUsers[i].user.userId};t?.suggestion?.resolvedBy?.userId&&(t.suggestion.resolvedBy={userId:t.suggestion.resolvedBy.userId})}return t?.comments&&(t.comments=t?.comments?.map(i=>this.formatCommentThreadData(i))),t}catch(i){return this.loggingService.catch("Error in CommentUtilsService formatCommentData:",i),t}}mergeStrippedDataWithCommentAnnotations(t){try{if(this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: mergeStrippedDataWithCommentAnnotations","color: green;"),!this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable())return t;let i=this.commentAnnotationsResolverService.getAnnotationById(t?.annotationId),o=this.attachmentResolverService.attachmentDataProviderAvailable(),s=this.commentAnnotationsResolverService.getFieldsToRemove();return i&&(t?.comments?.forEach(a=>{let c=i?.comments?.[a?.commentId];if(c){a.commentHtml=c?.commentHtml,a.commentText=c?.commentText;let l=c?.attachments;o&&l&&a.attachments?.forEach(u=>{let d=u?.attachmentId;l?.[d]&&(u.name=l?.[d]?.name,u.url=l?.[d]?.url)})}}),i?.targetTextRange?.text&&t?.targetTextRange&&(t.targetTextRange.text=i?.targetTextRange?.text),s?.length>0&&s.forEach(a=>{i?.[a]&&(t[a]=i[a])})),t}catch(i){return this.loggingService.catch("Error in CommentUtilsService mergeStrippedDataWithCommentAnnotations:",i),t}}mergeLocationWithCommentAnnotations(t,i){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: mergeLocationWithCommentAnnotations","color: green;");let o=t?.location?.id,s=t?.metadata?.documentId;if(!o||!s)return t;let a=i?.[s]?.[o];return a&&(t.location=a?.location),t}catch(o){return this.loggingService.catch("Error in CommentUtilsService mergeLocationWithCommentAnnotations:",o),t}}isCommentsDataChanged(t,i){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: isCommentsDataChanged","color: green;");let o=this.commentAnnotationsResolverService.getCommentAnnotationById(i);return o?!ki(t,o):!0}catch(o){return this.loggingService.catch("Error in CommentUtilsService isCommentsDataChanged:",o),!0}}stripCommentsFromAnnotationData({comment:t}){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: stripCommentsFromAnnotationData","color: green;");let i=this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable();if(!i)return t;let o=this.attachmentResolverService.attachmentDataProviderAvailable(),s=new LT;if(Object.assign(s,t),s.isCommentResolverUsed=i,o){let a=s.attachments?.map(c=>(c.isAttachmentResolverUsed=!0,delete c?.name,delete c?.url,c));s.attachments=a}return delete s?.commentHtml,delete s?.commentText,s}catch(i){return this.loggingService.catch("Error in CommentUtilsService stripCommentsFromAnnotationData:",i),t}}resolveTaggedUserEmails(t){return I(this,null,function*(){try{let i=new Set;if(t.comments?.forEach(o=>{o.taggedUserContacts?.forEach(s=>{s?.contact?.email&&!s?.userId&&i.add(s.contact.email)}),o.to?.forEach(s=>{s?.email&&!s?.userId&&i.add(s.email)})}),i.size>0){let o=J();this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.EMAIL_USER_ID_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:o,methodName:xn.RESOLVE_USER_IDS_BY_EMAIL,source:"internal",payload:{emails:Array.from(i)}});let s=yield this.usersService.resolveUserIdsByEmail({emails:Array.from(i),uniqueId:o});Object.keys(s).length>0&&t.comments?.forEach(a=>{a.taggedUserContacts?.forEach(c=>{if(c?.contact?.email&&!c?.userId){let l=s[c.contact.email];if(l){let u=c.text;if(u){let d=rl(u),f=new RegExp(d,"g");a.commentText&&(a.commentText=a.commentText.replace(f,`{{${l}}}`)),a.commentHtml&&(a.commentHtml=a.commentHtml.replace(f,`{{${l}}}`))}c.userId=l,c.contact.userId=l,delete c.contact?.email,delete c.contact?.visibility,c.text=""}}}),a.to=a.to?.map(c=>{if(c?.email&&!c?.userId){let l=s[c.email];if(l)return delete c?.email,delete c?.visibility,le(x({},c),{userId:l})}return c})})}return t}catch(i){return this.loggingService.catch("Error in CommentUtilsService resolveTaggedUserEmails:",i),t}})}stripCommentAnnotationData(s){return I(this,arguments,function*({data:t,actionType:i,commentId:o}){try{if(this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: stripCommentAnnotationData","color: green;"),t=yield this.resolveTaggedUserEmails(t),!this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable())return{originalData:t,strippedData:null};let a=this.attachmentResolverService.attachmentDataProviderAvailable(),c=this.commentAnnotationsResolverService.getFieldsToRemove(),l=this.commentAnnotationsResolverService.getAdditionalFields(),u,d;i&&(u=this.notificationActionTypeMap?.[i],d=this.additionalEventTypeMap?.[i]);let f=this.commentAnnotationsResolverService.getAdditionalSaveEvents(),g=Array.isArray(f)?f:[],p={},_=null,T=!1;if(t&&t.annotationId){let M=t.annotationId;if(p[M]=x(x(x(x({annotationId:M,metadata:Cn(t.metadata??{}),comments:{}},t?.from&&{from:t?.from}),t?.assignedTo&&{assignedTo:t?.assignedTo}),t?.resolvedByUserId&&{resolvedByUserId:t?.resolvedByUserId}),t?.targetTextRange?.text&&{targetTextRange:{text:t?.targetTextRange?.text}}),delete t?.targetTextRange?.text,c?.length>0&&c.forEach(k=>{t?.[k]&&(p[M][k]=t[k],delete t[k])}),l?.length)for(let k of l)t?.[k]!==void 0&&(p[M][k]=JSON.parse(JSON.stringify(t[k])));t.comments?.forEach(k=>{if(k.commentId){let S;a&&(S={},k.attachments?.forEach(A=>{S[A.attachmentId]={attachmentId:A.attachmentId,name:A.name,url:A.url}})),p[M].comments[k.commentId]=x(x(x(x(x(x({commentId:k.commentId},k?.commentHtml&&{commentHtml:k?.commentHtml}),k?.commentText&&{commentText:k?.commentText}),S&&{attachments:S}),k?.from&&{from:k?.from}),k?.to&&{to:k?.to}),k?.taggedUserContacts&&{taggedUserContacts:k?.taggedUserContacts})}}),T=this.isCommentsDataChanged(p[M],M);let U=new bT;Object.assign(U,t),c?.length>0&&c.forEach(k=>{k in t||delete U[k]}),U.comments=t.comments?.map(k=>this.stripCommentsFromAnnotationData({comment:k}))||[],_=U}let D=_?.comments?.find(M=>M.commentId===o);D?.isDraft&&(u=_?.comments?.length&&_?.comments?.length>0?Qt.COMMENT_ADD:Qt.COMMENT_ANNOTATION_ADD);let b=!!i&&!!this.notificationActionTypeMap?.[i],G=!!d&&!!_&&!b&&!D?.isDraft&&g.includes(d);return G&&(u=d),{strippedData:T&&(i&&this.notificationActionTypeMap?.[i]||D?.isDraft)||G?p:null,originalData:_,eventType:u}}catch(a){return this.loggingService.catch("Error in CommentAnnotationsResolverService stripCommentAnnotationData:",a),{strippedData:null,originalData:null}}})}formatCommentThreadData(t){try{if(this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: formatCommentThreadData","color: green;"),this.usersService.userDataProviderAvailable()){t?.from?.userId&&(t.from={userId:t.from.userId}),t?.to&&(t.to=t?.to?.map(o=>o?.userId?{userId:o.userId}:o)),t?.taggedUserContacts&&(t.taggedUserContacts=t?.taggedUserContacts?.map(o=>o?.contact?.userId?le(x({},o),{contact:{userId:o.contact.userId}}):o));let i=t?.taggedUserContacts?.filter((o,s,a)=>a.findIndex(c=>c.text===o.text)===s)||[];i.sort((o,s)=>(s.text?.length||0)-(o.text?.length||0)),i.forEach(o=>{if(o?.text&&o?.contact?.userId){let s=new RegExp(rl(o.text),"g");t.commentText=t.commentText?.replaceAll(s,a=>`{{${o.userId}}}`),t.commentHtml=t.commentHtml?.replaceAll(s,a=>`{{${o.userId}}}`)}}),i.forEach(o=>{o?.text&&o?.contact?.userId&&(o.text="")})}return t}catch(i){return this.loggingService.catch("Error in CommentUtilsService formatCommentThreadData:",i),t}}getDeniedForYouUsers(i){return I(this,arguments,function*({extraData:t}){try{let o=Object.values(t?.annotationData?.subscribedUsers||{}).map(a=>a.user.userId)??[],s=[];if(this.userPermissionService?.isPermissionProviderAvailable()&&o.length){let a=t?.metadata?.clientDocumentId,c=t?.annotationData?.context?.access&&this.userPermissionService?.getIsContextEnabled()?t?.annotationData?.context?.access:null,l=[];o.forEach(f=>{if(l.push({userId:f,resource:{id:a,type:di.DOCUMENT,source:Un.SET_NOTIFICATIONS,organizationId:t?.metadata?.clientOrganizationId??"",context:c?{access:c}:void 0}}),c){let g=JSON.stringify(c);l.push({userId:f,resource:{id:g,type:di.CONTEXT,source:Un.SET_NOTIFICATIONS,organizationId:t?.metadata?.clientOrganizationId??"",context:{access:c}}})}});let u=J();this.coreActionsService.triggerAction($.PERMISSION_PROVIDER,{event:L.Events.PermissionProvider.RESOURCE_ACCESS_REQUEST_FORMED,methodName:Un.SET_NOTIFICATIONS,uniqueId:u,timestamp:new Date().getTime(),source:"internal",payload:{requests:l}});let d=yield this.userPermissionService?.onResourceAccessRequired({requests:l,uniqueId:u,methodName:Un.SET_NOTIFICATIONS});d?.success&&d?.data?.length&&d.data.forEach(f=>{f.hasAccess||s.push(f.userId)})}return s}catch(o){return this.loggingService.catch("Error in CommentUtilsService getDeniedForYouUsers:",o),[]}})}handleCommentEncryption(c){return I(this,arguments,function*({data:t,firestorePath:i,extraData:o,eventType:s,metadata:a}){try{this.loggingService.log("%c[WB] Calling CommentUtilsService FUNCTION: handleCommentEncryption","color: green;");let l=$T(this.authService.getFirebaseConfig()?.firebaseOptions),u=Dr(this.functions,Ir({url:st.cloudFunction?.[l]?.setEncryptedData,apiProxyDomain:this.configService?.getApiProxyDomain()}),{timeout:1200*1e3});if(o){o=this.notificationService?.processNotificationData(o),o.annotationData=t;let _=o?.targetAnnotationData?.commentId;if(_){let T=t?.comments?.find(D=>D?.commentId===_);T&&(o.targetAnnotationData=T)}try{let T=yield this.stripCommentAnnotationData({data:o.annotationData,actionType:o?.actionType??Ie.NEWLY_ADDED});T?.originalData&&(o.annotationData=this.formatCommentData(T.originalData)),o?.targetAnnotationData&&(o.targetAnnotationData=this.formatCommentThreadData(this.stripCommentsFromAnnotationData({comment:o.targetAnnotationData})))}catch(T){this.loggingService.warn("Error in CommentUtilsService handleCommentEncryption:",T)}}let d=tc.getFirestoreProdDbName(this.configService.getApiKey()??"",this.authService.getFirebaseConfig()?.firebaseOptions),f=yield this.getDeniedForYouUsers({extraData:o}),g={path:i??"",data:t??{},dbId:d??"",notificationData:o||void 0,notificationURL:st.firebaseNotificationsDatabaseURL,feature:"comment",eventType:s??"PATCH",sdkVersion:jr(),deniedForYouUsers:f,isPermissionProviderUsed:this.userPermissionService?.isPermissionProviderAvailable(),isCommentResolverUsed:this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable(),isSettingsConfigByOrganization:this.notificationService?.getSettingsConfigByOrganization(),isCrossOrganizationEnabled:this.notificationService?.getCrossOrganizationConfig()?.enabled,metadata:a},p=yield il(g,this.authService.getUser()?.userId??"");yield u({veltData:p})}catch(l){this.loggingService.catch("Error in CommentUtilsService handleCommentEncryption:",l)}})}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt),w(Cr),w(dr),w(Rr),w(zo),w(Wh),w(It))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Yy=(()=>{let e=class e{constructor(t,i,o){this.coreActionsService=t,this.loggingService=i,this.analyticsService=o,this.resolveTimeout=60*1e3,this.retrySaveConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryGetConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.activityDataProvider$=new Y(null),this.activityById$=new Y({}),this.fieldsToRemove=[],this.getActivityById=s=>{try{return this.activityDataProviderAvailable()?this.activityById$.value?.[s]:void 0}catch(a){this.loggingService.catch("Error in ActivityResolverService getActivityById:",a);return}};try{this.loggingService.log("ActivityResolverService initialized"),this.activityDataProvider$.subscribe(s=>{s&&(s.config?.resolveTimeout&&(this.resolveTimeout=s.config.resolveTimeout),s.config?.saveRetryConfig&&(this.retrySaveConfig=s.config.saveRetryConfig),s.config?.getRetryConfig&&(this.retryGetConfig=s.config.getRetryConfig),s.config?.fieldsToRemove&&(this.fieldsToRemove=s.config.fieldsToRemove))})}catch(s){this.loggingService.catch("Error in ActivityResolverService constructor:",s)}}getProvider(){try{let t=this.activityDataProvider$.getValue();return t||void 0}catch(t){this.loggingService.catch("Error in ActivityResolverService getProvider:",t);return}}ngOnDestroy(){try{this.activityById$.next({})}catch(t){this.loggingService.catch("Error in ActivityResolverService ngOnDestroy:",t)}}resolveActivities(s){return I(this,arguments,function*({request:t,uniqueId:i,moduleName:o}){try{if(this.loggingService.log("%c[WB] Calling ActivityResolverService FUNCTION: resolveActivities","color: green;"),!this.activityDataProviderAvailable())return{};let a,c=!1,l=!1,u=()=>{a&&(clearTimeout(a),a=void 0,l=!0)};return new Promise((d,f)=>{a=setTimeout(()=>{if(!l){c=!0,u();let b=i||J();this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{error:new Error("Activity resolution timeout"),request:t}}),f(new Error("Activity resolution timeout"))}},this.activityDataProvider$.value?.config?.resolveTimeout||this.resolveTimeout);let g=this.getProvider();if(!g)return u(),d({});let p={},_=[...new Set(t.activityIds||[])],T=le(x({},t),{activityIds:_});I(this,null,function*(){try{if(_.length>0||t.documentIds?.length){let b=i||J();this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:b,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{request:T}});let G=kt(()=>g?.config?.getConfig?.url?Ht(g.config.getConfig.url,g.config.getConfig.headers,T,!0,g.config.getConfig.credentials):g?.get?.(T)||Promise.resolve(void 0),"resolveActivities",this.retryGetConfig).then(M=>c?{}:(u(),M&&M.statusCode!==200?(this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:b,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{result:M,request:T}}),this.loggingService.catch(M?.message??"Error in ActivityResolverService resolveActivities:"),{}):M?.data)).catch(M=>{throw u(),M});try{p=(yield G)||{},this.analyticsService.trackEvent(L.Events.Resolver.ACTIVITY_RESOLVER_GET,{sourceMethod:"resolveActivities",source:"sdk",activityIds:_});let M={};Object.entries(p).forEach(([U,k])=>{let S=this.activityById$.value?.[U];S?S&&JSON.stringify(S)!==JSON.stringify(k)&&(M[U]=k):M[U]=k}),Object.keys(M).length>0&&this.activityById$.next(x(x({},this.activityById$.getValue()),M)),this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:b,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{result:M,request:T}}),d(M)}catch(M){let U=i||J();this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:U,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{error:M,request:T}}),c||f(M),d(p)}}else u(),d({})}catch(b){u();let G=i||J();this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:G,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{error:b,request:T}}),f(b)}})})}catch(a){this.loggingService.catch("Error in ActivityResolverService resolveActivities:",a);let c=i||J();return this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:c,methodName:lr.RESOLVE_ACTIVITIES,moduleName:o,source:"internal",payload:{error:a,request:t}}),{}}})}saveActivity(t,i){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling ActivityResolverService FUNCTION: saveActivity","color: green;");let o=this.getProvider();if(!this.activityDataProviderAvailable())throw new Error("Activity save data provider not available");let s=i||J();this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_SAVE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:s,methodName:lr.SAVE_ACTIVITY,source:"internal",payload:{request:t}});let a=JSON.parse(JSON.stringify(this.activityById$.getValue()));this.activityById$._value=x(x({},a),t.activity);let c=yield kt(()=>{if(o?.config?.saveConfig?.url){let l={activity:t.activity,event:t.event,metadata:Object.values(t.activity??{})?.[0]?.metadata};return Ht(o.config.saveConfig.url,o.config.saveConfig.headers,l,!1,o.config.saveConfig.credentials)}return o?.save?.({activity:t.activity,event:t.event,metadata:Object.values(t.activity??{})?.[0]?.metadata})||Promise.resolve(void 0)},"saveActivity",this.retrySaveConfig);return c&&c.statusCode!==200?(this.retrySaveConfig.revertOnFailure&&(this.activityById$._value=a),this.loggingService.catch(c?.message??"Error in ActivityResolverService saveActivity:"),this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:lr.SAVE_ACTIVITY,source:"internal",payload:{error:c,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.ACTIVITY_RESOLVER_SAVE,{sourceMethod:"saveActivity",source:"sdk",activityIds:Object.keys(t.activity),event:t.event}),this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_SAVE_RESULT,timestamp:new Date().getTime(),uniqueId:s,methodName:lr.SAVE_ACTIVITY,source:"internal",payload:{result:{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0},request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!0})}catch(o){this.loggingService.warn("Error in ActivityResolverService saveActivity:",o);let s=i||J();return this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_SAVE_ERROR,timestamp:new Date().getTime(),uniqueId:s,methodName:lr.SAVE_ACTIVITY,source:"internal",payload:{error:o,request:t}}),{revertOnFailure:this.retrySaveConfig.revertOnFailure,isSuccess:!1}}})}getActivitiesById$(){try{return this.activityDataProviderAvailable()?(this.loggingService.log("%c[WB] Calling ActivityResolverService FUNCTION: getActivitiesById$","color: green;"),this.activityById$.asObservable()):ue(void 0)}catch(t){return this.loggingService.catch("Error in ActivityResolverService getActivitiesById$:",t),ue(void 0)}}getFieldsToRemove(){try{return this.fieldsToRemove}catch(t){return this.loggingService.catch("Error in ActivityResolverService getFieldsToRemove:",t),this.fieldsToRemove}}setActivityDataProvider(t){try{if(t){this.loggingService.log("Setting activity data provider");let i=t.config,o=[{method:"get",configKey:"getConfig"},{method:"save",configKey:"saveConfig"}],s=[];if(o.forEach(({method:a,configKey:c})=>{let l=i?.[c]?.url,u=a in t&&typeof t[a]=="function";!l&&!u&&s.push(a)}),s.length>0){let a=`DataProviders.activity is invalid. The following methods are missing or are not functions (and no corresponding config provided): ${s.join(", ")}.`;this.loggingService.catch(a);return}else this.activityDataProvider$.next(t)}}catch(i){this.loggingService.catch("Error in ActivityResolverService setActivityDataProvider:",i)}}activityDataProviderAvailable(){try{return!!this.activityDataProvider$.getValue()}catch(t){return this.loggingService.catch("Error in ActivityResolverService activityDataProviderAvailable:",t),!1}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Qy=(()=>{let e=class e{constructor(t,i,o,s,a,c){this.loggingService=t,this.usersService=i,this.authService=o,this.functions=s,this.configService=a,this.reactionAnnotationsResolverService=c}getUserIdsToResolveFromReactions(t){try{let i=new Set;for(let o of t)if(o?.from?.userId&&i.add(o?.from?.userId),o?.reactions?.length)for(let s of o?.reactions)s?.from?.userId&&i.add(s?.from?.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in ReactionUtilsService getUserIdsToResolveFromRecorders:",i),[]}}handleReactionEncryption(s){return I(this,arguments,function*({data:t,firestorePath:i,eventType:o}){try{let a=$T(this.authService.getFirebaseConfig()?.firebaseOptions),c=Dr(this.functions,Ir({url:st.cloudFunction?.[a]?.setEncryptedData,apiProxyDomain:this.configService?.getApiProxyDomain()}),{timeout:1200*1e3}),l=tc.getFirestoreProdDbName(this.configService.getApiKey()??"",this.authService.getFirebaseConfig()?.firebaseOptions),u=this.authService.getUser()?.userId??"",d={path:i??"",data:t??{},dbId:l??"",feature:"reaction",eventType:o??"PATCH",sdkVersion:jr()},f=yield il(d,u);yield c({veltData:f})}catch(a){this.loggingService.catch("Error in handleReactionEncryption:",a)}})}mergeReactionWithUser(t){try{if(this.usersService.userDataProviderAvailable()){if(t?.from?.userId){let i=this.usersService.getUserById(t?.from?.userId);i&&(t.from=i)}if(t?.reactions?.length){for(let i of t?.reactions)if(i?.from?.userId){let o=this.usersService.getUserById(i?.from?.userId);o&&(i.from=o)}}}return t}catch(i){return this.loggingService.catch("Error in ReactionUtilsService mergeReactionWithUser:",i),t}}formatReactionData(t){try{return this.usersService.userDataProviderAvailable()&&t?.from?.userId&&(t.from={userId:t.from.userId}),t.reactions=t?.reactions?.map(i=>(this.usersService.userDataProviderAvailable()&&i?.from?.userId&&(i.from={userId:i.from.userId}),i)),t}catch(i){return this.loggingService.catch("Error in ReactionUtilsService formatReactionData:",i),t}}isReactionDataChanged(t,i){try{this.loggingService.log("%c[WB] Calling ReactionUtilsService FUNCTION: isReactionDataChanged","color: green;");let o=this.reactionAnnotationsResolverService.getReactionAnnotationById(i);return o?!ki(t,o):!0}catch(o){return this.loggingService.catch("Error in ReactionUtilsService isReactionDataChanged:",o),!0}}stripReactionAnnotationData(t){try{if(this.loggingService.log("%c[WB] Calling ReactionUtilsService FUNCTION: stripReactionAnnotationData","color: green;"),!this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable())return{originalData:t,strippedData:null};let i={};if(t&&t.annotationId){let o=t.annotationId;if(i[o]=x({annotationId:o,metadata:Cn(t.metadata??{}),icon:t.icon},t?.from&&{from:t?.from}),!this.isReactionDataChanged(i[o],o))return{strippedData:null,originalData:t};delete t?.icon,t.isReactionResolverUsed=!0}return{strippedData:i,originalData:t}}catch(i){return this.loggingService.catch("Error in ReactionUtilsService stripReactionAnnotationData:",i),{strippedData:null,originalData:null}}}mergeStrippedDataWithReactionAnnotations(t){try{if(this.loggingService.log("%c[WB] Calling ReactionUtilsService FUNCTION: mergeStrippedDataWithReactionAnnotations","color: green;"),!this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable())return t;let i=this.reactionAnnotationsResolverService.getReactionAnnotationById(t?.annotationId);return i&&i.icon&&(t.icon=i.icon),t}catch(i){return this.loggingService.catch("Error in ReactionUtilsService mergeStrippedDataWithReactionAnnotations:",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt),w(Cr),w(dr),w(Rr),w(qo))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Xy=(()=>{let e=class e{constructor(t,i,o,s,a,c,l,u,d){this.loggingService=t,this.usersService=i,this.commentUtilsService=o,this.reactionUtilsService=s,this.commentAnnotationsResolverService=a,this.reactionAnnotationsResolverService=c,this.recorderAnnotationsResolverService=l,this.activityResolverService=u,this.serviceBook=d}getActivityDisplayMessage(t){try{switch(t.featureType){case"comment":return this.getCommentDisplayMessage(t);case"recorder":return this.getRecorderDisplayMessage(t);case"reaction":return this.getReactionDisplayMessage(t);case"crdt":return this.getCrdtDisplayMessage(t);case"custom":return t.displayMessageTemplate&&t.displayMessageTemplateData?this.resolveTemplate(t.displayMessageTemplate,t.displayMessageTemplateData):"";default:return""}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService getActivityDisplayMessage:",i),""}}resolveTemplate(t,i){try{return t.replace(/\{\{([\w.]+)\}\}/g,(o,s)=>{let a=s.split(".").reduce((c,l)=>{if(c!=null&&typeof c=="object")return c[l]},i);return a!=null?String(a):""})}catch(o){return this.loggingService.catch("Error in ActivityUtilsService resolveTemplate:",o),t}}buildActivityDataFromExtraData(t){try{let{feature:i,extraData:o}=t;if(!o?.actionType)return null;switch(i){case"comment":return this.buildCommentActivityData({commentAnnotation:o.annotationData,targetComment:o.targetAnnotationData,actionType:o.actionType,otherFields:o});case"recorder":return this.buildRecorderActivityData(o);case"reaction":return this.buildReactionActivityData(o);default:return null}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService buildActivityDataFromExtraData:",i),null}}stripActivityPII(t){return I(this,null,function*(){try{let i=JSON.parse(JSON.stringify(t));if(delete i.displayMessage,!this.usersService.userDataProviderAvailable())return{strippedActivity:i};i.actionUser?.userId&&(i.actionUser={userId:i.actionUser.userId}),i.changes&&this.stripUsersFromChanges(i.changes),i.displayMessageTemplateData&&this.stripUsersFromTemplateData(i.displayMessageTemplateData);let o=this.extractCommentChangesForResolver(i),s=this.extractFeatureEntityDataForResolver(i);yield this.stripFeatureSpecificPII(i);let a=this.extractActivityResolverData(i);return o&&(a?a.changes=x(x({},a.changes),o.changes):a=o),s&&(a?(s.entityData!==void 0&&(a.entityData=s.entityData),s.entityTargetData!==void 0&&(a.entityTargetData=s.entityTargetData)):a=s),a&&(i.isActivityResolverUsed=!0),{strippedActivity:i,activityResolverData:a}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService stripActivityPII:",i),{strippedActivity:t}}})}mergeActivityWithUser(t){try{if(!this.usersService.userDataProviderAvailable())return t;if(t=JSON.parse(JSON.stringify(t)),t.actionUser?.userId){let i=this.usersService.getUserById(t.actionUser.userId);i&&(t.actionUser=i)}return t.changes&&this.rehydrateUsersInChanges(t.changes),t.displayMessageTemplateData&&this.rehydrateUsersInTemplateData(t.displayMessageTemplateData),this.rehydrateFeatureSpecificUserData(t),t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mergeActivityWithUser:",i),t}}mergeActivityWithFeatureData(t){try{switch(t.featureType){case"comment":return this.mergeActivityWithCommentAnnotationData(t);case"reaction":return this.mergeActivityWithReactionData(t);case"recorder":return this.mergeActivityWithRecorderData(t);default:return t}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mergeActivityWithFeatureData:",i),t}}getUserIdsToResolveFromActivities(t){try{let i=new Set;for(let o of t){if(o.actionUser?.userId&&i.add(o.actionUser.userId),o.changes)for(let s of Object.values(o.changes))s&&(this.extractUserIdFromValue(s.from,i),this.extractUserIdFromValue(s.to,i));if(o.displayMessageTemplateData)for(let s of Object.values(o.displayMessageTemplateData))this.extractUserIdFromValue(s,i);this.extractFeatureSpecificUserIds(o,i)}return Array.from(i)}catch(i){return this.loggingService.catch("Error in ActivityUtilsService getUserIdsToResolveFromActivities:",i),[]}}getEntityIdsToResolveFromActivities(t,i){try{let o=new Set;for(let s of t)if(!(i&&s.featureType!==i))switch(s.featureType){case"comment":case"reaction":case"recorder":s.targetEntityId&&o.add(s.targetEntityId);break}return Array.from(o)}catch(o){return this.loggingService.catch("Error in ActivityUtilsService getEntityIdsToResolveFromActivities:",o),[]}}stripFeatureSpecificPII(t){return I(this,null,function*(){try{switch(t.featureType){case"comment":yield this.stripCommentPII(t);break;case"reaction":this.stripReactionPII(t);break;case"recorder":this.stripRecorderPII(t);break}}catch(i){this.loggingService.catch("Error in ActivityUtilsService stripFeatureSpecificPII:",i)}})}extractActivityResolverData(t){try{if(!this.activityResolverService.activityDataProviderAvailable())return;let i={id:t.id},o=!1;if(t.featureType==="custom"){let s=this.activityResolverService.getFieldsToRemove();for(let a of s)a in t&&t[a]!==void 0&&(i[a]=t[a],delete t[a],o=!0)}return t.metadata&&(i.metadata=Cn(t.metadata)),o?i:void 0}catch(i){this.loggingService.catch("Error in ActivityUtilsService extractActivityResolverData:",i);return}}extractCommentChangesForResolver(t){try{return!this.activityResolverService.activityDataProviderAvailable()||t.featureType!=="comment"||!t.changes?.commentText?void 0:{id:t.id,changes:{commentText:t.changes.commentText},metadata:t.metadata?Cn(t.metadata):void 0}}catch(i){this.loggingService.catch("Error in ActivityUtilsService extractCommentChangesForResolver:",i);return}}extractFeatureEntityDataForResolver(t){try{if(!this.activityResolverService.activityDataProviderAvailable()||!t.entityData)return;let i=t.featureType==="recorder"&&this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable(),o=t.featureType==="reaction"&&this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable();if(!i&&!o)return;let s={id:t.id,metadata:t.metadata?Cn(t.metadata):void 0},a=JSON.parse(JSON.stringify(t.entityData));if(i){let c=this.serviceBook.get(ci)?.stripRecorderAnnotationData({data:a});if(c?.strippedData){let l=Object.keys(c.strippedData)[0];l&&(s.entityData=c.strippedData[l])}}if(o){let c=this.reactionUtilsService.stripReactionAnnotationData(a);if(c?.strippedData){let l=Object.keys(c.strippedData)[0];l&&(s.entityData=c.strippedData[l])}}return s.entityData?s:void 0}catch(i){this.loggingService.catch("Error in ActivityUtilsService extractFeatureEntityDataForResolver:",i);return}}mergeActivityWithResolverData(t){try{if(!this.activityResolverService.activityDataProviderAvailable())return t;let i=this.activityResolverService.getActivityById(t.id);if(!i)return t;i.changes&&(t.changes||(t.changes={}),Object.assign(t.changes,i.changes)),i.entityData!==void 0&&(t.entityData=i.entityData),i.entityTargetData!==void 0&&(t.entityTargetData=i.entityTargetData),i.displayMessageTemplateData&&(t.displayMessageTemplateData||(t.displayMessageTemplateData={}),Object.assign(t.displayMessageTemplateData,i.displayMessageTemplateData));let o=new Set(["id","metadata","changes","entityData","entityTargetData","displayMessageTemplateData"]);for(let[s,a]of Object.entries(i))!o.has(s)&&a!==void 0&&(t[s]=a);return t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mergeActivityWithResolverData:",i),t}}rehydrateFeatureSpecificUserData(t){try{switch(t.featureType){case"comment":this.rehydrateCommentUserData(t);break;case"reaction":this.rehydrateReactionUserData(t);break;case"recorder":this.rehydrateRecorderUserData(t);break}}catch(i){this.loggingService.catch("Error in ActivityUtilsService rehydrateFeatureSpecificUserData:",i)}}getCommentDisplayMessage(t){try{let i=t.actionUser?.name??"Someone";switch(t.actionType){case xe.ANNOTATION_ADD:return`${i} added a comment`;case xe.COMMENT_ADD:return`${i} replied to a comment`;case xe.COMMENT_UPDATE:return`${i} edited a comment`;case xe.COMMENT_DELETE:return`${i} deleted a comment`;case xe.ANNOTATION_DELETE:return`${i} deleted a comment thread`;case xe.STATUS_CHANGE:{let o=t.changes?.status,s=o?.from?.name,a=o?.to?.name;return s&&a?`${i} changed status from ${s} to ${a}`:`${i} changed the status`}case xe.PRIORITY_CHANGE:{let o=t.changes?.priority,s=o?.to;if(!s)return`${i} removed the priority`;let a=typeof s=="object"?s?.name:String(s),c=o?.from,l=c&&typeof c=="object"?c?.name:c?String(c):null;return l&&a?`${i} changed priority from ${l} to ${a}`:`${i} changed priority to ${a}`}case xe.ASSIGN:{let s=t.changes?.assignedTo?.to;return s&&typeof s=="object"&&s.name?`${i} assigned to ${s.name}`:`${i} assigned the comment`}case xe.ACCESS_MODE_CHANGE:{let s=t.changes?.accessMode?.to;return s?`${i} changed access to ${s}`:`${i} changed the access mode`}case xe.CUSTOM_LIST_CHANGE:return`${i} changed the custom list`;case xe.APPROVE:return`${i} approved the comment`;case xe.ACCEPT:case xe.SUGGESTION_ACCEPT:return`${i} accepted a suggestion`;case xe.REJECT:case xe.SUGGESTION_REJECT:return`${i} rejected a suggestion`;case xe.REACTION_ADD:return`${i} reacted to a comment`;case xe.REACTION_DELETE:return`${i} removed a reaction`;case xe.SUBSCRIBE:return`${i} subscribed to the thread`;case xe.UNSUBSCRIBE:return`${i} unsubscribed from the thread`;default:return""}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService getCommentDisplayMessage:",i),""}}getRecorderDisplayMessage(t){try{let i=t.actionUser?.name??"Someone";switch(t.actionType){case vg.RECORDING_ADD:return`${i} added a recording`;case vg.RECORDING_DELETE:return`${i} deleted a recording`;default:return""}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService getRecorderDisplayMessage:",i),""}}getReactionDisplayMessage(t){try{let i=t.actionUser?.name??"Someone";switch(t.actionType){case yg.REACTION_ADD:return`${i} added a reaction`;case yg.REACTION_DELETE:return`${i} removed a reaction`;default:return""}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService getReactionDisplayMessage:",i),""}}getCrdtDisplayMessage(t){try{let i=t.actionUser?.name??"Someone",s=t.entityData?.editCount??0,a=t.targetEntityId??"unknown";return`${i} made ${s} edit${s!==1?"s":""} to editor ${a}`}catch(i){return this.loggingService.catch("Error in ActivityUtilsService getCrdtDisplayMessage:",i),""}}stripCommentPII(t){return I(this,null,function*(){try{let i=yield this.commentUtilsService.stripCommentAnnotationData({data:t.entityData,actionType:t.eventType??Ie.NEWLY_ADDED});i?.originalData&&(t.entityData=this.commentUtilsService.formatCommentData(i.originalData)),t.entityTargetData&&(t.entityTargetData=this.commentUtilsService.formatCommentThreadData(this.commentUtilsService.stripCommentsFromAnnotationData({comment:t.entityTargetData}))),this.activityResolverService.activityDataProviderAvailable()&&t.changes?.commentText&&delete t.changes.commentText}catch(i){this.loggingService.catch("Error in ActivityUtilsService stripCommentPII:",i)}})}rehydrateCommentUserData(t){try{t.entityData&&this.commentUtilsService.mergeCommentWithUser(t.entityData),t.entityTargetData&&(this.rehydrateUserInObject(t.entityTargetData,"from"),this.rehydrateUsersInArray(t.entityTargetData,"to"),this.rehydrateUsersInArray(t.entityTargetData,"taggedUserContacts"))}catch(i){this.loggingService.catch("Error in ActivityUtilsService rehydrateCommentUserData:",i)}}stripReactionPII(t){try{if(!t.entityData)return;this.activityResolverService.activityDataProviderAvailable()&&this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable()&&this.reactionUtilsService.stripReactionAnnotationData(t.entityData),t.entityData=this.reactionUtilsService.formatReactionData(t.entityData)}catch(i){this.loggingService.catch("Error in ActivityUtilsService stripReactionPII:",i)}}rehydrateReactionUserData(t){try{if(!t.entityData)return;this.reactionUtilsService.mergeReactionWithUser(t.entityData)}catch(i){this.loggingService.catch("Error in ActivityUtilsService rehydrateReactionUserData:",i)}}stripRecorderPII(t){try{if(!t.entityData)return;if(this.activityResolverService.activityDataProviderAvailable()&&this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable()){this.serviceBook.get(ci)?.stripRecorderAnnotationData({data:t.entityData});return}let i=t.entityData;if(this.usersService.userDataProviderAvailable()){i.from&&typeof i.from=="object"&&"userId"in i.from&&(i.from={userId:i.from.userId});let o=i.transcription;o?.from&&typeof o.from=="object"&&"userId"in o.from&&(o.from={userId:o.from.userId})}}catch(i){this.loggingService.catch("Error in ActivityUtilsService stripRecorderPII:",i)}}rehydrateRecorderUserData(t){try{if(!t.entityData)return;this.serviceBook.get(ci)?.mergeRecorderWithUser(t.entityData)}catch(i){this.loggingService.catch("Error in ActivityUtilsService rehydrateRecorderUserData:",i)}}mergeActivityWithCommentAnnotationData(t){try{if(!this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable())return t;let i=this.commentAnnotationsResolverService.getAnnotationById(t.targetEntityId);if(!i)return t;let o=t.entityData?.comments;if(Array.isArray(o))for(let s of o){let a=s?.commentId;if(a==null)continue;let c=i.comments?.[String(a)];c&&(c.commentText&&(s.commentText=c.commentText),c.commentHtml&&(s.commentHtml=c.commentHtml))}if(t.targetSubEntityId&&t.entityTargetData){let s=i.comments?.[t.targetSubEntityId];if(s){let a=t.entityTargetData;s.commentText&&(a.commentText=s.commentText),s.commentHtml&&(a.commentHtml=s.commentHtml)}}return t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mergeActivityWithCommentAnnotationData:",i),t}}mergeActivityWithReactionData(t){try{return!this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable()||!t.targetEntityId||!t.entityData||this.reactionUtilsService.mergeStrippedDataWithReactionAnnotations(t.entityData),t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mergeActivityWithReactionData:",i),t}}mergeActivityWithRecorderData(t){try{return!this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable()||!t.targetEntityId||!t.entityData||this.serviceBook.get(ci)?.mergeStrippedDataWithRecorderAnnotation(t.entityData),t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mergeActivityWithRecorderData:",i),t}}buildCommentActivityData(t){try{let{commentAnnotation:i,targetComment:o,actionType:s,otherFields:a}=t,c=i,l=o,u=s===Ie.DELETED&&a?.isAnnotationDelete?xe.ANNOTATION_DELETE:this.mapCommentStatusToActionType(s);if(!u)return null;let d=c?.annotationId;if(!d)return null;let f=l?.commentId,g=this.buildCommentChanges(s,l,a);return{featureType:"comment",actionType:u,targetEntityId:d,eventType:s,targetSubEntityId:f??null,changes:Object.keys(g).length>0?g:void 0,entityData:i,entityTargetData:o??void 0}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService buildCommentActivityData:",i),null}}mapCommentStatusToActionType(t){try{switch(t){case Ie.NEWLY_ADDED:return xe.ANNOTATION_ADD;case Ie.ADDED:return xe.COMMENT_ADD;case Ie.UPDATED:return xe.COMMENT_UPDATE;case Ie.DELETED:return xe.COMMENT_DELETE;case Ie.STATUS_CHANGED:return xe.STATUS_CHANGE;case Ie.PRIORITY_CHANGED:return xe.PRIORITY_CHANGE;case Ie.ASSIGNED:return xe.ASSIGN;case Ie.ACCESS_MODE_CHANGED:return xe.ACCESS_MODE_CHANGE;case Ie.CUSTOM_LIST_CHANGED:return xe.CUSTOM_LIST_CHANGE;case Ie.APPROVED:return xe.APPROVE;case Ie.ACCEPTED:return xe.ACCEPT;case Ie.REJECTED:return xe.REJECT;case Ie.SUGGESTION_ACCEPTED:return xe.SUGGESTION_ACCEPT;case Ie.SUGGESTION_REJECTED:return xe.SUGGESTION_REJECT;case Ie.REACTION_ADDED:return xe.REACTION_ADD;case Ie.REACTION_DELETED:return xe.REACTION_DELETE;case Ie.SUBSCRIBED:return xe.SUBSCRIBE;case Ie.UNSUBSCRIBED:return xe.UNSUBSCRIBE;default:return null}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mapCommentStatusToActionType:",i),null}}buildRecorderActivityData(t){try{let i=t.annotationData,o=t.actionType,s=this.mapRecorderStatusToActionType(o);if(!s)return null;let a=i?.annotationId;return a?{featureType:"recorder",actionType:s,targetEntityId:a,entityData:i}:null}catch(i){return this.loggingService.catch("Error in ActivityUtilsService buildRecorderActivityData:",i),null}}mapRecorderStatusToActionType(t){try{switch(t){case _T.ADDED:return vg.RECORDING_ADD;case _T.DELETED:return vg.RECORDING_DELETE;default:return null}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mapRecorderStatusToActionType:",i),null}}buildReactionActivityData(t){try{let i=t.annotationData,o=t.actionType,s=this.mapReactionActionType(o);if(!s)return null;let a=i?.annotationId;return a?{featureType:"reaction",actionType:s,targetEntityId:a,entityData:i}:null}catch(i){return this.loggingService.catch("Error in ActivityUtilsService buildReactionActivityData:",i),null}}mapReactionActionType(t){try{switch(t){case"add":return yg.REACTION_ADD;case"delete":return yg.REACTION_DELETE;default:return null}}catch(i){return this.loggingService.catch("Error in ActivityUtilsService mapReactionActionType:",i),null}}buildCommentChanges(t,i,o){try{let s={};switch(t){case Ie.NEWLY_ADDED:case Ie.ADDED:s.commentText={from:null,to:i?.commentText??null};break;case Ie.UPDATED:s.commentText={from:o?.oldCommentText??null,to:i?.commentText??null};break;case Ie.DELETED:s.commentText={from:i?.commentText??null,to:null};break;case Ie.STATUS_CHANGED:s.status={from:o?.oldStatus??null,to:o?.newStatus??null};break;case Ie.PRIORITY_CHANGED:s.priority={from:o?.oldPriority??null,to:o?.newPriority??null};break;case Ie.ASSIGNED:{s.assignedTo={from:o?.oldAssignedTo??null,to:o?.newAssignedTo??null};break}case Ie.ACCESS_MODE_CHANGED:s.accessMode={from:o?.oldAccessMode??null,to:o?.newAccessMode??null};break;case Ie.CUSTOM_LIST_CHANGED:s.customList={from:o?.oldCustomList??null,to:o?.newCustomList??null};break}return s}catch(s){return this.loggingService.catch("Error in ActivityUtilsService buildCommentChanges:",s),{}}}extractFeatureSpecificUserIds(t,i){try{switch(t.featureType){case"comment":this.extractCommentActivityUserIds(t,i);break;case"reaction":this.extractReactionActivityUserIds(t,i);break;case"recorder":this.extractRecorderActivityUserIds(t,i);break}}catch(o){this.loggingService.catch("Error in ActivityUtilsService extractFeatureSpecificUserIds:",o)}}extractCommentActivityUserIds(t,i){try{if(t.entityData){let o=this.commentUtilsService.getUserIdsToResolveFromComments([t.entityData]);for(let s of o)i.add(s)}if(t.entityTargetData){let o=t.entityTargetData;if(this.extractUserIdFromValue(o.from,i),Array.isArray(o.to))for(let s of o.to)this.extractUserIdFromValue(s,i);if(Array.isArray(o.taggedUserContacts))for(let s of o.taggedUserContacts)this.extractUserIdFromValue(s,i)}}catch(o){this.loggingService.catch("Error in ActivityUtilsService extractCommentActivityUserIds:",o)}}extractReactionActivityUserIds(t,i){try{if(!t.entityData)return;let o=this.reactionUtilsService.getUserIdsToResolveFromReactions([t.entityData]);for(let s of o)i.add(s)}catch(o){this.loggingService.catch("Error in ActivityUtilsService extractReactionActivityUserIds:",o)}}extractRecorderActivityUserIds(t,i){try{if(!t.entityData)return;let o=this.serviceBook.get(ci)?.getUserIdsToResolveFromRecorders([t.entityData])??[];for(let s of o)i.add(s)}catch(o){this.loggingService.catch("Error in ActivityUtilsService extractRecorderActivityUserIds:",o)}}stripUsersFromChanges(t){try{for(let i of Object.keys(t)){let o=t[i];o&&(o.from=this.stripUserIfPresent(o.from),o.to=this.stripUserIfPresent(o.to))}}catch(i){this.loggingService.catch("Error in ActivityUtilsService stripUsersFromChanges:",i)}}stripUserIfPresent(t){try{return t&&typeof t=="object"&&"userId"in t?{userId:t.userId}:t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService stripUserIfPresent:",i),t}}stripUsersFromTemplateData(t){try{for(let i of Object.keys(t)){let o=t[i];o&&typeof o=="object"&&"userId"in o&&(t[i]={userId:o.userId})}}catch(i){this.loggingService.catch("Error in ActivityUtilsService stripUsersFromTemplateData:",i)}}rehydrateUsersInChanges(t){try{for(let i of Object.values(t))i&&(i.from=this.rehydrateIfUser(i.from),i.to=this.rehydrateIfUser(i.to))}catch(i){this.loggingService.catch("Error in ActivityUtilsService rehydrateUsersInChanges:",i)}}rehydrateIfUser(t){try{if(t&&typeof t=="object"&&"userId"in t){let i=t.userId;return this.usersService.getUserById(i)??t}return t}catch(i){return this.loggingService.catch("Error in ActivityUtilsService rehydrateIfUser:",i),t}}rehydrateUsersInTemplateData(t){try{for(let i of Object.keys(t))t[i]=this.rehydrateIfUser(t[i])}catch(i){this.loggingService.catch("Error in ActivityUtilsService rehydrateUsersInTemplateData:",i)}}rehydrateUserInObject(t,i){try{let o=t[i];if(o&&typeof o=="object"&&"userId"in o){let s=o.userId,a=this.usersService.getUserById(s);a&&(t[i]=a)}}catch(o){this.loggingService.catch("Error in ActivityUtilsService rehydrateUserInObject:",o)}}rehydrateUsersInArray(t,i){try{let o=t[i];Array.isArray(o)&&(t[i]=o.map(s=>this.rehydrateIfUser(s)))}catch(o){this.loggingService.catch("Error in ActivityUtilsService rehydrateUsersInArray:",o)}}extractUserIdFromValue(t,i){try{if(t&&typeof t=="object"&&"userId"in t){let o=t.userId;typeof o=="string"&&i.add(o)}}catch(o){this.loggingService.catch("Error in ActivityUtilsService extractUserIdFromValue:",o)}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt),w(Ky),w(Qy),w(zo),w(qo),w(ec),w(Yy),w(li))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Jy=class{constructor({apiKey:e,documentId:r,organizationId:t,folderId:i,veltFolderId:o,clientDocumentId:s,clientOrganizationId:a}){this.paths={},this.apiKey=e,this.documentId=r,this.organizationId=t,this.folderId=i,this.veltFolderId=o,this.clientDocumentId=s,this.clientOrganizationId=a,s&&(this.documentId=da(s)),a&&(this.organizationId=Ts(a)),i&&(this.folderId=i,this.veltFolderId=wo(i)),this.generateDocumentPaths()}generateDocumentPaths(){try{if(this.paths.clientDocumentId=this.clientDocumentId,this.paths.documentId=this.documentId,this.organizationId&&(this.paths.organizationId=this.organizationId,this.paths.clientOrganizationId=this.clientOrganizationId),this.veltFolderId&&(this.paths.folderId=this.folderId,this.paths.veltFolderId=this.veltFolderId),this.apiKey){let e=`${this.apiKey}`;this.organizationId&&(e=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATIONS}/${this.paths.organizationId}`),this.documentId&&(this.paths.docs=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/`,this.paths.folder=`${e}/${v.FIREBASE_PARTIAL_PATH_FOLDERS}/`,this.paths.presence=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_PRESENCE}/`,this.paths.cursor=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_CURSOR}/`,this.paths.comment=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_COMMENT}/`,this.paths.multiThread=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_MULTI_THREAD}/`,this.paths.tag=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_TAG}/`,this.paths.area=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_AREA}/`,this.paths.arrow=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_ARROW}/`,this.paths.selection=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_SELECTION}/`,this.paths.audioHuddle=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_AUDIO_HUDDLE}/`,this.paths.huddle=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_HUDDLE}/`,this.paths.recorder=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_RECORDER}/`,this.paths.flock=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_FOLLOW_ALONG}/`,this.paths.syncVideoPlayer=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_SYNC_VIDEO_PLAYER}/`,this.paths.liveState=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_LIVE_STATE}/`,this.paths.liveStateSingleEditorMode=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_LIVE_STATE}/default/singleEditorMode`,this.paths.reaction=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_REACTION}/`,this.paths.crdt=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_CRDT}/`,this.paths.views=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_VIEWS}/`,this.paths.notifications=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATIONS}/`,this.paths.metadata=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_METADATA}/`,this.paths.users=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_USERS}/`,this.paths.documentIam=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_IAM}/`,this.paths.userConfig=`${e}/${v.FIREBASE_PARTIAL_PATH_USERS}`),this.paths.customerMetadata=`${e}/${v.FIREBASE_PARTIAL_PATH_CUSTOMER_METADATA}/`,this.paths.groupContacts=`${e}/${v.FIREBASE_PARTIAL_PATH_CONTACTS}/${v.FIREBASE_PARTIAL_PATH_GROUPS}/`,this.paths.globalContacts=`${e}/${v.FIREBASE_PARTIAL_PATH_CONTACTS}/${v.FIREBASE_PARTIAL_PATH_GLOBAL}/`,this.paths.logins=`${e}/${v.FIREBASE_PARTIAL_PATH_CONTACTS}/${v.FIREBASE_PARTIAL_PATH_LOGINS}/`,this.paths.userFeedback=`${e}/${v.FIREBASE_PARTIAL_PATH_USER_REQUESTS}/${v.FIREBASE_PARTIAL_PATH_FEEDBACK}/`,this.paths.userReportBugs=`${e}/${v.FIREBASE_PARTIAL_PATH_USER_REQUESTS}/${v.FIREBASE_PARTIAL_PATH_BUGS}/`,this.paths.userContactUs=`${e}/${v.FIREBASE_PARTIAL_PATH_USER_REQUESTS}/${v.FIREBASE_PARTIAL_PATH_CONTACT_US}/`,this.organizationId&&(this.paths.organizationMetadata=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_METADATA}/`,this.paths.organizationIam=`${e}/${v.FIREBASE_PARTIAL_PATH_IAM}/`,this.paths.organizationGroups=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_GROUPS}/`,this.paths.organizationNotifications=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/`,this.documentId&&(this.paths.organizationNotificationsWithDocumentId=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/`,this.paths.heartbeatByDocument=`${e}/${v.FIREBASE_PARTIAL_PATH_HEARTBEAT_BY_DOCUMENT}/${this.documentId}/`),this.paths.organizationNotificationsLastNotificationTimestamp=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/${v.FIREBASE_PARTIAL_PATH_LAST_NOTIFICATION_TIMESTAMP}/${v.FIREBASE_PARTIAL_PATH_DOCS}/`,this.paths.organizationNotificationsUsers=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_NOTIFICATIONS}/${v.FIREBASE_PARTIAL_PATH_USERS}/`,this.paths.heartbeat=`${e}/${v.FIREBASE_PARTIAL_PATH_HEARTBEAT}/`),this.paths.workspaceIam=`${this.apiKey}/${v.FIREBASE_PARTIAL_PATH_IAM}/`}}catch{}}get folder(){return this.paths.folder?this.paths.folder:this.throwError("Folder path is not available.")}get userConfig(){return this.paths.userConfig?this.paths.userConfig:this.throwError("User config path is not available.")}get workspaceIam(){return this.paths.workspaceIam?this.paths.workspaceIam:this.throwError("Workspace IAM path is not available.")}get docs(){return this.paths.docs?this.paths.docs:this.throwError("Docs path is not available.")}get presence(){return this.paths.presence?this.paths.presence:this.throwError("Presence path is not available.")}get cursor(){return this.paths.cursor?this.paths.cursor:this.throwError("Cursor path is not available.")}get area(){return this.paths.area?this.paths.area:this.throwError("Area path is not available.")}get arrow(){return this.paths.arrow?this.paths.arrow:this.throwError("Arrow path is not available.")}get comment(){return this.paths.comment?this.paths.comment:this.throwError("Comment path is not available.")}get multiThread(){return this.paths.multiThread?this.paths.multiThread:this.throwError("Multi thread path is not available.")}get tag(){return this.paths.tag?this.paths.tag:this.throwError("Tag path is not available.")}get selection(){return this.paths.selection?this.paths.selection:this.throwError("Selection path is not available.")}get audioHuddle(){return this.paths.audioHuddle?this.paths.audioHuddle:this.throwError("Audio huddle path is not available.")}get huddle(){return this.paths.huddle?this.paths.huddle:this.throwError("Huddle path is not available.")}get recorder(){return this.paths.recorder?this.paths.recorder:this.throwError("Recorder path is not available.")}get flock(){return this.paths.flock?this.paths.flock:this.throwError("Flock path is not available.")}get syncVideoPlayer(){return this.paths.syncVideoPlayer?this.paths.syncVideoPlayer:this.throwError("Sync video player path is not available.")}get liveState(){return this.paths.liveState?this.paths.liveState:this.throwError("Live state path is not available.")}get liveStateSingleEditorMode(){return this.paths.liveStateSingleEditorMode?this.paths.liveStateSingleEditorMode:this.throwError("Live state single editor mode path is not available.")}get reaction(){return this.paths.reaction?this.paths.reaction:this.throwError("Reaction path is not available.")}get crdt(){return this.paths.crdt?this.paths.crdt:this.throwError("CRDT path is not available.")}get views(){return this.paths.views?this.paths.views:this.throwError("Views path is not available.")}get notifications(){return this.paths.notifications?this.paths.notifications:this.throwError("Notifications path is not available.")}get metadata(){return this.paths.metadata?this.paths.metadata:this.throwError("Metadata path is not available.")}get users(){return this.paths.users?this.paths.users:this.throwError("Users path is not available.")}get documentIam(){return this.paths.documentIam?this.paths.documentIam:this.throwError("Document IAM path is not available.")}get organizationMetadata(){return this.paths.organizationMetadata?this.paths.organizationMetadata:this.throwError("Organization metadata path is not available.")}get organizationIam(){return this.paths.organizationIam?this.paths.organizationIam:this.throwError("Organization IAM path is not available.")}get customerMetadata(){return this.paths.customerMetadata?this.paths.customerMetadata:this.throwError("Customer metadata path is not available.")}get groupContacts(){return this.paths.groupContacts?this.paths.groupContacts:this.throwError("Group contacts path is not available.")}get globalContacts(){return this.paths.globalContacts?this.paths.globalContacts:this.throwError("Global contacts path is not available.")}get logins(){return this.paths.logins?this.paths.logins:this.throwError("Logins path is not available.")}get userFeedback(){return this.paths.userFeedback?this.paths.userFeedback:this.throwError("User feedback path is not available.")}get userReportBugs(){return this.paths.userReportBugs?this.paths.userReportBugs:this.throwError("User report bugs path is not available.")}get userContactUs(){return this.paths.userContactUs?this.paths.userContactUs:this.throwError("User contact us path is not available.")}get organizationGroups(){return this.paths.organizationGroups?this.paths.organizationGroups:this.throwError("Organization groups path is not available.")}get heartbeat(){return this.paths.heartbeat?this.paths.heartbeat:this.throwError("Heartbeat path is not available.")}get heartbeatByDocument(){return this.paths.heartbeatByDocument?this.paths.heartbeatByDocument:this.throwError("Heartbeat by document path is not available.")}get organizationNotifications(){return this.paths.organizationNotifications?this.paths.organizationNotifications:this.throwError("Organization notifications path is not available.")}get organizationNotificationsWithDocumentId(){return this.paths.organizationNotificationsWithDocumentId?this.paths.organizationNotificationsWithDocumentId:this.throwError("Organization notifications with document id path is not available.")}get organizationNotificationsUsers(){return this.paths.organizationNotificationsUsers?this.paths.organizationNotificationsUsers:this.throwError("Organization notifications users path is not available.")}get organizationNotificationsLastNotificationTimestamp(){return this.paths.organizationNotificationsLastNotificationTimestamp?this.paths.organizationNotificationsLastNotificationTimestamp:this.throwError("Organization notifications last notification timestamp path is not available.")}throwError(e){throw{type:"DocumentPaths",message:e,metadata:{apiKey:this.apiKey,documentId:this.documentId,organizationId:this.organizationId}}}};var z3=(()=>{let e=class e{constructor(t,i,o){this.coreActionsService=t,this.loggingService=i,this.usersService=o}getUserIdsToResolveFromLiveStateCustom(t){try{let i=new Set;return t?.updatedBy&&i.add(t?.updatedBy?.userId),Array.from(i)}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService getUserIdsToResolveFromLiveStateCustom:",i),[]}}mergeLiveStateCustomWithUser(t){try{if(t?.updatedBy?.userId){let i=this.usersService.getUserById(t?.updatedBy?.userId);i&&(t.updatedBy=i)}return t}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService mergeLiveStateCustomWithUser:",i),t}}formatLiveStateCustomData(t){try{return this.usersService.userDataProviderAvailable()&&t?.updatedBy&&(t.updatedBy={userId:t.updatedBy.userId}),t}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService formatLiveStateCustomData:",i),t}}getUserIdsToResolveFromLiveStateCustoms(t){try{let i=new Set;for(let o of t)o?.updatedBy?.userId&&i.add(o?.updatedBy?.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService getUserIdsToResolveFromLiveStateCustoms:",i),[]}}getUserIdsToResolveFromLiveStates(t){try{let i=new Set;return t?.default?.singleEditorMode?.editor?.userId&&i.add(t?.default?.singleEditorMode?.editor?.userId),Array.from(i)}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService getUserIdsToResolveFromLiveStates:",i),[]}}getUserIdsToResolveFromLiveStateSingleEditorMode(t){try{let i=new Set;return t?.editor?.userId&&i.add(t?.editor?.userId),t?.requestEditorAccess?.user?.userId&&i.add(t?.requestEditorAccess?.user?.userId),Array.from(i)}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService getUserIdsToResolveFromLiveStateSingleEditorMode:",i),[]}}mergeLiveStateWithUser(t){try{if(t?.default?.singleEditorMode?.editor?.userId){let i=this.usersService.getUserById(t?.default?.singleEditorMode?.editor?.userId);i&&(t.default.singleEditorMode.editor=i)}if(t?.default?.singleEditorMode?.requestEditorAccess?.user?.userId){let i=this.usersService.getUserById(t?.default?.singleEditorMode?.requestEditorAccess?.user?.userId);i&&(t.default.singleEditorMode.requestEditorAccess.user=i)}return t}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService mergeLiveStateWithUser:",i),t}}mergeSingleEditorLiveStateDataWithUser(t){try{if(t?.editor?.userId){let i=this.usersService.getUserById(t?.editor?.userId);i&&(t.editor=i)}if(t?.requestEditorAccess?.user?.userId){let i=this.usersService.getUserById(t?.requestEditorAccess?.user?.userId);i&&(t.requestEditorAccess.user=i)}return t}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService mergeSingleEditorLiveStateDataWithUser:",i),t}}resolveAndMergeSingleEditorLiveStateDataWithUser(t){return I(this,null,function*(){try{let i=this.getUserIdsToResolveFromLiveStates({default:{singleEditorMode:t}});if(i.length){let o=J(),s=tl.GET_SINGLE_EDITOR_USERS;return this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:o,methodName:xn.RESOLVE_AND_MERGE_SINGLE_EDITOR_LIVE_STATE_DATA_WITH_USER,moduleName:s,source:"internal",payload:{userIds:i}}),yield this.usersService.resolveUsers({userIds:i,uniqueId:o,moduleName:s}),this.mergeSingleEditorLiveStateDataWithUser(t)}return t}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService resolveAndMergeSingleEditorLiveStateDataWithUser:",i),t}})}formatLiveStateSingleEditorModeData(t){try{return this.usersService.userDataProviderAvailable()&&(t?.editor?.userId&&(t.editor={userId:t.editor.userId}),t?.requestEditorAccess?.user?.userId&&(t.requestEditorAccess.user={userId:t.requestEditorAccess.user.userId})),t}catch(i){return this.loggingService.catch("Error in LiveStateUtilsService formatLiveStateSingleEditorModeData:",i),t}}mergeLiveStateCustomsWithUsers(t){try{for(let i of t)if(i?.updatedBy?.userId){let o=this.usersService.getUserById(i?.updatedBy?.userId);o&&(i.updatedBy=o)}return t}catch(i){return this.loggingService.catch("Error in mergeLiveStateCustomsWithUsers:",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(zt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Zy=(()=>{let e=class e{constructor(t,i,o){this.coreActionsService=t,this.loggingService=i,this.analyticsService=o,this.resolveTimeout=60*1e3,this.retryDeleteConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.retryGetConfig={retryCount:0,retryDelay:0,revertOnFailure:!1},this.notificationDataProvider$=new Y(null),this.notificationById$=new Y({}),this.inFlightRequests=new Map,this.getNotificationById=s=>{try{return this.notificationDataProviderAvailable()?this.notificationById$.value?.[s]:void 0}catch(a){this.loggingService.catch("Error in NotificationResolverService getNotificationById:",a);return}};try{this.loggingService.log("NotificationResolverService initialized"),this.notificationDataProvider$.subscribe(s=>{s&&(s.config?.resolveTimeout&&(this.resolveTimeout=s.config.resolveTimeout),s.config?.deleteRetryConfig&&(this.retryDeleteConfig=s.config.deleteRetryConfig),s.config?.getRetryConfig&&(this.retryGetConfig=s.config.getRetryConfig))})}catch(s){this.loggingService.catch("Error in NotificationResolverService constructor:",s)}}getProvider(){try{let t=this.notificationDataProvider$.getValue();return t||void 0}catch(t){this.loggingService.catch("Error in NotificationResolverService getProvider:",t);return}}ngOnDestroy(){try{this.notificationById$.next({})}catch(t){this.loggingService.catch("Error in NotificationResolverService ngOnDestroy:",t)}}resolveNotifications(s){return I(this,arguments,function*({request:t,uniqueId:i,moduleName:o}){try{if(this.loggingService.log("%c[WB] Calling NotificationResolverService FUNCTION: resolveNotifications","color: green;"),!this.notificationDataProviderAvailable())return{};let a,c=!1,l=!1,u=()=>{a&&(clearTimeout(a),a=void 0,l=!0)};return new Promise((d,f)=>{a=setTimeout(()=>{if(!l){c=!0,u();let k=i||J();this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:k,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{error:new Error("Notification resolution timeout"),request:t}}),f(new Error("Notification resolution timeout"))}},this.notificationDataProvider$.value?.config?.resolveTimeout||this.resolveTimeout);let g=this.getProvider();if(!g)return u(),d({});let p={},_=this.notificationById$.getValue()||{},T=[...new Set(t.notificationIds||[])],D=[],b=[],G=[];for(let k of T)_[k]||(this.inFlightRequests.has(k)?(D.push(this.inFlightRequests.get(k)),b.push(k)):G.push(k));let M=le(x({},t),{notificationIds:G});I(this,null,function*(){try{if(D.length>0&&(yield Promise.allSettled(D)),G.length>0){let k=i||J();this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:k,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{request:M}});let S,A=new Promise(O=>{S=O});for(let O of G)this.inFlightRequests.set(O,A.then(P=>P?.[O]));let C=kt(()=>g?.config?.getConfig?.url?Ht(g.config.getConfig.url,g.config.getConfig.headers,M,!0,g.config.getConfig.credentials):g?.get?.(M)||Promise.resolve(void 0),"getNotifications",this.retryGetConfig).then(O=>c?{}:(u(),O&&O.statusCode!==200?(this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:k,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{result:O,request:M}}),this.loggingService.catch(O?.message??"Error in NotificationResolverService resolveNotifications:"),{}):O?.data)).catch(O=>{throw u(),O});try{p=(yield C)||{},S(p);for(let P of G)this.inFlightRequests.delete(P);this.analyticsService.trackEvent(L.Events.Resolver.NOTIFICATION_RESOLVER_GET,{sourceMethod:"resolveNotifications",source:"sdk",notificationIds:G});let O={};Object.entries(p).forEach(([P,F])=>{let N=this.notificationById$.value?.[P];N?N&&JSON.stringify(N)!==JSON.stringify(F)&&(O[P]=F):O[P]=F}),Object.keys(O).length>0&&this.notificationById$.next(x(x({},this.notificationById$.getValue()),O)),this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_RESULT,timestamp:new Date().getTime(),uniqueId:k,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{result:O,request:M}}),d(O)}catch(O){S({});for(let F of G)this.inFlightRequests.delete(F);let P=i||J();this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:P,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{error:O,request:M}}),c||f(O),d(p)}}else u(),d({})}catch(k){u();let S=i||J();this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:S,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{error:k,request:M}}),f(k)}})})}catch(a){this.loggingService.catch("Error in NotificationResolverService resolveNotifications:",a);let c=i||J();return this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_ERROR,timestamp:new Date().getTime(),uniqueId:c,methodName:Fn.RESOLVE_NOTIFICATIONS,moduleName:o,source:"internal",payload:{error:a,request:t}}),{}}})}deleteNotification(t,i,o){return I(this,null,function*(){try{this.loggingService.log("%c[WB] Calling NotificationResolverService FUNCTION: deleteNotification","color: green;");let s=this.getProvider();if(!this.notificationDataProviderAvailable())throw new Error("Notification delete data provider not available");let a=o||J();this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_DELETE_REQUEST_TRIGGERED,timestamp:new Date().getTime(),uniqueId:a,methodName:Fn.DELETE_NOTIFICATION,source:"internal",payload:{notificationId:t,organizationId:i}});let c=this.notificationById$.getValue(),l=x({},c);delete l?.[t],this.notificationById$._value=l;let u={notificationId:t,organizationId:i},d=yield kt(()=>s?.config?.deleteConfig?.url?Ht(s.config.deleteConfig.url,s.config.deleteConfig.headers,u,!1,s.config.deleteConfig.credentials):s?.delete?.(u)||Promise.resolve(void 0),"deleteNotification",this.retryDeleteConfig);return d&&d.statusCode!==200?(this.retryDeleteConfig.revertOnFailure&&(this.notificationById$._value=c),this.loggingService.catch(d?.message??"Error in NotificationResolverService deleteNotification:"),this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:a,methodName:Fn.DELETE_NOTIFICATION,source:"internal",payload:{error:d,notificationId:t,organizationId:i}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!1}):(this.analyticsService.trackEvent(L.Events.Resolver.NOTIFICATION_RESOLVER_DELETE,{sourceMethod:"deleteNotification",source:"sdk",notificationId:t}),this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_DELETE_RESULT,timestamp:new Date().getTime(),uniqueId:a,methodName:Fn.DELETE_NOTIFICATION,source:"internal",payload:{result:{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0},notificationId:t,organizationId:i}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0})}catch(s){this.loggingService.warn("Error in NotificationResolverService deleteNotification:",s);let a=o||J();return this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_DELETE_ERROR,timestamp:new Date().getTime(),uniqueId:a,methodName:Fn.DELETE_NOTIFICATION,source:"internal",payload:{error:s,notificationId:t,organizationId:i}}),{revertOnFailure:this.retryDeleteConfig.revertOnFailure,isSuccess:!0}}})}getNotificationsById$(){try{return this.notificationDataProviderAvailable()?(this.loggingService.log("%c[WB] Calling NotificationResolverService FUNCTION: getNotificationsById$","color: green;"),this.notificationById$.asObservable()):ue(void 0)}catch(t){return this.loggingService.catch("Error in NotificationResolverService getNotificationsById$:",t),ue(void 0)}}setNotificationDataProvider(t){try{if(t){this.loggingService.log("Setting notification data provider");let i=t.config,o=[{method:"get",configKey:"getConfig"},{method:"delete",configKey:"deleteConfig"}],s=[];if(o.forEach(({method:a,configKey:c})=>{let l=i?.[c]?.url,u=a in t&&typeof t[a]=="function";!l&&!u&&s.push(a)}),s.length>0){let a=`DataProviders.notification is invalid. The following methods are missing or are not functions (and no corresponding config provided): ${s.join(", ")}.`;this.loggingService.catch(a);return}else this.notificationDataProvider$.next(t)}}catch(i){this.loggingService.catch("Error in NotificationResolverService setNotificationDataProvider:",i)}}notificationDataProviderAvailable(){try{return!!this.notificationDataProvider$.getValue()}catch(t){return this.loggingService.catch("Error in NotificationResolverService notificationDataProviderAvailable:",t),!1}}};e.\u0275fac=function(i){return new(i||e)(w(It),w(_e),w(Lt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Np=class{constructor({apiKey:e,documentId:r,organizationId:t,clientDocumentId:i,clientOrganizationId:o,folderId:s,veltFolderId:a}){this.paths={},this.apiKey=e,this.documentId=r,this.organizationId=t,this.veltFolderId=a,i&&(this.documentId=da(i)),o&&(this.organizationId=Ts(o)),s&&(this.folderId=s,this.veltFolderId=wo(s)),this.generateDocumentPaths()}generateDocumentPaths(){try{if(this.paths.clientDocumentId=this.clientDocumentId,this.paths.documentId=this.documentId,this.organizationId&&(this.paths.organizationId=this.organizationId,this.paths.clientOrganizationId=this.clientOrganizationId),this.veltFolderId&&(this.paths.folderId=this.folderId,this.paths.veltFolderId=this.veltFolderId),this.apiKey){let e=`apiKey/${this.apiKey}`;this.paths.activities=`${e}/${v.FIREBASE_PARTIAL_PATH_ACTIVITIES}`,this.paths.userNotificationIndex=`${e}/${v.FIREBASE_PARTIAL_PATH_USER_NOTIFICATION_INDEX}`,this.organizationId&&(e=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATIONS}/${this.paths.organizationId}`,this.paths.organization=e,this.paths.folder=`${e}/${v.FIREBASE_PARTIAL_PATH_FOLDERS}`,this.paths.organizationUsers=`${e}/${v.FIREBASE_PARTIAL_PATH_ORGANIZATION_USERS}`,this.paths.users=`${e}/${v.FIREBASE_PARTIAL_PATH_CENTRAL_USERS}`,this.paths.notificationDocs=`${e}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATION_DOCS}`,this.paths.notificationUsers=`${e}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATION_USERS}`,this.paths.organizationGroups=`${e}/${v.FIREBASE_PARTIAL_PATH_GROUPS}`,this.paths.lastNotificationTimestamp=`${e}/${v.FIREBASE_PARTIAL_PATH_LAST_NOTIFICATION_TIMESTAMP}`,this.paths.lastActivityTimestamp=`${e}/${v.FIREBASE_PARTIAL_PATH_LAST_ACTIVITY_TIMESTAMP}`,this.paths.userConfig=`${e}/${v.FIREBASE_PARTIAL_PATH_USERS}`,this.paths.permissionsUsers=`${e}/${v.FIREBASE_PARTIAL_PATH_PERMISSIONS_USERS}`),this.veltFolderId&&(this.paths.folderUsers=`${e}/${v.FIREBASE_PARTIAL_PATH_FOLDERS}/${this.veltFolderId}/${v.FIREBASE_PARTIAL_PATH_FOLDER_USERS}`),this.documentId&&(this.paths.document=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}`,this.paths.comment=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_COMMENT}`,this.paths.location=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_LOCATION}`,this.paths.multiThread=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_MULTI_THREAD}`,this.paths.area=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_AREA}`,this.paths.recorder=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_RECORDER}`,this.paths.reaction=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_REACTION}`,this.paths.crdt=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_CRDT}`,this.paths.notificationViews=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_NOTIFICATION_VIEWS}`,this.paths.documentViews=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_DOCUMENT_VIEWS}`,this.paths.locationViews=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_LOCATION_VIEWS}`,this.paths.documentUsers=`${e}/${v.FIREBASE_PARTIAL_PATH_DOCS}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_DOCUMENT_USERS}`,this.paths.docNotification=`${this.paths.notificationDocs}/${this.documentId}/${v.FIREBASE_PARTIAL_PATH_DOC_NOTIFICATION}`)}}catch{}}get userNotificationIndex(){return this.paths.userNotificationIndex}get permissionsUsers(){return this.paths.permissionsUsers?this.paths.permissionsUsers:this.throwError("PermissionsUsers path is not available.")}get users(){return this.paths.users?this.paths.users:this.throwError("Users path is not available.")}get userConfig(){return this.paths.userConfig?this.paths.userConfig:this.throwError("UserConfig path is not available.")}get folder(){return this.paths.folder?this.paths.folder:this.throwError("Folder path is not available.")}get lastNotificationTimestamp(){return this.paths.lastNotificationTimestamp?this.paths.lastNotificationTimestamp:this.throwError("LastNotificationTimestamp path is not available.")}get organizationGroups(){return this.paths.organizationGroups?this.paths.organizationGroups:this.throwError("organizationGroups path is not available.")}get docNotification(){return this.paths.docNotification?this.paths.docNotification:this.throwError("DocNotification path is not available.")}get organization(){return this.paths.organization?this.paths.organization:this.throwError("Organization path is not available.")}get document(){return this.paths.document?this.paths.document:this.throwError("Document path is not available.")}get location(){return this.paths.location?this.paths.location:this.throwError("Location path is not available.")}get area(){return this.paths.area?this.paths.area:this.throwError("Area path is not available.")}get comment(){return this.paths.comment?this.paths.comment:this.throwError("Comment path is not available.")}get documentViews(){return this.paths.documentViews?this.paths.documentViews:this.throwError("DocumentViews path is not available.")}get locationViews(){return this.paths.locationViews?this.paths.locationViews:this.throwError("LocationViews path is not available.")}get notificationViews(){return this.paths.notificationViews?this.paths.notificationViews:this.throwError("NotificationViews path is not available.")}get documentUsers(){return this.paths.documentUsers?this.paths.documentUsers:this.throwError("DocumentUsers path is not available.")}get folderUsers(){return this.paths.folderUsers?this.paths.folderUsers:this.throwError("FolderUsers path is not available.")}get organizationUsers(){return this.paths.organizationUsers?this.paths.organizationUsers:this.throwError("OrganizationUsers path is not available.")}get notificationDocs(){return this.paths.notificationDocs?this.paths.notificationDocs:this.throwError("NotificationDocs path is not available.")}get notificationUsers(){return this.paths.notificationUsers?this.paths.notificationUsers:this.throwError("NotificationUsers path is not available.")}get multiThread(){return this.paths.multiThread?this.paths.multiThread:this.throwError("Multi thread path is not available.")}get recorder(){return this.paths.recorder?this.paths.recorder:this.throwError("Recorder path is not available.")}get reaction(){return this.paths.reaction?this.paths.reaction:this.throwError("Reaction path is not available.")}get crdt(){return this.paths.crdt?this.paths.crdt:this.throwError("CRDT path is not available.")}get activities(){return this.paths.activities?this.paths.activities:this.throwError("Activities path is not available.")}get lastActivityTimestamp(){return this.paths.lastActivityTimestamp?this.paths.lastActivityTimestamp:this.throwError("LastActivityTimestamp path is not available.")}throwError(e){throw{type:"DocumentPaths",message:e,metadata:{apiKey:this.apiKey,documentId:this.documentId,organizationId:this.organizationId}}}};var K3=(()=>{let e=class e{constructor(t,i){this.loggingService=t,this.usersService=i}getUserIdsToResolveFromAreaAnnotations(t){try{this.loggingService.log("%c[WB] Calling AreaUtilsService FUNCTION: getUserIdsToResolveFromAreaAnnotations","color: green;");let i=new Set;for(let o of t)o?.from?.userId&&i.add(o?.from?.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in AreaUtilsService getUserIdsToResolveFromAreaAnnotations:",i),[]}}mergeAreaWithUser(t){try{if(this.loggingService.log("%c[WB] Calling AreaUtilsService FUNCTION: mergeAreaWithUser","color: green;"),t?.from?.userId){let i=this.usersService.getUserById(t?.from?.userId);i&&(t.from=i)}return t}catch(i){return this.loggingService.catch("Error in AreaUtilsService mergeAreaWithUser:",i),t}}formatAreaData(t){try{return this.loggingService.log("%c[WB] Calling AreaUtilsService FUNCTION: formatAreaData","color: green;"),this.usersService.userDataProviderAvailable()&&t?.from?.userId&&(t.from={userId:t.from.userId}),t}catch(i){return this.loggingService.catch("Error in AreaUtilsService formatAreaData:",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Y3=(()=>{let e=class e{constructor(t,i){this.loggingService=t,this.usersService=i}getUserIdsToResolveFromUserIamData(t){try{this.loggingService.log("%c[WB] Calling ContactUtilsService FUNCTION: getUserIdsToResolveFromUserIamData","color: green;");let i=new Set;if(t?.length)for(let o of t)o?.user?.userId&&i.add(o?.user?.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in ContactUtilsService getUserIdsToResolveFromUserIamData: ",i),[]}}mergeUserIamWithUser(t){try{if(this.loggingService.log("%c[WB] Calling ContactUtilsService FUNCTION: mergeUserIamWithUser","color: green;"),t?.user?.userId){let i=this.usersService.getUserById(t?.user?.userId);if(i){let o=i;t?.user&&typeof t.user=="object"&&(o=x(x({},o),t.user));let s=this.usersService.getContactListUser(t.user.userId);s&&(o=x(x({},o),s)),t=le(x({},t),{user:o})}}return t}catch(i){return this.loggingService.catch("Error in ContactUtilsService mergeUserIamWithUser: ",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Q3=(()=>{let e=class e{constructor(t,i){this.loggingService=t,this.usersService=i}getUserIdsToResolveFromMultiThreads(t){try{let i=new Set;for(let o of t)o?.from?.userId&&i.add(o?.from?.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in MultiThreadUtilsService getUserIdsToResolveFromMultiThreads:",i),[]}}mergeMultiThreadWithUser(t){try{if(t?.from?.userId){let i=this.usersService.getUserById(t?.from?.userId);i&&(t.from=i)}return t}catch(i){return this.loggingService.catch("Error in MultiThreadUtilsService mergeMultiThreadWithUser:",i),t}}formatMultiThreadData(t){try{return this.usersService.userDataProviderAvailable()&&(t?.from?.userId&&(t.from={userId:t.from.userId}),t?.commentAnnotationsMap&&(t.commentAnnotationsMap=null)),t}catch(i){return this.loggingService.catch("Error in MultiThreadUtilsService formatMultiThreadData:",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var X3=(()=>{let e=class e{constructor(t,i){this.loggingService=t,this.usersService=i}getUserIdsToResolveFromSelections(t){try{let i=new Set;for(let o of t)o?.user?.userId&&i.add(o.user.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in SelectionUtilsService getUserIdsToResolveFromSelections:",i),[]}}mergeSelectionWithUser(t){try{if(t?.user?.userId){let i=this.usersService.getUserById(t?.user?.userId);i&&(t.user=i)}return t}catch(i){return this.loggingService.catch("Error in SelectionUtilsService mergeSelectionWithUser:",i),t}}formatSelectionData(t){try{return this.usersService.userDataProviderAvailable()&&t?.user?.userId&&(t.user={userId:t.user.userId}),t}catch(i){return this.loggingService.catch("Error in SelectionUtilsService formatSelectionData:",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var J3=(()=>{let e=class e{constructor(t,i){this.loggingService=t,this.usersService=i}getUserIdsToResolveFromTags(t){try{let i=new Set;for(let o of t)if(o?.from?.userId&&i.add(o.from.userId),o?.to?.length)for(let s of o.to)s?.userId&&i.add(s.userId);return Array.from(i)}catch(i){return this.loggingService.catch("Error in TagUtilsService getUserIdsToResolveFromTags:",i),[]}}mergeTagWithUser(t){try{if(t?.from?.userId){let i=this.usersService.getUserById(t?.from?.userId);i&&(t.from=i)}return t?.to?.length&&(t.to=t.to.map(i=>{if(i?.userId){let o=this.usersService.getUserById(i?.userId);o&&(i=o)}return i})),t}catch(i){return this.loggingService.catch("Error in TagUtilsService mergeTagWithUser:",i),t}}formatTagData(t){try{return this.usersService.userDataProviderAvailable()&&(t?.from?.userId&&(t.from={userId:t.from.userId}),t?.to?.length&&(t.to=t.to.map(i=>(i?.userId&&(i={userId:i.userId}),i)))),t}catch(i){return this.loggingService.catch("Error in TagUtilsService formatTagData:",i),t}}};e.\u0275fac=function(i){return new(i||e)(w(_e),w(zt))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var Z3=(()=>{let e=class e{constructor(t,i,o,s,a,c,l,u,d,f,g,p,_,T,D,b,G,M,U,k){this.activityUtilsService=t,this.areaUtilsService=i,this.commentUtilsService=o,this.contactUtilsService=s,this.coreActionsService=a,this.liveStateUtilsService=c,this.loggingService=l,this.multiThreadUtilsService=u,this.reactionUtilsService=d,this.selectionUtilsService=f,this.tagUtilsService=g,this.usersService=p,this.docService=_,this.commentAnnotationsResolverService=T,this.reactionAnnotationsResolverService=D,this.recorderAnnotationsResolverService=b,this.notificationResolverService=G,this.activityResolverService=M,this.serviceBook=U,this.attachmentResolverService=k}getErrorForGetRequests({feature:t,error:i}){try{switch(t){case"apiKeyMetadata":case"organizationMetadata":case"documentMetadata":case"folderMetadata":return(i?.message??"")?.includes("Missing or insufficient permissions.")?{errorCode:"PERMISSION_DENIED"}:null;default:return null}}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService getErrorForGetRequests:",o),null}}getFirestorePath({feature:t,properties:i,documentPaths:o,apiKey:s}){try{if(!s)return;if(t==="userNotificationIndex"){if(!i?.id)return;let d=new Np({apiKey:s});return d?.userNotificationIndex?`${d.userNotificationIndex}/${i.id}`:void 0}let{documentId:a,organizationId:c,folderId:l}=i;if(!c&&(c=o?.organizationId,!c))return;let u=new Np({apiKey:s,documentId:a?`${a}`:"",organizationId:c?`${c}`:"",veltFolderId:l?`${l}`:void 0});switch(t){case"userConfig":return i?.userId&&u?.userConfig?`${u?.userConfig}/${i?.userId}${i?.documentId?`/${v.FIREBASE_PARTIAL_PATH_DOCUMENT_CONFIGURATIONS}/${i?.documentId}`:""}`:void 0;case"allPermissionsUsers":return u?.permissionsUsers?`${u?.permissionsUsers}`:void 0;case"comment":return i?.documentId&&i?.id&&u?.comment?`${u?.comment}/${i?.id}`:void 0;case"allComments":return i?.documentId&&u?.comment?`${u?.comment}`:void 0;case"multiThread":return i?.documentId&&i?.id&&u?.multiThread?`${u?.multiThread}/${i?.id}`:void 0;case"allMultiThreads":return i?.documentId&&u?.multiThread?`${u?.multiThread}`:void 0;case"crdt":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}`:void 0;case"allLastNotificationTimestamp":return u?.lastNotificationTimestamp?`${u?.lastNotificationTimestamp}`:void 0;case"lastNotificationTimestamp":return i?.id&&u?.lastNotificationTimestamp?`${u?.lastNotificationTimestamp}/${i?.id}`:void 0;case"activity":return i?.id&&u?.activities?`${u?.activities}/${i?.id}`:void 0;case"allActivities":return u?.activities?`${u?.activities}`:void 0;case"allLastActivityTimestamp":return u?.lastActivityTimestamp?`${u?.lastActivityTimestamp}`:void 0;case"lastActivityTimestamp":return i?.id&&u?.lastActivityTimestamp?`${u?.lastActivityTimestamp}/${i?.id}`:void 0;case"area":return i?.documentId&&i?.id&&u?.area?`${u?.area}/${i?.id}`:void 0;case"allAreas":return i?.documentId&&u?.area?`${u?.area}`:void 0;case"allDocuments":return u?.document?`${u?.document}`:void 0;case"allLocations":return u?.location?`${u?.location}`:void 0;case"allFolders":return u?.folder?`${u?.folder}`:void 0;case"folder":return u?.folder&&i.folderId?`${u?.folder}/${i.folderId}`:void 0;case"documentUserAccess":return i?.documentId&&i?.id&&u?.documentUsers?`${u?.documentUsers}/${i?.id}`:void 0;case"reaction":return i?.documentId&&i?.id&&u?.reaction?`${u?.reaction}/${i?.id}`:void 0;case"allReactions":return i?.documentId&&u?.reaction?`${u?.reaction}`:void 0;case"recorder":return i?.documentId&&i?.id&&u?.recorder?`${u?.recorder}/${i?.id}`:void 0;case"allRecorders":return i?.documentId&&u?.recorder?`${u?.recorder}`:void 0;case"recorderTrackEvent":return i?.documentId&&i?.id&&u?.recorder?`${u?.recorder}/${i?.id}/trackRecorderEvent`:void 0;case"documentAccessType":return i?.documentId&&u?.document?`${u?.document}/${i?.documentId}`:void 0;case"apiKeyMetadata":return s?`apiKey/${s}`:void 0;case"organizationMetadata":return u?.organization?`${u?.organization}`:void 0;case"documentIam":case"documentMetadata":return i?.documentId&&u?.document?`${u?.document}/${i?.documentId}`:void 0;case"folderMetadata":return i?.folderId&&u?.folder?`${u?.folder}/${i?.folderId}`:void 0;case"locationMetadata":return i?.documentId&&u?.location&&i?.id?`${u?.location}/${i?.id}`:void 0;case"documentUser":return i?.documentId&&i?.id&&u?.documentUsers?`${u?.documentUsers}/${i?.id}`:void 0;case"allDocumentUsers":return u?.users?`${u?.users}`:void 0;case"allFolderUsers":return u?.users?`${u?.users}`:void 0;case"allOrganizationGroups":return u?.organizationGroups?`${u?.organizationGroups}`:void 0;case"allOrganizationUsers":return u?.users?`${u?.users}`:void 0;case"notificationViewsTimestamp":return i?.documentId&&i?.id&&u?.notificationViews?`${u?.notificationViews}/${i?.id}`:void 0;case"allDocumentViews":return i?.documentId&&u?.documentViews?`${u?.documentViews}`:void 0;case"documentViews":case"documentMetadataViews":case"documentDayViews":case"documentUsersViews":return i?.documentId&&i?.id&&u?.documentViews?`${u?.documentViews}/${i?.id}`:void 0;case"locationDayViews":case"locationUsersViews":case"locationViews":case"locationMetadataViews":case"location":return i?.documentId&&i?.id&&u?.locationViews?`${u?.locationViews}/${i?.id}`:void 0;case"allLocationViews":return i?.documentId&&u?.locationViews?`${u?.locationViews}`:void 0;case"allDocNotifications":return i?.documentId&&u?.docNotification?`${u?.docNotification}`:void 0;case"docNotificationViews":case"docNotification":return i?.documentId&&i?.id&&u?.docNotification?`${u?.docNotification}/${i?.id}`:void 0;case"userNotificationViews":case"userNotification":return i?.userId&&i?.id&&u?.notificationUsers?`${u?.notificationUsers}/${i?.userId}/${v.FIREBASE_PARTIAL_PATH_USER_NOTIFICATION}/${i?.id}`:void 0;case"allUserNotifications":return i?.userId&&u?.notificationUsers?`${u?.notificationUsers}/${i?.userId}/${v.FIREBASE_PARTIAL_PATH_USER_NOTIFICATION}`:void 0;default:throw new Error(`Unknown feature: ${t}`)}}catch(a){this.loggingService.catch("Error in CommonDbUtilsService getFirestorePath:",a);return}}getFirestoreCollectionGroupPath(t){try{switch(t){case"allComments":return v.FIREBASE_PARTIAL_PATH_COMMENT;case"allDocuments":return v.FIREBASE_PARTIAL_PATH_DOCS;case"allLocations":return v.FIREBASE_PARTIAL_PATH_LOCATION;case"allMultiThreads":return v.FIREBASE_PARTIAL_PATH_MULTI_THREAD;case"allAreas":return v.FIREBASE_PARTIAL_PATH_AREA;case"allReactions":return v.FIREBASE_PARTIAL_PATH_REACTION;case"allRecorders":return v.FIREBASE_PARTIAL_PATH_RECORDER;case"allDocumentViews":return v.FIREBASE_PARTIAL_PATH_DOCUMENT_VIEWS;case"allLocationViews":return v.FIREBASE_PARTIAL_PATH_LOCATION_VIEWS;case"allDocumentUsers":return v.FIREBASE_PARTIAL_PATH_DOCUMENT_USERS;case"allFolderUsers":return v.FIREBASE_PARTIAL_PATH_FOLDER_USERS;default:throw new Error(`Unknown feature: ${t}`)}}catch(i){this.loggingService.catch("Error in CommonDbUtilsService getFirestoreCollectionGroupPath:",i);return}}getDocumentPath({feature:t,properties:i,defaultDocumentPaths:o,apiKey:s,useFirestore:a}){try{if(!s)return;let{documentId:c,organizationId:l}=i;l||(l=o?.organizationId);let u=new Jy({apiKey:s,documentId:c?`${c}`:"",organizationId:l?`${l}`:""});switch(t){case"userConfig":return i?.userId&&i?.documentId&&u?.userConfig?`${u?.userConfig}/${i?.userId}/${v.FIREBASE_PARTIAL_PATH_DOCUMENT_CONFIGURATIONS}/${i?.documentId}`:void 0;case"allComments":return!a&&i?.documentId&&u?.comment?`${u?.comment}`:void 0;case"allGlobalContacts":return i?.documentId&&u?.globalContacts?`${u?.globalContacts}`:void 0;case"globalContacts":return i?.documentId&&i?.userId&&u?.globalContacts?`${u?.globalContacts}${i?.userId}`:void 0;case"groupContacts":return i?.documentId&&i?.groupId&&u?.groupContacts?`${u?.groupContacts}${i?.groupId}`:void 0;case"groupContactsUser":return i?.documentId&&i?.groupId&&i?.userId&&u?.groupContacts?`${u?.groupContacts}${i?.groupId}/${i?.userId}`:void 0;case"allLoginContacts":return i?.documentId&&i?.userId&&u?.logins?`${u?.logins}${i?.userId}/contacts`:void 0;case"allLogins":return i?.documentId&&u?.logins?`${u?.logins}`:void 0;case"logins":return i?.documentId&&i?.userId&&u?.logins?`${u?.logins}${i?.userId}`:void 0;case"customerMetadata":return u?.customerMetadata?`${u?.customerMetadata}`:void 0;case"allArrows":return i?.documentId&&u?.arrow?`${u?.arrow}`:void 0;case"arrow":return i?.documentId&&u?.arrow&&i.id?`${u?.arrow}${i.id}`:void 0;case"allCursors":return i?.documentId&&u?.cursor?`${u?.cursor}`:void 0;case"cursor":return i?.documentId&&u?.cursor&&i.id?`${u?.cursor}${i.id}`:void 0;case"flockUser":return i?.documentId&&u?.flock&&i.id?`${u?.flock}users/${i.id}`:void 0;case"flockSession":return i?.documentId&&u?.flock&&i.id?`${u?.flock}sessions/${i.id}`:void 0;case"allHuddleAttendees":return i?.documentId&&u?.huddle?`${u?.huddle}attendees`:void 0;case"huddleAttendee":return i?.documentId&&u?.huddle&&i.id?`${u?.huddle}attendees/${i.id}`:void 0;case"huddleAttendeeState":return i?.documentId&&u?.huddle&&i.id?`${u?.huddle}attendees/${i.id}/state`:void 0;case"allHuddleInvitees":return i?.documentId&&u?.huddle?`${u?.huddle}invitees`:void 0;case"huddleConnection":return i?.documentId&&u?.huddle&&i.id?`${u?.huddle}connections/${i.id}`:void 0;case"huddleIceCandidate":return i?.documentId&&u?.huddle&&i.id?`${u?.huddle}iceCandidates/${i.id}`:void 0;case"allHuddleIceCandidates":return i?.documentId&&u?.huddle?`${u?.huddle}iceCandidates`:void 0;case"allHuddleMessages":return i?.documentId&&u?.huddle?`${u?.huddle}messages`:void 0;case"huddleMessage":return i?.documentId&&u?.huddle&&i.id?`${u?.huddle}messages/${i.id}`:void 0;case"allLiveStates":return i?.documentId&&u?.liveState?`${u?.liveState}`:void 0;case"allLiveStateCustoms":return i?.documentId&&u?.liveState?`${u?.liveState}custom`:void 0;case"liveStateCustom":return i?.documentId&&u?.liveState&&i?.id?`${u?.liveState}custom/${i.id}`:void 0;case"liveStateSingleEditorMode":return i?.documentId&&u?.liveStateSingleEditorMode?`${u?.liveStateSingleEditorMode}`:void 0;case"liveStateAutoSyncState":return i?.documentId&&u?.liveState?`${u?.liveState}default/autoSyncState`:void 0;case"liveStateAutoSyncStateCurrent":return i?.documentId&&u?.liveState?`${u?.liveState}default/autoSyncState/current`:void 0;case"liveStateAutoSyncStateHistoryId":return i?.documentId&&u?.liveState&&i?.id?`${u?.liveState}default/autoSyncState/history/${i.id}`:void 0;case"presence":return i?.documentId&&u?.presence&&i?.userId?`${u?.presence}${i?.userId}`:void 0;case"allPresence":return i?.documentId&&u?.presence?`${u?.presence}`:void 0;case"workspaceIam":return u?.workspaceIam?`${u?.workspaceIam}`:void 0;case"selection":return i?.documentId&&u?.selection&&i?.userId?`${u?.selection}${i?.userId}`:void 0;case"allSelections":return i?.documentId&&u?.selection?`${u?.selection}`:void 0;case"syncVideoPlayer":return i?.documentId&&u?.syncVideoPlayer?`${u?.syncVideoPlayer}`:void 0;case"allTags":return i?.documentId&&u?.tag?`${u?.tag}`:void 0;case"tag":return i?.documentId&&u?.tag&&i?.id?`${u?.tag}${i?.id}`:void 0;case"userContactUs":return i?.documentId&&u?.userContactUs?`${u?.userContactUs}`:void 0;case"userFeedback":return i?.documentId&&u?.userFeedback?`${u?.userFeedback}`:void 0;case"userReportBug":return i?.documentId&&u?.userReportBugs?`${u?.userReportBugs}`:void 0;case"comment":return!a&&i?.documentId&&i?.id&&u?.comment?`${u?.comment}${i?.id}`:void 0;case"allMultiThreads":return!a&&i?.documentId&&u?.multiThread?`${u?.multiThread}`:void 0;case"crdt":return!a&&i?.documentId&&u?.crdt?`${u?.crdt}`:void 0;case"crdtData":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/data`:void 0;case"crdtSyncState":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/sync/state`:void 0;case"crdtSyncPresence":return i?.documentId&&i.userId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/sync/presence/${i.userId}`:void 0;case"allCrdtSyncPresence":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/sync/presence`:void 0;case"crdtPresence":return i?.documentId&&i.userId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/presence/${i.userId}`:void 0;case"allCrdtPresence":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/presence`:void 0;case"crdtVersion":return i?.documentId&&u?.crdt&&i?.id&&i?.versionId?`${u?.crdt}/${i?.id}/versions/${i?.versionId}`:void 0;case"crdtVersions":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/versions`:void 0;case"crdtMessages":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/messages`:void 0;case"crdtMessage":return i?.documentId&&u?.crdt&&i?.id&&i?.messageId?`${u?.crdt}/${i?.id}/messages/${i?.messageId}`:void 0;case"crdtSnapshot":return i?.documentId&&u?.crdt&&i?.id?`${u?.crdt}/${i?.id}/snapshot`:void 0;case"multiThread":return!a&&i?.documentId&&i?.id&&u?.multiThread?`${u?.multiThread}${i?.id}`:void 0;case"allLastNotificationTimestamp":return!a&&u?.organizationNotificationsLastNotificationTimestamp?`${u?.organizationNotificationsLastNotificationTimestamp}`:void 0;case"lastNotificationTimestamp":return!a&&i?.id&&u?.organizationNotificationsLastNotificationTimestamp?`${u?.organizationNotificationsLastNotificationTimestamp}${i?.id}`:void 0;case"documentIam":return!a&&i?.documentId&&u?.documentIam?`${u?.documentIam}`:void 0;case"allDocuments":return!a&&u?.docs&&i?.documentId?`${u?.docs}/${i?.documentId}/${v.FIREBASE_PARTIAL_PATH_METADATA}`:void 0;case"allAreas":return!a&&i?.documentId&&u?.area?`${u?.area}`:void 0;case"area":return!a&&i?.id&&u?.area?`${u?.area}${i?.id}`:void 0;case"folder":return!a&&i?.folderId&&u?.folder?`${u?.folder}${i?.folderId}`:void 0;case"documentUserAccess":return!a&&i?.id&&u?.documentIam?`${u?.documentIam}users/${i?.id}`:void 0;case"documentUser":return!a&&i?.documentId&&i?.id&&u?.documentIam?`${u?.documentIam}users/${i?.id}`:void 0;case"allDocumentUsers":return!a&&i?.documentId&&u?.documentIam?`${u?.documentIam}users/`:void 0;case"allOrganizationGroups":return!a&&u?.organizationGroups?`${u?.organizationGroups}`:void 0;case"allOrganizationUsers":return!a&&u?.organizationIam?`${u?.organizationIam}users/`:void 0;case"reaction":return!a&&i?.id&&u?.reaction?`${u?.reaction}${i?.id}`:void 0;case"allReactions":return!a&&i?.documentId&&u?.reaction?`${u?.reaction}`:void 0;case"recorder":return!a&&i?.documentId&&i?.id&&u?.recorder?`${u?.recorder}${i?.id}`:void 0;case"allRecorders":return!a&&i?.documentId&&u?.recorder?`${u?.recorder}`:void 0;case"organizationMetadata":return!a&&u?.organizationMetadata?`${u?.organizationMetadata}`:void 0;case"heartbeat":return i?.id&&u?.heartbeat?`${u?.heartbeat}${i?.id}`:void 0;case"allHeartbeats":return u?.heartbeat?`${u?.heartbeat}`:void 0;case"heartbeatByDocument":return i?.id&&u?.heartbeatByDocument?`${u?.heartbeatByDocument}${i?.id}`:void 0;case"allHeartbeatsByDocument":return u?.heartbeatByDocument?`${u?.heartbeatByDocument}`:void 0;case"documentAccessType":return!a&&u?.documentIam?`${u?.documentIam}`:void 0;case"documentMetadata":return!a&&i?.documentId&&u?.metadata?`${u?.metadata}`:void 0;case"allDocumentViews":return!a&&i?.documentId&&u?.views?`${u?.views}documentViews/`:void 0;case"documentViews":return!a&&i?.documentId&&i?.id&&u?.views?`${u?.views}documentViews/${i?.id}`:void 0;case"allLocationViews":return!a&&i?.documentId&&u?.views?`${u?.views}locationViews/`:void 0;case"notificationViewsTimestamp":return!a&&i?.id&&i?.user&&u?.views?`${u?.views}notification/${i?.id}/views/${i?.user}`:void 0;case"documentUsersViews":return!a&&i?.id&&i?.user&&i?.date&&u?.views?`${u?.views}documentViews/${i?.id}/users/${i?.user}/${i?.date}`:void 0;case"documentMetadataViews":return!a&&i?.id&&u?.views?`${u?.views}documentViews/${i?.id}/metadata`:void 0;case"documentDayViews":return!a&&i?.id&&i?.date&&i?.user&&u?.views?`${u?.views}documentViews/${i?.id}/day/${i?.date}/${i?.user}`:void 0;case"locationViews":return!a&&i?.id&&u?.views?`${u?.views}locationViews/${i?.id}/location`:void 0;case"location":return!a&&i?.id&&u?.views?`${u?.views}locationViews/${i?.id}`:void 0;case"locationUsersViews":return!a&&i?.id&&i?.user&&i?.date&&u?.views?`${u?.views}locationViews/${i?.id}/users/${i?.user}/${i?.date}`:void 0;case"locationMetadataViews":return!a&&i?.id&&u?.views?`${u?.views}locationViews/${i?.id}/metadata`:void 0;case"locationDayViews":return!a&&i?.id&&i?.date&&i?.user&&u?.views?`${u?.views}locationViews/${i?.id}/day/${i?.date}/${i?.user}`:void 0;case"docNotificationViews":case"docNotification":return i?.documentId&&i?.id&&u?.organizationNotificationsWithDocumentId?`${u?.organizationNotificationsWithDocumentId}${i?.id}`:void 0;case"allDocNotifications":return i?.documentId&&u?.organizationNotificationsWithDocumentId?`${u?.organizationNotificationsWithDocumentId}`:void 0;case"allUserNotifications":return i?.userId&&u?.organizationNotificationsUsers?`${u?.organizationNotificationsUsers}${i?.userId}`:void 0;case"userNotificationViews":case"userNotification":return i?.userId&&i?.id&&u?.organizationNotificationsUsers?`${u?.organizationNotificationsUsers}${i?.userId}/${i?.id}`:void 0;case"locationMetadata":return;case"allLocations":return;case"folderMetadata":return;case"allPermissionsUsers":return;default:throw new Error(`Unknown feature: ${t}`)}}catch(c){this.loggingService.catch("Error in CommonDbUtilsService getDocumentPath:",c);return}}resolveAnnotations(o){return I(this,arguments,function*({data:t,feature:i}){try{if(t&&t?.length>0)switch(i){case"allComments":{if(this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable()){let s=J(),a=Td.GET_COMMENT_ANNOTATIONS;this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:s,methodName:Et.RESOLVE_COMMENT_ANNOTATIONS,moduleName:a,source:"internal",payload:{commentAnnotationIds:t,organizationId:this.docService.getDocumentPaths()?.clientOrganizationId??""}}),this.commentAnnotationsResolverService.resolveCommentAnnotations({request:{commentAnnotationIds:t,organizationId:this.docService.getDocumentPaths()?.clientOrganizationId??""},uniqueId:s,moduleName:a})}break}case"allReactions":{if(this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable()){let s=J(),a=Id.GET_REACTION_ANNOTATIONS;this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:s,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:a,source:"internal",payload:{reactionAnnotationIds:t,organizationId:this.docService.getDocumentPaths()?.clientOrganizationId??""}}),this.reactionAnnotationsResolverService.resolveReactionAnnotations({request:{reactionAnnotationIds:t,organizationId:this.docService.getDocumentPaths()?.clientOrganizationId??""},uniqueId:s,moduleName:a})}break}case"allRecorders":{if(this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable()){let s=J(),a=vd.GET_RECORDER_ANNOTATIONS;this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:s,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:a,source:"internal",payload:{recorderAnnotationIds:t,organizationId:this.docService.getDocumentPaths()?.clientOrganizationId??""}}),this.recorderAnnotationsResolverService.resolveRecorderAnnotations({request:{recorderAnnotationIds:t,organizationId:this.docService.getDocumentPaths()?.clientOrganizationId??""},uniqueId:s,moduleName:a})}break}default:break}}catch(s){this.loggingService.catch(`Error in CommonDbUtilsService resolveAnnotations: ${i}`,s)}})}formatResponse(g){return I(this,arguments,function*({feature:t,data:i,organizationId:o,shouldAwait:s=!1,forceResolve:a=!1,shouldCommentAnnotationsResolverAwait:c=!1,shouldNotificationResolverAwait:l=!1,shouldActivityResolverAwait:u=!1,shouldReactionResolverAwait:d=!1,shouldRecorderResolverAwait:f=!1}){try{let p=o??this.docService.getDocumentPaths()?.clientOrganizationId??"";if(this.usersService.userDataProviderAvailable()){let _=[];switch(t){case"allAreas":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.areaUtilsService.getUserIdsToResolveFromAreaAnnotations(Object.values(i)));break}case"allArrows":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.serviceBook.get(IT)?.getUserIdsToResolveFromArrowAnnotations(Object.values(i))??[]);break}case"allCursors":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.serviceBook.get(vT)?.getUserIdsToResolveFromCursorUsers(Object.values(i))??[]);break}case"allComments":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.commentUtilsService.getUserIdsToResolveFromComments(Object.values(i)));break}case"allDocumentUsers":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.contactUtilsService.getUserIdsToResolveFromUserIamData(Object.values(i)));break}case"allFolderUsers":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.contactUtilsService.getUserIdsToResolveFromUserIamData(Object.values(i)));break}case"allOrganizationUsers":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.contactUtilsService.getUserIdsToResolveFromUserIamData(Object.values(i)));break}case"allMultiThreads":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.multiThreadUtilsService.getUserIdsToResolveFromMultiThreads(Object.values(i)));break}case"allDocNotifications":{i&&typeof i=="object"&&(_=this.serviceBook.get(xi)?.getUserIdsToResolveFromNotifications(Array.isArray(i)?i:Object.values(i))??[]);break}case"allUserNotifications":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.serviceBook.get(xi)?.getUserIdsToResolveFromNotifications(Object.values(i))??[]);break}case"allPresence":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.serviceBook.get(yT)?.getUserIdsToResolveFromPresenceUsers(Object.values(i))??[]);break}case"allRecorders":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.serviceBook.get(ci)?.getUserIdsToResolveFromRecorders(Object.values(i))??[]);break}case"allReactions":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.reactionUtilsService.getUserIdsToResolveFromReactions(Object.values(i)));break}case"allTags":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.tagUtilsService.getUserIdsToResolveFromTags(Object.values(i)));break}case"allHuddleAttendees":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.serviceBook.get(ST)?.getUserIdsToResolveFromHuddleAttendees(Object.values(i))??[]);break}case"liveStateCustom":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.liveStateUtilsService.getUserIdsToResolveFromLiveStateCustom(i));break}case"allLiveStateCustoms":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.liveStateUtilsService.getUserIdsToResolveFromLiveStateCustoms(Object.values(i)));break}case"allLiveStates":{i&&typeof i=="object"&&(_=this.liveStateUtilsService.getUserIdsToResolveFromLiveStates(i));break}case"liveStateSingleEditorMode":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.liveStateUtilsService.getUserIdsToResolveFromLiveStateSingleEditorMode(i));break}case"allSelections":{i&&typeof i=="object"&&!Array.isArray(i)&&(_=this.selectionUtilsService.getUserIdsToResolveFromSelections(Object.values(i)));break}case"allActivities":{i&&typeof i=="object"&&(_=this.activityUtilsService.getUserIdsToResolveFromActivities(Array.isArray(i)?i:Object.values(i)));break}default:_=[]}if(_?.length){let T=J(),D=tl.GET_USERS;this.coreActionsService.triggerAction($.USER_RESOLVER,{event:L.Events.Resolver.USER_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:xn.FORMAT_RESPONSE,source:"internal",moduleName:D,payload:{userIds:_,feature:t,forceResolve:a}}),s?yield this.usersService.resolveUsers({userIds:_,forceResolve:a,feature:t,organizationId:o,uniqueId:T,moduleName:D}):this.usersService.resolveUsers({userIds:_,forceResolve:a,feature:t,organizationId:o,uniqueId:T,moduleName:D})}}if(this.notificationResolverService.notificationDataProviderAvailable()){let _=[];switch(t){case"allDocNotifications":case"allUserNotifications":{i&&typeof i=="object"&&(_=this.serviceBook.get(xi)?.getCustomNotificationIdsToResolve(i)??[],_=_.filter(D=>!this.notificationResolverService.getNotificationById(D)));break}default:_=[]}if(_?.length){let T=J(),D=yC.GET_NOTIFICATIONS;this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:Fn.FORMAT_RESPONSE,moduleName:D,source:"internal",payload:{notificationIds:_,organizationId:p,shouldNotificationResolverAwait:l}}),l?yield this.notificationResolverService.resolveNotifications({request:{notificationIds:_,organizationId:p},uniqueId:T,moduleName:D}):this.notificationResolverService.resolveNotifications({request:{notificationIds:_,organizationId:p},uniqueId:T,moduleName:D})}}if(this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable()){let _=[];switch(t){case"allDocNotifications":{if(i&&typeof i=="object"){let D=this.serviceBook.get(xi)?.getTargetAnnotationIdsFromNotifications(i)??[];_=[..._,...D],_=_.filter(b=>!this.commentAnnotationsResolverService.getCommentAnnotationById(b))}break}case"allUserNotifications":{if(i&&typeof i=="object"&&!Array.isArray(i)){let D=this.serviceBook.get(xi)?.getTargetAnnotationIdsFromNotifications(i)??[];_=[..._,...D],_=_.filter(b=>!this.commentAnnotationsResolverService.getCommentAnnotationById(b))}break}case"allActivities":{if(i&&typeof i=="object"){let T=Array.isArray(i)?i:Object.values(i),D=this.activityUtilsService.getEntityIdsToResolveFromActivities(T,"comment");_=[..._,...D],_=_.filter(b=>!this.commentAnnotationsResolverService.getCommentAnnotationById(b))}break}default:_=[]}if(_?.length){let T=J(),D=Td.GET_NOTIFICATIONS;this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:Et.FORMAT_RESPONSE,moduleName:D,source:"internal",payload:{commentAnnotationIds:_,organizationId:p,shouldCommentAnnotationsResolverAwait:c}}),c?yield this.commentAnnotationsResolverService.resolveCommentAnnotations({request:{commentAnnotationIds:_,organizationId:p},uniqueId:T,moduleName:D}):this.commentAnnotationsResolverService.resolveCommentAnnotations({request:{commentAnnotationIds:_,organizationId:p},uniqueId:T,moduleName:D})}}if(t==="allActivities"&&i&&typeof i=="object"){let _=Array.isArray(i)?i:Object.values(i),T=this.docService.getDocumentPaths()?.clientOrganizationId??"";if(this.activityResolverService.activityDataProviderAvailable()){let D=[];for(let b of _)b?.id&&!this.activityResolverService.getActivityById(b.id)&&D.push(b.id);if(D.length){let b=J(),G=SC.GET_ACTIVITIES;this.coreActionsService.triggerAction($.ACTIVITY_RESOLVER,{event:L.Events.Resolver.ACTIVITY_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:b,methodName:lr.FORMAT_RESPONSE,moduleName:G,source:"internal",payload:{activityIds:D,organizationId:T,shouldActivityResolverAwait:u}}),u?yield this.activityResolverService.resolveActivities({request:{activityIds:D,organizationId:T},uniqueId:b,moduleName:G}):this.activityResolverService.resolveActivities({request:{activityIds:D,organizationId:T},uniqueId:b,moduleName:G})}}if(this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable()){let D=this.activityUtilsService.getEntityIdsToResolveFromActivities(_,"reaction");if(D=D.filter(b=>!this.reactionAnnotationsResolverService.getAnnotationById(b)),D.length){let b=J(),G=Id.GET_REACTION_ANNOTATIONS;this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:b,methodName:_t.RESOLVE_REACTION_ANNOTATIONS,moduleName:G,source:"internal",payload:{reactionAnnotationIds:D,organizationId:T,shouldReactionResolverAwait:d}}),d?yield this.reactionAnnotationsResolverService.resolveReactionAnnotations({request:{reactionAnnotationIds:D,organizationId:T},uniqueId:b,moduleName:G}):this.reactionAnnotationsResolverService.resolveReactionAnnotations({request:{reactionAnnotationIds:D,organizationId:T},uniqueId:b,moduleName:G})}}if(this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable()){let D=this.activityUtilsService.getEntityIdsToResolveFromActivities(_,"recorder");if(D=D.filter(b=>!this.recorderAnnotationsResolverService.getAnnotationById(b)),D.length){let b=J(),G=vd.GET_RECORDER_ANNOTATIONS;this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_RESOLUTION_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:b,methodName:Tt.RESOLVE_RECORDER_ANNOTATIONS,moduleName:G,source:"internal",payload:{recorderAnnotationIds:D,organizationId:T,shouldRecorderResolverAwait:f}}),f?yield this.recorderAnnotationsResolverService.resolveRecorderAnnotations({request:{recorderAnnotationIds:D,organizationId:T},uniqueId:b,moduleName:G}):this.recorderAnnotationsResolverService.resolveRecorderAnnotations({request:{recorderAnnotationIds:D,organizationId:T},uniqueId:b,moduleName:G})}}}return i}catch(p){return this.loggingService.catch("Error in CommonDbUtilsService formatResponse:",p),i}})}mergeCommentAnnotationsWithData({data:t,feature:i}){try{if(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeCommentAnnotationsWithData","color: green;"),this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable())switch(i){case"allComments":return t&&typeof t=="object"&&!Array.isArray(t)?Object.entries(t).reduce((o,[s,a])=>(o[s]=this.commentUtilsService.mergeStrippedDataWithCommentAnnotations(a),o),{}):t;case"allDocNotifications":case"allUserNotifications":if(t&&typeof t=="object"&&!Array.isArray(t)){let o=this.serviceBook.get(xi);return Object.entries(t).reduce((s,[a,c])=>(s[a]=o?o.mergeStrippedDataWithNotification(c):c,s),{})}else return t;case"allActivities":return this.mergeActivitiesWithFeatureData(t);default:return t}return t}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService mergeCommentAnnotationsWithData:",o),t}}mergeActivityResolverWithData({data:t,feature:i}){try{return this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeActivityResolverWithData","color: green;"),this.activityResolverService.activityDataProviderAvailable()&&i==="allActivities"&&Array.isArray(t)?t.map(o=>this.activityUtilsService.mergeActivityWithResolverData(o)):t}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService mergeActivityResolverWithData:",o),t}}mergeNotificationsWithResolvedData({data:t,feature:i}){try{if(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeNotificationsWithResolvedData","color: green;"),this.notificationResolverService.notificationDataProviderAvailable())switch(i){case"allDocNotifications":case"allUserNotifications":{let o=this.serviceBook.get(xi);return t&&typeof t=="object"&&!Array.isArray(t)?Object.entries(t).reduce((s,[a,c])=>(s[a]=o?o.mergeResolvedNotificationData(c):c,s),{}):Array.isArray(t)?t.map(s=>o?o.mergeResolvedNotificationData(s):s):t}default:return t}return t}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService mergeNotificationsWithResolvedData:",o),t}}mergeNotificationsWithResolvedData$({data:t,feature:i}){try{return this.notificationResolverService.getNotificationsById$().pipe(fe(()=>{let o=this.mergeNotificationsWithResolvedData({data:t?.data??{},feature:i}),s=this.mergeUsersWithData({feature:i,data:o??{}});return typeof s=="object"?{data:JSON.parse(JSON.stringify(s)),operation:t?.operation??null}:{data:s,operation:t?.operation??null}}),it(Ft))}catch(o){return this.loggingService.catch("Error in mergeNotificationsWithResolvedData$:",o),ue(t)}}mergeReactionAnnotationsWithData({data:t,feature:i}){try{if(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeReactionAnnotationsWithData","color: green;"),this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable())switch(i){case"allReactions":return t&&typeof t=="object"&&!Array.isArray(t)?Object.entries(t).reduce((o,[s,a])=>(o[s]=this.reactionUtilsService.mergeStrippedDataWithReactionAnnotations(a),o),{}):t;case"allActivities":return this.mergeActivitiesWithFeatureData(t);default:return t}return t}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService mergeReactionAnnotationsWithData:",o),t}}mergeRecorderAnnotationsWithData({data:t,feature:i}){try{if(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeRecorderAnnotationsWithData","color: green;"),this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable())switch(i){case"allRecorders":if(t&&typeof t=="object"&&!Array.isArray(t)){let o=this.serviceBook.get(ci);return Object.entries(t).reduce((s,[a,c])=>(s[a]=o?o.mergeStrippedDataWithRecorderAnnotation(c):c,s),{})}else return t;case"allActivities":return this.mergeActivitiesWithFeatureData(t);default:return t}return t}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService mergeRecorderAnnotationsWithData:",o),t}}mergeActivitiesWithFeatureData(t){return Array.isArray(t)?t.map(i=>this.activityUtilsService.mergeActivityWithFeatureData(i)):t}mergeLocationMetadataWithData({data:t,feature:i,locationMetadata:o}){try{if(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeLocationMetadataWithData","color: green;"),o&&typeof o=="object"&&!Array.isArray(o))switch(i){case"allComments":return t&&typeof t=="object"&&!Array.isArray(t)?Object.entries(t).reduce((s,[a,c])=>(s[a]=this.commentUtilsService.mergeLocationWithCommentAnnotations(c,o),s),{}):t;case"allDocNotifications":case"allUserNotifications":if(t&&typeof t=="object"&&!Array.isArray(t)){let s=this.serviceBook.get(xi);return Object.entries(t).reduce((a,[c,l])=>(a[c]=s?s.mergeLocationWithNotification(l,o):l,a),{})}else return t;default:return t}return t}catch(s){return this.loggingService.catch("Error in CommonDbUtilsService mergeLocationMetadataWithData:",s),t}}mergeUsersWithData({feature:t,data:i}){try{if(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: mergeUsersWithData","color: green;"),this.usersService.userDataProviderAvailable())switch(t){case"allAreas":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.areaUtilsService.mergeAreaWithUser(a),o),{}):i;case"allArrows":if(i&&typeof i=="object"&&!Array.isArray(i)){let o=this.serviceBook.get(IT);return Object.entries(i).reduce((s,[a,c])=>(s[a]=o?o.mergeArrowWithUser(c):c,s),{})}else return i;case"allCursors":if(i&&typeof i=="object"&&!Array.isArray(i)){let o=this.serviceBook.get(vT);return Object.entries(i).reduce((s,[a,c])=>(s[a]=o?o.mergeCursorUserWithUser(c):c,s),{})}else return i;case"allComments":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.commentUtilsService.mergeCommentWithUser(a),o),{}):i;case"allDocumentUsers":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.contactUtilsService.mergeUserIamWithUser(a),o),{}):i;case"allFolderUsers":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.contactUtilsService.mergeUserIamWithUser(a),o),{}):i;case"allOrganizationUsers":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.contactUtilsService.mergeUserIamWithUser(a),o),{}):i;case"allMultiThreads":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.multiThreadUtilsService.mergeMultiThreadWithUser(a),o),{}):i;case"allDocNotifications":if(i&&typeof i=="object"){let o=this.serviceBook.get(xi);return i?.map(s=>o?o.mergeNotificationWithUser(s):s)}else return i;case"allUserNotifications":if(i&&typeof i=="object"&&!Array.isArray(i)){let o=this.serviceBook.get(xi);return Object.entries(i).reduce((s,[a,c])=>(s[a]=o?o.mergeNotificationWithUser(c):c,s),{})}else return i;case"allPresence":if(i&&typeof i=="object"&&!Array.isArray(i)){let o=this.serviceBook.get(yT);return Object.entries(i).reduce((s,[a,c])=>(s[a]=o?o.mergePresenceUserWithUser(c):c,s),{})}else return i;case"allRecorders":if(i&&typeof i=="object"&&!Array.isArray(i)){let o=this.serviceBook.get(ci);return Object.entries(i).reduce((s,[a,c])=>(s[a]=o?o.mergeRecorderWithUser(c):c,s),{})}else return i;case"allReactions":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.reactionUtilsService.mergeReactionWithUser(a),o),{}):i;case"allTags":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.tagUtilsService.mergeTagWithUser(a),o),{}):i;case"allHuddleAttendees":if(i&&typeof i=="object"&&!Array.isArray(i)){let o=this.serviceBook.get(ST);return Object.entries(i).reduce((s,[a,c])=>(s[a]=o?.mergeHuddleAttendeeWithUser(c)??c,s),{})}else return i;case"liveStateCustom":return i&&typeof i=="object"&&!Array.isArray(i)?this.liveStateUtilsService.mergeLiveStateCustomWithUser(i):i;case"allLiveStateCustoms":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.liveStateUtilsService.mergeLiveStateCustomWithUser(a),o),{}):i;case"allLiveStates":return i&&typeof i=="object"?this.liveStateUtilsService.mergeLiveStateWithUser(i):i;case"liveStateSingleEditorMode":return i&&typeof i=="object"&&!Array.isArray(i)?this.liveStateUtilsService.mergeSingleEditorLiveStateDataWithUser(i):i;case"allSelections":return i&&typeof i=="object"&&!Array.isArray(i)?Object.entries(i).reduce((o,[s,a])=>(o[s]=this.selectionUtilsService.mergeSelectionWithUser(a),o),{}):i;case"allActivities":return Array.isArray(i)?i.map(o=>this.activityUtilsService.mergeActivityWithUser(o)):i;default:return i}return i}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService mergeUsersWithData:",o),i}}mergeCommentAnnotationsWithData$({data:t,feature:i}){try{return this.commentAnnotationsResolverService.getCommentAnnotationsById$().pipe(fe(()=>{let o=this.mergeCommentAnnotationsWithData({data:t?.data??{},feature:i}),s=this.mergeUsersWithData({feature:i,data:o??{}});return typeof s=="object"?{data:JSON.parse(JSON.stringify(s)),operation:t?.operation??null}:{data:s,operation:t?.operation??null}}),it(Ft))}catch(o){return this.loggingService.catch("Error in mergeCommentAnnotationsWithData:",o),ue(t)}}mergeReactionAnnotationsWithData$({data:t,feature:i}){try{return this.reactionAnnotationsResolverService.getReactionAnnotationsById$().pipe(fe(()=>{let o=this.mergeReactionAnnotationsWithData({data:t?.data??{},feature:i}),s=this.mergeUsersWithData({feature:i,data:o??{}});return typeof s=="object"?{data:JSON.parse(JSON.stringify(s)),operation:t?.operation??null}:{data:s,operation:t?.operation??null}}),it(Ft))}catch(o){return this.loggingService.catch("Error in mergeReactionAnnotationsWithData:",o),ue(t)}}mergeRecorderAnnotationsWithData$({data:t,feature:i}){try{return this.recorderAnnotationsResolverService.getRecorderAnnotationsById$().pipe(fe(()=>{let o=this.mergeRecorderAnnotationsWithData({data:t?.data??{},feature:i}),s=this.mergeUsersWithData({feature:i,data:o??{}});return typeof s=="object"?{data:JSON.parse(JSON.stringify(s)),operation:t?.operation??null}:{data:s,operation:t?.operation??null}}),it(Ft))}catch(o){return this.loggingService.catch("Error in mergeRecorderAnnotationsWithData:",o),ue(t)}}mergeUsersWithData$({feature:t,data:i}){try{return this.usersService.getUserById$().pipe(fe(()=>{let o=this.mergeUsersWithData({feature:t,data:i?.data??{}});return typeof o=="object"?{data:JSON.parse(JSON.stringify(o)),operation:i?.operation??null}:{data:o,operation:i?.operation??null}}),it(Ft))}catch(o){return this.loggingService.catch(`Error in mergeUsersWithData for ${t}:`,o),ue(i)}}mergeLocationMetadataWithData$({data:t,feature:i}){try{return this.docService.getLocationMetadata$().pipe(fe(o=>{let s=this.mergeLocationMetadataWithData({data:t?.data??{},feature:i,locationMetadata:o});return typeof s=="object"?{data:JSON.parse(JSON.stringify(s)),operation:t?.operation??null}:{data:s,operation:t?.operation??null}}),it(Ft))}catch(o){return this.loggingService.catch(`Error in mergeLocationMetadataWithData for ${i}:`,o),ue(t)}}handleDataStripping(a){return I(this,arguments,function*({feature:t,data:i,actionType:o,commentId:s}){try{switch(this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: handleDataStripping","color: green;"),t){case"comment":{let c=yield this.commentUtilsService.stripCommentAnnotationData({data:i,actionType:o,commentId:s});return this.filterOriginalDataForVeltDb({feature:t,result:c,providerAvailable:this.commentAnnotationsResolverService.commentAnnotationDataProviderAvailable()})}case"reaction":{let c=this.reactionUtilsService.stripReactionAnnotationData(i);return this.filterOriginalDataForVeltDb({feature:t,result:c,providerAvailable:this.reactionAnnotationsResolverService.reactionAnnotationDataProviderAvailable()})}case"recorder":{let c=this.serviceBook.get(ci)?.stripRecorderAnnotationData({data:i,actionType:o})??{originalData:i,strippedData:null};return this.filterOriginalDataForVeltDb({feature:t,result:c,providerAvailable:this.recorderAnnotationsResolverService.recorderAnnotationDataProviderAvailable()})}default:return{originalData:i,strippedData:null}}}catch(c){return this.loggingService.catch("Error in CommonDbUtilsService handleDataStripping:",c),{originalData:i,strippedData:null}}})}filterOriginalDataForVeltDb({feature:t,result:i,providerAvailable:o}){try{return!o||!i||i.originalData===null||i.originalData===void 0?i:le(x({},i),{originalData:this.applyVeltDbFieldFilter(t,i.originalData)})}catch(s){return this.loggingService.catch("Error in CommonDbUtilsService filterOriginalDataForVeltDb:",s),i}}applyVeltDbFieldFilter(t,i){switch(t){case"comment":return WV(i,{stripAttachmentFiles:this.attachmentResolverService.attachmentDataProviderAvailable()});case"reaction":return zV(i);case"recorder":return qV(i);default:return i}}formatData({feature:t,data:i,properties:o,offset:s,isRealtimeDb:a}){try{this.loggingService.log("%c[WB] Calling CommonDbUtilsService FUNCTION: formatData","color: green;"),typeof i=="object"&&(i=JSON.parse(JSON.stringify(i)));let c=new Date().getTime()+s;switch(t){case"documentAccessType":return delete i?.users,{docIamConfig:i};case"organizationMetadata":case"documentMetadata":return a?i:{metadata:i};case"documentCommentMetadata":return i;case"cursor":{let l=this.serviceBook.get(vT);return l?l.formatCursorUserData(i):i}case"comment":return this.commentUtilsService.formatCommentData(i);case"area":return this.areaUtilsService.formatAreaData(i);case"arrow":{let l=this.serviceBook.get(IT);return l?l.formatArrowData(i):i}case"liveStateCustom":return this.liveStateUtilsService.formatLiveStateCustomData(i);case"liveStateSingleEditorMode":return this.liveStateUtilsService.formatLiveStateSingleEditorModeData(i);case"multiThread":return this.multiThreadUtilsService.formatMultiThreadData(i);case"reaction":return this.reactionUtilsService.formatReactionData(i);case"recorder":return this.serviceBook.get(ci)?.formatRecorderData(i,c)??i;case"notificationViewsTimestamp":return{views:{[o.user??""]:i}};case"documentUsersViews":return a?i:{users:{[o.user??""]:{[o.date??""]:i}}};case"documentDayViews":return a?i:{day:{[o.date??""]:{[o.user??""]:i}}};case"documentMetadataViews":return a?i:{metadata:i};case"huddleMessage":return this.serviceBook.get(ST)?.formatHuddleMessageData(i)??i;case"locationMetadataViews":return a?i:{metadata:i};case"locationUsersViews":return a?i:{users:{[o.user??""]:{[o.date??""]:i}}};case"locationDayViews":return a?i:{day:{[o.date??""]:{[o.user??""]:i}}};case"locationViews":return a?i:{location:i};case"docNotificationViews":return a?i:{views:i.views};case"userNotificationViews":return a?i:{views:i.views};case"presence":{let l=this.serviceBook.get(yT);return l?l.formatPresenceUserData(i):i}case"selection":return this.selectionUtilsService.formatSelectionData(i);case"tag":return this.tagUtilsService.formatTagData(i);default:return i}}catch(c){return this.loggingService.catch("Error in CommonDbUtilsService formatData:",c),i}}modifyAndSetData(a){return I(this,arguments,function*({feature:t,data:i,subscriber:o,operation:s=null}){try{let c=yield this.modifyData({feature:t,data:i});o.next({data:c,operation:s})}catch(c){this.loggingService.catch("Error in CommonDbUtilsService modifyAndSetData:",c)}})}isDataAlreadyProcessedInLocalCache({feature:t,change:i,cache:o}){try{if(t==="allReactions"||t==="allComments"){if(i.type==="removed")return!Object.keys(o??{}).includes(i.doc.id);if(o?.[i.doc.id]){let s=i.doc.data(),a=o?.[i.doc.id];return s?.lastUpdated===a?.lastUpdated}}return!1}catch(s){return this.loggingService.catch("Error in CommonDbUtilsService isDataAlreadyProcessedInLocalCache:",s),!1}}modifyData(o){return I(this,arguments,function*({feature:t,data:i}){try{return yield this.formatResponse({feature:t,data:i})}catch(s){return this.loggingService.catch("Error in CommonDbUtilsService modifyData:",s),i}})}addMetadata(t,i){try{return t&&typeof t=="object"&&!Array.isArray(t)?le(x({},t),{metadata:t?.metadata??{documentId:i?.documentId,organizationId:i?.organizationId,apiKey:i?.apiKey}}):t}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService addMetadata:",o),t}}setDataInLocal(l){return I(this,arguments,function*({feature:t,data:i,observablesCache:o,eventType:s,id:a,operation:c=null}){try{let d={comment:"allComments",reaction:"allReactions"}[t];if(!d)return null;let f=i?.metadata?.documentId,g=i?.metadata?.veltFolderId;return Object.keys(o).filter(p=>p.includes(d)&&(!f||p.includes(f)||g&&p.includes(g))).forEach(p=>{let _=o[p]?.subject?.getValue()??{};s==="DELETE"?a&&_?.data?.[a]&&(delete _?.data?.[a],o[p]?.subject&&o[p].subject.next({data:_?.data,operation:c})):o[p]?.subject?.next({data:le(x({},_?.data),{[i?.annotationId]:i}),operation:c})}),null}catch(u){return this.loggingService.catch("Error in CommonDbUtilsService setDataInLocal:",u),null}})}handleCommentEncryption(c){return I(this,arguments,function*({data:t,firestorePath:i,extraData:o,eventType:s,metadata:a}){try{return yield this.commentUtilsService.handleCommentEncryption({data:t,firestorePath:i,extraData:o,eventType:s,metadata:a})}catch(l){return this.loggingService.catch("Error in CommonDbUtilsService handleCommentEncryption:",l),t}})}handleReactionEncryption(s){return I(this,arguments,function*({data:t,firestorePath:i,eventType:o}){try{return yield this.reactionUtilsService.handleReactionEncryption({data:t,firestorePath:i,eventType:o})}catch(a){return this.loggingService.catch("Error in CommonDbUtilsService handleReactionEncryption:",a),t}})}rtdbDefaultTransactionCallback(t,i){try{let o=x({},t||{});return Object.entries(i).forEach(([s,a])=>{a==null?delete o[s]:o[s]=a}),o}catch(o){return this.loggingService.catch("Error in CommonDbUtilsService rtdbDefaultTransactionCallback:",o),t}}};e.\u0275fac=function(i){return new(i||e)(w(Xy),w(K3),w(Ky),w(Y3),w(It),w(z3),w(_e),w(Q3),w(Qy),w(X3),w(J3),w(zt),w(zh),w(zo),w(qo),w(ec),w(Zy),w(Yy),w(li),w(Wh))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var ez=(()=>{let e=class e{constructor(t,i,o){this.configService=t,this.authService=i,this.loggingService=o,this.firestore$=new Y(null);try{Zr([this.authService.getFirebaseConfig$(),this.configService.getApiKey$(),this.configService.getFirestorePersistentCacheEnabled$()]).pipe(Ct(([s,a])=>!!s&&!!a),Nt(1)).subscribe(([s,a,c])=>{if(s&&a&&s?.firebaseOptions?.storeDbId){try{let d=sessionStorage?.getItem("veltFirestoreLogLevel")||st?.firebaseLogLevel||"silent";YL(d)}catch(d){this.loggingService.catch("Error in FirestoreService setLogLevel: ",d)}let l=tc.getFirestoreProdDbName(a,s.firebaseOptions),u=this.configService.getProxyConfig();if(u?.v2DbHost){let d={host:u.v2DbHost,ssl:!0};u.forceLongPolling?d.experimentalForceLongPolling=!0:d.experimentalAutoDetectLongPolling=!0,c&&(d.localCache=bM({tabManager:LM()}));try{this.firestore$.next(Gy(Sr(),d,l))}catch(f){this.loggingService.catch("Firestore proxy: initializeFirestore failed, falling back to existing instance. Proxy settings may not be applied: ",f),this.firestore$.next($h(l))}}else if(c)try{let d=Sr(),f=Gy(d,{localCache:bM({tabManager:LM()})},l);this.firestore$.next(f)}catch{this.firestore$.next($h(l))}else this.firestore$.next($h(l))}},s=>{})}catch{}}getFirestore(){return this.firestore$.asObservable()}getFirestoreValue(){return this.firestore$.value}generateFirestoreDocumentId(){try{let t=this.getFirestoreValue()||$h("DocumentIdDb");if(t){let i=Dp(t,"generateDocumentId");return Hh(i).id}return}catch(t){this.loggingService.catch("Error in FirestoreService generateFirestoreDocumentId: ",t);return}}};e.\u0275fac=function(i){return new(i||e)(w(Rr),w(Cr),w(_e))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();var jke=(()=>{let e=class e{constructor(t,i,o,s,a,c,l,u,d,f,g,p,_,T,D){this.activityUtilsService=t,this.authService=i,this.commonDbUtilsService=o,this.coreActionsService=s,this.loggingService=a,this.firestoreService=c,this.databaseService=l,this.configService=u,this.docService=d,this.usersService=f,this.commentAnnotationsResolverService=g,this.reactionAnnotationsResolverService=p,this.recorderAnnotationsResolverService=_,this.notificationResolverService=T,this.serviceBook=D,this.offset=0,this.db=null,this.firestore=null,this.subscriptions=[],this.offsetListener=null,this.observablesCache={},this.firestoreSubscriptions={},this.rtdbSubscriptions={},this.loggingService.log("%c[WB] Creating CLASS: CommonDbService","color: blue;"),this.serviceBook.observe(CT).subscribe(b=>{this.activityService=b??void 0}),this.docService.setCommonDbService(this),this.authService.setCommonDbService(this),this.usersService.setCommonDbService(this),this.subscriptions.push(this.databaseService.getDb().subscribe(b=>{if(b){this.db=b;let G=wa(b,".info/serverTimeOffset");this.offsetListener=gv(G,M=>{let U=M.val();this.offset=U})}})),this.subscriptions.push(this.firestoreService.getFirestore().subscribe(b=>{b&&(this.firestore=b)}))}unsubscribeFromObservables(){try{Object.values(this.firestoreSubscriptions??{}).forEach(t=>{t?.unsubscribe()}),Object.values(this.rtdbSubscriptions??{}).forEach(t=>{t?.unsubscribe()}),Object.entries(this.observablesCache??{}).forEach(([t,i])=>{i?.subject?.complete(),i?.subject?.unsubscribe()}),this.observablesCache={},this.firestoreSubscriptions={},this.rtdbSubscriptions={}}catch(t){this.loggingService.catch("Error in unsubscribeFromObservables:",t)}}ngOnDestroy(){this.subscriptions.forEach(t=>t.unsubscribe()),this.offsetListener&&this.offsetListener(),this.unsubscribeFromObservables()}setupOnDisconnect(t,i){return I(this,null,function*(){try{if(this.db){let o=wa(this.db,t);return M2(o).update(i)}return Promise.resolve()}catch(o){return this.loggingService.catch("Error in setupOnDisconnect:",o),Promise.resolve()}})}getOffset(){return this.offset}getServerTimestamp(){return new Date().getTime()+this.getOffset()}subscribeToServices(t){Zr([this.databaseService.getDb(),this.firestoreService.getFirestore()]).pipe(Ct(([i,o])=>!!i),Nt(1),Ks(([i,o])=>{t({db:i,firestore:o})})).subscribe({error:i=>{this.loggingService.catch("Error in CommonDbService subscription: ",i)}})}performDatabaseOperation(t,i,o,s,a,c){return I(this,null,function*(){try{if(!i){this.loggingService.warn(`%c[WB] No properties found for ${t}`,"color: red;");return}return this.subscribeToServices(d=>I(this,[d],function*({db:l,firestore:u}){let f;i?.skipFirestore||(f=this.commonDbUtilsService.getFirestorePath({feature:t,properties:i,documentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()}));let g=this.commonDbUtilsService.getDocumentPath({feature:t,properties:i,defaultDocumentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey(),useFirestore:this.shouldUseFirestore()});if(!l){this.loggingService.warn(`%c[WB] No database or firestore found for ${t}`,"color: red;");return}try{let p,_;try{g&&(p=wa(l,`${g}`))}catch{this.loggingService.catch("Error in dbRef")}try{f?.includes("/organizations")&&u&&f&&(_=Hh(u,`${f}`))}catch{this.loggingService.catch("Error in docRef")}if(!this.authService.getUser())return;yield o({dbRef:p,firestoreRef:_,data:s,firestorePath:f}),c&&c({firestoreAvailable:!!u})}catch(p){this.loggingService.catch(`Error in ${t} operation: `,p),a&&a(p)}}))}catch(l){this.loggingService.catch("Error in performDatabaseOperation:",l)}})}setData(l){return I(this,arguments,function*({feature:t,data:i,properties:o,callback:s,errorCallback:a,extraData:c}){try{return this.loggingService.log(`%c[WB] Calling FUNCTION: setData for ${t}`,"color: green;"),this.shouldUseFirestore()&&i?.metadata&&!i?.metadata?.apiKey?void 0:(this.commonDbUtilsService.setDataInLocal({feature:t,data:i,observablesCache:this.observablesCache,operation:null}),this.createActivityFromExtraData(t,c),this.performDatabaseOperation(t,o,u=>I(this,null,function*(){if(u.dbRef){let d=this.commonDbUtilsService.formatData({feature:t,data:u.data,properties:o,offset:this.getOffset(),isRealtimeDb:!0});o?.rtdbTransaction?yield Iw(u.dbRef,()=>JSON.parse(JSON.stringify(d))):yield vw(u.dbRef,JSON.parse(JSON.stringify(d)))}try{if(u.firestoreRef&&u.data&&!o?.skipFirestore){let d=this.commonDbUtilsService.formatData({feature:t,data:u.data,properties:o,offset:this.getOffset()});typeof d=="object"&&(d=JSON.parse(JSON.stringify(d)));let{strippedData:f,originalData:g,eventType:p}=yield this.commonDbUtilsService.handleDataStripping({feature:t,data:d,actionType:c?.actionType,commentId:c?.targetAnnotationData?.commentId??o?.targetCommentId});if(t==="comment"){let _=null,T=J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_SAVE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:Et.SET_DATA,source:"internal",payload:{strippedData:f,originalData:g,eventType:p,commentId:c?.targetAnnotationData?.commentId}}),f&&(_=yield this.commentAnnotationsResolverService.saveCommentAnnotation({commentAnnotation:f,eventType:p,commentId:c?.targetAnnotationData?.commentId},T)),g&&(_?.isSuccess||_===null)&&(yield this.commonDbUtilsService.handleCommentEncryption({data:g,firestorePath:u.firestorePath??"",extraData:c,metadata:o?.metadata}))}else if(t==="reaction"){let _=null,T=J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_SAVE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:_t.SET_DATA,source:"internal",payload:{strippedData:f,originalData:g}}),f&&(_=yield this.reactionAnnotationsResolverService.saveReactionAnnotation(f,T)),g&&(_?.isSuccess||_===null)&&(yield this.commonDbUtilsService.handleReactionEncryption({data:g,firestorePath:u.firestorePath??""}))}else if(t==="recorder"){let _=null,T=J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_SAVE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:Tt.SET_DATA,source:"internal",payload:{strippedData:f,originalData:g}}),f&&(_=yield this.recorderAnnotationsResolverService.saveRecorderAnnotation({recorderAnnotation:f,eventType:p},T)),g&&(_?.isSuccess||_===null)&&this.firestore&&(yield kM(this.firestore,D=>I(this,null,function*(){D.set(u.firestoreRef,JSON.parse(JSON.stringify(g)))})))}else yield UM(u.firestoreRef,d)}}catch(d){this.authService.getUser()&&this.loggingService.catch(`Error in setData for ${t}`,d)}}),i,a,s))}catch(u){this.loggingService.catch(`Error in setData for ${t}`,u)}})}updateData(l){return I(this,arguments,function*({feature:t,data:i,properties:o,callback:s,errorCallback:a,extraData:c}){try{return this.loggingService.log(`%c[WB] Calling FUNCTION: updateData for ${t}`,"color: green;"),this.shouldUseFirestore()&&i?.metadata&&!i?.metadata?.apiKey?void 0:(this.commonDbUtilsService.setDataInLocal({feature:t,data:i,observablesCache:this.observablesCache,operation:null}),this.createActivityFromExtraData(t,c),this.performDatabaseOperation(t,o,u=>I(this,null,function*(){if(u.dbRef&&!o?.skipRtdb){let d=this.commonDbUtilsService.formatData({feature:t,data:u.data,properties:o,offset:this.getOffset(),isRealtimeDb:!0});o?.rtdbTransaction?yield Iw(u.dbRef,f=>{let g;return o?.rtdbTransactionCallback?g=o.rtdbTransactionCallback(f,d):g=this.commonDbUtilsService.rtdbDefaultTransactionCallback(f,d),JSON.parse(JSON.stringify(g))}):yield F2(u.dbRef,JSON.parse(JSON.stringify(d)))}try{if(u.firestoreRef&&u.data&&!o?.skipFirestore){let d=this.commonDbUtilsService.formatData({feature:t,data:u.data,properties:o,offset:this.getOffset()});typeof d=="object"&&(d=JSON.parse(JSON.stringify(d)));let{strippedData:f,originalData:g,eventType:p}=yield this.commonDbUtilsService.handleDataStripping({feature:t,data:d,actionType:c?.actionType,commentId:c?.targetAnnotationData?.commentId});if(t==="comment"){let _=null,T=J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_SAVE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:Et.UPDATE_DATA,source:"internal",payload:{strippedData:f,originalData:g,eventType:p,commentId:c?.targetAnnotationData?.commentId}}),f&&(_=yield this.commentAnnotationsResolverService.saveCommentAnnotation({commentAnnotation:f,eventType:p,commentId:c?.targetAnnotationData?.commentId},T)),g&&(_?.isSuccess||_===null)&&(yield this.commonDbUtilsService.handleCommentEncryption({data:g,firestorePath:u.firestorePath??"",extraData:c,metadata:o?.metadata}))}else if(t==="reaction"){let _=null,T=J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_SAVE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:_t.UPDATE_DATA,source:"internal",payload:{strippedData:f,originalData:g}}),f&&(_=yield this.reactionAnnotationsResolverService.saveReactionAnnotation(f,T)),g&&(_?.isSuccess||_===null)&&(yield this.commonDbUtilsService.handleReactionEncryption({data:g,firestorePath:u.firestorePath??""}))}else if(t==="recorder"){let _=null,T=J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_SAVE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:T,methodName:Tt.UPDATE_DATA,source:"internal",payload:{strippedData:f,originalData:g}}),f&&(_=yield this.recorderAnnotationsResolverService.saveRecorderAnnotation({recorderAnnotation:f,eventType:p},T)),g&&(_?.isSuccess||_===null)&&this.firestore&&(yield kM(this.firestore,D=>I(this,null,function*(){D.set(u.firestoreRef,JSON.parse(JSON.stringify(g)))})))}else yield UM(u.firestoreRef,d,{merge:!0})}}catch(d){this.authService.getUser()&&this.loggingService.catch(`Error in updateDoc for ${t}`,d)}}),i,a,s))}catch(u){this.loggingService.catch(`Error in updateData for ${t}`,u)}})}createActivityFromExtraData(t,i){try{if(!i?.actionType||!this.activityService)return;let o=this.activityUtilsService.buildActivityDataFromExtraData({feature:t,extraData:i});o&&this.activityService.createActivity(o)}catch(o){this.loggingService.catch("Error in CommonDbService createActivityFromExtraData:",o)}}deleteData(c){return I(this,arguments,function*({feature:t,properties:i,callback:o,errorCallback:s,extraData:a}){try{return this.loggingService.log(`%c[WB] Calling FUNCTION: deleteData for ${t}`,"color: green;"),this.commonDbUtilsService.setDataInLocal({feature:t,observablesCache:this.observablesCache,eventType:"DELETE",id:i?.id,operation:{type:"removed",ids:[i?.id]}}),this.createActivityFromExtraData(t,a),this.performDatabaseOperation(t,i,l=>I(this,null,function*(){l.dbRef&&(yield x2(l.dbRef));try{if(l.firestoreRef&&!i?.skipFirestore)if(t==="comment"){let u=null,d=J();this.coreActionsService.triggerAction($.COMMENT_RESOLVER,{event:L.Events.Resolver.COMMENT_DELETE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:d,methodName:Et.DELETE_DATA,source:"internal",payload:{commentAnnotationId:i?.id??"",metadata:i?.metadata}}),u=yield this.commentAnnotationsResolverService.deleteCommentAnnotation(i?.id??"",i?.metadata,d),(u?.isSuccess||u===null)&&(yield this.commonDbUtilsService.handleCommentEncryption({firestorePath:l.firestorePath??"",eventType:"DELETE",metadata:i?.metadata}))}else if(t==="reaction"){let u=null,d=J();this.coreActionsService.triggerAction($.REACTION_RESOLVER,{event:L.Events.Resolver.REACTION_DELETE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:d,methodName:_t.DELETE_DATA,source:"internal",payload:{reactionAnnotationId:i?.id??"",metadata:i?.metadata}}),u=yield this.reactionAnnotationsResolverService.deleteReactionAnnotation(i?.id??"",i?.metadata,d),(u?.isSuccess||u===null)&&(yield this.commonDbUtilsService.handleReactionEncryption({firestorePath:l.firestorePath??"",eventType:"DELETE"}))}else if(t==="recorder"){let u=null,d=J();this.coreActionsService.triggerAction($.RECORDER_RESOLVER,{event:L.Events.Resolver.RECORDER_DELETE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:d,methodName:Tt.DELETE_DATA,source:"internal",payload:{recorderAnnotationId:i?.id??"",metadata:i?.metadata}}),u=yield this.recorderAnnotationsResolverService.deleteRecorderAnnotation(i?.id??"",i?.metadata,d),(u?.isSuccess||u===null)&&(yield Hy(l.firestoreRef))}else if(t==="userNotification"){let u=null,d=J();this.coreActionsService.triggerAction($.NOTIFICATION_RESOLVER,{event:L.Events.Resolver.NOTIFICATION_DELETE_REQUEST_FORMED,timestamp:new Date().getTime(),uniqueId:d,methodName:Fn.DELETE_DATA,source:"internal",payload:{notificationId:i?.id??"",organizationId:i?.organizationId??""}}),u=yield this.notificationResolverService.deleteNotification(String(i?.id??""),this.docService.getDocumentPaths()?.clientOrganizationId??"",d),(u?.isSuccess||u===null)&&(yield Hy(l.firestoreRef))}else yield Hy(l.firestoreRef)}catch(u){this.authService.getUser()&&this.loggingService.catch(`Error in deleteData for ${t}`,u)}}),void 0,s,o)}catch(l){this.loggingService.catch(`Error in deleteData for ${t}`,l)}})}shouldUseFirestore(){try{return this.authService.getAdvancedQueriesEnabled()}catch(t){return this.loggingService.catch("Error in shouldUseFirestore:",t),!1}}generateDocumentId(){try{let t=this.firestoreService.generateFirestoreDocumentId();return t||(t=J()),t||"noDocumentId"}catch(t){return this.loggingService.catch("Error in generateFirestoreDocumentId:",t),J()||"noDocumentId"}}queryData(o){return I(this,arguments,function*({feature:t,properties:i}){try{let s=this.shouldUseFirestore();return!t||!i?(this.loggingService.warn("[WB] Missing required parameters in queryData"),[]):s?yield this.handleFirestoreQuery(t,i):yield this.handleRtdbQuery(t,i)}catch(s){return this.loggingService.catch(`Error in queryData for ${t}`,s),[]}})}handleFirestoreQuery(t,i){return I(this,null,function*(){try{if(!this.firestore)return this.loggingService.warn("[WB] Firestore not initialized"),[];let o=i?.useCollectionGroup?this.commonDbUtilsService.getFirestoreCollectionGroupPath(t):this.commonDbUtilsService.getFirestorePath({feature:t,properties:i,documentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()});if(!o)return this.loggingService.warn(`[WB] No firestore path found for ${t}`),[];try{let s=Dp(this.firestore,o);i?.useCollectionGroup&&(s=PM(this.firestore,o));let a=i?.firestoreQuery??[],c=FM(s,...a);if(!this.authService.getUser()&&!i?.skipUserCheck)return[];if(i?.getCount)try{let l=yield U3(c).catch(u=>(this.authService.getUser()&&this.loggingService.catch(`Error in getCountFromServer for ${t}`,u),null));return l?l.data().count:0}catch(l){return this.authService.getUser()&&this.loggingService.catch(`Error in getCountFromServer for ${t}`,l),0}else try{let l=yield B3(c).catch(d=>(this.authService.getUser()&&this.loggingService.catch(`Error in getDocs for ${t}`,d),null));if(!l)return[];let u=l.docs.map(d=>d.data());try{return yield this.commonDbUtilsService.modifyData({feature:t,data:u})}catch(d){return this.loggingService.catch(`Error in modifyData for ${t}`,d),u}}catch(l){return this.authService.getUser()&&this.loggingService.catch(`Error in getDocs for ${t}`,l),[]}}catch(s){return this.loggingService.catch(`Error in Firestore query for ${t}:`,s),[]}}catch(o){return this.loggingService.catch(`Error in Firestore query for ${t}:`,o),[]}})}handleRtdbQuery(t,i){return I(this,null,function*(){if(!this.db)return this.loggingService.warn("[WB] Realtime Database not initialized"),[];let o=this.commonDbUtilsService.getDocumentPath({feature:t,properties:i,defaultDocumentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()});if(!o)return this.loggingService.warn(`[WB] No database path found for ${t}`),[];try{let s=wa(this.db,o),a=i?.rtdbQuery??[],c=Tw(s,...a);if(!this.authService.getUser()&&!i?.skipUserCheck)return[];let l=yield Ew(c).catch(d=>(this.authService.getUser()&&this.loggingService.catch(`Error in get for ${t}`,d),null));if(!l)return[];let u=l.val();return u?i?.skipObjectValues?u:Object.values(u??{}):[]}catch(s){return this.loggingService.catch(`Error in RTDB query for ${t}:`,s),[]}})}getData(o){return I(this,arguments,function*({feature:t,properties:i}){try{let s=this.shouldUseFirestore();if(i?.skipFirestore&&(s=!1),!t||!i)return this.loggingService.warn("[WB] Missing required parameters in getData"),{};if(s&&this.firestore){let a=this.commonDbUtilsService.getFirestorePath({feature:t,properties:i,documentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()});if(!a)return this.loggingService.warn(`[WB] No firestore path found for ${t}`),{};try{if(!this.authService.getUser())return this.loggingService.catch("User not set. [source: getData]",void 0,void 0,!0),{};let c=yield V3(Hh(this.firestore,a)).catch(u=>(this.authService.getUser()&&!i?.suppressError&&this.loggingService.catch(`Error in getDoc for ${t}`,u),this.commonDbUtilsService.getErrorForGetRequests({feature:t,error:u})));if(c){if(c?.errorCode)return c}else return this.loggingService.warn(`[WB] No document found at ${a}`),{};let l=c.data();return i?.field?l?.[i.field]??{}:l??{}}catch(c){return this.loggingService.catch(`Error fetching Firestore data for ${t}:`,c),{}}}if(this.db){let a=this.commonDbUtilsService.getDocumentPath({feature:t,properties:i,defaultDocumentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()});if(!a)return this.loggingService.warn(`[WB] No database path found for ${t}`),{};try{if(!this.authService.getUser())return{};let c=yield Ew(wa(this.db,a)).catch(u=>(this.authService.getUser()&&this.loggingService.catch(`Error in get for ${t}`,u),this.commonDbUtilsService.getErrorForGetRequests({feature:t,error:u})));if(c){if(c?.errorCode)return c}else return this.loggingService.warn(`[WB] No data found at ${a}`),{};let l=c.val();return i?.field?l?.[i.field]??{}:l??{}}catch(c){return this.loggingService.catch(`Error fetching RTDB data for ${t}:`,c),{}}}return this.loggingService.warn("[WB] No database connection available"),{}}catch(s){return this.loggingService.catch("Unexpected error in getData:",s),{}}})}dbListener({feature:t,properties:i}){let o=this.shouldUseFirestore();i?.skipFirestore&&(o=!1);let s=`${t}-${JSON.stringify(i)}`;return Zr([this.databaseService.getDb(),this.firestoreService.getFirestore(),this.authService.getUser$().pipe(Ct(a=>!!a))]).pipe(Ct(([a,c])=>a?o&&!c?(this.loggingService.warn(`[WB] Firestore requested but not available for ${t}`),!1):!0:(this.loggingService.warn(`[WB] No database found for ${t}`),!1)),mt(([a,c])=>{try{if(o&&c){if(!!!this.observablesCache[s]){this.observablesCache[s]={subject:new Y({}),count:0};let d=this.handleFirestoreListener(t,i,c).subscribe(f=>{this.observablesCache[s]?.subject?.next(f)},f=>this.observablesCache[s]?.subject?.error(f));this.firestoreSubscriptions[s]=d}return new ge(u=>{let d=this.observablesCache[s]?.subject?.subscribe(f=>u.next(f),f=>u.error(f),()=>u.complete());return this.observablesCache[s].count+=1,()=>{d?.unsubscribe(),this.observablesCache[s]&&(this.observablesCache[s].count-=1,this.observablesCache[s].count<=0&&(this.firestoreSubscriptions[s]?.unsubscribe(),delete this.firestoreSubscriptions[s],this.observablesCache[s]?.subject?.complete(),delete this.observablesCache[s]))}})}else if(a){if(!!!this.observablesCache[s]){this.observablesCache[s]={subject:new Y({}),count:0};let d=this.handleRealtimeDbListener(t,i,a).subscribe(f=>{this.observablesCache[s]?.subject?.next(f)},f=>this.observablesCache[s]?.subject?.error(f));this.rtdbSubscriptions[s]=d}return new ge(u=>{let d=this.observablesCache[s]?.subject?.subscribe(f=>u.next(f),f=>u.error(f),()=>u.complete());return this.observablesCache[s].count+=1,()=>{d?.unsubscribe(),this.observablesCache[s]&&(this.observablesCache[s].count-=1,this.observablesCache[s].count<=0&&(this.rtdbSubscriptions[s]?.unsubscribe(),delete this.rtdbSubscriptions?.[s],this.observablesCache[s]?.subject?.complete(),delete this.observablesCache?.[s]))}})}return ue({})}catch(l){return this.loggingService.catch(`Error setting up listener for ${t}:`,l),ue({})}}),Sc(()=>{this.loggingService.log(`[WB] Cleaning up listener for ${t} and key ${s}`)}))}handleFirestoreListener(t,i,o){let s=i?.useCollectionGroup?this.commonDbUtilsService.getFirestoreCollectionGroupPath(t):this.commonDbUtilsService.getFirestorePath({feature:t,properties:i,documentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()}),a=`${t}-${JSON.stringify(i)}`;return s?new ge(c=>{let l=i.isCollection?this.setupCollectionListener(o,s,t,c,i):this.setupDocumentListener(o,s,t,c,i);return()=>{c.complete(),c.unsubscribe(),l(),this.observablesCache[a]?.subject?.complete(),this.observablesCache[a]?.subject?.unsubscribe(),delete this.observablesCache[a]}}).pipe(mt(c=>this.commonDbUtilsService.mergeUsersWithData$({feature:t,data:c})),mt(c=>["allComments","allUserNotifications"].includes(t)?this.commonDbUtilsService.mergeCommentAnnotationsWithData$({data:c,feature:t}):ue(c)),mt(c=>["allReactions"].includes(t)?this.commonDbUtilsService.mergeReactionAnnotationsWithData$({data:c,feature:t}):ue(c)),mt(c=>["allRecorders"].includes(t)?this.commonDbUtilsService.mergeRecorderAnnotationsWithData$({data:c,feature:t}):ue(c)),it(Ft)):(this.loggingService.warn(`[WB] No firestore path found for ${t} and key ${a}`),ue({}))}setupCollectionListener(t,i,o,s,a){let c=`${o}-${JSON.stringify(a)}`,l=Dp(t,i);if(a?.useCollectionGroup&&(l=PM(t,i)),a?.useQuery&&a?.firestoreQuery){let f=a?.firestoreQuery??[];l=FM(l,...f)}let u=!0,d=[];return o==="allComments"&&this.loggingService.logContext("[CONTEXT] setupCollectionListener called with path:",i,"feature:",o,"properties:",JSON.stringify(a??"nil")),xM(l,f=>{try{let g=JSON.parse(JSON.stringify(this.observablesCache[c]?.subject?.getValue()?.data??{})),p=null,_=!1;f?.docChanges()?.length?f.docChanges().forEach(T=>{["allComments","allReactions","allRecorders"].includes(o)&&!u&&T.type!=="removed"&&d.push(T.doc.id),this.commonDbUtilsService.isDataAlreadyProcessedInLocalCache({feature:o,change:T,cache:this.observablesCache[c]?.subject?.getValue()?.data??{}})||(_=!0,Object.assign(g,this.handleCollectionChange(T,g)),T.type==="removed"&&(p||(p={type:T.type,ids:[]}),p.ids.push(T.doc.id)))}):_=!0,_&&(["allComments","allReactions","allRecorders"].includes(o)&&d?.length&&(this.commonDbUtilsService.resolveAnnotations({data:d,feature:o}),d=[]),this.commonDbUtilsService.modifyAndSetData({feature:o,data:g,subscriber:s,operation:p})),u=!1}catch(g){this.loggingService.logContext(`[ERROR] Firestore listener error for feature ${o}:`,g),this.loggingService.logContext(`[ERROR] Firestore listener error for properties ${JSON.stringify(a??"nil")}:`),this.loggingService.logContext(`[ERROR] Firestore listener error for user ${JSON.stringify(this.authService.getUser()??"nil")}:`),this.handleListenerError(g,o,s)}},f=>{this.loggingService.logContext(`[ERROR] Firestore listener error for feature ${o}:`,f),this.loggingService.logContext(`[ERROR] Firestore listener error for properties ${JSON.stringify(a??"nil")}:`),this.loggingService.logContext(`[ERROR] Firestore listener error for user ${JSON.stringify(this.authService.getUser()??"nil")}:`),this.handleListenerError(f,o,s)})}handleCollectionChange(t,i){switch(t.type){case"added":case"modified":i[t.doc.id]=t.doc.data();break;case"removed":delete i?.[t.doc.id];break}return i}setupDocumentListener(t,i,o,s,a){let c=Hh(t,i);return xM(c,l=>{try{let u=l.data()||{};a?.field&&(u=u?.[a?.field]??{}),this.commonDbUtilsService.modifyAndSetData({feature:o,data:u,subscriber:s,operation:null})}catch(u){this.handleListenerError(u,o,s)}},l=>this.handleListenerError(l,o,s))}handleListenerError(t,i,o){this.loggingService.catch(`Firestore listener error for ${i}:`,t)}handleRealtimeDbListener(t,i,o){let s=this.commonDbUtilsService.getDocumentPath({feature:t,properties:i,defaultDocumentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey()});if(!s)return this.loggingService.warn(`[WB] No database path found for ${t}`),ue({});let a=wa(o,s);if(i?.useQuery&&i?.rtdbQuery){let c=i?.rtdbQuery??[];a=Tw(a,...c)}return this.objectValFromChildEvents(a,t).pipe(ts(c=>(this.loggingService.catch(`RTDB listener error for ${t}:`,c),ue({}))),fe(c=>(c===null&&(c={}),c&&typeof c=="object"?Object.entries(c??{}).reduce((u,[d,f])=>(u[d]=this.commonDbUtilsService.addMetadata(f,i),u),{}):this.commonDbUtilsService.addMetadata(c,i))),mt(c=>this.commonDbUtilsService.modifyData({feature:t,data:c})),mt(c=>this.usersService.getUserById$().pipe(fe(()=>({data:this.commonDbUtilsService.mergeUsersWithData({feature:t,data:c}),operation:null})))))}pushData(s){return I(this,arguments,function*({feature:t,properties:i,data:o}){try{return this.loggingService.log(`%c[WB] Calling FUNCTION: pushData for ${t}`,"color: green;"),this.performDatabaseOperation(t,i,a=>I(this,null,function*(){if(a.dbRef){let c=P2(a.dbRef);yield vw(c,JSON.parse(JSON.stringify(a.data)))}}),o)}catch(a){this.loggingService.catch(`Error in pushData for ${t}`,a)}})}streamChildAdded({feature:t,properties:i,afterTs:o}){try{return this.loggingService.log(`%c[WB] Calling FUNCTION: streamChildAdded for ${t}`,"color: green;"),new ge(s=>{let a=null,c=!1,l=({db:u})=>{if(!u||c||!this.authService.getUser())return;let d=this.commonDbUtilsService.getDocumentPath({feature:t,properties:i,defaultDocumentPaths:this.docService.getDocumentPaths(),apiKey:i.apiKey??this.configService.getApiKey(),useFirestore:!1});if(!d)return;let g=wa(u,d),p=!1,_=b=>{try{let G=b.val();if(p){if(o!=null&&G?.timestamp!=null&&G.timestamp<=o)return;s.next(G)}}catch(G){this.loggingService.catch(`streamChildAdded onChildAdded callback error for ${t}:`,G)}},T=b=>{try{this.loggingService.catch(`streamChildAdded error for ${t}:`,b),s.error(b)}catch(G){this.loggingService.catch(`streamChildAdded onError handler error for ${t}:`,G)}};_w(g,_,T);let D=gv(g,()=>{p=!0},T,{onlyOnce:!0});a=()=>{try{D&&typeof D=="function"&&D(),Am(g,"child_added",_)}catch(b){this.loggingService.catch(`streamChildAdded cleanup error for ${t}:`,b)}}};return this.subscribeToServices(l),()=>{c=!0,a&&a()}})}catch(s){return this.loggingService.catch(`Error in streamChildAdded for ${t}`,s),ue(null)}}objectValFromChildEvents(t,i){return new ge(o=>{let s={},a=!1,c=null,l=T=>{try{this.loggingService.catch(`Realtime DB listener error for ${i}:`,T),o.error(T)}catch{}},u=T=>{try{if(!ki(T,c)){let D=JSON.parse(JSON.stringify(T));c=D,o.next(D)}}catch{}},d=T=>{try{T.key&&(s[T.key]=T.val(),a&&u(x({},s)))}catch{}},f=T=>{try{T.key&&(s[T.key]=T.val(),a&&u(x({},s)))}catch{}},g=T=>{try{T.key&&(delete s[T.key],a&&u(x({},s)))}catch{}},p=T=>{try{if(!a){let D=s&&typeof s=="object"?JSON.parse(JSON.stringify(s)):{};c=D,o.next(D),a=!0}}catch{}};_w(t,d,l),b2(t,f,l),L2(t,g,l);let _=gv(t,p,l,{onlyOnce:!0});return()=>{try{_&&typeof _=="function"&&_(),Am(t,"child_added",d),Am(t,"child_changed",f),Am(t,"child_removed",g)}catch{}}})}};e.\u0275fac=function(i){return new(i||e)(w(Xy),w(Cr),w(Z3),w(It),w(_e),w(ez),w(Wy),w(Rr),w(zh),w(zt),w(zo),w(qo),w(ec),w(Zy),w(li))},e.\u0275prov=K({token:e,factory:e.\u0275fac,providedIn:"root"});let n=e;return n})();export{x as a,le as b,dS as c,pse as d,Ese as e,_se as f,I as g,gt as h,ge as i,RS as j,Ot as k,Y as l,Ac as m,l6 as n,u6 as o,Ic as p,xr as q,ue as r,d6 as s,h6 as t,Qz as u,fe as v,Zr as w,GS as x,f6 as y,ho as z,I6 as A,Ci as B,Hz as C,Pu as D,Ct as E,Pz as F,ts as G,yS as H,Au as I,Nt as J,DS as K,it as L,Du as M,dE as N,NS as O,Wz as P,OS as Q,zz as R,Ru as S,mt as T,qs as U,qz as V,Ks as W,Kz as X,Jz as Y,oe as Z,ME as _,K as $,is as aa,Z as ba,w as ca,ne as da,pr as ea,Kn as fa,fo as ga,w0 as ha,b0 as ia,$0 as ja,j0 as ka,St as la,Dn as ma,cr as na,Fr as oa,To as pa,jc as qa,ei as ra,J6 as sa,pn as ta,VD as ua,E4 as va,sa as wa,g_ as xa,w_ as ya,D4 as za,iq as Aa,oq as Ba,sq as Ca,aq as Da,cq as Ea,Dq as Fa,cs as Ga,Le as Ha,Mq as Ia,y8 as Ja,S8 as Ka,yo as La,Yf as Ma,ds as Na,j_ as Oa,ut as Pa,M8 as Qa,Do as Ra,Kc as Sa,Tk as Ta,I5 as Ua,aa as Va,Ro as Wa,Xf as Xa,Dk as Ya,w5 as Za,Nk as _a,Ok as $a,z_ as ab,ca as bb,xk as cb,Fk as db,k5 as eb,V5 as fb,B5 as gb,G5 as hb,$5 as ib,j5 as jb,H5 as kb,kk as lb,AR as mb,DR as nb,Uk as ob,RR as pb,CR as qb,Vk as rb,NR as sb,OR as tb,Gk as ub,Q5 as vb,$k as wb,Hk as xb,Wk as yb,t9 as zb,r9 as Ab,i9 as Bb,s9 as Cb,a9 as Db,c9 as Eb,l9 as Fb,u9 as Gb,d9 as Hb,h9 as Ib,Xk as Jb,Jk as Kb,D9 as Lb,C9 as Mb,k9 as Nb,aU as Ob,wR as Pb,cU as Qb,lU as Rb,uU as Sb,G9 as Tb,dU as Ub,fU as Vb,$9 as Wb,j9 as Xb,H9 as Yb,W9 as Zb,Q9 as _b,X9 as $b,J9 as ac,Z9 as bc,eK as cc,tK as dc,nK as ec,rK as fc,iK as gc,oK as hc,sK as ic,aK as jc,lK as kc,dK as lc,hK as mc,fK as nc,gK as oc,mK as pc,_K as qc,rg as rc,ig as sc,xR as tc,qve as uc,Kve as vc,Yve as wc,KK as xc,qR as yc,Qve as zc,Xve as Ac,Jve as Bc,Co as Cc,HU as Dc,fY as Ec,a1 as Fc,gY as Gc,eC as Hc,mY as Ic,pY as Jc,EY as Kc,_Y as Lc,IY as Mc,yY as Nc,AY as Oc,tC as Pc,uC as Qc,GY as Rc,HY as Sc,O1 as Tc,g7 as Uc,m7 as Vc,pC as Wc,G1 as Xc,IC as Yc,Nd as Zc,Hr as _c,ha as $c,KT as ad,sl as bd,vr as cd,Ge as dd,_n as ed,ur as fd,Po as gd,yr as hd,pa as id,Sr as jd,Qe as kd,IX as ld,pbe as md,Ebe as nd,_be as od,Bi as pd,Ea as qd,vs as rd,Gi as sd,pe as td,$i as ud,ys as vd,Fbe as wd,kbe as xd,Ube as yd,Ta as zd,jJ as Ad,WJ as Bd,iZ as Cd,hl as Dd,fl as Ed,IMe as Fd,bd as Gd,EI as Hd,vMe as Id,g2 as Jd,dv as Kd,GPe as Ld,$Pe as Md,jPe as Nd,HPe as Od,WPe as Pd,zPe as Qd,qPe as Rd,M2 as Sd,gv as Td,KPe as Ud,P2 as Vd,wa as Wd,x2 as Xd,Iw as Yd,vw as Zd,YPe as _d,F2 as $d,dr as ae,VMe as be,BMe as ce,GMe as de,Dr as ee,H1 as fe,U7 as ge,Sg as he,st as ie,L as je,Ie as ke,Qt as le,pAe as me,EAe as ne,_Ae as oe,TAe as pe,$ as qe,IAe as re,vAe as se,yAe as te,SAe as ue,_7 as ve,T7 as we,I7 as xe,v7 as ye,_T as ze,y7 as Ae,S7 as Be,A7 as Ce,EC as De,D7 as Ee,$r as Fe,TT as Ge,R7 as He,md as Ie,wt as Je,C7 as Ke,Tg as Le,N7 as Me,O7 as Ne,w7 as Oe,b7 as Pe,L7 as Qe,M7 as Re,P7 as Se,v as Te,U1 as Ue,tDe as Ve,_d as We,H as Xe,oDe as Ye,sDe as Ze,ui as _e,bt as $e,W1 as af,z1 as bf,xDe as cf,FDe as df,bT as ef,vC as ff,LT as gf,xn as hf,tl as if,No as jf,Y1 as kf,Q1 as lf,X1 as mf,_s as nf,V7 as of,Un as pf,di as qf,J1 as rf,Z1 as sf,eV as tf,tV as uf,nV as vf,rV as wf,iV as xf,oV as yf,sV as zf,aV as Af,cV as Bf,B7 as Cf,G7 as Df,lV as Ef,AC as Ff,uV as Gf,dV as Hf,fV as If,$7 as Jf,Oo as Kf,j7 as Lf,H7 as Mf,vOe as Nf,OV as Of,Tr as Pf,Fi as Qf,da as Rf,Ts as Sf,wo as Tf,LOe as Uf,MOe as Vf,POe as Wf,xOe as Xf,FOe as Yf,kOe as Zf,UOe as _f,bV as $f,J as ag,VOe as bg,LV as cg,Sd as dg,SV as eg,AV as fg,z7 as gg,q7 as hg,il as ig,NC as jg,BOe as kg,bo as lg,GOe as mg,Rg as ng,ki as og,$Oe as pg,OC as qg,rl as rg,Q7 as sg,VT as tg,jOe as ug,HOe as vg,PV as wg,Cg as xg,X7 as yg,J7 as zg,Z7 as Ag,eQ as Bg,tQ as Cg,jr as Dg,WOe as Eg,RC as Fg,zOe as Gg,rQ as Hg,qOe as Ig,KOe as Jg,FV as Kg,YOe as Lg,QOe as Mg,XOe as Ng,JOe as Og,ZOe as Pg,ewe as Qg,twe as Rg,UT as Sg,nwe as Tg,rwe as Ug,iwe as Vg,owe as Wg,swe as Xg,awe as Yg,cwe as Zg,lwe as _g,uwe as $g,dwe as ah,hwe as bh,fwe as ch,gwe as dh,mwe as eh,pwe as fh,Ewe as gh,_we as hh,Twe as ih,Iwe as jh,vwe as kh,ywe as lh,Swe as mh,Awe as nh,Dwe as oh,Rwe as ph,aQ as qh,Cwe as rh,Nwe as sh,Owe as th,RV as uh,wwe as vh,bwe as wh,Ft as xh,Cn as yh,Lwe as zh,kt as Ah,Ht as Bh,Mwe as Ch,$V as Dh,Ad as Eh,bC as Fh,Ir as Gh,Pwe as Hh,CV as Ih,IT as Jh,NAe as Kh,OAe as Lh,xi as Mh,wAe as Nh,vT as Oh,bAe as Ph,LAe as Qh,yT as Rh,MAe as Sh,ST as Th,PAe as Uh,AT as Vh,xAe as Wh,ci as Xh,FAe as Yh,pd as Zh,kAe as _h,UAe as $h,VAe as ai,BAe as bi,GAe as ci,$Ae as di,jAe as ei,DT as fi,HAe as gi,WAe as hi,RT as ii,CT as ji,P1 as ki,x1 as li,F1 as mi,li as ni,Lt as oi,_e as pi,Rr as qi,U2 as ri,It as si,pv as ti,Ev as ui,Cr as vi,MM as wi,Lxe as xi,Mxe as yi,Pxe as zi,xxe as Ai,Ji as Bi,Wy as Ci,zo as Di,qo as Ei,Wh as Fi,ec as Gi,zh as Hi,zt as Ii,Ky as Ji,Yy as Ki,Xy as Li,Jy as Mi,z3 as Ni,Zy as Oi,Z3 as Pi,jke as Qi};