1 line
62 KiB
JavaScript
1 line
62 KiB
JavaScript
(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4602],{74602:(yt,we,L)=>{L.r(we),L.d(we,{FirebasePerformanceWeb:()=>Xn});var pe,_e,R=L(15861),w=L(47423),ie=L(69991),F=L(87916),Q=function(){var e=self.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0];if(e&&e.responseStart>0&&e.responseStart<performance.now())return e},ee=function(e){if("loading"===document.readyState)return"loading";var t=Q();if(t){if(e<t.domInteractive)return"loading";if(0===t.domContentLoadedEventStart||e<t.domContentLoadedEventStart)return"dom-interactive";if(0===t.domComplete||e<t.domComplete)return"dom-content-loaded"}return"complete"},te=function(e){var t=e.nodeName;return 1===e.nodeType?t.toLowerCase():t.toUpperCase().replace(/^#/,"")},p=function(e,t){var r="";try{for(;e&&9!==e.nodeType;){var a=e,c=a.id?"#"+a.id:te(a)+(a.classList&&a.classList.value&&a.classList.value.trim()&&a.classList.value.trim().length?"."+a.classList.value.trim().replace(/\s+/g,"."):"");if(r.length+c.length>(t||100)-1)return r||c;if(r=r?c+">"+r:c,a.id)break;e=a.parentNode}}catch{}return r},_=-1,M=function(e){addEventListener("pageshow",function(t){t.persisted&&(_=t.timeStamp,e(t))},!0)},U=function(){var e=Q();return e&&e.activationStart||0},V=function(e,t){var r=Q(),a="navigate";return _>=0?a="back-forward-cache":r&&(document.prerendering||U()>0?a="prerender":document.wasDiscarded?a="restore":r.type&&(a=r.type.replace(/_/g,"-"))),{name:e,value:void 0===t?-1:t,rating:"good",delta:0,entries:[],id:"v4-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:a}},z=function(e,t,r){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){var a=new PerformanceObserver(function(c){Promise.resolve().then(function(){t(c.getEntries())})});return a.observe(Object.assign({type:e,buffered:!0},r||{})),a}}catch{}},J=function(e,t,r,a){var c,v;return function(b){var E,D;t.value>=0&&(b||a)&&((v=t.value-(c||0))||void 0===c)&&(c=t.value,t.delta=v,t.rating=(E=t.value)>(D=r)[1]?"poor":E>D[0]?"needs-improvement":"good",e(t))}},$=function(e){requestAnimationFrame(function(){return requestAnimationFrame(function(){return e()})})},se=function(e){document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&e()})},Ie=function(e){var t=!1;return function(){t||(e(),t=!0)}},Se=-1,Ue=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},Re=function(e){"hidden"===document.visibilityState&&Se>-1&&(Se="visibilitychange"===e.type?e.timeStamp:0,Ne())},be=function(){addEventListener("visibilitychange",Re,!0),addEventListener("prerenderingchange",Re,!0)},Ne=function(){removeEventListener("visibilitychange",Re,!0),removeEventListener("prerenderingchange",Re,!0)},T=function(){return Se<0&&(Se=Ue(),be(),M(function(){setTimeout(function(){Se=Ue(),be()},0)})),{get firstHiddenTime(){return Se}}},S=function(e){document.prerendering?addEventListener("prerenderingchange",function(){return e()},!0):e()},P=[1800,3e3],ne=[.1,.25],oe=function(e,t){var r,a;r=function(r){var a=function(c){var v,b={};if(c.entries.length){var E=c.entries.reduce(function(H,X){return H&&H.value>X.value?H:X});if(E&&E.sources&&E.sources.length){var D=(v=E.sources).find(function(H){return H.node&&1===H.node.nodeType})||v[0];D&&(b={largestShiftTarget:p(D.node),largestShiftTime:E.startTime,largestShiftValue:E.value,largestShiftSource:D,largestShiftEntry:E,loadState:ee(E.startTime)})}}return Object.assign(c,{attribution:b})}(r);e(a)},a=(a=t)||{},function(e,t){t=t||{},S(function(){var r,a=T(),c=V("FCP"),v=z("paint",function(b){b.forEach(function(E){"first-contentful-paint"===E.name&&(v.disconnect(),E.startTime<a.firstHiddenTime&&(c.value=Math.max(E.startTime-U(),0),c.entries.push(E),r(!0)))})});v&&(r=J(e,c,P,t.reportAllChanges),M(function(b){c=V("FCP"),r=J(e,c,P,t.reportAllChanges),$(function(){c.value=performance.now()-b.timeStamp,r(!0)})}))})}(Ie(function(){var c,v=V("CLS",0),b=0,E=[],D=function(X){X.forEach(function(G){G.hadRecentInput||(b&&G.startTime-E[E.length-1].startTime<1e3&&G.startTime-E[0].startTime<5e3?(b+=G.value,E.push(G)):(b=G.value,E=[G]))}),b>v.value&&(v.value=b,v.entries=E,c())},H=z("layout-shift",D);H&&(c=J(r,v,ne,a.reportAllChanges),se(function(){D(H.takeRecords()),c(!0)}),M(function(){b=0,v=V("CLS",0),c=J(r,v,ne,a.reportAllChanges),$(function(){return c()})}),setTimeout(c,0))}))},ve=0,q=1/0,me=0,fe=function(e){e.forEach(function(t){t.interactionId&&(q=Math.min(q,t.interactionId),me=Math.max(me,t.interactionId),ve=me?(me-q)/7+1:0)})},$e=function(){return pe?ve:performance.interactionCount||0},ge=[],de=new Map,Me=0,Ae=[],Et=function(e){if(Ae.forEach(function(c){return c(e)}),e.interactionId||"first-input"===e.entryType){var t=ge[ge.length-1],r=de.get(e.interactionId);if(r||ge.length<10||e.duration>t.latency){if(r)e.duration>r.latency?(r.entries=[e],r.latency=e.duration):e.duration===r.latency&&e.startTime===r.entries[0].startTime&&r.entries.push(e);else{var a={id:e.interactionId,latency:e.duration,entries:[e]};de.set(a.id,a),ge.push(a)}ge.sort(function(c,v){return v.latency-c.latency}),ge.length>10&&ge.splice(10).forEach(function(c){return de.delete(c.id)})}}},Pe=function(e){var t=self.requestIdleCallback||self.setTimeout,r=-1;return e=Ie(e),"hidden"===document.visibilityState?e():(r=t(e),se(e)),r},at=[200,500],ce=[],ye=[],qe=0,ke=new WeakMap,W=new Map,xe=-1,Ge=function(e){ce=ce.concat(e),Le()},Le=function(){xe<0&&(xe=Pe(Qe))},Qe=function(){W.size>10&&W.forEach(function(b,E){de.has(E)||W.delete(E)});var e=ge.map(function(b){return ke.get(b.entries[0])}),t=ye.length-50;ye=ye.filter(function(b,E){return E>=t||e.includes(b)});for(var r=new Set,a=0;a<ye.length;a++){var c=ye[a];_t(c.startTime,c.processingEnd).forEach(function(b){r.add(b)})}var v=ce.length-1-50;ce=ce.filter(function(b,E){return b.startTime>qe&&E>v||r.has(b)}),xe=-1};Ae.push(function(e){e.interactionId&&e.target&&!W.has(e.interactionId)&&W.set(e.interactionId,e.target)},function(e){var t,r=e.startTime+e.duration;qe=Math.max(qe,e.processingEnd);for(var a=ye.length-1;a>=0;a--){var c=ye[a];if(Math.abs(r-c.renderTime)<=8){(t=c).startTime=Math.min(e.startTime,t.startTime),t.processingStart=Math.min(e.processingStart,t.processingStart),t.processingEnd=Math.max(e.processingEnd,t.processingEnd),t.entries.push(e);break}}t||ye.push(t={startTime:e.startTime,processingStart:e.processingStart,processingEnd:e.processingEnd,renderTime:r,entries:[e]}),(e.interactionId||"first-input"===e.entryType)&&ke.set(e,t),Le()});var _t=function(e,t){for(var r,a=[],c=0;r=ce[c];c++)if(!(r.startTime+r.duration<e)){if(r.startTime>t)break;a.push(r)}return a},Xe=function(e,t){_e||(_e=z("long-animation-frame",Ge)),function(e,t){"PerformanceEventTiming"in self&&"interactionId"in PerformanceEventTiming.prototype&&(t=t||{},S(function(){var r;"interactionCount"in performance||pe||(pe=z("event",fe,{type:"event",buffered:!0,durationThreshold:0}));var a,c=V("INP"),v=function(E){Pe(function(){E.forEach(Et);var D=function(){var e=Math.min(ge.length-1,Math.floor(($e()-Me)/50));return ge[e]}();D&&D.latency!==c.value&&(c.value=D.latency,c.entries=D.entries,a())})},b=z("event",v,{durationThreshold:null!==(r=t.durationThreshold)&&void 0!==r?r:40});a=J(e,c,at,t.reportAllChanges),b&&(b.observe({type:"first-input",buffered:!0}),se(function(){v(b.takeRecords()),a(!0)}),M(function(){Me=$e(),ge.length=0,de.clear(),c=V("INP"),a=J(e,c,at,t.reportAllChanges)}))}))}(function(r){var c,v,b,E,D,H,X,G,Fe,ot,kt,Jn,a=(b=ke.get(v=(c=r).entries[0]),E=v.processingStart,D=b.processingEnd,H=b.entries.sort(function(At,Yn){return At.processingStart-Yn.processingStart}),X=_t(v.startTime,D),Fe=(G=c.entries.find(function(At){return At.target}))&&G.target||W.get(v.interactionId),ot=[v.startTime+v.duration,D].concat(X.map(function(At){return At.startTime+At.duration})),kt=Math.max.apply(Math,ot),Jn={interactionTarget:p(Fe),interactionTargetElement:Fe,interactionType:v.name.startsWith("key")?"keyboard":"pointer",interactionTime:v.startTime,nextPaintTime:kt,processedEventEntries:H,longAnimationFrameEntries:X,inputDelay:E-v.startTime,processingDuration:D-E,presentationDelay:Math.max(kt-D,0),loadState:ee(v.startTime)},Object.assign(c,{attribution:Jn}));e(a)},t)},He=[2500,4e3],et={},Tt=function(e,t){var r,a;r=function(r){var a=function(c){var v={timeToFirstByte:0,resourceLoadDelay:0,resourceLoadDuration:0,elementRenderDelay:c.value};if(c.entries.length){var b=Q();if(b){var E=b.activationStart||0,D=c.entries[c.entries.length-1],H=D.url&&performance.getEntriesByType("resource").filter(function(kt){return kt.name===D.url})[0],X=Math.max(0,b.responseStart-E),G=Math.max(X,H?(H.requestStart||H.startTime)-E:0),Fe=Math.max(G,H?H.responseEnd-E:0),ot=Math.max(Fe,D.startTime-E);v={element:p(D.element),timeToFirstByte:X,resourceLoadDelay:G-X,resourceLoadDuration:Fe-G,elementRenderDelay:ot-Fe,navigationEntry:b,lcpEntry:D},D.url&&(v.url=D.url),H&&(v.lcpResourceEntry=H)}}return Object.assign(c,{attribution:v})}(r);e(a)},a=(a=t)||{},S(function(){var c,v=T(),b=V("LCP"),E=function(X){a.reportAllChanges||(X=X.slice(-1)),X.forEach(function(G){G.startTime<v.firstHiddenTime&&(b.value=Math.max(G.startTime-U(),0),b.entries=[G],c())})},D=z("largest-contentful-paint",E);if(D){c=J(r,b,He,a.reportAllChanges);var H=Ie(function(){et[b.id]||(E(D.takeRecords()),D.disconnect(),et[b.id]=!0,c(!0))});["keydown","click"].forEach(function(X){addEventListener(X,function(){return Pe(H)},{once:!0,capture:!0})}),se(H),M(function(X){b=V("LCP"),c=J(r,b,He,a.reportAllChanges),$(function(){b.value=performance.now()-X.timeStamp,et[b.id]=!0,c(!0)})})}})},We=(new Date,L(13847)),it=L(63272);L(9329);const ht="@firebase/performance",pt="0.7.7",g="FB-PERF-TRACE-MEASURE",I="_wt_",x="_fcp",K="_fid",i="_inp",o="_cls",u="@firebase/performance/config",A="@firebase/performance/configexpire",Z="Performance",s=new ie.LL("performance",Z,{"trace started":"Trace {$traceName} was started before.","trace stopped":"Trace {$traceName} is not running.","nonpositive trace startTime":"Trace {$traceName} startTime should be positive.","nonpositive trace duration":"Trace {$traceName} duration should be positive.","no window":"Window is not available.","no app id":"App id is not available.","no project id":"Project id is not available.","no api key":"Api key is not available.","invalid cc log":"Attempted to queue invalid cc event","FB not default":"Performance can only start when Firebase app instance is the default one.","RC response not ok":"RC response is not ok","invalid attribute name":"Attribute name {$attributeName} is invalid.","invalid attribute value":"Attribute value {$attributeValue} is invalid.","invalid custom metric name":"Custom metric name {$customMetricName} is invalid","invalid String merger input":"Input for String merger is invalid, contact support team to resolve.","already initialized":"initializePerformance() has already been called with different options. To avoid this error, call initializePerformance() with the same options as when it was originally called, or call getPerformance() to return the already initialized instance."}),l=new F.Yd(Z);let d,m,ae,Ot;l.logLevel=F.in.INFO;class C{constructor(t){if(this.window=t,!t)throw s.create("no window");this.performance=t.performance,this.PerformanceObserver=t.PerformanceObserver,this.windowLocation=t.location,this.navigator=t.navigator,this.document=t.document,this.navigator&&this.navigator.cookieEnabled&&(this.localStorage=t.localStorage),t.perfMetrics&&t.perfMetrics.onFirstInputDelay&&(this.onFirstInputDelay=t.perfMetrics.onFirstInputDelay),this.onLCP=Tt,this.onINP=Xe,this.onCLS=oe}getUrl(){return this.windowLocation.href.split("?")[0]}mark(t){!this.performance||!this.performance.mark||this.performance.mark(t)}measure(t,r,a){!this.performance||!this.performance.measure||this.performance.measure(t,r,a)}getEntriesByType(t){return this.performance&&this.performance.getEntriesByType?this.performance.getEntriesByType(t):[]}getEntriesByName(t){return this.performance&&this.performance.getEntriesByName?this.performance.getEntriesByName(t):[]}getTimeOrigin(){return this.performance&&(this.performance.timeOrigin||this.performance.timing.navigationStart)}requiredApisAvailable(){return fetch&&Promise&&(0,ie.zI)()?!!(0,ie.hl)()||(l.info("IndexedDB is not supported by current browser"),!1):(l.info("Firebase Performance cannot start if browser does not support fetch and Promise or cookie is disabled."),!1)}setupObserver(t,r){this.PerformanceObserver&&new this.PerformanceObserver(c=>{for(const v of c.getEntries())r(v)}).observe({entryTypes:[t]})}static getInstance(){return void 0===d&&(d=new C(m)),d}}function Ce(){return ae}function mt(e,t){const r=e.length-t.length;if(r<0||r>1)throw s.create("invalid String merger input");const a=[];for(let c=0;c<e.length;c++)a.push(e.charAt(c)),t.length>c&&a.push(t.charAt(c));return a.join("")}class De{constructor(){this.instrumentationEnabled=!0,this.dataCollectionEnabled=!0,this.loggingEnabled=!1,this.tracesSamplingRate=1,this.networkRequestsSamplingRate=1,this.logEndPointUrl="https://firebaselogging.googleapis.com/v0cc/log?format=json_proto",this.flTransportEndpointUrl=mt("hts/frbslgigp.ogepscmv/ieo/eaylg","tp:/ieaeogn-agolai.o/1frlglgc/o"),this.transportKey=mt("AzSC8r6ReiGqFMyfvgow","Iayx0u-XT3vksVM-pIV"),this.logSource=462,this.logTraceAfterSampling=!1,this.logNetworkAfterSampling=!1,this.configTimeToLive=12}getFlTransportFullUrl(){return this.flTransportEndpointUrl.concat("?key=",this.transportKey)}static getInstance(){return void 0===Ot&&(Ot=new De),Ot}}var It=(()=>{return(e=It||(It={}))[e.UNKNOWN=0]="UNKNOWN",e[e.VISIBLE=1]="VISIBLE",e[e.HIDDEN=2]="HIDDEN",It;var e})();const rn=["firebase_","google_","ga_"],sn=new RegExp("^[a-zA-Z]\\w*$");function cn(){const e=C.getInstance().navigator;return e?.serviceWorker?e.serviceWorker.controller?2:3:1}function un(){switch(C.getInstance().document.visibilityState){case"visible":return It.VISIBLE;case"hidden":return It.HIDDEN;default:return It.UNKNOWN}}function ln(){const t=C.getInstance().navigator.connection;switch(t&&t.effectiveType){case"slow-2g":return 1;case"2g":return 2;case"3g":return 3;case"4g":return 4;default:return 0}}function $t(e){var t;const r=null===(t=e.options)||void 0===t?void 0:t.appId;if(!r)throw s.create("no app id");return r}const Ke={loggingEnabled:!0};const yn="Could not fetch config, will use default configs";function jt(e){if(!e)return e;const t=De.getInstance(),r=e.entries||{};return t.loggingEnabled=void 0!==r.fpr_enabled?"true"===String(r.fpr_enabled):Ke.loggingEnabled,r.fpr_log_source?t.logSource=Number(r.fpr_log_source):Ke.logSource&&(t.logSource=Ke.logSource),r.fpr_log_endpoint_url?t.logEndPointUrl=r.fpr_log_endpoint_url:Ke.logEndPointUrl&&(t.logEndPointUrl=Ke.logEndPointUrl),r.fpr_log_transport_key?t.transportKey=r.fpr_log_transport_key:Ke.transportKey&&(t.transportKey=Ke.transportKey),void 0!==r.fpr_vc_network_request_sampling_rate?t.networkRequestsSamplingRate=Number(r.fpr_vc_network_request_sampling_rate):void 0!==Ke.networkRequestsSamplingRate&&(t.networkRequestsSamplingRate=Ke.networkRequestsSamplingRate),void 0!==r.fpr_vc_trace_sampling_rate?t.tracesSamplingRate=Number(r.fpr_vc_trace_sampling_rate):void 0!==Ke.tracesSamplingRate&&(t.tracesSamplingRate=Ke.tracesSamplingRate),t.logTraceAfterSampling=Ht(t.tracesSamplingRate),t.logNetworkAfterSampling=Ht(t.networkRequestsSamplingRate),e}function Ht(e){return Math.random()<=e}let Lt,xt=1;function Vt(e){return xt=2,Lt=Lt||function Sn(e){return function An(){const e=C.getInstance().document;return new Promise(t=>{if(e&&"complete"!==e.readyState){const r=()=>{"complete"===e.readyState&&(e.removeEventListener("readystatechange",r),t())};e.addEventListener("readystatechange",r)}else t()})}().then(()=>function ue(e){const t=e.getId();return t.then(r=>{ae=r}),t}(e.installations)).then(t=>function _n(e,t){const r=function bn(){const e=C.getInstance().localStorage;if(!e)return;const t=e.getItem(A);if(!t||!function Tn(e){return Number(e)>Date.now()}(t))return;const r=e.getItem(u);if(r)try{return JSON.parse(r)}catch{return}}();return r?(jt(r),Promise.resolve()):function En(e,t){return function le(e){const t=e.getToken();return t.then(r=>{}),t}(e.installations).then(r=>{const a=function hn(e){var t;const r=null===(t=e.options)||void 0===t?void 0:t.projectId;if(!r)throw s.create("no project id");return r}(e.app),c=function pn(e){var t;const r=null===(t=e.options)||void 0===t?void 0:t.apiKey;if(!r)throw s.create("no api key");return r}(e.app),b=new Request(`https://firebaseremoteconfig.googleapis.com/v1/projects/${a}/namespaces/fireperf:fetch?key=${c}`,{method:"POST",headers:{Authorization:`FIREBASE_INSTALLATIONS_AUTH ${r}`},body:JSON.stringify({app_instance_id:t,app_instance_id_token:r,app_id:$t(e.app),app_version:"0.7.7",sdk_version:"0.0.1"})});return fetch(b).then(E=>{if(E.ok)return E.json();throw s.create("RC response not ok")})}).catch(()=>{l.info(yn)})}(e,t).then(jt).then(a=>function vn(e){const t=C.getInstance().localStorage;!e||!t||(t.setItem(u,JSON.stringify(e)),t.setItem(A,String(Date.now()+60*De.getInstance().configTimeToLive*60*1e3)))}(a),()=>{})}(e,t)).then(()=>zt(),()=>zt())}(e),Lt}function zt(){xt=3}let Dt,Rt=3,vt=[],Zt=!1;function Bt(e){setTimeout(()=>{Rt<=0||(vt.length>0&&qt(),Bt(1e4))},e)}function qt(){const e=vt.splice(0,1e3),t=e.map(a=>({source_extension_json_proto3:a.message,event_time_ms:String(a.eventTime)}));(function Dn(e){const t=De.getInstance().getFlTransportFullUrl(),r=JSON.stringify(e);return navigator.sendBeacon&&navigator.sendBeacon(t,r)?Promise.resolve():fetch(t,{method:"POST",body:r,keepalive:!0}).then()})({request_time_ms:String(Date.now()),client_info:{client_type:1,js_client_info:{}},log_source:De.getInstance().logSource,log_event:t}).then(()=>{Rt=3}).catch(()=>{vt=[...e,...vt],Rt--,l.info(`Tries left: ${Rt}.`),Bt(1e4)})}function Nn(e){return(...t)=>{!function Rn(e){if(!e.eventTime||!e.message)throw s.create("invalid cc log");vt=[...vt,e]}({message:e(...t),eventTime:Date.now()})}}function Mn(){for(;vt.length>0;)qt()}function Gt(e,t){Dt||(Dt={send:Nn(xn),flush:Mn}),Dt.send(e,t)}function Nt(e){const t=De.getInstance();!t.instrumentationEnabled&&e.isAuto||!t.dataCollectionEnabled&&!e.isAuto||!C.getInstance().requiredApisAvailable()||(function In(){return 3===xt}()?Ft(e):Vt(e.performanceController).then(()=>Ft(e),()=>Ft(e)))}function Ft(e){if(!Ce())return;const t=De.getInstance();!t.loggingEnabled||!t.logTraceAfterSampling||Gt(e,1)}function xn(e,t){return 0===t?function Ln(e){const t={url:e.url,http_method:e.httpMethod||0,http_response_code:200,response_payload_bytes:e.responsePayloadBytes,client_start_time_us:e.startTimeUs,time_to_response_initiated_us:e.timeToResponseInitiatedUs,time_to_response_completed_us:e.timeToResponseCompletedUs},r={application_info:Xt(e.performanceController.app),network_request_metric:t};return JSON.stringify(r)}(e):function Bn(e){const t={name:e.name,is_auto:e.isAuto,client_start_time_us:e.startTimeUs,duration_us:e.durationUs};0!==Object.keys(e.counters).length&&(t.counters=e.counters);const r=e.getAttributes();0!==Object.keys(r).length&&(t.custom_attributes=r);const a={application_info:Xt(e.performanceController.app),trace_metric:t};return JSON.stringify(a)}(e)}function Xt(e){return{google_app_id:$t(e),app_instance_id:Ce(),web_app_info:{sdk_version:"0.7.7",page_url:C.getInstance().getUrl(),service_worker_status:cn(),visibility_state:un(),effective_connection_type:ln()},application_process_state:0}}function Jt(e,t){const r=t;if(!r||void 0===r.responseStart)return;const a=C.getInstance().getTimeOrigin(),c=Math.floor(1e3*(r.startTime+a)),v=r.responseStart?Math.floor(1e3*(r.responseStart-r.startTime)):void 0,b=Math.floor(1e3*(r.responseEnd-r.startTime));!function kn(e){const t=De.getInstance();if(!t.instrumentationEnabled)return;const r=e.url,a=t.logEndPointUrl.split("?")[0],c=t.flTransportEndpointUrl.split("?")[0];r===a||r===c||!t.loggingEnabled||!t.logNetworkAfterSampling||Gt(e,0)}({performanceController:e,url:r.name&&r.name.split("?")[0],responsePayloadBytes:r.transferSize,startTimeUs:c,timeToResponseInitiatedUs:v,timeToResponseCompletedUs:b})}const $n=["_fp",x,K,"_lcp",o,i];class St{constructor(t,r,a=!1,c){this.performanceController=t,this.name=r,this.isAuto=a,this.state=1,this.customAttributes={},this.counters={},this.api=C.getInstance(),this.randomId=Math.floor(1e6*Math.random()),this.isAuto||(this.traceStartMark=`FB-PERF-TRACE-START-${this.randomId}-${this.name}`,this.traceStopMark=`FB-PERF-TRACE-STOP-${this.randomId}-${this.name}`,this.traceMeasure=c||`${g}-${this.randomId}-${this.name}`,c&&this.calculateTraceMetrics())}start(){if(1!==this.state)throw s.create("trace started",{traceName:this.name});this.api.mark(this.traceStartMark),this.state=2}stop(){if(2!==this.state)throw s.create("trace stopped",{traceName:this.name});this.state=3,this.api.mark(this.traceStopMark),this.api.measure(this.traceMeasure,this.traceStartMark,this.traceStopMark),this.calculateTraceMetrics(),Nt(this)}record(t,r,a){if(t<=0)throw s.create("nonpositive trace startTime",{traceName:this.name});if(r<=0)throw s.create("nonpositive trace duration",{traceName:this.name});if(this.durationUs=Math.floor(1e3*r),this.startTimeUs=Math.floor(1e3*t),a&&a.attributes&&(this.customAttributes=Object.assign({},a.attributes)),a&&a.metrics)for(const c of Object.keys(a.metrics))isNaN(Number(a.metrics[c]))||(this.counters[c]=Math.floor(Number(a.metrics[c])));Nt(this)}incrementMetric(t,r=1){this.putMetric(t,void 0===this.counters[t]?r:this.counters[t]+r)}putMetric(t,r){if(!function jn(e,t){return!(0===e.length||e.length>100)&&(t&&t.startsWith(I)&&$n.indexOf(e)>-1||!e.startsWith("_"))}(t,this.name))throw s.create("invalid custom metric name",{customMetricName:t});this.counters[t]=function Hn(e){const t=Math.floor(e);return t<e&&l.info(`Metric value should be an Integer, setting the value as : ${t}.`),t}(r??0)}getMetric(t){return this.counters[t]||0}putAttribute(t,r){const a=function fn(e){return!(0===e.length||e.length>40||rn.some(r=>e.startsWith(r))||!e.match(sn))}(t),c=function dn(e){return 0!==e.length&&e.length<=100}(r);if(a&&c)this.customAttributes[t]=r;else{if(!a)throw s.create("invalid attribute name",{attributeName:t});if(!c)throw s.create("invalid attribute value",{attributeValue:r})}}getAttribute(t){return this.customAttributes[t]}removeAttribute(t){void 0!==this.customAttributes[t]&&delete this.customAttributes[t]}getAttributes(){return Object.assign({},this.customAttributes)}setStartTime(t){this.startTimeUs=t}setDuration(t){this.durationUs=t}calculateTraceMetrics(){const t=this.api.getEntriesByName(this.traceMeasure),r=t&&t[0];r&&(this.durationUs=Math.floor(1e3*r.duration),this.startTimeUs=Math.floor(1e3*(r.startTime+this.api.getTimeOrigin())))}static createOobTrace(t,r,a,c,v){const b=C.getInstance().getUrl();if(!b)return;const E=new St(t,I+b,!0),D=Math.floor(1e3*C.getInstance().getTimeOrigin());if(E.setStartTime(D),r&&r[0]&&(E.setDuration(Math.floor(1e3*r[0].duration)),E.putMetric("domInteractive",Math.floor(1e3*r[0].domInteractive)),E.putMetric("domContentLoadedEventEnd",Math.floor(1e3*r[0].domContentLoadedEventEnd)),E.putMetric("loadEventEnd",Math.floor(1e3*r[0].loadEventEnd))),a){const G=a.find(ot=>"first-paint"===ot.name);G&&G.startTime&&E.putMetric("_fp",Math.floor(1e3*G.startTime));const Fe=a.find(ot=>"first-contentful-paint"===ot.name);Fe&&Fe.startTime&&E.putMetric(x,Math.floor(1e3*Fe.startTime)),v&&E.putMetric(K,Math.floor(1e3*v))}this.addWebVitalMetric(E,"_lcp","lcp_element",c.lcp),this.addWebVitalMetric(E,o,"cls_largestShiftTarget",c.cls),this.addWebVitalMetric(E,i,"inp_interactionTarget",c.inp),Nt(E),function Pn(){Dt&&Dt.flush()}()}static addWebVitalMetric(t,r,a,c){c&&(t.putMetric(r,Math.floor(1e3*c.value)),c.elementAttribution&&t.putAttribute(a,c.elementAttribution))}static createUserTimingTrace(t,r){Nt(new St(t,r,!1,r))}}let Qt,Mt={},Yt=!1;function en(e){!Ce()||(setTimeout(()=>function zn(e){const t=C.getInstance();"onpagehide"in window?t.document.addEventListener("pagehide",()=>Ut(e)):t.document.addEventListener("unload",()=>Ut(e)),t.document.addEventListener("visibilitychange",()=>{"hidden"===t.document.visibilityState&&Ut(e)}),t.onFirstInputDelay&&t.onFirstInputDelay(r=>{Qt=r}),t.onLCP(r=>{var a;Mt.lcp={value:r.value,elementAttribution:null===(a=r.attribution)||void 0===a?void 0:a.element}}),t.onCLS(r=>{var a;Mt.cls={value:r.value,elementAttribution:null===(a=r.attribution)||void 0===a?void 0:a.largestShiftTarget}}),t.onINP(r=>{var a;Mt.inp={value:r.value,elementAttribution:null===(a=r.attribution)||void 0===a?void 0:a.interactionTarget}})}(e),0),setTimeout(()=>function Vn(e){const t=C.getInstance(),r=t.getEntriesByType("resource");for(const a of r)Jt(e,a);t.setupObserver("resource",a=>Jt(e,a))}(e),0),setTimeout(()=>function Wn(e){const t=C.getInstance(),r=t.getEntriesByType("measure");for(const a of r)tn(e,a);t.setupObserver("measure",a=>tn(e,a))}(e),0))}function tn(e,t){const r=t.name;r.substring(0,g.length)!==g&&St.createUserTimingTrace(e,r)}function Ut(e){if(!Yt){Yt=!0;const t=C.getInstance(),r=t.getEntriesByType("navigation"),a=t.getEntriesByType("paint");setTimeout(()=>{St.createOobTrace(e,r,a,Mt,Qt)},0)}}class Kn{constructor(t,r){this.app=t,this.installations=r,this.initialized=!1}_init(t){this.initialized||(void 0!==t?.dataCollectionEnabled&&(this.dataCollectionEnabled=t.dataCollectionEnabled),void 0!==t?.instrumentationEnabled&&(this.instrumentationEnabled=t.instrumentationEnabled),C.getInstance().requiredApisAvailable()?(0,ie.eu)().then(r=>{r&&(function On(){Zt||(Bt(5500),Zt=!0)}(),Vt(this).then(()=>en(this),()=>en(this)),this.initialized=!0)}).catch(r=>{l.info(`Environment doesn't support IndexedDB: ${r}`)}):l.info('Firebase Performance cannot start if the browser does not support "Fetch" and "Promise", or cookies are disabled.'))}set instrumentationEnabled(t){De.getInstance().instrumentationEnabled=t}get instrumentationEnabled(){return De.getInstance().instrumentationEnabled}set dataCollectionEnabled(t){De.getInstance().dataCollectionEnabled=t}get dataCollectionEnabled(){return De.getInstance().dataCollectionEnabled}}function Pt(e=(0,We.Mq)()){return e=(0,ie.m9)(e),(0,We.qX)(e,"performance").getImmediate()}function nn(e,t){return e=(0,ie.m9)(e),new St(e,t)}const qn=(e,{options:t})=>{const r=e.getProvider("app").getImmediate(),a=e.getProvider("installations-internal").getImmediate();if("[DEFAULT]"!==r.name)throw s.create("FB not default");if(typeof window>"u")throw s.create("no window");!function B(e){m=e}(window);const c=new Kn(r,a);return c._init(t),c};!function Gn(){(0,We.Xd)(new it.wA("performance",qn,"PUBLIC")),(0,We.KN)(ht,pt),(0,We.KN)(ht,pt,"esm2017")}();let Xn=(()=>{class e extends w.Uw{constructor(){super(...arguments),this.traces={}}startTrace(r){var a=this;return(0,R.Z)(function*(){const v=nn(Pt(),r.traceName);v.start(),a.traces[r.traceName]=v})()}stopTrace(r){var a=this;return(0,R.Z)(function*(){const c=a.traces[r.traceName];if(!c)throw new Error(e.ERROR_TRACE_NOT_FOUND);c.stop(),delete a.traces[r.traceName]})()}incrementMetric(r){var a=this;return(0,R.Z)(function*(){const c=a.traces[r.traceName];if(!c)throw new Error(e.ERROR_TRACE_NOT_FOUND);c.incrementMetric(r.metricName,r.incrementBy)})()}setEnabled(r){return(0,R.Z)(function*(){const a=Pt();a.instrumentationEnabled=r.enabled,a.dataCollectionEnabled=r.enabled})()}isEnabled(){return(0,R.Z)(function*(){const r=Pt();return{enabled:r.instrumentationEnabled||r.dataCollectionEnabled}})()}putAttribute(r){var a=this;return(0,R.Z)(function*({traceName:c,attribute:v,value:b}){const E=a.traces[c];if(!E)throw new Error(e.ERROR_TRACE_NOT_FOUND);E.putAttribute(v,b)}).apply(this,arguments)}getAttribute(r){var a=this;return(0,R.Z)(function*({traceName:c,attribute:v}){var b;const E=a.traces[c];if(!E)throw new Error(e.ERROR_TRACE_NOT_FOUND);return{value:null!==(b=E.getAttribute(v))&&void 0!==b?b:null}}).apply(this,arguments)}getAttributes(r){var a=this;return(0,R.Z)(function*({traceName:c}){const v=a.traces[c];if(!v)throw new Error(e.ERROR_TRACE_NOT_FOUND);return{attributes:v.getAttributes()}}).apply(this,arguments)}removeAttribute(r){var a=this;return(0,R.Z)(function*({traceName:c,attribute:v}){const b=a.traces[c];if(!b)throw new Error(e.ERROR_TRACE_NOT_FOUND);b.removeAttribute(v)}).apply(this,arguments)}putMetric(r){var a=this;return(0,R.Z)(function*({traceName:c,metricName:v,num:b}){const E=a.traces[c];if(!E)throw new Error(e.ERROR_TRACE_NOT_FOUND);E.putMetric(v,b)}).apply(this,arguments)}getMetric(r){var a=this;return(0,R.Z)(function*({traceName:c,metricName:v}){const b=a.traces[c];if(!b)throw new Error(e.ERROR_TRACE_NOT_FOUND);return{value:b.getMetric(v)}}).apply(this,arguments)}record(r){return(0,R.Z)(function*({traceName:a,startTime:c,duration:v,options:b}){nn(Pt(),a).record(c,v,b)}).apply(this,arguments)}}return e.ERROR_TRACE_NOT_FOUND="No trace was found with the provided traceName.",e})()},69991:(yt,we,L)=>{L.d(we,{BH:()=>be,LL:()=>xe,ZR:()=>W,zI:()=>qe,L:()=>p,$s:()=>x,vZ:()=>lt,aH:()=>Ue,m9:()=>Oe,ru:()=>de,hl:()=>ce,eu:()=>ye});const pe=function(i){const n=[];let o=0;for(let h=0;h<i.length;h++){let u=i.charCodeAt(h);u<128?n[o++]=u:u<2048?(n[o++]=u>>6|192,n[o++]=63&u|128):55296==(64512&u)&&h+1<i.length&&56320==(64512&i.charCodeAt(h+1))?(u=65536+((1023&u)<<10)+(1023&i.charCodeAt(++h)),n[o++]=u>>18|240,n[o++]=u>>12&63|128,n[o++]=u>>6&63|128,n[o++]=63&u|128):(n[o++]=u>>12|224,n[o++]=u>>6&63|128,n[o++]=63&u|128)}return n},Q={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray(i,n){if(!Array.isArray(i))throw Error("encodeByteArray takes an array as a parameter");this.init_();const o=n?this.byteToCharMapWebSafe_:this.byteToCharMap_,h=[];for(let u=0;u<i.length;u+=3){const A=i[u],N=u+1<i.length,Z=N?i[u+1]:0,he=u+2<i.length,s=he?i[u+2]:0;let m=(15&Z)<<2|s>>6,C=63&s;he||(C=64,N||(m=64)),h.push(o[A>>2],o[(3&A)<<4|Z>>4],o[m],o[C])}return h.join("")},encodeString(i,n){return this.HAS_NATIVE_SUPPORT&&!n?btoa(i):this.encodeByteArray(pe(i),n)},decodeString(i,n){return this.HAS_NATIVE_SUPPORT&&!n?atob(i):function(i){const n=[];let o=0,h=0;for(;o<i.length;){const u=i[o++];if(u<128)n[h++]=String.fromCharCode(u);else if(u>191&&u<224){const A=i[o++];n[h++]=String.fromCharCode((31&u)<<6|63&A)}else if(u>239&&u<365){const he=((7&u)<<18|(63&i[o++])<<12|(63&i[o++])<<6|63&i[o++])-65536;n[h++]=String.fromCharCode(55296+(he>>10)),n[h++]=String.fromCharCode(56320+(1023&he))}else{const A=i[o++],N=i[o++];n[h++]=String.fromCharCode((15&u)<<12|(63&A)<<6|63&N)}}return n.join("")}(this.decodeStringToByteArray(i,n))},decodeStringToByteArray(i,n){this.init_();const o=n?this.charToByteMapWebSafe_:this.charToByteMap_,h=[];for(let u=0;u<i.length;){const A=o[i.charAt(u++)],Z=u<i.length?o[i.charAt(u)]:0;++u;const s=u<i.length?o[i.charAt(u)]:64;++u;const d=u<i.length?o[i.charAt(u)]:64;if(++u,null==A||null==Z||null==s||null==d)throw new ee;h.push(A<<2|Z>>4),64!==s&&(h.push(Z<<4&240|s>>2),64!==d&&h.push(s<<6&192|d))}return h},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let i=0;i<this.ENCODED_VALS.length;i++)this.byteToCharMap_[i]=this.ENCODED_VALS.charAt(i),this.charToByteMap_[this.byteToCharMap_[i]]=i,this.byteToCharMapWebSafe_[i]=this.ENCODED_VALS_WEBSAFE.charAt(i),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[i]]=i,i>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(i)]=i,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(i)]=i)}}};class ee extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const p=function(i){return function(i){const n=pe(i);return Q.encodeByteArray(n,!0)}(i).replace(/\./g,"")},se=()=>{try{return function V(){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.")}().__FIREBASE_DEFAULTS__||(()=>{if(typeof process>"u"||typeof process.env>"u")return;const i=process.env.__FIREBASE_DEFAULTS__;return i?JSON.parse(i):void 0})()||(()=>{if(typeof document>"u")return;let i;try{i=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}const n=i&&function(i){try{return Q.decodeString(i,!0)}catch(n){console.error("base64Decode failed: ",n)}return null}(i[1]);return n&&JSON.parse(n)})()}catch(i){return void console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${i}`)}},Ue=()=>{var i;return null===(i=se())||void 0===i?void 0:i.config};class be{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((n,o)=>{this.resolve=n,this.reject=o})}wrapCallback(n){return(o,h)=>{o?this.reject(o):this.resolve(h),"function"==typeof n&&(this.promise.catch(()=>{}),1===n.length?n(o):n(o,h))}}}function de(){const i="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof i&&void 0!==i.id}function ce(){try{return"object"==typeof indexedDB}catch{return!1}}function ye(){return new Promise((i,n)=>{try{let o=!0;const h="validate-browser-context-for-indexeddb-analytics-module",u=self.indexedDB.open(h);u.onsuccess=()=>{u.result.close(),o||self.indexedDB.deleteDatabase(h),i(!0)},u.onupgradeneeded=()=>{o=!1},u.onerror=()=>{var A;n((null===(A=u.error)||void 0===A?void 0:A.message)||"")}}catch(o){n(o)}})}function qe(){return!(typeof navigator>"u"||!navigator.cookieEnabled)}class W extends Error{constructor(n,o,h){super(o),this.code=n,this.customData=h,this.name="FirebaseError",Object.setPrototypeOf(this,W.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,xe.prototype.create)}}class xe{constructor(n,o,h){this.service=n,this.serviceName=o,this.errors=h}create(n,...o){const h=o[0]||{},u=`${this.service}/${n}`,A=this.errors[n],N=A?function Ge(i,n){return i.replace(Le,(o,h)=>{const u=n[h];return null!=u?String(u):`<${h}?>`})}(A,h):"Error";return new W(u,`${this.serviceName}: ${N} (${u}).`,h)}}const Le=/\{\$([^}]+)}/g;function lt(i,n){if(i===n)return!0;const o=Object.keys(i),h=Object.keys(n);for(const u of o){if(!h.includes(u))return!1;const A=i[u],N=n[u];if(Be(A)&&Be(N)){if(!lt(A,N))return!1}else if(A!==N)return!1}for(const u of h)if(!o.includes(u))return!1;return!0}function Be(i){return null!==i&&"object"==typeof i}function x(i,n=1e3,o=2){const h=n*Math.pow(o,i),u=Math.round(.5*h*(Math.random()-.5)*2);return Math.min(144e5,h+u)}function Oe(i){return i&&i._delegate?i._delegate:i}},13847:(yt,we,L)=>{L.d(we,{KN:()=>He,Mq:()=>gt,Xd:()=>Pe,qX:()=>at});var R=L(15861),w=L(63272),ie=L(87916),F=L(69991),pe=L(98766);class _e{constructor(f){this.container=f}getPlatformInfoString(){return this.container.getProviders().map(g=>{if(function Q(y){return"VERSION"===y.getComponent()?.type}(g)){const I=g.getImmediate();return`${I.library}/${I.version}`}return null}).filter(g=>g).join(" ")}}const ee="@firebase/app",p=new ie.Yd("@firebase/app"),je="[DEFAULT]",ge={[ee]:"fire-core","@firebase/app-compat":"fire-core-compat","@firebase/analytics":"fire-analytics","@firebase/analytics-compat":"fire-analytics-compat","@firebase/app-check":"fire-app-check","@firebase/app-check-compat":"fire-app-check-compat","@firebase/auth":"fire-auth","@firebase/auth-compat":"fire-auth-compat","@firebase/database":"fire-rtdb","@firebase/data-connect":"fire-data-connect","@firebase/database-compat":"fire-rtdb-compat","@firebase/functions":"fire-fn","@firebase/functions-compat":"fire-fn-compat","@firebase/installations":"fire-iid","@firebase/installations-compat":"fire-iid-compat","@firebase/messaging":"fire-fcm","@firebase/messaging-compat":"fire-fcm-compat","@firebase/performance":"fire-perf","@firebase/performance-compat":"fire-perf-compat","@firebase/remote-config":"fire-rc","@firebase/remote-config-compat":"fire-rc-compat","@firebase/storage":"fire-gcs","@firebase/storage-compat":"fire-gcs-compat","@firebase/firestore":"fire-fst","@firebase/firestore-compat":"fire-fst-compat","@firebase/ai":"fire-vertex","fire-js":"fire-js",firebase:"fire-js-all"},de=new Map,Me=new Map,Ze=new Map;function Ae(y,f){try{y.container.addComponent(f)}catch(g){p.debug(`Component ${f.name} failed to register with FirebaseApp ${y.name}`,g)}}function Pe(y){const f=y.name;if(Ze.has(f))return p.debug(`There were multiple attempts to register component ${f}.`),!1;Ze.set(f,y);for(const g of de.values())Ae(g,y);for(const g of Me.values())Ae(g,y);return!0}function at(y,f){const g=y.container.getProvider("heartbeat").getImmediate({optional:!0});return g&&g.triggerHeartbeat(),y.container.getProvider(f)}const W=new F.LL("app","Firebase",{"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."});class xe{constructor(f,g,I){this._isDeleted=!1,this._options=Object.assign({},f),this._config=Object.assign({},g),this._name=g.name,this._automaticDataCollectionEnabled=g.automaticDataCollectionEnabled,this._container=I,this.container.addComponent(new w.wA("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(f){this.checkDestroyed(),this._automaticDataCollectionEnabled=f}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(f){this._isDeleted=f}checkDestroyed(){if(this.isDeleted)throw W.create("app-deleted",{appName:this._name})}}function gt(y=je){const f=de.get(y);if(!f&&y===je&&(0,F.aH)())return function Ee(y,f={}){let g=y;"object"!=typeof f&&(f={name:f});const I=Object.assign({name:je,automaticDataCollectionEnabled:!0},f),k=I.name;if("string"!=typeof k||!k)throw W.create("bad-app-name",{appName:String(k)});if(g||(g=(0,F.aH)()),!g)throw W.create("no-options");const x=de.get(k);if(x){if((0,F.vZ)(g,x.options)&&(0,F.vZ)(I,x.config))return x;throw W.create("duplicate-app",{appName:k})}const K=new w.H0(k);for(const Oe of Ze.values())K.addComponent(Oe);const re=new xe(g,I,K);return de.set(k,re),re}();if(!f)throw W.create("no-app",{appName:y});return f}function He(y,f,g){var I;let k=null!==(I=ge[y])&&void 0!==I?I:y;g&&(k+=`-${g}`);const x=k.match(/\s|\//),K=f.match(/\s|\//);if(x||K){const re=[`Unable to register library "${k}" with version "${f}":`];return x&&re.push(`library name "${k}" contains illegal characters (whitespace or "/")`),x&&K&&re.push("and"),K&&re.push(`version name "${f}" contains illegal characters (whitespace or "/")`),void p.warn(re.join(" "))}Pe(new w.wA(`${k}-version`,()=>({library:k,version:f}),"VERSION"))}const Be="firebase-heartbeat-store";let tt=null;function Ve(){return tt||(tt=(0,pe.X3)("firebase-heartbeat-database",1,{upgrade:(y,f)=>{if(0===f)try{y.createObjectStore(Be)}catch(g){console.warn(g)}}}).catch(y=>{throw W.create("idb-open",{originalErrorMessage:y.message})})),tt}function ze(){return(ze=(0,R.Z)(function*(y){try{const g=(yield Ve()).transaction(Be),I=yield g.objectStore(Be).get(Ye(y));return yield g.done,I}catch(f){if(f instanceof F.ZR)p.warn(f.message);else{const g=W.create("idb-get",{originalErrorMessage:f?.message});p.warn(g.message)}}})).apply(this,arguments)}function dt(y,f){return Je.apply(this,arguments)}function Je(){return(Je=(0,R.Z)(function*(y,f){try{const I=(yield Ve()).transaction(Be,"readwrite");yield I.objectStore(Be).put(f,Ye(y)),yield I.done}catch(g){if(g instanceof F.ZR)p.warn(g.message);else{const I=W.create("idb-set",{originalErrorMessage:g?.message});p.warn(I.message)}}})).apply(this,arguments)}function Ye(y){return`${y.name}!${y.options.appId}`}class rt{constructor(f){this.container=f,this._heartbeatsCache=null;const g=this.container.getProvider("app").getImmediate();this._storage=new wt(g),this._heartbeatsCachePromise=this._storage.read().then(I=>(this._heartbeatsCache=I,I))}triggerHeartbeat(){var f=this;return(0,R.Z)(function*(){var g,I;try{const x=f.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),K=We();if(null==(null===(g=f._heartbeatsCache)||void 0===g?void 0:g.heartbeats)&&(f._heartbeatsCache=yield f._heartbeatsCachePromise,null==(null===(I=f._heartbeatsCache)||void 0===I?void 0:I.heartbeats))||f._heartbeatsCache.lastSentHeartbeatDate===K||f._heartbeatsCache.heartbeats.some(re=>re.date===K))return;if(f._heartbeatsCache.heartbeats.push({date:K,agent:x}),f._heartbeatsCache.heartbeats.length>30){const re=function pt(y){if(0===y.length)return-1;let f=0,g=y[0].date;for(let I=1;I<y.length;I++)y[I].date<g&&(g=y[I].date,f=I);return f}(f._heartbeatsCache.heartbeats);f._heartbeatsCache.heartbeats.splice(re,1)}return f._storage.overwrite(f._heartbeatsCache)}catch(k){p.warn(k)}})()}getHeartbeatsHeader(){var f=this;return(0,R.Z)(function*(){var g;try{if(null===f._heartbeatsCache&&(yield f._heartbeatsCachePromise),null==(null===(g=f._heartbeatsCache)||void 0===g?void 0:g.heartbeats)||0===f._heartbeatsCache.heartbeats.length)return"";const I=We(),{heartbeatsToSend:k,unsentEntries:x}=function it(y,f=1024){const g=[];let I=y.slice();for(const k of y){const x=g.find(K=>K.agent===k.agent);if(x){if(x.dates.push(k.date),ht(g)>f){x.dates.pop();break}}else if(g.push({agent:k.agent,dates:[k.date]}),ht(g)>f){g.pop();break}I=I.slice(1)}return{heartbeatsToSend:g,unsentEntries:I}}(f._heartbeatsCache.heartbeats),K=(0,F.L)(JSON.stringify({version:2,heartbeats:k}));return f._heartbeatsCache.lastSentHeartbeatDate=I,x.length>0?(f._heartbeatsCache.heartbeats=x,yield f._storage.overwrite(f._heartbeatsCache)):(f._heartbeatsCache.heartbeats=[],f._storage.overwrite(f._heartbeatsCache)),K}catch(I){return p.warn(I),""}})()}}function We(){return(new Date).toISOString().substring(0,10)}class wt{constructor(f){this.app=f,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}runIndexedDBEnvironmentCheck(){return(0,R.Z)(function*(){return!!(0,F.hl)()&&(0,F.eu)().then(()=>!0).catch(()=>!1)})()}read(){var f=this;return(0,R.Z)(function*(){if(yield f._canUseIndexedDBPromise){const I=yield function ft(y){return ze.apply(this,arguments)}(f.app);return I?.heartbeats?I:{heartbeats:[]}}return{heartbeats:[]}})()}overwrite(f){var g=this;return(0,R.Z)(function*(){var I;if(yield g._canUseIndexedDBPromise){const x=yield g.read();return dt(g.app,{lastSentHeartbeatDate:null!==(I=f.lastSentHeartbeatDate)&&void 0!==I?I:x.lastSentHeartbeatDate,heartbeats:f.heartbeats})}})()}add(f){var g=this;return(0,R.Z)(function*(){var I;if(yield g._canUseIndexedDBPromise){const x=yield g.read();return dt(g.app,{lastSentHeartbeatDate:null!==(I=f.lastSentHeartbeatDate)&&void 0!==I?I:x.lastSentHeartbeatDate,heartbeats:[...x.heartbeats,...f.heartbeats]})}})()}}function ht(y){return(0,F.L)(JSON.stringify({version:2,heartbeats:y})).length}!function st(y){Pe(new w.wA("platform-logger",f=>new _e(f),"PRIVATE")),Pe(new w.wA("heartbeat",f=>new rt(f),"PRIVATE")),He(ee,"0.13.2",y),He(ee,"0.13.2","esm2017"),He("fire-js","")}("")},63272:(yt,we,L)=>{L.d(we,{H0:()=>ee,wA:()=>ie});var R=L(15861),w=L(69991);class ie{constructor(p,_,O){this.name=p,this.instanceFactory=_,this.type=O,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(p){return this.instantiationMode=p,this}setMultipleInstances(p){return this.multipleInstances=p,this}setServiceProps(p){return this.serviceProps=p,this}setInstanceCreatedCallback(p){return this.onInstanceCreated=p,this}}const F="[DEFAULT]";class pe{constructor(p,_){this.name=p,this.container=_,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(p){const _=this.normalizeInstanceIdentifier(p);if(!this.instancesDeferred.has(_)){const O=new w.BH;if(this.instancesDeferred.set(_,O),this.isInitialized(_)||this.shouldAutoInitialize())try{const M=this.getOrInitializeService({instanceIdentifier:_});M&&O.resolve(M)}catch{}}return this.instancesDeferred.get(_).promise}getImmediate(p){var _;const O=this.normalizeInstanceIdentifier(p?.identifier),M=null!==(_=p?.optional)&&void 0!==_&&_;if(!this.isInitialized(O)&&!this.shouldAutoInitialize()){if(M)return null;throw Error(`Service ${this.name} is not available`)}try{return this.getOrInitializeService({instanceIdentifier:O})}catch(U){if(M)return null;throw U}}getComponent(){return this.component}setComponent(p){if(p.name!==this.name)throw Error(`Mismatching Component ${p.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=p,this.shouldAutoInitialize()){if(function Q(te){return"EAGER"===te.instantiationMode}(p))try{this.getOrInitializeService({instanceIdentifier:F})}catch{}for(const[_,O]of this.instancesDeferred.entries()){const M=this.normalizeInstanceIdentifier(_);try{const U=this.getOrInitializeService({instanceIdentifier:M});O.resolve(U)}catch{}}}}clearInstance(p=F){this.instancesDeferred.delete(p),this.instancesOptions.delete(p),this.instances.delete(p)}delete(){var p=this;return(0,R.Z)(function*(){const _=Array.from(p.instances.values());yield Promise.all([..._.filter(O=>"INTERNAL"in O).map(O=>O.INTERNAL.delete()),..._.filter(O=>"_delete"in O).map(O=>O._delete())])})()}isComponentSet(){return null!=this.component}isInitialized(p=F){return this.instances.has(p)}getOptions(p=F){return this.instancesOptions.get(p)||{}}initialize(p={}){const{options:_={}}=p,O=this.normalizeInstanceIdentifier(p.instanceIdentifier);if(this.isInitialized(O))throw Error(`${this.name}(${O}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const M=this.getOrInitializeService({instanceIdentifier:O,options:_});for(const[U,V]of this.instancesDeferred.entries())O===this.normalizeInstanceIdentifier(U)&&V.resolve(M);return M}onInit(p,_){var O;const M=this.normalizeInstanceIdentifier(_),U=null!==(O=this.onInitCallbacks.get(M))&&void 0!==O?O:new Set;U.add(p),this.onInitCallbacks.set(M,U);const V=this.instances.get(M);return V&&p(V,M),()=>{U.delete(p)}}invokeOnInitCallbacks(p,_){const O=this.onInitCallbacks.get(_);if(O)for(const M of O)try{M(p,_)}catch{}}getOrInitializeService({instanceIdentifier:p,options:_={}}){let O=this.instances.get(p);if(!O&&this.component&&(O=this.component.instanceFactory(this.container,{instanceIdentifier:(te=p,te===F?void 0:te),options:_}),this.instances.set(p,O),this.instancesOptions.set(p,_),this.invokeOnInitCallbacks(O,p),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,p,O)}catch{}var te;return O||null}normalizeInstanceIdentifier(p=F){return this.component?this.component.multipleInstances?p:F:p}shouldAutoInitialize(){return!!this.component&&"EXPLICIT"!==this.component.instantiationMode}}class ee{constructor(p){this.name=p,this.providers=new Map}addComponent(p){const _=this.getProvider(p.name);if(_.isComponentSet())throw new Error(`Component ${p.name} has already been registered with ${this.name}`);_.setComponent(p)}addOrOverwriteComponent(p){this.getProvider(p.name).isComponentSet()&&this.providers.delete(p.name),this.addComponent(p)}getProvider(p){if(this.providers.has(p))return this.providers.get(p);const _=new pe(p,this);return this.providers.set(p,_),_}getProviders(){return Array.from(this.providers.values())}}},9329:(yt,we,L)=>{var R=L(15861),w=L(13847),ie=L(63272),F=L(69991),pe=L(98766);const _e="@firebase/installations",Q="0.6.18",te=`w:${Q}`,p="FIS_v2",z=new F.LL("installations","Installations",{"missing-app-config-values":'Missing App configuration value: "{$valueName}"',"not-registered":"Firebase Installation is not registered.","installation-not-found":"Firebase Installation not found.","request-failed":'{$requestName} request failed with error "{$serverCode} {$serverStatus}: {$serverMessage}"',"app-offline":"Could not process request. Application offline.","delete-pending-registration":"Can't delete installation while there is a pending registration request."});function J(s){return s instanceof F.ZR&&s.code.includes("request-failed")}function $({projectId:s}){return`https://firebaseinstallations.googleapis.com/v1/projects/${s}/installations`}function se(s){return{token:s.token,requestStatus:2,expiresIn:T(s.expiresIn),creationTime:Date.now()}}function Ie(s,l){return Se.apply(this,arguments)}function Se(){return(Se=(0,R.Z)(function*(s,l){const m=(yield l.json()).error;return z.create("request-failed",{requestName:s,serverCode:m.code,serverMessage:m.message,serverStatus:m.status})})).apply(this,arguments)}function Ue({apiKey:s}){return new Headers({"Content-Type":"application/json",Accept:"application/json","x-goog-api-key":s})}function Re(s,{refreshToken:l}){const d=Ue(s);return d.append("Authorization",function S(s){return`${p} ${s}`}(l)),d}function be(s){return Ne.apply(this,arguments)}function Ne(){return(Ne=(0,R.Z)(function*(s){const l=yield s();return l.status>=500&&l.status<600?s():l})).apply(this,arguments)}function T(s){return Number(s.replace("s","000"))}function P(s,l){return j.apply(this,arguments)}function j(){return(j=(0,R.Z)(function*({appConfig:s,heartbeatServiceProvider:l},{fid:d}){const m=$(s),C=Ue(s),B=l.getImmediate({optional:!0});if(B){const le=yield B.getHeartbeatsHeader();le&&C.append("x-firebase-client",le)}const ue={method:"POST",headers:C,body:JSON.stringify({fid:d,authVersion:p,appId:s.appId,sdkVersion:te})},Ce=yield be(()=>fetch(m,ue));if(Ce.ok){const le=yield Ce.json();return{fid:le.fid||d,registrationStatus:2,refreshToken:le.refreshToken,authToken:se(le.authToken)}}throw yield Ie("Create Installation",Ce)})).apply(this,arguments)}function ne(s){return new Promise(l=>{setTimeout(l,s)})}const Y=/^[cdef][\w-]{21}$/;function q(){try{const s=new Uint8Array(17);(self.crypto||self.msCrypto).getRandomValues(s),s[0]=112+s[0]%16;const d=function me(s){return function oe(s){return btoa(String.fromCharCode(...s)).replace(/\+/g,"-").replace(/\//g,"_")}(s).substr(0,22)}(s);return Y.test(d)?d:""}catch{return""}}function fe(s){return`${s.appName}!${s.appId}`}const $e=new Map;function je(s,l){const d=fe(s);Me(d,l),function Ze(s,l){const d=function Et(){return!Ae&&"BroadcastChannel"in self&&(Ae=new BroadcastChannel("[Firebase] FID Change"),Ae.onmessage=s=>{Me(s.data.key,s.data.fid)}),Ae}();d&&d.postMessage({key:s,fid:l}),function Pe(){0===$e.size&&Ae&&(Ae.close(),Ae=null)}()}(d,l)}function Me(s,l){const d=$e.get(s);if(d)for(const m of d)m(l)}let Ae=null;const ce="firebase-installations-store";let ye=null;function qe(){return ye||(ye=(0,pe.X3)("firebase-installations-database",1,{upgrade:(s,l)=>{0===l&&s.createObjectStore(ce)}})),ye}function ke(s,l){return W.apply(this,arguments)}function W(){return(W=(0,R.Z)(function*(s,l){const d=fe(s),C=(yield qe()).transaction(ce,"readwrite"),B=C.objectStore(ce),ae=yield B.get(d);return yield B.put(l,d),yield C.done,(!ae||ae.fid!==l.fid)&&je(s,l.fid),l})).apply(this,arguments)}function xe(s){return Ge.apply(this,arguments)}function Ge(){return(Ge=(0,R.Z)(function*(s){const l=fe(s),m=(yield qe()).transaction(ce,"readwrite");yield m.objectStore(ce).delete(l),yield m.done})).apply(this,arguments)}function Le(s,l){return Qe.apply(this,arguments)}function Qe(){return(Qe=(0,R.Z)(function*(s,l){const d=fe(s),C=(yield qe()).transaction(ce,"readwrite"),B=C.objectStore(ce),ae=yield B.get(d),ue=l(ae);return void 0===ue?yield B.delete(d):yield B.put(ue,d),yield C.done,ue&&(!ae||ae.fid!==ue.fid)&&je(s,ue.fid),ue})).apply(this,arguments)}function Ee(s){return Te.apply(this,arguments)}function Te(){return(Te=(0,R.Z)(function*(s){let l;const d=yield Le(s.appConfig,m=>{const C=gt(m),B=ct(s,C);return l=B.registrationPromise,B.installationEntry});return""===d.fid?{installationEntry:yield l}:{installationEntry:d,registrationPromise:l}})).apply(this,arguments)}function gt(s){return ut(s||{fid:q(),registrationStatus:0})}function ct(s,l){if(0===l.registrationStatus){if(!navigator.onLine)return{installationEntry:l,registrationPromise:Promise.reject(z.create("app-offline"))};const d={fid:l.fid,registrationStatus:1,registrationTime:Date.now()},m=function _t(s,l){return Xe.apply(this,arguments)}(s,d);return{installationEntry:d,registrationPromise:m}}return 1===l.registrationStatus?{installationEntry:l,registrationPromise:He(s)}:{installationEntry:l}}function Xe(){return(Xe=(0,R.Z)(function*(s,l){try{const d=yield P(s,l);return ke(s.appConfig,d)}catch(d){throw J(d)&&409===d.customData.serverCode?yield xe(s.appConfig):yield ke(s.appConfig,{fid:l.fid,registrationStatus:0}),d}})).apply(this,arguments)}function He(s){return et.apply(this,arguments)}function et(){return(et=(0,R.Z)(function*(s){let l=yield Tt(s.appConfig);for(;1===l.registrationStatus;)yield ne(100),l=yield Tt(s.appConfig);if(0===l.registrationStatus){const{installationEntry:d,registrationPromise:m}=yield Ee(s);return m||d}return l})).apply(this,arguments)}function Tt(s){return Le(s,l=>{if(!l)throw z.create("installation-not-found");return ut(l)})}function ut(s){return function lt(s){return 1===s.registrationStatus&&s.registrationTime+1e4<Date.now()}(s)?{fid:s.fid,registrationStatus:0}:s}function Be(s,l){return tt.apply(this,arguments)}function tt(){return(tt=(0,R.Z)(function*({appConfig:s,heartbeatServiceProvider:l},d){const m=Ve(s,d),C=Re(s,d),B=l.getImmediate({optional:!0});if(B){const le=yield B.getHeartbeatsHeader();le&&C.append("x-firebase-client",le)}const ue={method:"POST",headers:C,body:JSON.stringify({installation:{sdkVersion:te,appId:s.appId}})},Ce=yield be(()=>fetch(m,ue));if(Ce.ok)return se(yield Ce.json());throw yield Ie("Generate Auth Token",Ce)})).apply(this,arguments)}function Ve(s,{fid:l}){return`${$(s)}/${l}/authTokens:generate`}function ft(s){return ze.apply(this,arguments)}function ze(){return(ze=(0,R.Z)(function*(s,l=!1){let d;const m=yield Le(s.appConfig,B=>{if(!rt(B))throw z.create("not-registered");const ae=B.authToken;if(!l&&We(ae))return B;if(1===ae.requestStatus)return d=dt(s,l),B;{if(!navigator.onLine)throw z.create("app-offline");const ue=wt(B);return d=bt(s,ue),ue}});return d?yield d:m.authToken})).apply(this,arguments)}function dt(s,l){return Je.apply(this,arguments)}function Je(){return(Je=(0,R.Z)(function*(s,l){let d=yield Ye(s.appConfig);for(;1===d.authToken.requestStatus;)yield ne(100),d=yield Ye(s.appConfig);const m=d.authToken;return 0===m.requestStatus?ft(s,l):m})).apply(this,arguments)}function Ye(s){return Le(s,l=>{if(!rt(l))throw z.create("not-registered");return function ht(s){return 1===s.requestStatus&&s.requestTime+1e4<Date.now()}(l.authToken)?Object.assign(Object.assign({},l),{authToken:{requestStatus:0}}):l})}function bt(s,l){return nt.apply(this,arguments)}function nt(){return(nt=(0,R.Z)(function*(s,l){try{const d=yield Be(s,l),m=Object.assign(Object.assign({},l),{authToken:d});return yield ke(s.appConfig,m),d}catch(d){if(!J(d)||401!==d.customData.serverCode&&404!==d.customData.serverCode){const m=Object.assign(Object.assign({},l),{authToken:{requestStatus:0}});yield ke(s.appConfig,m)}else yield xe(s.appConfig);throw d}})).apply(this,arguments)}function rt(s){return void 0!==s&&2===s.registrationStatus}function We(s){return 2===s.requestStatus&&!function it(s){const l=Date.now();return l<s.creationTime||s.creationTime+s.expiresIn<l+36e5}(s)}function wt(s){const l={requestStatus:1,requestTime:Date.now()};return Object.assign(Object.assign({},s),{authToken:l})}function st(){return(st=(0,R.Z)(function*(s){const l=s,{installationEntry:d,registrationPromise:m}=yield Ee(l);return m?m.catch(console.error):ft(l).catch(console.error),d.fid})).apply(this,arguments)}function f(){return(f=(0,R.Z)(function*(s,l=!1){const d=s;return yield g(d),(yield ft(d,l)).token})).apply(this,arguments)}function g(s){return I.apply(this,arguments)}function I(){return(I=(0,R.Z)(function*(s){const{registrationPromise:l}=yield Ee(s);l&&(yield l)})).apply(this,arguments)}function h(s){return z.create("missing-app-config-values",{valueName:s})}const u="installations",N=s=>{const l=s.getProvider("app").getImmediate(),d=function o(s){if(!s||!s.options)throw h("App Configuration");if(!s.name)throw h("App Name");const l=["projectId","apiKey","appId"];for(const d of l)if(!s.options[d])throw h(d);return{appName:s.name,projectId:s.options.projectId,apiKey:s.options.apiKey,appId:s.options.appId}}(l);return{app:l,appConfig:d,heartbeatServiceProvider:(0,w.qX)(l,"heartbeat"),_delete:()=>Promise.resolve()}},Z=s=>{const l=s.getProvider("app").getImmediate(),d=(0,w.qX)(l,u).getImmediate();return{getId:()=>function pt(s){return st.apply(this,arguments)}(d),getToken:C=>function y(s){return f.apply(this,arguments)}(d,C)}};(function he(){(0,w.Xd)(new ie.wA(u,N,"PUBLIC")),(0,w.Xd)(new ie.wA("installations-internal",Z,"PRIVATE"))})(),(0,w.KN)(_e,Q),(0,w.KN)(_e,Q,"esm2017")},87916:(yt,we,L)=>{L.d(we,{Yd:()=>Q,in:()=>w});const R=[];var w=(()=>{return(p=w||(w={}))[p.DEBUG=0]="DEBUG",p[p.VERBOSE=1]="VERBOSE",p[p.INFO=2]="INFO",p[p.WARN=3]="WARN",p[p.ERROR=4]="ERROR",p[p.SILENT=5]="SILENT",w;var p})();const ie={debug:w.DEBUG,verbose:w.VERBOSE,info:w.INFO,warn:w.WARN,error:w.ERROR,silent:w.SILENT},F=w.INFO,pe={[w.DEBUG]:"log",[w.VERBOSE]:"log",[w.INFO]:"info",[w.WARN]:"warn",[w.ERROR]:"error"},_e=(p,_,...O)=>{if(_<p.logLevel)return;const M=(new Date).toISOString(),U=pe[_];if(!U)throw new Error(`Attempted to log a message with an invalid logType (value: ${_})`);console[U](`[${M}] ${p.name}:`,...O)};class Q{constructor(_){this.name=_,this._logLevel=F,this._logHandler=_e,this._userLogHandler=null,R.push(this)}get logLevel(){return this._logLevel}set logLevel(_){if(!(_ in w))throw new TypeError(`Invalid value "${_}" assigned to \`logLevel\``);this._logLevel=_}setLogLevel(_){this._logLevel="string"==typeof _?ie[_]:_}get logHandler(){return this._logHandler}set logHandler(_){if("function"!=typeof _)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=_}get userLogHandler(){return this._userLogHandler}set userLogHandler(_){this._userLogHandler=_}debug(..._){this._userLogHandler&&this._userLogHandler(this,w.DEBUG,..._),this._logHandler(this,w.DEBUG,..._)}log(..._){this._userLogHandler&&this._userLogHandler(this,w.VERBOSE,..._),this._logHandler(this,w.VERBOSE,..._)}info(..._){this._userLogHandler&&this._userLogHandler(this,w.INFO,..._),this._logHandler(this,w.INFO,..._)}warn(..._){this._userLogHandler&&this._userLogHandler(this,w.WARN,..._),this._logHandler(this,w.WARN,..._)}error(..._){this._userLogHandler&&this._userLogHandler(this,w.ERROR,..._),this._logHandler(this,w.ERROR,..._)}}},98766:(yt,we,L)=>{L.d(we,{X3:()=>Ie});var R=L(15861);let ie,F;const Q=new WeakMap,ee=new WeakMap,te=new WeakMap,p=new WeakMap,_=new WeakMap;let U={get(T,S,P){if(T instanceof IDBTransaction){if("done"===S)return ee.get(T);if("objectStoreNames"===S)return T.objectStoreNames||te.get(T);if("store"===S)return P.objectStoreNames[1]?void 0:P.objectStore(P.objectStoreNames[0])}return $(T[S])},set:(T,S,P)=>(T[S]=P,!0),has:(T,S)=>T instanceof IDBTransaction&&("done"===S||"store"===S)||S in T};function J(T){return"function"==typeof T?function z(T){return T!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?function _e(){return F||(F=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}().includes(T)?function(...S){return T.apply(se(this),S),$(Q.get(this))}:function(...S){return $(T.apply(se(this),S))}:function(S,...P){const j=T.call(se(this),S,...P);return te.set(j,S.sort?S.sort():[S]),$(j)}}(T):(T instanceof IDBTransaction&&function M(T){if(ee.has(T))return;const S=new Promise((P,j)=>{const ne=()=>{T.removeEventListener("complete",oe),T.removeEventListener("error",Y),T.removeEventListener("abort",Y)},oe=()=>{P(),ne()},Y=()=>{j(T.error||new DOMException("AbortError","AbortError")),ne()};T.addEventListener("complete",oe),T.addEventListener("error",Y),T.addEventListener("abort",Y)});ee.set(T,S)}(T),((T,S)=>S.some(P=>T instanceof P))(T,function pe(){return ie||(ie=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}())?new Proxy(T,U):T)}function $(T){if(T instanceof IDBRequest)return function O(T){const S=new Promise((P,j)=>{const ne=()=>{T.removeEventListener("success",oe),T.removeEventListener("error",Y)},oe=()=>{P($(T.result)),ne()},Y=()=>{j(T.error),ne()};T.addEventListener("success",oe),T.addEventListener("error",Y)});return S.then(P=>{P instanceof IDBCursor&&Q.set(P,T)}).catch(()=>{}),_.set(S,T),S}(T);if(p.has(T))return p.get(T);const S=J(T);return S!==T&&(p.set(T,S),_.set(S,T)),S}const se=T=>_.get(T);function Ie(T,S,{blocked:P,upgrade:j,blocking:ne,terminated:oe}={}){const Y=indexedDB.open(T,S),ve=$(Y);return j&&Y.addEventListener("upgradeneeded",q=>{j($(Y.result),q.oldVersion,q.newVersion,$(Y.transaction),q)}),P&&Y.addEventListener("blocked",q=>P(q.oldVersion,q.newVersion,q)),ve.then(q=>{oe&&q.addEventListener("close",()=>oe()),ne&&q.addEventListener("versionchange",me=>ne(me.oldVersion,me.newVersion,me))}).catch(()=>{}),ve}const Ue=["get","getKey","getAll","getAllKeys","count"],Re=["put","add","delete","clear"],be=new Map;function Ne(T,S){if(!(T instanceof IDBDatabase)||S in T||"string"!=typeof S)return;if(be.get(S))return be.get(S);const P=S.replace(/FromIndex$/,""),j=S!==P,ne=Re.includes(P);if(!(P in(j?IDBIndex:IDBObjectStore).prototype)||!ne&&!Ue.includes(P))return;const oe=function(){var Y=(0,R.Z)(function*(ve,...q){const me=this.transaction(ve,ne?"readwrite":"readonly");let fe=me.store;return j&&(fe=fe.index(q.shift())),(yield Promise.all([fe[P](...q),ne&&me.done]))[0]});return function(q){return Y.apply(this,arguments)}}();return be.set(S,oe),oe}!function V(T){U=T(U)}(T=>({...T,get:(S,P,j)=>Ne(S,P)||T.get(S,P,j),has:(S,P)=>!!Ne(S,P)||T.has(S,P)}))}}]); |