-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path8.f8adb741.iframe.bundle.js
2 lines (2 loc) · 47 KB
/
8.f8adb741.iframe.bundle.js
1
2
/*! For license information please see 8.f8adb741.iframe.bundle.js.LICENSE.txt */
(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{1145:function(module,exports,__webpack_require__){!function(exports){"use strict";function toArray(arr){return Array.prototype.slice.call(arr)}function promisifyRequest(request){return new Promise((function(resolve,reject){request.onsuccess=function(){resolve(request.result)},request.onerror=function(){reject(request.error)}}))}function promisifyRequestCall(obj,method,args){var request,p=new Promise((function(resolve,reject){promisifyRequest(request=obj[method].apply(obj,args)).then(resolve,reject)}));return p.request=request,p}function promisifyCursorRequestCall(obj,method,args){var p=promisifyRequestCall(obj,method,args);return p.then((function(value){if(value)return new Cursor(value,p.request)}))}function proxyProperties(ProxyClass,targetProp,properties){properties.forEach((function(prop){Object.defineProperty(ProxyClass.prototype,prop,{get:function(){return this[targetProp][prop]},set:function(val){this[targetProp][prop]=val}})}))}function proxyRequestMethods(ProxyClass,targetProp,Constructor,properties){properties.forEach((function(prop){prop in Constructor.prototype&&(ProxyClass.prototype[prop]=function(){return promisifyRequestCall(this[targetProp],prop,arguments)})}))}function proxyMethods(ProxyClass,targetProp,Constructor,properties){properties.forEach((function(prop){prop in Constructor.prototype&&(ProxyClass.prototype[prop]=function(){return this[targetProp][prop].apply(this[targetProp],arguments)})}))}function proxyCursorRequestMethods(ProxyClass,targetProp,Constructor,properties){properties.forEach((function(prop){prop in Constructor.prototype&&(ProxyClass.prototype[prop]=function(){return promisifyCursorRequestCall(this[targetProp],prop,arguments)})}))}function Index(index){this._index=index}function Cursor(cursor,request){this._cursor=cursor,this._request=request}function ObjectStore(store){this._store=store}function Transaction(idbTransaction){this._tx=idbTransaction,this.complete=new Promise((function(resolve,reject){idbTransaction.oncomplete=function(){resolve()},idbTransaction.onerror=function(){reject(idbTransaction.error)},idbTransaction.onabort=function(){reject(idbTransaction.error)}}))}function UpgradeDB(db,oldVersion,transaction){this._db=db,this.oldVersion=oldVersion,this.transaction=new Transaction(transaction)}function DB(db){this._db=db}function openDb(name,version,upgradeCallback){var p=promisifyRequestCall(indexedDB,"open",[name,version]),request=p.request;return request&&(request.onupgradeneeded=function(event){upgradeCallback&&upgradeCallback(new UpgradeDB(request.result,event.oldVersion,request.transaction))}),p.then((function(db){return new DB(db)}))}function deleteDb(name){return promisifyRequestCall(indexedDB,"deleteDatabase",[name])}proxyProperties(Index,"_index",["name","keyPath","multiEntry","unique"]),proxyRequestMethods(Index,"_index",IDBIndex,["get","getKey","getAll","getAllKeys","count"]),proxyCursorRequestMethods(Index,"_index",IDBIndex,["openCursor","openKeyCursor"]),proxyProperties(Cursor,"_cursor",["direction","key","primaryKey","value"]),proxyRequestMethods(Cursor,"_cursor",IDBCursor,["update","delete"]),["advance","continue","continuePrimaryKey"].forEach((function(methodName){methodName in IDBCursor.prototype&&(Cursor.prototype[methodName]=function(){var cursor=this,args=arguments;return Promise.resolve().then((function(){return cursor._cursor[methodName].apply(cursor._cursor,args),promisifyRequest(cursor._request).then((function(value){if(value)return new Cursor(value,cursor._request)}))}))})})),ObjectStore.prototype.createIndex=function(){return new Index(this._store.createIndex.apply(this._store,arguments))},ObjectStore.prototype.index=function(){return new Index(this._store.index.apply(this._store,arguments))},proxyProperties(ObjectStore,"_store",["name","keyPath","indexNames","autoIncrement"]),proxyRequestMethods(ObjectStore,"_store",IDBObjectStore,["put","add","delete","clear","get","getAll","getKey","getAllKeys","count"]),proxyCursorRequestMethods(ObjectStore,"_store",IDBObjectStore,["openCursor","openKeyCursor"]),proxyMethods(ObjectStore,"_store",IDBObjectStore,["deleteIndex"]),Transaction.prototype.objectStore=function(){return new ObjectStore(this._tx.objectStore.apply(this._tx,arguments))},proxyProperties(Transaction,"_tx",["objectStoreNames","mode"]),proxyMethods(Transaction,"_tx",IDBTransaction,["abort"]),UpgradeDB.prototype.createObjectStore=function(){return new ObjectStore(this._db.createObjectStore.apply(this._db,arguments))},proxyProperties(UpgradeDB,"_db",["name","version","objectStoreNames"]),proxyMethods(UpgradeDB,"_db",IDBDatabase,["deleteObjectStore","close"]),DB.prototype.transaction=function(){return new Transaction(this._db.transaction.apply(this._db,arguments))},proxyProperties(DB,"_db",["name","version","objectStoreNames"]),proxyMethods(DB,"_db",IDBDatabase,["close"]),["openCursor","openKeyCursor"].forEach((function(funcName){[ObjectStore,Index].forEach((function(Constructor){funcName in Constructor.prototype&&(Constructor.prototype[funcName.replace("open","iterate")]=function(){var args=toArray(arguments),callback=args[args.length-1],nativeObject=this._store||this._index,request=nativeObject[funcName].apply(nativeObject,args.slice(0,-1));request.onsuccess=function(){callback(request.result)}})}))})),[Index,ObjectStore].forEach((function(Constructor){Constructor.prototype.getAll||(Constructor.prototype.getAll=function(query,count){var instance=this,items=[];return new Promise((function(resolve){instance.iterateCursor(query,(function(cursor){cursor?(items.push(cursor.value),void 0===count||items.length!=count?cursor.continue():resolve(items)):resolve(items)}))}))})})),exports.openDb=openDb,exports.deleteDb=deleteDb,Object.defineProperty(exports,"__esModule",{value:!0})}(exports)},1152:function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.r(__webpack_exports__);var index_esm_a,tslib_es6=__webpack_require__(1078),index_esm=__webpack_require__(1077),dist_index_esm=__webpack_require__(1082),util_dist_index_esm=__webpack_require__(1079),idb=__webpack_require__(1145),ERROR_DESCRIPTION_MAP=((index_esm_a={})["missing-app-config-values"]='Missing App configuration value: "{$valueName}"',index_esm_a["not-registered"]="Firebase Installation is not registered.",index_esm_a["installation-not-found"]="Firebase Installation not found.",index_esm_a["request-failed"]='{$requestName} request failed with error "{$serverCode} {$serverStatus}: {$serverMessage}"',index_esm_a["app-offline"]="Could not process request. Application offline.",index_esm_a["delete-pending-registration"]="Can't delete installation while there is a pending registration request.",index_esm_a),ERROR_FACTORY=new util_dist_index_esm.b("installations","Installations",ERROR_DESCRIPTION_MAP);function isServerError(error){return error instanceof util_dist_index_esm.c&&error.code.includes("request-failed")}function getInstallationsEndpoint(_a){return"https://firebaseinstallations.googleapis.com/v1/projects/"+_a.projectId+"/installations"}function extractAuthTokenInfoFromResponse(response){return{token:response.token,requestStatus:2,expiresIn:(responseExpiresIn=response.expiresIn,Number(responseExpiresIn.replace("s","000"))),creationTime:Date.now()};var responseExpiresIn}function getErrorFromResponse(requestName,response){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var responseJson,errorData;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,response.json()];case 1:return responseJson=_a.sent(),errorData=responseJson.error,[2,ERROR_FACTORY.create("request-failed",{requestName:requestName,serverCode:errorData.code,serverMessage:errorData.message,serverStatus:errorData.status})]}}))}))}function getHeaders(_a){var apiKey=_a.apiKey;return new Headers({"Content-Type":"application/json",Accept:"application/json","x-goog-api-key":apiKey})}function getHeadersWithAuth(appConfig,_a){var refreshToken=_a.refreshToken,headers=getHeaders(appConfig);return headers.append("Authorization",function getAuthorizationHeader(refreshToken){return"FIS_v2 "+refreshToken}(refreshToken)),headers}function retryIfServerError(fn){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var result;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,fn()];case 1:return(result=_a.sent()).status>=500&&result.status<600?[2,fn()]:[2,result]}}))}))}function createInstallationRequest(appConfig,_a){var fid=_a.fid;return Object(tslib_es6.b)(this,void 0,void 0,(function(){var endpoint,headers,body,request,response,responseValue;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return endpoint=getInstallationsEndpoint(appConfig),headers=getHeaders(appConfig),body={fid:fid,authVersion:"FIS_v2",appId:appConfig.appId,sdkVersion:"w:0.4.32"},request={method:"POST",headers:headers,body:JSON.stringify(body)},[4,retryIfServerError((function(){return fetch(endpoint,request)}))];case 1:return(response=_b.sent()).ok?[4,response.json()]:[3,3];case 2:return responseValue=_b.sent(),[2,{fid:responseValue.fid||fid,registrationStatus:2,refreshToken:responseValue.refreshToken,authToken:extractAuthTokenInfoFromResponse(responseValue.authToken)}];case 3:return[4,getErrorFromResponse("Create Installation",response)];case 4:throw _b.sent()}}))}))}function sleep(ms){return new Promise((function(resolve){setTimeout(resolve,ms)}))}var VALID_FID_PATTERN=/^[cdef][\w-]{21}$/;function generateFid(){try{var fidByteArray=new Uint8Array(17);(self.crypto||self.msCrypto).getRandomValues(fidByteArray),fidByteArray[0]=112+fidByteArray[0]%16;var fid=function encode(fidByteArray){return function bufferToBase64UrlSafe(array){return btoa(String.fromCharCode.apply(String,Object(tslib_es6.f)([],Object(tslib_es6.e)(array)))).replace(/\+/g,"-").replace(/\//g,"_")}(fidByteArray).substr(0,22)}(fidByteArray);return VALID_FID_PATTERN.test(fid)?fid:""}catch(_a){return""}}function getKey(appConfig){return appConfig.appName+"!"+appConfig.appId}var fidChangeCallbacks=new Map;function fidChanged(appConfig,fid){var key=getKey(appConfig);callFidChangeCallbacks(key,fid),function broadcastFidChange(key,fid){var channel=getBroadcastChannel();channel&&channel.postMessage({key:key,fid:fid});closeBroadcastChannel()}(key,fid)}function callFidChangeCallbacks(key,fid){var e_1,_a,callbacks=fidChangeCallbacks.get(key);if(callbacks)try{for(var callbacks_1=Object(tslib_es6.g)(callbacks),callbacks_1_1=callbacks_1.next();!callbacks_1_1.done;callbacks_1_1=callbacks_1.next()){(0,callbacks_1_1.value)(fid)}}catch(e_1_1){e_1={error:e_1_1}}finally{try{callbacks_1_1&&!callbacks_1_1.done&&(_a=callbacks_1.return)&&_a.call(callbacks_1)}finally{if(e_1)throw e_1.error}}}var broadcastChannel=null;function getBroadcastChannel(){return!broadcastChannel&&"BroadcastChannel"in self&&((broadcastChannel=new BroadcastChannel("[Firebase] FID Change")).onmessage=function(e){callFidChangeCallbacks(e.data.key,e.data.fid)}),broadcastChannel}function closeBroadcastChannel(){0===fidChangeCallbacks.size&&broadcastChannel&&(broadcastChannel.close(),broadcastChannel=null)}var OBJECT_STORE_NAME="firebase-installations-store",dbPromise=null;function getDbPromise(){return dbPromise||(dbPromise=Object(idb.openDb)("firebase-installations-database",1,(function(upgradeDB){switch(upgradeDB.oldVersion){case 0:upgradeDB.createObjectStore(OBJECT_STORE_NAME)}}))),dbPromise}function set(appConfig,value){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var key,db,tx,objectStore,oldValue;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return key=getKey(appConfig),[4,getDbPromise()];case 1:return db=_a.sent(),tx=db.transaction(OBJECT_STORE_NAME,"readwrite"),[4,(objectStore=tx.objectStore(OBJECT_STORE_NAME)).get(key)];case 2:return oldValue=_a.sent(),[4,objectStore.put(value,key)];case 3:return _a.sent(),[4,tx.complete];case 4:return _a.sent(),oldValue&&oldValue.fid===value.fid||fidChanged(appConfig,value.fid),[2,value]}}))}))}function remove(appConfig){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var key,db,tx;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return key=getKey(appConfig),[4,getDbPromise()];case 1:return db=_a.sent(),[4,(tx=db.transaction(OBJECT_STORE_NAME,"readwrite")).objectStore(OBJECT_STORE_NAME).delete(key)];case 2:return _a.sent(),[4,tx.complete];case 3:return _a.sent(),[2]}}))}))}function update(appConfig,updateFn){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var key,db,tx,store,oldValue,newValue;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return key=getKey(appConfig),[4,getDbPromise()];case 1:return db=_a.sent(),tx=db.transaction(OBJECT_STORE_NAME,"readwrite"),[4,(store=tx.objectStore(OBJECT_STORE_NAME)).get(key)];case 2:return oldValue=_a.sent(),void 0!==(newValue=updateFn(oldValue))?[3,4]:[4,store.delete(key)];case 3:return _a.sent(),[3,6];case 4:return[4,store.put(newValue,key)];case 5:_a.sent(),_a.label=6;case 6:return[4,tx.complete];case 7:return _a.sent(),!newValue||oldValue&&oldValue.fid===newValue.fid||fidChanged(appConfig,newValue.fid),[2,newValue]}}))}))}function getInstallationEntry(appConfig){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var registrationPromise,installationEntry,_a;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return[4,update(appConfig,(function(oldEntry){var installationEntry=function updateOrCreateInstallationEntry(oldEntry){return clearTimedOutRequest(oldEntry||{fid:generateFid(),registrationStatus:0})}(oldEntry),entryWithPromise=function triggerRegistrationIfNecessary(appConfig,installationEntry){if(0===installationEntry.registrationStatus){if(!navigator.onLine)return{installationEntry:installationEntry,registrationPromise:Promise.reject(ERROR_FACTORY.create("app-offline"))};var inProgressEntry={fid:installationEntry.fid,registrationStatus:1,registrationTime:Date.now()};return{installationEntry:inProgressEntry,registrationPromise:function registerInstallation(appConfig,installationEntry){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var registeredInstallationEntry,e_1;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return _a.trys.push([0,2,,7]),[4,createInstallationRequest(appConfig,installationEntry)];case 1:return registeredInstallationEntry=_a.sent(),[2,set(appConfig,registeredInstallationEntry)];case 2:return isServerError(e_1=_a.sent())&&409===e_1.customData.serverCode?[4,remove(appConfig)]:[3,4];case 3:return _a.sent(),[3,6];case 4:return[4,set(appConfig,{fid:installationEntry.fid,registrationStatus:0})];case 5:_a.sent(),_a.label=6;case 6:throw e_1;case 7:return[2]}}))}))}(appConfig,inProgressEntry)}}return 1===installationEntry.registrationStatus?{installationEntry:installationEntry,registrationPromise:waitUntilFidRegistration(appConfig)}:{installationEntry:installationEntry}}(appConfig,installationEntry);return registrationPromise=entryWithPromise.registrationPromise,entryWithPromise.installationEntry}))];case 1:return""!==(installationEntry=_b.sent()).fid?[3,3]:(_a={},[4,registrationPromise]);case 2:return[2,(_a.installationEntry=_b.sent(),_a)];case 3:return[2,{installationEntry:installationEntry,registrationPromise:registrationPromise}]}}))}))}function waitUntilFidRegistration(appConfig){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var entry,_a,installationEntry,registrationPromise;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return[4,updateInstallationRequest(appConfig)];case 1:entry=_b.sent(),_b.label=2;case 2:return 1!==entry.registrationStatus?[3,5]:[4,sleep(100)];case 3:return _b.sent(),[4,updateInstallationRequest(appConfig)];case 4:return entry=_b.sent(),[3,2];case 5:return 0!==entry.registrationStatus?[3,7]:[4,getInstallationEntry(appConfig)];case 6:return _a=_b.sent(),installationEntry=_a.installationEntry,(registrationPromise=_a.registrationPromise)?[2,registrationPromise]:[2,installationEntry];case 7:return[2,entry]}}))}))}function updateInstallationRequest(appConfig){return update(appConfig,(function(oldEntry){if(!oldEntry)throw ERROR_FACTORY.create("installation-not-found");return clearTimedOutRequest(oldEntry)}))}function clearTimedOutRequest(entry){return function hasInstallationRequestTimedOut(installationEntry){return 1===installationEntry.registrationStatus&&installationEntry.registrationTime+1e4<Date.now()}(entry)?{fid:entry.fid,registrationStatus:0}:entry}function generateAuthTokenRequest(_a,installationEntry){var appConfig=_a.appConfig,platformLoggerProvider=_a.platformLoggerProvider;return Object(tslib_es6.b)(this,void 0,void 0,(function(){var endpoint,headers,platformLogger,body,request,response,responseValue;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return endpoint=function getGenerateAuthTokenEndpoint(appConfig,_a){var fid=_a.fid;return getInstallationsEndpoint(appConfig)+"/"+fid+"/authTokens:generate"}(appConfig,installationEntry),headers=getHeadersWithAuth(appConfig,installationEntry),(platformLogger=platformLoggerProvider.getImmediate({optional:!0}))&&headers.append("x-firebase-client",platformLogger.getPlatformInfoString()),body={installation:{sdkVersion:"w:0.4.32"}},request={method:"POST",headers:headers,body:JSON.stringify(body)},[4,retryIfServerError((function(){return fetch(endpoint,request)}))];case 1:return(response=_b.sent()).ok?[4,response.json()]:[3,3];case 2:return responseValue=_b.sent(),[2,extractAuthTokenInfoFromResponse(responseValue)];case 3:return[4,getErrorFromResponse("Generate Auth Token",response)];case 4:throw _b.sent()}}))}))}function refreshAuthToken(dependencies,forceRefresh){return void 0===forceRefresh&&(forceRefresh=!1),Object(tslib_es6.b)(this,void 0,void 0,(function(){var tokenPromise,entry,_a;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return[4,update(dependencies.appConfig,(function(oldEntry){if(!isEntryRegistered(oldEntry))throw ERROR_FACTORY.create("not-registered");var oldAuthToken=oldEntry.authToken;if(!forceRefresh&&function isAuthTokenValid(authToken){return 2===authToken.requestStatus&&!function isAuthTokenExpired(authToken){var now=Date.now();return now<authToken.creationTime||authToken.creationTime+authToken.expiresIn<now+36e5}(authToken)}(oldAuthToken))return oldEntry;if(1===oldAuthToken.requestStatus)return tokenPromise=function waitUntilAuthTokenRequest(dependencies,forceRefresh){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var entry,authToken;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,updateAuthTokenRequest(dependencies.appConfig)];case 1:entry=_a.sent(),_a.label=2;case 2:return 1!==entry.authToken.requestStatus?[3,5]:[4,sleep(100)];case 3:return _a.sent(),[4,updateAuthTokenRequest(dependencies.appConfig)];case 4:return entry=_a.sent(),[3,2];case 5:return 0===(authToken=entry.authToken).requestStatus?[2,refreshAuthToken(dependencies,forceRefresh)]:[2,authToken]}}))}))}(dependencies,forceRefresh),oldEntry;if(!navigator.onLine)throw ERROR_FACTORY.create("app-offline");var inProgressEntry=function makeAuthTokenRequestInProgressEntry(oldEntry){var inProgressAuthToken={requestStatus:1,requestTime:Date.now()};return Object(tslib_es6.a)(Object(tslib_es6.a)({},oldEntry),{authToken:inProgressAuthToken})}(oldEntry);return tokenPromise=function fetchAuthTokenFromServer(dependencies,installationEntry){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var authToken,e_1,updatedInstallationEntry;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return _a.trys.push([0,3,,8]),[4,generateAuthTokenRequest(dependencies,installationEntry)];case 1:return authToken=_a.sent(),updatedInstallationEntry=Object(tslib_es6.a)(Object(tslib_es6.a)({},installationEntry),{authToken:authToken}),[4,set(dependencies.appConfig,updatedInstallationEntry)];case 2:return _a.sent(),[2,authToken];case 3:return!isServerError(e_1=_a.sent())||401!==e_1.customData.serverCode&&404!==e_1.customData.serverCode?[3,5]:[4,remove(dependencies.appConfig)];case 4:return _a.sent(),[3,7];case 5:return updatedInstallationEntry=Object(tslib_es6.a)(Object(tslib_es6.a)({},installationEntry),{authToken:{requestStatus:0}}),[4,set(dependencies.appConfig,updatedInstallationEntry)];case 6:_a.sent(),_a.label=7;case 7:throw e_1;case 8:return[2]}}))}))}(dependencies,inProgressEntry),inProgressEntry}))];case 1:return entry=_b.sent(),tokenPromise?[4,tokenPromise]:[3,3];case 2:return _a=_b.sent(),[3,4];case 3:_a=entry.authToken,_b.label=4;case 4:return[2,_a]}}))}))}function updateAuthTokenRequest(appConfig){return update(appConfig,(function(oldEntry){if(!isEntryRegistered(oldEntry))throw ERROR_FACTORY.create("not-registered");return function hasAuthTokenRequestTimedOut(authToken){return 1===authToken.requestStatus&&authToken.requestTime+1e4<Date.now()}(oldEntry.authToken)?Object(tslib_es6.a)(Object(tslib_es6.a)({},oldEntry),{authToken:{requestStatus:0}}):oldEntry}))}function isEntryRegistered(installationEntry){return void 0!==installationEntry&&2===installationEntry.registrationStatus}function completeInstallationRegistration(appConfig){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var registrationPromise;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,getInstallationEntry(appConfig)];case 1:return(registrationPromise=_a.sent().registrationPromise)?[4,registrationPromise]:[3,3];case 2:_a.sent(),_a.label=3;case 3:return[2]}}))}))}function deleteInstallationRequest(appConfig,installationEntry){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var endpoint,headers,request,response;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return endpoint=function getDeleteEndpoint(appConfig,_a){var fid=_a.fid;return getInstallationsEndpoint(appConfig)+"/"+fid}(appConfig,installationEntry),headers=getHeadersWithAuth(appConfig,installationEntry),request={method:"DELETE",headers:headers},[4,retryIfServerError((function(){return fetch(endpoint,request)}))];case 1:return(response=_a.sent()).ok?[3,3]:[4,getErrorFromResponse("Delete Installation",response)];case 2:throw _a.sent();case 3:return[2]}}))}))}function onIdChange(_a,callback){var appConfig=_a.appConfig;return function addCallback(appConfig,callback){getBroadcastChannel();var key=getKey(appConfig),callbackSet=fidChangeCallbacks.get(key);callbackSet||(callbackSet=new Set,fidChangeCallbacks.set(key,callbackSet)),callbackSet.add(callback)}(appConfig,callback),function(){!function removeCallback(appConfig,callback){var key=getKey(appConfig),callbackSet=fidChangeCallbacks.get(key);callbackSet&&(callbackSet.delete(callback),0===callbackSet.size&&fidChangeCallbacks.delete(key),closeBroadcastChannel())}(appConfig,callback)}}function getMissingValueError(valueName){return ERROR_FACTORY.create("missing-app-config-values",{valueName:valueName})}!function registerInstallations(instance){instance.INTERNAL.registerComponent(new dist_index_esm.a("installations",(function(container){var app=container.getProvider("app").getImmediate(),dependencies={appConfig:function extractAppConfig(app){var e_1,_a;if(!app||!app.options)throw getMissingValueError("App Configuration");if(!app.name)throw getMissingValueError("App Name");try{for(var configKeys_1=Object(tslib_es6.g)(["projectId","apiKey","appId"]),configKeys_1_1=configKeys_1.next();!configKeys_1_1.done;configKeys_1_1=configKeys_1.next()){var keyName=configKeys_1_1.value;if(!app.options[keyName])throw getMissingValueError(keyName)}}catch(e_1_1){e_1={error:e_1_1}}finally{try{configKeys_1_1&&!configKeys_1_1.done&&(_a=configKeys_1.return)&&_a.call(configKeys_1)}finally{if(e_1)throw e_1.error}}return{appName:app.name,projectId:app.options.projectId,apiKey:app.options.apiKey,appId:app.options.appId}}(app),platformLoggerProvider:container.getProvider("platform-logger")};return{app:app,getId:function(){return function getId(dependencies){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var _a,installationEntry,registrationPromise;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return[4,getInstallationEntry(dependencies.appConfig)];case 1:return _a=_b.sent(),installationEntry=_a.installationEntry,(registrationPromise=_a.registrationPromise)?registrationPromise.catch(console.error):refreshAuthToken(dependencies).catch(console.error),[2,installationEntry.fid]}}))}))}(dependencies)},getToken:function(forceRefresh){return function getToken(dependencies,forceRefresh){return void 0===forceRefresh&&(forceRefresh=!1),Object(tslib_es6.b)(this,void 0,void 0,(function(){return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,completeInstallationRegistration(dependencies.appConfig)];case 1:return _a.sent(),[4,refreshAuthToken(dependencies,forceRefresh)];case 2:return[2,_a.sent().token]}}))}))}(dependencies,forceRefresh)},delete:function(){return function deleteInstallation(dependencies){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var appConfig,entry;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,update(appConfig=dependencies.appConfig,(function(oldEntry){if(!oldEntry||0!==oldEntry.registrationStatus)return oldEntry}))];case 1:if(!(entry=_a.sent()))return[3,6];if(1!==entry.registrationStatus)return[3,2];throw ERROR_FACTORY.create("delete-pending-registration");case 2:if(2!==entry.registrationStatus)return[3,6];if(navigator.onLine)return[3,3];throw ERROR_FACTORY.create("app-offline");case 3:return[4,deleteInstallationRequest(appConfig,entry)];case 4:return _a.sent(),[4,remove(appConfig)];case 5:_a.sent(),_a.label=6;case 6:return[2]}}))}))}(dependencies)},onIdChange:function(callback){return onIdChange(dependencies,callback)}}}),"PUBLIC")),instance.registerVersion("@firebase/installations","0.4.32")}(index_esm.a);var GtagCommand,EventName,logger_dist_index_esm=__webpack_require__(1094),GTAG_URL="https://www.googletagmanager.com/gtag/js";!function(GtagCommand){GtagCommand.EVENT="event",GtagCommand.SET="set",GtagCommand.CONFIG="config"}(GtagCommand||(GtagCommand={})),function(EventName){EventName.ADD_SHIPPING_INFO="add_shipping_info",EventName.ADD_PAYMENT_INFO="add_payment_info",EventName.ADD_TO_CART="add_to_cart",EventName.ADD_TO_WISHLIST="add_to_wishlist",EventName.BEGIN_CHECKOUT="begin_checkout",EventName.CHECKOUT_PROGRESS="checkout_progress",EventName.EXCEPTION="exception",EventName.GENERATE_LEAD="generate_lead",EventName.LOGIN="login",EventName.PAGE_VIEW="page_view",EventName.PURCHASE="purchase",EventName.REFUND="refund",EventName.REMOVE_FROM_CART="remove_from_cart",EventName.SCREEN_VIEW="screen_view",EventName.SEARCH="search",EventName.SELECT_CONTENT="select_content",EventName.SELECT_ITEM="select_item",EventName.SELECT_PROMOTION="select_promotion",EventName.SET_CHECKOUT_OPTION="set_checkout_option",EventName.SHARE="share",EventName.SIGN_UP="sign_up",EventName.TIMING_COMPLETE="timing_complete",EventName.VIEW_CART="view_cart",EventName.VIEW_ITEM="view_item",EventName.VIEW_ITEM_LIST="view_item_list",EventName.VIEW_PROMOTION="view_promotion",EventName.VIEW_SEARCH_RESULTS="view_search_results"}(EventName||(EventName={}));var dist_index_esm_a,logger=new logger_dist_index_esm.a("@firebase/analytics");function gtagOnConfig(gtagCore,initializationPromisesMap,dynamicConfigPromisesList,measurementIdToAppId,measurementId,gtagParams){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var correspondingAppId,dynamicConfigResults,foundConfig,e_1;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:correspondingAppId=measurementIdToAppId[measurementId],_a.label=1;case 1:return _a.trys.push([1,7,,8]),correspondingAppId?[4,initializationPromisesMap[correspondingAppId]]:[3,3];case 2:return _a.sent(),[3,6];case 3:return[4,Promise.all(dynamicConfigPromisesList)];case 4:return dynamicConfigResults=_a.sent(),(foundConfig=dynamicConfigResults.find((function(config){return config.measurementId===measurementId})))?[4,initializationPromisesMap[foundConfig.appId]]:[3,6];case 5:_a.sent(),_a.label=6;case 6:return[3,8];case 7:return e_1=_a.sent(),logger.error(e_1),[3,8];case 8:return gtagCore(GtagCommand.CONFIG,measurementId,gtagParams),[2]}}))}))}function gtagOnEvent(gtagCore,initializationPromisesMap,dynamicConfigPromisesList,measurementId,gtagParams){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var initializationPromisesToWaitFor,gaSendToList,dynamicConfigResults,_loop_1,_i,gaSendToList_1,sendToId,e_2;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return _a.trys.push([0,4,,5]),initializationPromisesToWaitFor=[],gtagParams&>agParams.send_to?(gaSendToList=gtagParams.send_to,Array.isArray(gaSendToList)||(gaSendToList=[gaSendToList]),[4,Promise.all(dynamicConfigPromisesList)]):[3,2];case 1:for(dynamicConfigResults=_a.sent(),_loop_1=function(sendToId){var foundConfig=dynamicConfigResults.find((function(config){return config.measurementId===sendToId})),initializationPromise=foundConfig&&initializationPromisesMap[foundConfig.appId];if(!initializationPromise)return initializationPromisesToWaitFor=[],"break";initializationPromisesToWaitFor.push(initializationPromise)},_i=0,gaSendToList_1=gaSendToList;_i<gaSendToList_1.length&&(sendToId=gaSendToList_1[_i],"break"!==_loop_1(sendToId));_i++);_a.label=2;case 2:return 0===initializationPromisesToWaitFor.length&&(initializationPromisesToWaitFor=Object.values(initializationPromisesMap)),[4,Promise.all(initializationPromisesToWaitFor)];case 3:return _a.sent(),gtagCore(GtagCommand.EVENT,measurementId,gtagParams||{}),[3,5];case 4:return e_2=_a.sent(),logger.error(e_2),[3,5];case 5:return[2]}}))}))}function wrapOrCreateGtag(initializationPromisesMap,dynamicConfigPromisesList,measurementIdToAppId,dataLayerName,gtagFunctionName){var gtagCore=function(){for(var _args=[],_i=0;_i<arguments.length;_i++)_args[_i]=arguments[_i];window[dataLayerName].push(arguments)};return window[gtagFunctionName]&&"function"==typeof window[gtagFunctionName]&&(gtagCore=window[gtagFunctionName]),window[gtagFunctionName]=function wrapGtag(gtagCore,initializationPromisesMap,dynamicConfigPromisesList,measurementIdToAppId){return function gtagWrapper(command,idOrNameOrParams,gtagParams){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var e_3;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return _a.trys.push([0,6,,7]),command!==GtagCommand.EVENT?[3,2]:[4,gtagOnEvent(gtagCore,initializationPromisesMap,dynamicConfigPromisesList,idOrNameOrParams,gtagParams)];case 1:return _a.sent(),[3,5];case 2:return command!==GtagCommand.CONFIG?[3,4]:[4,gtagOnConfig(gtagCore,initializationPromisesMap,dynamicConfigPromisesList,measurementIdToAppId,idOrNameOrParams,gtagParams)];case 3:return _a.sent(),[3,5];case 4:gtagCore(GtagCommand.SET,idOrNameOrParams),_a.label=5;case 5:return[3,7];case 6:return e_3=_a.sent(),logger.error(e_3),[3,7];case 7:return[2]}}))}))}}(gtagCore,initializationPromisesMap,dynamicConfigPromisesList,measurementIdToAppId),{gtagCore:gtagCore,wrappedGtag:window[gtagFunctionName]}}var ERRORS=((dist_index_esm_a={})["already-exists"]="A Firebase Analytics instance with the appId {$id} already exists. Only one Firebase Analytics instance can be created for each appId.",dist_index_esm_a["already-initialized"]="Firebase Analytics has already been initialized.settings() must be called before initializing any Analytics instanceor it will have no effect.",dist_index_esm_a["interop-component-reg-failed"]="Firebase Analytics Interop Component failed to instantiate: {$reason}",dist_index_esm_a["invalid-analytics-context"]="Firebase Analytics is not supported in this environment. Wrap initialization of analytics in analytics.isSupported() to prevent initialization in unsupported environments. Details: {$errorInfo}",dist_index_esm_a["indexeddb-unavailable"]="IndexedDB unavailable or restricted in this environment. Wrap initialization of analytics in analytics.isSupported() to prevent initialization in unsupported environments. Details: {$errorInfo}",dist_index_esm_a["fetch-throttle"]="The config fetch request timed out while in an exponential backoff state. Unix timestamp in milliseconds when fetch request throttling ends: {$throttleEndTimeMillis}.",dist_index_esm_a["config-fetch-failed"]="Dynamic config fetch failed: [{$httpStatus}] {$responseMessage}",dist_index_esm_a["no-api-key"]='The "apiKey" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid API key.',dist_index_esm_a["no-app-id"]='The "appId" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid app ID.',dist_index_esm_a),index_esm_ERROR_FACTORY=new util_dist_index_esm.b("analytics","Analytics",ERRORS),defaultRetryData=new(function(){function RetryData(throttleMetadata,intervalMillis){void 0===throttleMetadata&&(throttleMetadata={}),void 0===intervalMillis&&(intervalMillis=1e3),this.throttleMetadata=throttleMetadata,this.intervalMillis=intervalMillis}return RetryData.prototype.getThrottleMetadata=function(appId){return this.throttleMetadata[appId]},RetryData.prototype.setThrottleMetadata=function(appId,metadata){this.throttleMetadata[appId]=metadata},RetryData.prototype.deleteThrottleMetadata=function(appId){delete this.throttleMetadata[appId]},RetryData}());function index_esm_getHeaders(apiKey){return new Headers({Accept:"application/json","x-goog-api-key":apiKey})}function fetchDynamicConfig(appFields){var _a;return Object(tslib_es6.b)(this,void 0,void 0,(function(){var appId,apiKey,request,appUrl,response,errorMessage,jsonResponse;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:return appId=appFields.appId,apiKey=appFields.apiKey,request={method:"GET",headers:index_esm_getHeaders(apiKey)},appUrl="https://firebase.googleapis.com/v1alpha/projects/-/apps/{app-id}/webConfig".replace("{app-id}",appId),[4,fetch(appUrl,request)];case 1:if(200===(response=_b.sent()).status||304===response.status)return[3,6];errorMessage="",_b.label=2;case 2:return _b.trys.push([2,4,,5]),[4,response.json()];case 3:return jsonResponse=_b.sent(),(null===(_a=jsonResponse.error)||void 0===_a?void 0:_a.message)&&(errorMessage=jsonResponse.error.message),[3,5];case 4:return _b.sent(),[3,5];case 5:throw index_esm_ERROR_FACTORY.create("config-fetch-failed",{httpStatus:response.status,responseMessage:errorMessage});case 6:return[2,response.json()]}}))}))}function attemptFetchDynamicConfigWithRetry(appFields,_a,signal,retryData){var throttleEndTimeMillis=_a.throttleEndTimeMillis,backoffCount=_a.backoffCount;return void 0===retryData&&(retryData=defaultRetryData),Object(tslib_es6.b)(this,void 0,void 0,(function(){var appId,measurementId,e_1,response,e_2,backoffMillis,throttleMetadata;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:appId=appFields.appId,measurementId=appFields.measurementId,_b.label=1;case 1:return _b.trys.push([1,3,,4]),[4,setAbortableTimeout(signal,throttleEndTimeMillis)];case 2:return _b.sent(),[3,4];case 3:if(e_1=_b.sent(),measurementId)return logger.warn("Timed out fetching this Firebase app's measurement ID from the server. Falling back to the measurement ID "+measurementId+' provided in the "measurementId" field in the local Firebase config. ['+e_1.message+"]"),[2,{appId:appId,measurementId:measurementId}];throw e_1;case 4:return _b.trys.push([4,6,,7]),[4,fetchDynamicConfig(appFields)];case 5:return response=_b.sent(),retryData.deleteThrottleMetadata(appId),[2,response];case 6:if(!function isRetriableError(e){if(!(e instanceof util_dist_index_esm.c&&e.customData))return!1;var httpStatus=Number(e.customData.httpStatus);return 429===httpStatus||500===httpStatus||503===httpStatus||504===httpStatus}(e_2=_b.sent())){if(retryData.deleteThrottleMetadata(appId),measurementId)return logger.warn("Failed to fetch this Firebase app's measurement ID from the server. Falling back to the measurement ID "+measurementId+' provided in the "measurementId" field in the local Firebase config. ['+e_2.message+"]"),[2,{appId:appId,measurementId:measurementId}];throw e_2}return backoffMillis=503===Number(e_2.customData.httpStatus)?Object(util_dist_index_esm.e)(backoffCount,retryData.intervalMillis,30):Object(util_dist_index_esm.e)(backoffCount,retryData.intervalMillis),throttleMetadata={throttleEndTimeMillis:Date.now()+backoffMillis,backoffCount:backoffCount+1},retryData.setThrottleMetadata(appId,throttleMetadata),logger.debug("Calling attemptFetch again in "+backoffMillis+" millis"),[2,attemptFetchDynamicConfigWithRetry(appFields,throttleMetadata,signal,retryData)];case 7:return[2]}}))}))}function setAbortableTimeout(signal,throttleEndTimeMillis){return new Promise((function(resolve,reject){var backoffMillis=Math.max(throttleEndTimeMillis-Date.now(),0),timeout=setTimeout(resolve,backoffMillis);signal.addEventListener((function(){clearTimeout(timeout),reject(index_esm_ERROR_FACTORY.create("fetch-throttle",{throttleEndTimeMillis:throttleEndTimeMillis}))}))}))}var AnalyticsAbortSignal=function(){function AnalyticsAbortSignal(){this.listeners=[]}return AnalyticsAbortSignal.prototype.addEventListener=function(listener){this.listeners.push(listener)},AnalyticsAbortSignal.prototype.abort=function(){this.listeners.forEach((function(listener){return listener()}))},AnalyticsAbortSignal}();function initializeIds(app,dynamicConfigPromisesList,measurementIdToAppId,installations,gtagCore,dataLayerName){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var dynamicConfigPromise,fidPromise,_a,dynamicConfig,fid,configProperties,_b;return Object(tslib_es6.d)(this,(function(_c){switch(_c.label){case 0:return(dynamicConfigPromise=function fetchDynamicConfigWithRetry(app,retryData,timeoutMillis){return void 0===retryData&&(retryData=defaultRetryData),Object(tslib_es6.b)(this,void 0,void 0,(function(){var _a,appId,apiKey,measurementId,throttleMetadata,signal,_this=this;return Object(tslib_es6.d)(this,(function(_b){if(_a=app.options,appId=_a.appId,apiKey=_a.apiKey,measurementId=_a.measurementId,!appId)throw index_esm_ERROR_FACTORY.create("no-app-id");if(!apiKey){if(measurementId)return[2,{measurementId:measurementId,appId:appId}];throw index_esm_ERROR_FACTORY.create("no-api-key")}return throttleMetadata=retryData.getThrottleMetadata(appId)||{backoffCount:0,throttleEndTimeMillis:Date.now()},signal=new AnalyticsAbortSignal,setTimeout((function(){return Object(tslib_es6.b)(_this,void 0,void 0,(function(){return Object(tslib_es6.d)(this,(function(_a){return signal.abort(),[2]}))}))}),void 0!==timeoutMillis?timeoutMillis:6e4),[2,attemptFetchDynamicConfigWithRetry({appId:appId,apiKey:apiKey,measurementId:measurementId},throttleMetadata,signal,retryData)]}))}))}(app)).then((function(config){measurementIdToAppId[config.measurementId]=config.appId,app.options.measurementId&&config.measurementId!==app.options.measurementId&&logger.warn("The measurement ID in the local Firebase config ("+app.options.measurementId+") does not match the measurement ID fetched from the server ("+config.measurementId+"). To ensure analytics events are always sent to the correct Analytics property, update the measurement ID field in the local config or remove it from the local config.")})).catch((function(e){return logger.error(e)})),dynamicConfigPromisesList.push(dynamicConfigPromise),fidPromise=function validateIndexedDB(){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var e_1;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return Object(util_dist_index_esm.l)()?[3,1]:(logger.warn(index_esm_ERROR_FACTORY.create("indexeddb-unavailable",{errorInfo:"IndexedDB is not available in this environment."}).message),[2,!1]);case 1:return _a.trys.push([1,3,,4]),[4,Object(util_dist_index_esm.n)()];case 2:return _a.sent(),[3,4];case 3:return e_1=_a.sent(),logger.warn(index_esm_ERROR_FACTORY.create("indexeddb-unavailable",{errorInfo:e_1}).message),[2,!1];case 4:return[2,!0]}}))}))}().then((function(envIsValid){return envIsValid?installations.getId():void 0})),[4,Promise.all([dynamicConfigPromise,fidPromise])];case 1:return _a=_c.sent(),dynamicConfig=_a[0],fid=_a[1],function findGtagScriptOnPage(){for(var scriptTags=window.document.getElementsByTagName("script"),_i=0,_a=Object.values(scriptTags);_i<_a.length;_i++){var tag=_a[_i];if(tag.src&&tag.src.includes(GTAG_URL))return tag}return null}()||function insertScriptTag(dataLayerName,measurementId){var script=document.createElement("script");script.src=GTAG_URL+"?l="+dataLayerName+"&id="+measurementId,script.async=!0,document.head.appendChild(script)}(dataLayerName,dynamicConfig.measurementId),gtagCore("js",new Date),(_b={}).origin="firebase",_b.update=!0,configProperties=_b,null!=fid&&(configProperties.firebase_id=fid),gtagCore(GtagCommand.CONFIG,dynamicConfig.measurementId,configProperties),[2,dynamicConfig.measurementId]}}))}))}var gtagCoreFunction,wrappedGtagFunction,index_esm_initializationPromisesMap={},index_esm_dynamicConfigPromisesList=[],index_esm_measurementIdToAppId={},index_esm_dataLayerName="dataLayer",gtagName="gtag",globalInitDone=!1;function settings(options){if(globalInitDone)throw index_esm_ERROR_FACTORY.create("already-initialized");options.dataLayerName&&(index_esm_dataLayerName=options.dataLayerName),options.gtagName&&(gtagName=options.gtagName)}function factory(app,installations){!function warnOnBrowserContextMismatch(){var mismatchedEnvMessages=[];if(Object(util_dist_index_esm.k)()&&mismatchedEnvMessages.push("This is a browser extension environment."),Object(util_dist_index_esm.d)()||mismatchedEnvMessages.push("Cookies are not available."),mismatchedEnvMessages.length>0){var details=mismatchedEnvMessages.map((function(message,index){return"("+(index+1)+") "+message})).join(" "),err=index_esm_ERROR_FACTORY.create("invalid-analytics-context",{errorInfo:details});logger.warn(err.message)}}();var appId=app.options.appId;if(!appId)throw index_esm_ERROR_FACTORY.create("no-app-id");if(!app.options.apiKey){if(!app.options.measurementId)throw index_esm_ERROR_FACTORY.create("no-api-key");logger.warn('The "apiKey" field is empty in the local Firebase config. This is needed to fetch the latest measurement ID for this Firebase app. Falling back to the measurement ID '+app.options.measurementId+' provided in the "measurementId" field in the local Firebase config.')}if(null!=index_esm_initializationPromisesMap[appId])throw index_esm_ERROR_FACTORY.create("already-exists",{id:appId});if(!globalInitDone){!function getOrCreateDataLayer(dataLayerName){var dataLayer=[];return Array.isArray(window[dataLayerName])?dataLayer=window[dataLayerName]:window[dataLayerName]=dataLayer,dataLayer}(index_esm_dataLayerName);var _a=wrapOrCreateGtag(index_esm_initializationPromisesMap,index_esm_dynamicConfigPromisesList,index_esm_measurementIdToAppId,index_esm_dataLayerName,gtagName),wrappedGtag=_a.wrappedGtag,gtagCore=_a.gtagCore;wrappedGtagFunction=wrappedGtag,gtagCoreFunction=gtagCore,globalInitDone=!0}return index_esm_initializationPromisesMap[appId]=initializeIds(app,index_esm_dynamicConfigPromisesList,index_esm_measurementIdToAppId,installations,gtagCoreFunction,index_esm_dataLayerName),{app:app,logEvent:function(eventName,eventParams,options){(function logEvent(gtagFunction,initializationPromise,eventName,eventParams,options){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var measurementId,params;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return options&&options.global?(gtagFunction(GtagCommand.EVENT,eventName,eventParams),[2]):[3,1];case 1:return[4,initializationPromise];case 2:measurementId=_a.sent(),params=Object(tslib_es6.a)(Object(tslib_es6.a)({},eventParams),{send_to:measurementId}),gtagFunction(GtagCommand.EVENT,eventName,params),_a.label=3;case 3:return[2]}}))}))})(wrappedGtagFunction,index_esm_initializationPromisesMap[appId],eventName,eventParams,options).catch((function(e){return logger.error(e)}))},setCurrentScreen:function(screenName,options){(function setCurrentScreen(gtagFunction,initializationPromise,screenName,options){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var measurementId;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return options&&options.global?(gtagFunction(GtagCommand.SET,{screen_name:screenName}),[2,Promise.resolve()]):[3,1];case 1:return[4,initializationPromise];case 2:measurementId=_a.sent(),gtagFunction(GtagCommand.CONFIG,measurementId,{update:!0,screen_name:screenName}),_a.label=3;case 3:return[2]}}))}))})(wrappedGtagFunction,index_esm_initializationPromisesMap[appId],screenName,options).catch((function(e){return logger.error(e)}))},setUserId:function(id,options){(function setUserId(gtagFunction,initializationPromise,id,options){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var measurementId;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return options&&options.global?(gtagFunction(GtagCommand.SET,{user_id:id}),[2,Promise.resolve()]):[3,1];case 1:return[4,initializationPromise];case 2:measurementId=_a.sent(),gtagFunction(GtagCommand.CONFIG,measurementId,{update:!0,user_id:id}),_a.label=3;case 3:return[2]}}))}))})(wrappedGtagFunction,index_esm_initializationPromisesMap[appId],id,options).catch((function(e){return logger.error(e)}))},setUserProperties:function(properties,options){(function setUserProperties(gtagFunction,initializationPromise,properties,options){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var flatProperties,_i,_a,key,measurementId;return Object(tslib_es6.d)(this,(function(_b){switch(_b.label){case 0:if(!options||!options.global)return[3,1];for(flatProperties={},_i=0,_a=Object.keys(properties);_i<_a.length;_i++)key=_a[_i],flatProperties["user_properties."+key]=properties[key];return gtagFunction(GtagCommand.SET,flatProperties),[2,Promise.resolve()];case 1:return[4,initializationPromise];case 2:measurementId=_b.sent(),gtagFunction(GtagCommand.CONFIG,measurementId,{update:!0,user_properties:properties}),_b.label=3;case 3:return[2]}}))}))})(wrappedGtagFunction,index_esm_initializationPromisesMap[appId],properties,options).catch((function(e){return logger.error(e)}))},setAnalyticsCollectionEnabled:function(enabled){(function setAnalyticsCollectionEnabled(initializationPromise,enabled){return Object(tslib_es6.b)(this,void 0,void 0,(function(){var measurementId;return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:return[4,initializationPromise];case 1:return measurementId=_a.sent(),window["ga-disable-"+measurementId]=!enabled,[2]}}))}))})(index_esm_initializationPromisesMap[appId],enabled).catch((function(e){return logger.error(e)}))},INTERNAL:{delete:function(){return delete index_esm_initializationPromisesMap[appId],Promise.resolve()}}}}function isSupported(){return Object(tslib_es6.b)(this,void 0,void 0,(function(){return Object(tslib_es6.d)(this,(function(_a){switch(_a.label){case 0:if(Object(util_dist_index_esm.k)())return[2,!1];if(!Object(util_dist_index_esm.d)())return[2,!1];if(!Object(util_dist_index_esm.l)())return[2,!1];_a.label=1;case 1:return _a.trys.push([1,3,,4]),[4,Object(util_dist_index_esm.n)()];case 2:return[2,_a.sent()];case 3:return _a.sent(),[2,!1];case 4:return[2]}}))}))}!function registerAnalytics(instance){instance.INTERNAL.registerComponent(new dist_index_esm.a("analytics",(function(container){return factory(container.getProvider("app").getImmediate(),container.getProvider("installations").getImmediate())}),"PUBLIC").setServiceProps({settings:settings,EventName:EventName,isSupported:isSupported})),instance.INTERNAL.registerComponent(new dist_index_esm.a("analytics-internal",(function internalFactory(container){try{return{logEvent:container.getProvider("analytics").getImmediate().logEvent}}catch(e){throw index_esm_ERROR_FACTORY.create("interop-component-reg-failed",{reason:e})}}),"PRIVATE")),instance.registerVersion("@firebase/analytics","0.6.18")}(index_esm.a)}}]);