!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).firebase=t()}(this,function(){"use strict";var r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function e(e,a,s,c){return new(s=s||Promise)(function(n,t){function r(e){try{o(c.next(e))}catch(e){t(e)}}function i(e){try{o(c.throw(e))}catch(e){t(e)}}function o(e){var t;e.done?n(e.value):((t=e.value)instanceof s?t:new s(function(e){e(t)})).then(r,i)}o((c=c.apply(e,a||[])).next())})}function n(n,r){var i,o,a,s={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},e={next:t(0),throw:t(1),return:t(2)};return"function"==typeof Symbol&&(e[Symbol.iterator]=function(){return this}),e;function t(t){return function(e){return function(t){if(i)throw new TypeError("Generator is already executing.");for(;s;)try{if(i=1,o&&(a=2&t[0]?o.return:t[0]?o.throw||((a=o.return)&&a.call(o),0):o.next)&&!(a=a.call(o,t[1])).done)return a;switch(o=0,(t=a?[2&t[0],a.value]:t)[0]){case 0:case 1:a=t;break;case 4:return s.label++,{value:t[1],done:!1};case 5:s.label++,o=t[1],t=[0];continue;case 7:t=s.ops.pop(),s.trys.pop();continue;default:if(!(a=0<(a=s.trys).length&&a[a.length-1])&&(6===t[0]||2===t[0])){s=0;continue}if(3===t[0]&&(!a||t[1]>a[0]&&t[1]=e.length?void 0:e)&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function u(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),a=[];try{for(;(void 0===t||0"})):"Error",e=this.serviceName+": "+e+" ("+o+").";return new l(o,e,i)},d);function d(e,t,n){this.service=e,this.serviceName=t,this.errors=n}var m=/\{\$([^}]+)}/g;function v(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function g(e,t){if(e===t)return 1;for(var n=Object.keys(e),r=Object.keys(t),i=0,o=n;i=(null!=o?o:e.logLevel)&&a({level:D[t].toLowerCase(),message:i,args:n,type:e.name})}}(n[e])}class H{constructor(e){this.container=e}getPlatformInfoString(){const e=this.container.getProviders();return e.map(e=>{if(function(e){e=e.getComponent();return"VERSION"===(null==e?void 0:e.type)}(e)){e=e.getImmediate();return`${e.library}/${e.version}`}return null}).filter(e=>e).join(" ")}}const $="@firebase/app",M=new F("@firebase/app");var B;const V="[DEFAULT]",U={"@firebase/app":"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/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","fire-js":"fire-js",firebase:"fire-js-all"},G=new Map,W=new Map;function Y(t,n){try{t.container.addComponent(n)}catch(e){M.debug(`Component ${n.name} failed to register with FirebaseApp ${t.name}`,e)}}function K(e,t){e.container.addOrOverwriteComponent(t)}function J(e){var t=e.name;if(W.has(t))return M.debug(`There were multiple attempts to register component ${t}.`),!1;W.set(t,e);for(const n of G.values())Y(n,e);return!0}function X(e,t){return e.container.getProvider(t)}const Z=new h("app","Firebase",{"no-app":"No Firebase App '{$appName}' has been created - call Firebase App.initializeApp()","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","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."});class q{constructor(e,t,n){this._isDeleted=!1,this._options=Object.assign({},e),this._config=Object.assign({},t),this._name=t.name,this._automaticDataCollectionEnabled=t.automaticDataCollectionEnabled,this._container=n,this.container.addComponent(new _("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 Z.create("app-deleted",{appName:this._name})}}const Q="9.0.0";function ee(e,t={}){if("object"!=typeof t){const r=t;t={name:r}}var n=Object.assign({name:V,automaticDataCollectionEnabled:!1},t);const r=n.name;if("string"!=typeof r||!r)throw Z.create("bad-app-name",{appName:String(r)});t=G.get(r);if(t){if(g(e,t.options)&&g(n,t.config))return t;throw Z.create("duplicate-app",{appName:r})}const i=new S(r);for(const o of W.values())i.addComponent(o);n=new q(e,n,i);return G.set(r,n),n}async function te(e){var t=e.name;G.has(t)&&(G.delete(t),await Promise.all(e.container.getProviders().map(e=>e.delete())),e.isDeleted=!0)}function ne(e,t,n){var r;let i=null!==(r=U[e])&&void 0!==r?r:e;n&&(i+=`-${n}`);e=i.match(/\s|\//),n=t.match(/\s|\//);if(e||n){const o=[`Unable to register library "${i}" with version "${t}":`];return e&&o.push(`library name "${i}" contains illegal characters (whitespace or "/")`),e&&n&&o.push("and"),n&&o.push(`version name "${t}" contains illegal characters (whitespace or "/")`),void M.warn(o.join(" "))}J(new _(`${i}-version`,()=>({library:i,version:t}),"VERSION"))}function re(e,t){if(null!==e&&"function"!=typeof e)throw Z.create("invalid-log-argument");x(e,t)}function ie(e){var t;t=e,R.forEach(function(e){e.setLogLevel(t)})}J(new _("platform-logger",e=>new H(e),"PRIVATE")),ne($,"0.7.0",B),ne("fire-js","");var oe=Object.freeze({__proto__:null,SDK_VERSION:Q,_DEFAULT_ENTRY_NAME:V,_addComponent:Y,_addOrOverwriteComponent:K,_apps:G,_clearComponents:function(){W.clear()},_components:W,_getProvider:X,_registerComponent:J,_removeServiceInstance:function(e,t,n=V){X(e,t).clearInstance(n)},deleteApp:te,getApp:function(e=V){var t=G.get(e);if(!t)throw Z.create("no-app",{appName:e});return t},getApps:function(){return Array.from(G.values())},initializeApp:ee,onLog:re,registerVersion:ne,setLogLevel:ie,FirebaseError:l});class ae{constructor(e,t){this._delegate=e,this.firebase=t,Y(e,new _("app-compat",()=>this,"PUBLIC")),this.container=e.container}get automaticDataCollectionEnabled(){return this._delegate.automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this._delegate.automaticDataCollectionEnabled=e}get name(){return this._delegate.name}get options(){return this._delegate.options}delete(){return new Promise(e=>{this._delegate.checkDestroyed(),e()}).then(()=>(this.firebase.INTERNAL.removeApp(this.name),te(this._delegate)))}_getService(e,t=V){this._delegate.checkDestroyed();const n=this._delegate.container.getProvider(e);return n.isInitialized()||"EXPLICIT"!==(null===(e=n.getComponent())||void 0===e?void 0:e.instantiationMode)||n.initialize(),n.getImmediate({identifier:t})}_removeServiceInstance(e,t=V){this._delegate.container.getProvider(e).clearInstance(t)}_addComponent(e){Y(this._delegate,e)}_addOrOverwriteComponent(e){K(this._delegate,e)}toJSON(){return{name:this.name,automaticDataCollectionEnabled:this.automaticDataCollectionEnabled,options:this.options}}}const se=new h("app-compat","Firebase",{"no-app":"No Firebase App '{$appName}' has been created - call Firebase App.initializeApp()","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance."});function ce(i){const n={},o={__esModule:!0,initializeApp:function(e,t={}){e=ee(e,t);if(v(n,e.name))return n[e.name];t=new i(e,o);return n[e.name]=t},app:a,registerVersion:ne,setLogLevel:ie,onLog:re,apps:null,SDK_VERSION:Q,INTERNAL:{registerComponent:function(n){const r=n.name,t=r.replace("-compat","");{var e;J(n)&&"PUBLIC"===n.type&&(e=(e=a())=>{if("function"!=typeof e[t])throw se.create("invalid-app-argument",{appName:r});return e[t]()},void 0!==n.serviceProps&&s(e,n.serviceProps),o[t]=e,i.prototype[t]=function(...e){const t=this._getService.bind(this,r);return t.apply(this,n.multipleInstances?e:[])})}return"PUBLIC"===n.type?o[t]:null},removeApp:function(e){delete n[e]},useAsService:function(e,t){if("serverAuth"===t)return null;return t},modularAPIs:oe}};function a(e){if(e=e||V,!v(n,e))throw se.create("no-app",{appName:e});return n[e]}return o.default=o,Object.defineProperty(o,"apps",{get:function(){return Object.keys(n).map(e=>n[e])}}),a.App=i,o}var le=function e(){const t=ce(ae);return t.INTERNAL=Object.assign(Object.assign({},t.INTERNAL),{createFirebaseNamespace:e,extendNamespace:function(e){s(t,e)},createSubscribe:y,ErrorFactory:h,deepExtend:s}),t}();const pe=new F("@firebase/app-compat");if("object"==typeof self&&self.self===self&&void 0!==self.firebase){pe.warn(` Warning: Firebase is already defined in the global scope. Please make sure Firebase library is only loaded once. `);const ue=self.firebase.SDK_VERSION;ue&&0<=ue.indexOf("LITE")&&pe.warn(` Warning: You are trying to load Firebase while using Firebase Performance standalone script. You should load Firebase Performance with this instance of Firebase to avoid loading duplicate code. `)}const fe=le;ne("@firebase/app-compat","0.1.0",void 0);return fe.registerVersion("firebase","9.0.0","app-compat-cdn"),fe}); //# sourceMappingURL=firebase-app-compat.js.map