firebase 9.6.2-202205224240 → 9.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -25
- package/app/dist/index.cjs.js +1 -1
- package/app/dist/index.esm.js +1 -1
- package/app/dist/index.mjs +1 -1
- package/compat/app/dist/index.cjs.js +1 -1
- package/compat/app/dist/index.esm.js +1 -1
- package/compat/app/dist/index.mjs +1 -1
- package/compat/dist/index.esm.js +2 -2
- package/compat/dist/index.node.cjs +2 -2
- package/compat/dist/index.rn.cjs.js +2 -2
- package/firebase-analytics-compat.js +1 -1
- package/firebase-analytics-compat.js.map +1 -1
- package/firebase-analytics.js +5 -5
- package/firebase-app-check-compat.js +1 -1
- package/firebase-app-check-compat.js.map +1 -1
- package/firebase-app-check.js +5 -5
- package/firebase-app-compat.js +2 -2
- package/firebase-app-compat.js.map +1 -1
- package/firebase-app.js +9 -9
- package/firebase-auth-compat.js +1 -1
- package/firebase-auth-compat.js.map +1 -1
- package/firebase-auth.js +3 -3
- package/firebase-compat.js +4 -4
- package/firebase-compat.js.map +1 -1
- package/firebase-database-compat.js +1 -1
- package/firebase-database-compat.js.map +1 -1
- package/firebase-database.js +5 -5
- package/firebase-firestore-compat.js +1 -1
- package/firebase-firestore-compat.js.map +1 -1
- package/firebase-firestore-lite.js +7 -7
- package/firebase-firestore-lite.js.map +1 -1
- package/firebase-firestore.js +8 -8
- package/firebase-firestore.js.map +1 -1
- package/firebase-functions-compat.js +1 -1
- package/firebase-functions-compat.js.map +1 -1
- package/firebase-functions.js +3 -3
- package/firebase-messaging-compat.js +1 -1
- package/firebase-messaging-compat.js.map +1 -1
- package/firebase-messaging-sw.js +2 -2
- package/firebase-messaging.js +3 -3
- package/firebase-performance-compat.js +1 -1
- package/firebase-performance-compat.js.map +1 -1
- package/firebase-performance-standalone-compat.es2017.js +7 -7
- package/firebase-performance-standalone-compat.es2017.js.map +1 -1
- package/firebase-performance-standalone-compat.js +1 -1
- package/firebase-performance-standalone-compat.js.map +1 -1
- package/firebase-performance.js +5 -5
- package/firebase-remote-config-compat.js +1 -1
- package/firebase-remote-config-compat.js.map +1 -1
- package/firebase-remote-config.js +4 -4
- package/firebase-storage-compat.js +1 -1
- package/firebase-storage-compat.js.map +1 -1
- package/firebase-storage.js +2 -2
- package/package.json +25 -25
package/CHANGELOG.md
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
# firebase
|
|
2
2
|
|
|
3
|
-
## 9.6.2
|
|
3
|
+
## 9.6.2
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
7
|
- Updated dependencies [[`3b481f572`](https://github.com/firebase/firebase-js-sdk/commit/3b481f572456e1eab3435bfc25717770d95a8c49), [`e3a5248fc`](https://github.com/firebase/firebase-js-sdk/commit/e3a5248fc8536fe2ca6d97483aa7e1b3f737dd17), [`7f05d22e8`](https://github.com/firebase/firebase-js-sdk/commit/7f05d22e827f1fd0732ad33fda203a20566d3964)]:
|
|
8
|
-
- @firebase/firestore@3.4.2
|
|
9
|
-
- @firebase/storage@0.9.1
|
|
10
|
-
- @firebase/util@1.4.3
|
|
11
|
-
- @firebase/auth-compat@0.2.5
|
|
12
|
-
- @firebase/auth@0.19.5
|
|
13
|
-
- @firebase/firestore-compat@0.1.11
|
|
14
|
-
- @firebase/storage-compat@0.1.9
|
|
15
|
-
- @firebase/analytics@0.7.5
|
|
16
|
-
- @firebase/analytics-compat@0.1.6
|
|
17
|
-
- @firebase/app@0.7.12
|
|
18
|
-
- @firebase/app-check@0.5.3
|
|
19
|
-
- @firebase/app-check-compat@0.2.3
|
|
20
|
-
- @firebase/app-compat@0.1.13
|
|
21
|
-
- @firebase/database@0.12.5
|
|
22
|
-
- @firebase/database-compat@0.1.5
|
|
23
|
-
- @firebase/functions@0.7.7
|
|
24
|
-
- @firebase/functions-compat@0.1.8
|
|
25
|
-
- @firebase/installations@0.5.5
|
|
26
|
-
- @firebase/messaging@0.9.5
|
|
27
|
-
- @firebase/messaging-compat@0.1.5
|
|
28
|
-
- @firebase/performance@0.5.5
|
|
29
|
-
- @firebase/performance-compat@0.1.5
|
|
30
|
-
- @firebase/remote-config@0.3.4
|
|
31
|
-
- @firebase/remote-config-compat@0.1.5
|
|
8
|
+
- @firebase/firestore@3.4.2
|
|
9
|
+
- @firebase/storage@0.9.1
|
|
10
|
+
- @firebase/util@1.4.3
|
|
11
|
+
- @firebase/auth-compat@0.2.5
|
|
12
|
+
- @firebase/auth@0.19.5
|
|
13
|
+
- @firebase/firestore-compat@0.1.11
|
|
14
|
+
- @firebase/storage-compat@0.1.9
|
|
15
|
+
- @firebase/analytics@0.7.5
|
|
16
|
+
- @firebase/analytics-compat@0.1.6
|
|
17
|
+
- @firebase/app@0.7.12
|
|
18
|
+
- @firebase/app-check@0.5.3
|
|
19
|
+
- @firebase/app-check-compat@0.2.3
|
|
20
|
+
- @firebase/app-compat@0.1.13
|
|
21
|
+
- @firebase/database@0.12.5
|
|
22
|
+
- @firebase/database-compat@0.1.5
|
|
23
|
+
- @firebase/functions@0.7.7
|
|
24
|
+
- @firebase/functions-compat@0.1.8
|
|
25
|
+
- @firebase/installations@0.5.5
|
|
26
|
+
- @firebase/messaging@0.9.5
|
|
27
|
+
- @firebase/messaging-compat@0.1.5
|
|
28
|
+
- @firebase/performance@0.5.5
|
|
29
|
+
- @firebase/performance-compat@0.1.5
|
|
30
|
+
- @firebase/remote-config@0.3.4
|
|
31
|
+
- @firebase/remote-config-compat@0.1.5
|
|
32
32
|
|
|
33
33
|
## 9.6.1
|
|
34
34
|
|
package/app/dist/index.cjs.js
CHANGED
package/app/dist/index.esm.js
CHANGED
package/app/dist/index.mjs
CHANGED
|
@@ -7,7 +7,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
7
7
|
var firebase__default = /*#__PURE__*/_interopDefaultLegacy(firebase);
|
|
8
8
|
|
|
9
9
|
var name = "firebase";
|
|
10
|
-
var version = "9.6.2
|
|
10
|
+
var version = "9.6.2";
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* @license
|
package/compat/dist/index.esm.js
CHANGED
|
@@ -12,7 +12,7 @@ import '@firebase/performance-compat';
|
|
|
12
12
|
import '@firebase/remote-config-compat';
|
|
13
13
|
|
|
14
14
|
var name$1 = "firebase";
|
|
15
|
-
var version$1 = "9.6.2
|
|
15
|
+
var version$1 = "9.6.2";
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* @license
|
|
@@ -33,7 +33,7 @@ var version$1 = "9.6.2-202205224240";
|
|
|
33
33
|
firebase.registerVersion(name$1, version$1, 'app-compat');
|
|
34
34
|
|
|
35
35
|
var name = "firebase";
|
|
36
|
-
var version = "9.6.2
|
|
36
|
+
var version = "9.6.2";
|
|
37
37
|
|
|
38
38
|
/**
|
|
39
39
|
* @license
|
|
@@ -12,7 +12,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
12
12
|
var firebase__default = /*#__PURE__*/_interopDefaultLegacy(firebase);
|
|
13
13
|
|
|
14
14
|
var name$1 = "firebase";
|
|
15
|
-
var version$1 = "9.6.2
|
|
15
|
+
var version$1 = "9.6.2";
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* @license
|
|
@@ -33,7 +33,7 @@ var version$1 = "9.6.2-202205224240";
|
|
|
33
33
|
firebase__default["default"].registerVersion(name$1, version$1, 'app-compat');
|
|
34
34
|
|
|
35
35
|
var name = "firebase";
|
|
36
|
-
var version = "9.6.2
|
|
36
|
+
var version = "9.6.2";
|
|
37
37
|
|
|
38
38
|
/**
|
|
39
39
|
* @license
|
|
@@ -10,7 +10,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
10
10
|
var firebase__default = /*#__PURE__*/_interopDefaultLegacy(firebase);
|
|
11
11
|
|
|
12
12
|
var name$1 = "firebase";
|
|
13
|
-
var version$1 = "9.6.2
|
|
13
|
+
var version$1 = "9.6.2";
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @license
|
|
@@ -31,7 +31,7 @@ var version$1 = "9.6.2-202205224240";
|
|
|
31
31
|
firebase__default["default"].registerVersion(name$1, version$1, 'app-compat');
|
|
32
32
|
|
|
33
33
|
var name = "firebase";
|
|
34
|
-
var version = "9.6.2
|
|
34
|
+
var version = "9.6.2";
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* @license
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(require("@firebase/app-compat"),require("@firebase/app")):"function"==typeof define&&define.amd?define(["@firebase/app-compat","@firebase/app"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).firebase,e.firebase.INTERNAL.modularAPIs)}(this,function(ct,ut){"use strict";try{!(function(){function e(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t,n=e(ct);(at=t=t||{})[at.DEBUG=0]="DEBUG",at[at.VERBOSE=1]="VERBOSE",at[at.INFO=2]="INFO",at[at.WARN=3]="WARN",at[at.ERROR=4]="ERROR",at[at.SILENT=5]="SILENT";const r={debug:t.DEBUG,verbose:t.VERBOSE,info:t.INFO,warn:t.WARN,error:t.ERROR,silent:t.SILENT},a=t.INFO,i={[t.DEBUG]:"log",[t.VERBOSE]:"log",[t.INFO]:"info",[t.WARN]:"warn",[t.ERROR]:"error"},o=(e,t,...n)=>{if(!(t<e.logLevel)){var r=(new Date).toISOString(),a=i[t];if(!a)throw new Error(`Attempted to log a message with an invalid logType (value: ${t})`);console[a](`[${r}] ${e.name}:`,...n)}};function s(){var e="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof e&&void 0!==e.id}function p(){return"object"==typeof indexedDB}function f(){return new Promise((t,n)=>{try{let e=!0;const r="validate-browser-context-for-indexeddb-analytics-module",a=self.indexedDB.open(r);a.onsuccess=()=>{a.result.close(),e||self.indexedDB.deleteDatabase(r),t(!0)},a.onupgradeneeded=()=>{e=!1},a.onerror=()=>{var e;n((null===(e=a.error)||void 0===e?void 0:e.message)||"")}}catch(e){n(e)}})}function c(){return!("undefined"==typeof navigator||!navigator.cookieEnabled)}class u extends Error{constructor(e,t,n){super(t),this.code=e,this.customData=n,this.name="FirebaseError",Object.setPrototypeOf(this,u.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,l.prototype.create)}}class l{constructor(e,t,n){this.service=e,this.serviceName=t,this.errors=n}create(e,...t){var r,n=t[0]||{},a=`${this.service}/${e}`,i=this.errors[e],i=i?(r=n,i.replace(d,(e,t)=>{var n=r[t];return null!=n?String(n):`<${t}?>`})):"Error",i=`${this.serviceName}: ${i} (${a}).`;return new u(a,i,n)}}const d=/\{\$([^}]+)}/g,h=1e3,g=2,m=144e5,w=.5;function y(e,t=h,n=g){var r=t*Math.pow(n,e),a=Math.round(w*r*(Math.random()-.5)*2);return Math.min(m,r+a)}function v(e){return e&&e._delegate?e._delegate:e}class I{constructor(e,t,n){this.name=e,this.instanceFactory=t,this.type=n,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}}function _(n){return new Promise(function(e,t){n.onsuccess=function(){e(n.result)},n.onerror=function(){t(n.error)}})}function b(n,r,a){var i,e=new Promise(function(e,t){_(i=n[r].apply(n,a)).then(e,t)});return e.request=i,e}function E(e,n,t){t.forEach(function(t){Object.defineProperty(e.prototype,t,{get:function(){return this[n][t]},set:function(e){this[n][t]=e}})})}function T(t,n,r,e){e.forEach(function(e){e in r.prototype&&(t.prototype[e]=function(){return b(this[n],e,arguments)})})}function S(t,n,r,e){e.forEach(function(e){e in r.prototype&&(t.prototype[e]=function(){return this[n][e].apply(this[n],arguments)})})}function C(e,r,t,n){n.forEach(function(n){n in t.prototype&&(e.prototype[n]=function(){return e=this[r],(t=b(e,n,arguments)).then(function(e){if(e)return new P(e,t.request)});var e,t})})}function O(e){this._index=e}function P(e,t){this._cursor=e,this._request=t}function D(e){this._store=e}function A(n){this._tx=n,this.complete=new Promise(function(e,t){n.oncomplete=function(){e()},n.onerror=function(){t(n.error)},n.onabort=function(){t(n.error)}})}function N(e,t,n){this._db=e,this.oldVersion=t,this.transaction=new A(n)}function j(e){this._db=e}E(O,"_index",["name","keyPath","multiEntry","unique"]),T(O,"_index",IDBIndex,["get","getKey","getAll","getAllKeys","count"]),C(O,"_index",IDBIndex,["openCursor","openKeyCursor"]),E(P,"_cursor",["direction","key","primaryKey","value"]),T(P,"_cursor",IDBCursor,["update","delete"]),["advance","continue","continuePrimaryKey"].forEach(function(n){n in IDBCursor.prototype&&(P.prototype[n]=function(){var t=this,e=arguments;return Promise.resolve().then(function(){return t._cursor[n].apply(t._cursor,e),_(t._request).then(function(e){if(e)return new P(e,t._request)})})})}),D.prototype.createIndex=function(){return new O(this._store.createIndex.apply(this._store,arguments))},D.prototype.index=function(){return new O(this._store.index.apply(this._store,arguments))},E(D,"_store",["name","keyPath","indexNames","autoIncrement"]),T(D,"_store",IDBObjectStore,["put","add","delete","clear","get","getAll","getKey","getAllKeys","count"]),C(D,"_store",IDBObjectStore,["openCursor","openKeyCursor"]),S(D,"_store",IDBObjectStore,["deleteIndex"]),A.prototype.objectStore=function(){return new D(this._tx.objectStore.apply(this._tx,arguments))},E(A,"_tx",["objectStoreNames","mode"]),S(A,"_tx",IDBTransaction,["abort"]),N.prototype.createObjectStore=function(){return new D(this._db.createObjectStore.apply(this._db,arguments))},E(N,"_db",["name","version","objectStoreNames"]),S(N,"_db",IDBDatabase,["deleteObjectStore","close"]),j.prototype.transaction=function(){return new A(this._db.transaction.apply(this._db,arguments))},E(j,"_db",["name","version","objectStoreNames"]),S(j,"_db",IDBDatabase,["close"]),["openCursor","openKeyCursor"].forEach(function(i){[D,O].forEach(function(e){i in e.prototype&&(e.prototype[i.replace("open","iterate")]=function(){var e,t=(e=arguments,Array.prototype.slice.call(e)),n=t[t.length-1],r=this._store||this._index,a=r[i].apply(r,t.slice(0,-1));a.onsuccess=function(){n(a.result)}})})}),[O,D].forEach(function(e){e.prototype.getAll||(e.prototype.getAll=function(e,n){var r=this,a=[];return new Promise(function(t){r.iterateCursor(e,function(e){e?(a.push(e.value),void 0===n||a.length!=n?e.continue():t(a)):t(a)})})})});var k="@firebase/installations",L="0.5.5-202205224240";const R=1e4,x=`w:${L}`,$="FIS_v2",M="https://firebaseinstallations.googleapis.com/v1",F=36e5;const H=new l("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 B(e){return e instanceof u&&e.code.includes("request-failed")}function q({projectId:e}){return`${M}/projects/${e}/installations`}function V(e){return{token:e.token,requestStatus:2,expiresIn:(e=e.expiresIn,Number(e.replace("s","000"))),creationTime:Date.now()}}async function K(e,t){var n=(await t.json()).error;return H.create("request-failed",{requestName:e,serverCode:n.code,serverMessage:n.message,serverStatus:n.status})}function U({apiKey:e}){return new Headers({"Content-Type":"application/json",Accept:"application/json","x-goog-api-key":e})}function G(e,{refreshToken:t}){const n=U(e);return n.append("Authorization",(t=t,`${$} ${t}`)),n}async function W(e){var t=await e();return 500<=t.status&&t.status<600?e():t}function z(t){return new Promise(e=>{setTimeout(e,t)})}const J=/^[cdef][\w-]{21}$/,Y="";function X(){try{const t=new Uint8Array(17),n=self.crypto||self.msCrypto;n.getRandomValues(t),t[0]=112+t[0]%16;var e=function(e){const t=function(e){const t=btoa(String.fromCharCode(...e));return t.replace(/\+/g,"-").replace(/\//g,"_")}(e);return t.substr(0,22)}(t);return J.test(e)?e:Y}catch(e){return Y}}function Z(e){return`${e.appName}!${e.appId}`}const Q=new Map;function ee(e,t){var n=Z(e);te(n,t),function(e,t){const n=function(){!ne&&"BroadcastChannel"in self&&(ne=new BroadcastChannel("[Firebase] FID Change"),ne.onmessage=e=>{te(e.data.key,e.data.fid)});return ne}();n&&n.postMessage({key:e,fid:t});0===Q.size&&ne&&(ne.close(),ne=null)}(n,t)}function te(e,t){var n=Q.get(e);if(n)for(const r of n)r(t)}let ne=null;const re="firebase-installations-store";let ae=null;function ie(){var t,e,n;return ae=ae||(t=e=>{0===e.oldVersion&&e.createObjectStore(re)},e=b(indexedDB,"open",["firebase-installations-database",1]),(n=e.request)&&(n.onupgradeneeded=function(e){t&&t(new N(n.result,e.oldVersion,n.transaction))}),e.then(function(e){return new j(e)})),ae}async function oe(e,t){var n=Z(e);const r=await ie(),a=r.transaction(re,"readwrite"),i=a.objectStore(re);var o=await i.get(n);return await i.put(t,n),await a.complete,o&&o.fid===t.fid||ee(e,t.fid),t}async function se(e){var t=Z(e);const n=await ie(),r=n.transaction(re,"readwrite");await r.objectStore(re).delete(t),await r.complete}async function ce(e,t){var n=Z(e);const r=await ie(),a=r.transaction(re,"readwrite"),i=a.objectStore(re);var o=await i.get(n),s=t(o);return void 0===s?await i.delete(n):await i.put(s,n),await a.complete,!s||o&&o.fid===s.fid||ee(e,s.fid),s}async function ue(n){let r;var e=await ce(n,e=>{var t=de(e||{fid:X(),registrationStatus:0}),t=function(e,t){{if(0!==t.registrationStatus)return 1===t.registrationStatus?{installationEntry:t,registrationPromise:async function(e){let t=await le(e);for(;1===t.registrationStatus;)await z(100),t=await le(e);if(0!==t.registrationStatus)return t;{var{installationEntry:n,registrationPromise:r}=await ue(e);return r||n}}(e)}:{installationEntry:t};if(!navigator.onLine){var n=Promise.reject(H.create("app-offline"));return{installationEntry:t,registrationPromise:n}}var r={fid:t.fid,registrationStatus:1,registrationTime:Date.now()},n=async function(t,n){try{var e=await async function(e,{fid:t}){const n=q(e);var r=U(e),a={fid:t,authVersion:$,appId:e.appId,sdkVersion:x};const i={method:"POST",headers:r,body:JSON.stringify(a)},o=await W(()=>fetch(n,i));if(o.ok){a=await o.json();return{fid:a.fid||t,registrationStatus:2,refreshToken:a.refreshToken,authToken:V(a.authToken)}}throw await K("Create Installation",o)}(t,n);return oe(t,e)}catch(e){throw B(e)&&409===e.customData.serverCode?await se(t):await oe(t,{fid:n.fid,registrationStatus:0}),e}}(e,r);return{installationEntry:r,registrationPromise:n}}}(n,t);return r=t.registrationPromise,t.installationEntry});return e.fid===Y?{installationEntry:await r}:{installationEntry:e,registrationPromise:r}}function le(e){return ce(e,e=>{if(!e)throw H.create("installation-not-found");return de(e)})}function de(e){return 1===(t=e).registrationStatus&&t.registrationTime+R<Date.now()?{fid:e.fid,registrationStatus:0}:e;var t}async function pe({appConfig:e,platformLoggerProvider:t},n){const r=([a,i]=[e,n["fid"]],`${q(a)}/${i}/authTokens:generate`);var a,i;const o=G(e,n),s=t.getImmediate({optional:!0});s&&o.append("x-firebase-client",s.getPlatformInfoString());var c={installation:{sdkVersion:x}};const u={method:"POST",headers:o,body:JSON.stringify(c)},l=await W(()=>fetch(r,u));if(l.ok)return V(await l.json());throw await K("Generate Auth Token",l)}async function fe(r,a=!1){let i;var e=await ce(r.appConfig,e=>{if(!ge(e))throw H.create("not-registered");var t,n=e.authToken;if(a||2!==(t=n).requestStatus||function(e){var t=Date.now();return t<e.creationTime||e.creationTime+e.expiresIn<t+F}(t)){if(1===n.requestStatus)return i=async function(e,t){let n=await he(e.appConfig);for(;1===n.authToken.requestStatus;)await z(100),n=await he(e.appConfig);var r=n.authToken;return 0===r.requestStatus?fe(e,t):r}(r,a),e;if(!navigator.onLine)throw H.create("app-offline");n=(t=e,n={requestStatus:1,requestTime:Date.now()},Object.assign(Object.assign({},t),{authToken:n}));return i=async function(t,n){try{var r=await pe(t,n),e=Object.assign(Object.assign({},n),{authToken:r});return await oe(t.appConfig,e),r}catch(e){throw!B(e)||401!==e.customData.serverCode&&404!==e.customData.serverCode?(r=Object.assign(Object.assign({},n),{authToken:{requestStatus:0}}),await oe(t.appConfig,r)):await se(t.appConfig),e}}(r,n),n}return e});return i?await i:e.authToken}function he(e){return ce(e,e=>{if(!ge(e))throw H.create("not-registered");var t,n=e.authToken;return 1===(t=n).requestStatus&&t.requestTime+R<Date.now()?Object.assign(Object.assign({},e),{authToken:{requestStatus:0}}):e})}function ge(e){return void 0!==e&&2===e.registrationStatus}async function me(e,t=!1){var n,r=e;return e=r.appConfig,await((n=(await ue(e)).registrationPromise)&&await n),(await fe(r,t)).token}function we(e){return H.create("missing-app-config-values",{valueName:e})}const ye="installations",ve=e=>{var t=e.getProvider("app").getImmediate();return{app:t,appConfig:function(e){if(!e||!e.options)throw we("App Configuration");if(!e.name)throw we("App Name");for(const t of["projectId","apiKey","appId"])if(!e.options[t])throw we(t);return{appName:e.name,projectId:e.options.projectId,apiKey:e.options.apiKey,appId:e.options.appId}}(t),platformLoggerProvider:ut._getProvider(t,"platform-logger"),_delete:()=>Promise.resolve()}},Ie=e=>{var t=e.getProvider("app").getImmediate();const n=ut._getProvider(t,ye).getImmediate();return{getId:()=>async function(e){var t=e;const{installationEntry:n,registrationPromise:r}=await ue(t.appConfig);return(r||fe(t)).catch(console.error),n.fid}(n),getToken:e=>me(n,e)}};ut._registerComponent(new I(ye,ve,"PUBLIC")),ut._registerComponent(new I("installations-internal",Ie,"PRIVATE")),ut.registerVersion(k,L),ut.registerVersion(k,L,"esm2017");const _e="analytics",be="firebase_id",Ee="origin",Te="https://firebase.googleapis.com/v1alpha/projects/-/apps/{app-id}/webConfig",Se="https://www.googletagmanager.com/gtag/js",Ce=new class{constructor(e){this.name=e,this._logLevel=a,this._logHandler=o,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in t))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel="string"==typeof e?r[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if("function"!=typeof e)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,t.DEBUG,...e),this._logHandler(this,t.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,t.VERBOSE,...e),this._logHandler(this,t.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,t.INFO,...e),this._logHandler(this,t.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,t.WARN,...e),this._logHandler(this,t.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,t.ERROR,...e),this._logHandler(this,t.ERROR,...e)}}("@firebase/analytics");function Oe(e){return Promise.all(e.map(e=>e.catch(e=>e)))}function Pe(r,a,i,o){return async function(e,t,n){try{"event"===e?await async function(e,n,r,a,i){try{let t=[];if(i&&i.send_to){let e=i.send_to;Array.isArray(e)||(e=[e]);const c=await Oe(r);for(const u of e){var o=c.find(e=>e.measurementId===u),s=o&&n[o.appId];if(!s){t=[];break}t.push(s)}}0===t.length&&(t=Object.values(n)),await Promise.all(t),e("event",a,i||{})}catch(e){Ce.error(e)}}(r,a,i,t,n):"config"===e?await async function(e,t,n,r,a,i){var o=r[a];try{if(o)await t[o];else{const c=await Oe(n);var s=c.find(e=>e.measurementId===a);s&&await t[s.appId]}}catch(e){Ce.error(e)}e("config",a,i)}(r,a,i,o,t,n):r("set",t)}catch(e){Ce.error(e)}}}const De=new l("analytics","Analytics",{"already-exists":"A Firebase Analytics instance with the appId {$id} already exists. Only one Firebase Analytics instance can be created for each appId.","already-initialized":"initializeAnalytics() cannot be called again with different options than those it was initially called with. It can be called again with the same options to return the existing instance, or getAnalytics() can be used to get a reference to the already-intialized instance.","already-initialized-settings":"Firebase Analytics has already been initialized.settings() must be called before initializing any Analytics instanceor it will have no effect.","interop-component-reg-failed":"Firebase Analytics Interop Component failed to instantiate: {$reason}","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}","indexeddb-unavailable":"IndexedDB unavailable or restricted in this environment. Wrap initialization of analytics in analytics.isSupported() to prevent initialization in unsupported environments. Details: {$errorInfo}","fetch-throttle":"The config fetch request timed out while in an exponential backoff state. Unix timestamp in milliseconds when fetch request throttling ends: {$throttleEndTimeMillis}.","config-fetch-failed":"Dynamic config fetch failed: [{$httpStatus}] {$responseMessage}","no-api-key":'The "apiKey" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid API key.',"no-app-id":'The "appId" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid app ID.'}),Ae=30;const Ne=new class{constructor(e={},t=1e3){this.throttleMetadata=e,this.intervalMillis=t}getThrottleMetadata(e){return this.throttleMetadata[e]}setThrottleMetadata(e,t){this.throttleMetadata[e]=t}deleteThrottleMetadata(e){delete this.throttleMetadata[e]}};async function je(e){var t,{appId:n,apiKey:r}=e,r={method:"GET",headers:new Headers({Accept:"application/json","x-goog-api-key":r})},n=Te.replace("{app-id}",n);const a=await fetch(n,r);if(200===a.status||304===a.status)return a.json();{let e="";try{var i=await a.json();null!==(t=i.error)&&void 0!==t&&t.message&&(e=i.error.message)}catch(e){}throw De.create("config-fetch-failed",{httpStatus:a.status,responseMessage:e})}}async function ke(e,t=Ne,n){var{appId:r,apiKey:a,measurementId:i}=e.options;if(!r)throw De.create("no-app-id");if(!a){if(i)return{measurementId:i,appId:r};throw De.create("no-api-key")}var o=t.getThrottleMetadata(r)||{backoffCount:0,throttleEndTimeMillis:Date.now()};const s=new xe;return setTimeout(async()=>{s.abort()},void 0!==n?n:6e4),async function t(n,{throttleEndTimeMillis:e,backoffCount:r},a,i=Ne){const{appId:o,measurementId:s}=n;try{await Le(a,e)}catch(e){if(s)return Ce.warn("Timed out fetching this Firebase app's measurement ID from the server."+` Falling back to the measurement ID ${s}`+` provided in the "measurementId" field in the local Firebase config. [${e.message}]`),{appId:o,measurementId:s};throw e}try{const c=await je(n);return i.deleteThrottleMetadata(o),c}catch(e){if(!Re(e)){if(i.deleteThrottleMetadata(o),s)return Ce.warn("Failed to fetch this Firebase app's measurement ID from the server."+` Falling back to the measurement ID ${s}`+` provided in the "measurementId" field in the local Firebase config. [${e.message}]`),{appId:o,measurementId:s};throw e}const u=503===Number(e.customData.httpStatus)?y(r,i.intervalMillis,Ae):y(r,i.intervalMillis),l={throttleEndTimeMillis:Date.now()+u,backoffCount:r+1};return i.setThrottleMetadata(o,l),Ce.debug(`Calling attemptFetch again in ${u} millis`),t(n,l,a,i)}}({appId:r,apiKey:a,measurementId:i},o,s,t)}function Le(a,i){return new Promise((e,t)=>{var n=Math.max(i-Date.now(),0);const r=setTimeout(e,n);a.addEventListener(()=>{clearTimeout(r),t(De.create("fetch-throttle",{throttleEndTimeMillis:i}))})})}function Re(e){if(!(e instanceof u&&e.customData))return!1;var t=Number(e.customData.httpStatus);return 429===t||500===t||503===t||504===t}class xe{constructor(){this.listeners=[]}addEventListener(e){this.listeners.push(e)}abort(){this.listeners.forEach(e=>e())}}async function $e(t,e,n,r,a,i,o){const s=ke(t);s.then(e=>{n[e.measurementId]=e.appId,t.options.measurementId&&e.measurementId!==t.options.measurementId&&Ce.warn(`The measurement ID in the local Firebase config (${t.options.measurementId})`+` does not match the measurement ID fetched from the server (${e.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(e=>Ce.error(e)),e.push(s);var c=async function(){if(!p())return Ce.warn(De.create("indexeddb-unavailable",{errorInfo:"IndexedDB is not available in this environment."}).message),!1;try{await f()}catch(e){return Ce.warn(De.create("indexeddb-unavailable",{errorInfo:e}).message),!1}return!0}().then(e=>{if(e)return r.getId()}),[u,l]=await Promise.all([s,c]);!function(){var e=window.document.getElementsByTagName("script");for(const t of Object.values(e))if(t.src&&t.src.includes(Se))return t}()&&function(e,t){const n=document.createElement("script");n.src=`${Se}?l=${e}&id=${t}`,n.async=!0,document.head.appendChild(n)}(i,u.measurementId),a("js",new Date);const d=null!==(c=null==o?void 0:o.config)&&void 0!==c?c:{};return d[Ee]="firebase",d.update=!0,null!=l&&(d[be]=l),a("config",u.measurementId,d),u.measurementId}class Me{constructor(e){this.app=e}_delete(){return delete Fe[this.app.options.appId],Promise.resolve()}}let Fe={},He=[];const Be={};let qe="dataLayer",Ve="gtag",Ke,Ue,Ge=!1;function We(e){if(Ge)throw De.create("already-initialized");e.dataLayerName&&(qe=e.dataLayerName),e.gtagName&&(Ve=e.gtagName)}function ze(e,t,n){!function(){const e=[];var t;s()&&e.push("This is a browser extension environment."),c()||e.push("Cookies are not available."),0<e.length&&(t=e.map((e,t)=>`(${t+1}) ${e}`).join(" "),t=De.create("invalid-analytics-context",{errorInfo:t}),Ce.warn(t.message))}();var r,a,i=e.options.appId;if(!i)throw De.create("no-app-id");if(!e.options.apiKey){if(!e.options.measurementId)throw De.create("no-api-key");Ce.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 ${e.options.measurementId}`+' provided in the "measurementId" field in the local Firebase config.')}if(null!=Fe[i])throw De.create("already-exists",{id:i});return Ge||(function(e){let t=[];Array.isArray(window[e])?t=window[e]:window[e]=t,t}(qe),{wrappedGtag:r,gtagCore:a}=function(e,t,n,r,a){let i=function(){window[r].push(arguments)};return window[a]&&"function"==typeof window[a]&&(i=window[a]),window[a]=Pe(i,e,t,n),{gtagCore:i,wrappedGtag:window[a]}}(Fe,He,Be,qe,Ve),Ue=r,Ke=a,Ge=!0),Fe[i]=$e(e,He,Be,t,Ke,qe,n),new Me(e)}async function Je(){if(s())return!1;if(!c())return!1;if(!p())return!1;try{return await f()}catch(e){return!1}}function Ye(e,t,n){e=v(e),async function(e,t,n,r){if(r&&r.global)return e("set",{screen_name:n}),Promise.resolve();e("config",await t,{update:!0,screen_name:n})}(Ue,Fe[e.app.options.appId],t,n).catch(e=>Ce.error(e))}function Xe(e,t,n){e=v(e),async function(e,t,n,r){if(r&&r.global)return e("set",{user_id:n}),Promise.resolve();e("config",await t,{update:!0,user_id:n})}(Ue,Fe[e.app.options.appId],t,n).catch(e=>Ce.error(e))}function Ze(e,t,n){e=v(e),async function(e,t,n,r){if(r&&r.global){const a={};for(const i of Object.keys(n))a[`user_properties.${i}`]=n[i];return e("set",a),Promise.resolve()}e("config",await t,{update:!0,user_properties:n})}(Ue,Fe[e.app.options.appId],t,n).catch(e=>Ce.error(e))}function Qe(e,t){e=v(e),async function(e,t){var n=await e;window[`ga-disable-${n}`]=!t}(Fe[e.app.options.appId],t).catch(e=>Ce.error(e))}function et(e,t,n,r){e=v(e),async function(e,t,n,r,a){var i;a&&a.global?e("event",n,r):(i=await t,e("event",n,Object.assign(Object.assign({},r),{send_to:i})))}(Ue,Fe[e.app.options.appId],t,n,r).catch(e=>Ce.error(e))}const tt="@firebase/analytics",nt="0.7.5-202205224240";ut._registerComponent(new I(_e,(e,{options:t})=>{return ze(e.getProvider("app").getImmediate(),e.getProvider("installations-internal").getImmediate(),t)},"PUBLIC")),ut._registerComponent(new I("analytics-internal",function(e){try{const r=e.getProvider(_e).getImmediate();return{logEvent:(e,t,n)=>et(r,e,t,n)}}catch(e){throw De.create("interop-component-reg-failed",{reason:e})}},"PRIVATE")),ut.registerVersion(tt,nt),ut.registerVersion(tt,nt,"esm2017");var rt,at,it;class ot{constructor(e,t){this.app=e,this._delegate=t}logEvent(e,t,n){et(this._delegate,e,t,n)}setCurrentScreen(e,t){Ye(this._delegate,e,t)}setUserId(e,t){Xe(this._delegate,e,t)}setUserProperties(e,t){Ze(this._delegate,e,t)}setAnalyticsCollectionEnabled(e){Qe(this._delegate,e)}}(at=rt=rt||{}).ADD_SHIPPING_INFO="add_shipping_info",at.ADD_PAYMENT_INFO="add_payment_info",at.ADD_TO_CART="add_to_cart",at.ADD_TO_WISHLIST="add_to_wishlist",at.BEGIN_CHECKOUT="begin_checkout",at.CHECKOUT_PROGRESS="checkout_progress",at.EXCEPTION="exception",at.GENERATE_LEAD="generate_lead",at.LOGIN="login",at.PAGE_VIEW="page_view",at.PURCHASE="purchase",at.REFUND="refund",at.REMOVE_FROM_CART="remove_from_cart",at.SCREEN_VIEW="screen_view",at.SEARCH="search",at.SELECT_CONTENT="select_content",at.SELECT_ITEM="select_item",at.SELECT_PROMOTION="select_promotion",at.SET_CHECKOUT_OPTION="set_checkout_option",at.SHARE="share",at.SIGN_UP="sign_up",at.TIMING_COMPLETE="timing_complete",at.VIEW_CART="view_cart",at.VIEW_ITEM="view_item",at.VIEW_ITEM_LIST="view_item_list",at.VIEW_PROMOTION="view_promotion",at.VIEW_SEARCH_RESULTS="view_search_results";const st=e=>{var t=e.getProvider("app-compat").getImmediate(),n=e.getProvider("analytics").getImmediate();return new ot(t,n)};it={Analytics:ot,settings:We,isSupported:Je,EventName:rt},n.default.INTERNAL.registerComponent(new I("analytics-compat",st,"PUBLIC").setServiceProps(it).setMultipleInstances(!0)),n.default.registerVersion("@firebase/analytics-compat","0.1.6-202205224240")}).apply(this,arguments)}catch(e){throw console.error(e),new Error("Cannot instantiate firebase-analytics-compat.js - be sure to load firebase-app.js first.")}});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(require("@firebase/app-compat"),require("@firebase/app")):"function"==typeof define&&define.amd?define(["@firebase/app-compat","@firebase/app"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).firebase,e.firebase.INTERNAL.modularAPIs)}(this,function(st,ct){"use strict";try{!(function(){function e(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t,n=e(st);(rt=t=t||{})[rt.DEBUG=0]="DEBUG",rt[rt.VERBOSE=1]="VERBOSE",rt[rt.INFO=2]="INFO",rt[rt.WARN=3]="WARN",rt[rt.ERROR=4]="ERROR",rt[rt.SILENT=5]="SILENT";const r={debug:t.DEBUG,verbose:t.VERBOSE,info:t.INFO,warn:t.WARN,error:t.ERROR,silent:t.SILENT},a=t.INFO,i={[t.DEBUG]:"log",[t.VERBOSE]:"log",[t.INFO]:"info",[t.WARN]:"warn",[t.ERROR]:"error"},o=(e,t,...n)=>{if(!(t<e.logLevel)){var r=(new Date).toISOString(),a=i[t];if(!a)throw new Error(`Attempted to log a message with an invalid logType (value: ${t})`);console[a](`[${r}] ${e.name}:`,...n)}};function s(){var e="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof e&&void 0!==e.id}function p(){return"object"==typeof indexedDB}function f(){return new Promise((t,n)=>{try{let e=!0;const r="validate-browser-context-for-indexeddb-analytics-module",a=self.indexedDB.open(r);a.onsuccess=()=>{a.result.close(),e||self.indexedDB.deleteDatabase(r),t(!0)},a.onupgradeneeded=()=>{e=!1},a.onerror=()=>{var e;n((null===(e=a.error)||void 0===e?void 0:e.message)||"")}}catch(e){n(e)}})}function c(){return!("undefined"==typeof navigator||!navigator.cookieEnabled)}class u extends Error{constructor(e,t,n){super(t),this.code=e,this.customData=n,this.name="FirebaseError",Object.setPrototypeOf(this,u.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,l.prototype.create)}}class l{constructor(e,t,n){this.service=e,this.serviceName=t,this.errors=n}create(e,...t){var r,n=t[0]||{},a=`${this.service}/${e}`,i=this.errors[e],i=i?(r=n,i.replace(d,(e,t)=>{var n=r[t];return null!=n?String(n):`<${t}?>`})):"Error",i=`${this.serviceName}: ${i} (${a}).`;return new u(a,i,n)}}const d=/\{\$([^}]+)}/g,h=1e3,g=2,m=144e5,w=.5;function y(e,t=h,n=g){var r=t*Math.pow(n,e),a=Math.round(w*r*(Math.random()-.5)*2);return Math.min(m,r+a)}function v(e){return e&&e._delegate?e._delegate:e}class I{constructor(e,t,n){this.name=e,this.instanceFactory=t,this.type=n,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}}function _(n){return new Promise(function(e,t){n.onsuccess=function(){e(n.result)},n.onerror=function(){t(n.error)}})}function b(n,r,a){var i,e=new Promise(function(e,t){_(i=n[r].apply(n,a)).then(e,t)});return e.request=i,e}function E(e,n,t){t.forEach(function(t){Object.defineProperty(e.prototype,t,{get:function(){return this[n][t]},set:function(e){this[n][t]=e}})})}function T(t,n,r,e){e.forEach(function(e){e in r.prototype&&(t.prototype[e]=function(){return b(this[n],e,arguments)})})}function S(t,n,r,e){e.forEach(function(e){e in r.prototype&&(t.prototype[e]=function(){return this[n][e].apply(this[n],arguments)})})}function C(e,r,t,n){n.forEach(function(n){n in t.prototype&&(e.prototype[n]=function(){return e=this[r],(t=b(e,n,arguments)).then(function(e){if(e)return new P(e,t.request)});var e,t})})}function O(e){this._index=e}function P(e,t){this._cursor=e,this._request=t}function D(e){this._store=e}function A(n){this._tx=n,this.complete=new Promise(function(e,t){n.oncomplete=function(){e()},n.onerror=function(){t(n.error)},n.onabort=function(){t(n.error)}})}function N(e,t,n){this._db=e,this.oldVersion=t,this.transaction=new A(n)}function j(e){this._db=e}E(O,"_index",["name","keyPath","multiEntry","unique"]),T(O,"_index",IDBIndex,["get","getKey","getAll","getAllKeys","count"]),C(O,"_index",IDBIndex,["openCursor","openKeyCursor"]),E(P,"_cursor",["direction","key","primaryKey","value"]),T(P,"_cursor",IDBCursor,["update","delete"]),["advance","continue","continuePrimaryKey"].forEach(function(n){n in IDBCursor.prototype&&(P.prototype[n]=function(){var t=this,e=arguments;return Promise.resolve().then(function(){return t._cursor[n].apply(t._cursor,e),_(t._request).then(function(e){if(e)return new P(e,t._request)})})})}),D.prototype.createIndex=function(){return new O(this._store.createIndex.apply(this._store,arguments))},D.prototype.index=function(){return new O(this._store.index.apply(this._store,arguments))},E(D,"_store",["name","keyPath","indexNames","autoIncrement"]),T(D,"_store",IDBObjectStore,["put","add","delete","clear","get","getAll","getKey","getAllKeys","count"]),C(D,"_store",IDBObjectStore,["openCursor","openKeyCursor"]),S(D,"_store",IDBObjectStore,["deleteIndex"]),A.prototype.objectStore=function(){return new D(this._tx.objectStore.apply(this._tx,arguments))},E(A,"_tx",["objectStoreNames","mode"]),S(A,"_tx",IDBTransaction,["abort"]),N.prototype.createObjectStore=function(){return new D(this._db.createObjectStore.apply(this._db,arguments))},E(N,"_db",["name","version","objectStoreNames"]),S(N,"_db",IDBDatabase,["deleteObjectStore","close"]),j.prototype.transaction=function(){return new A(this._db.transaction.apply(this._db,arguments))},E(j,"_db",["name","version","objectStoreNames"]),S(j,"_db",IDBDatabase,["close"]),["openCursor","openKeyCursor"].forEach(function(i){[D,O].forEach(function(e){i in e.prototype&&(e.prototype[i.replace("open","iterate")]=function(){var e,t=(e=arguments,Array.prototype.slice.call(e)),n=t[t.length-1],r=this._store||this._index,a=r[i].apply(r,t.slice(0,-1));a.onsuccess=function(){n(a.result)}})})}),[O,D].forEach(function(e){e.prototype.getAll||(e.prototype.getAll=function(e,n){var r=this,a=[];return new Promise(function(t){r.iterateCursor(e,function(e){e?(a.push(e.value),void 0===n||a.length!=n?e.continue():t(a)):t(a)})})})});var k="@firebase/installations",L="0.5.5";const R=1e4,x=`w:${L}`,$="FIS_v2",M="https://firebaseinstallations.googleapis.com/v1",F=36e5;const H=new l("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 B(e){return e instanceof u&&e.code.includes("request-failed")}function q({projectId:e}){return`${M}/projects/${e}/installations`}function V(e){return{token:e.token,requestStatus:2,expiresIn:(e=e.expiresIn,Number(e.replace("s","000"))),creationTime:Date.now()}}async function K(e,t){var n=(await t.json()).error;return H.create("request-failed",{requestName:e,serverCode:n.code,serverMessage:n.message,serverStatus:n.status})}function U({apiKey:e}){return new Headers({"Content-Type":"application/json",Accept:"application/json","x-goog-api-key":e})}function G(e,{refreshToken:t}){const n=U(e);return n.append("Authorization",(t=t,`${$} ${t}`)),n}async function W(e){var t=await e();return 500<=t.status&&t.status<600?e():t}function z(t){return new Promise(e=>{setTimeout(e,t)})}const J=/^[cdef][\w-]{21}$/,Y="";function X(){try{const t=new Uint8Array(17),n=self.crypto||self.msCrypto;n.getRandomValues(t),t[0]=112+t[0]%16;var e=function(e){const t=function(e){const t=btoa(String.fromCharCode(...e));return t.replace(/\+/g,"-").replace(/\//g,"_")}(e);return t.substr(0,22)}(t);return J.test(e)?e:Y}catch(e){return Y}}function Z(e){return`${e.appName}!${e.appId}`}const Q=new Map;function ee(e,t){var n=Z(e);te(n,t),function(e,t){const n=function(){!ne&&"BroadcastChannel"in self&&(ne=new BroadcastChannel("[Firebase] FID Change"),ne.onmessage=e=>{te(e.data.key,e.data.fid)});return ne}();n&&n.postMessage({key:e,fid:t});0===Q.size&&ne&&(ne.close(),ne=null)}(n,t)}function te(e,t){var n=Q.get(e);if(n)for(const r of n)r(t)}let ne=null;const re="firebase-installations-store";let ae=null;function ie(){var t,e,n;return ae=ae||(t=e=>{0===e.oldVersion&&e.createObjectStore(re)},e=b(indexedDB,"open",["firebase-installations-database",1]),(n=e.request)&&(n.onupgradeneeded=function(e){t&&t(new N(n.result,e.oldVersion,n.transaction))}),e.then(function(e){return new j(e)})),ae}async function oe(e,t){var n=Z(e);const r=await ie(),a=r.transaction(re,"readwrite"),i=a.objectStore(re);var o=await i.get(n);return await i.put(t,n),await a.complete,o&&o.fid===t.fid||ee(e,t.fid),t}async function se(e){var t=Z(e);const n=await ie(),r=n.transaction(re,"readwrite");await r.objectStore(re).delete(t),await r.complete}async function ce(e,t){var n=Z(e);const r=await ie(),a=r.transaction(re,"readwrite"),i=a.objectStore(re);var o=await i.get(n),s=t(o);return void 0===s?await i.delete(n):await i.put(s,n),await a.complete,!s||o&&o.fid===s.fid||ee(e,s.fid),s}async function ue(n){let r;var e=await ce(n,e=>{var t=de(e||{fid:X(),registrationStatus:0}),t=function(e,t){{if(0!==t.registrationStatus)return 1===t.registrationStatus?{installationEntry:t,registrationPromise:async function(e){let t=await le(e);for(;1===t.registrationStatus;)await z(100),t=await le(e);if(0!==t.registrationStatus)return t;{var{installationEntry:n,registrationPromise:r}=await ue(e);return r||n}}(e)}:{installationEntry:t};if(!navigator.onLine){var n=Promise.reject(H.create("app-offline"));return{installationEntry:t,registrationPromise:n}}var r={fid:t.fid,registrationStatus:1,registrationTime:Date.now()},n=async function(t,n){try{var e=await async function(e,{fid:t}){const n=q(e);var r=U(e),a={fid:t,authVersion:$,appId:e.appId,sdkVersion:x};const i={method:"POST",headers:r,body:JSON.stringify(a)},o=await W(()=>fetch(n,i));if(o.ok){a=await o.json();return{fid:a.fid||t,registrationStatus:2,refreshToken:a.refreshToken,authToken:V(a.authToken)}}throw await K("Create Installation",o)}(t,n);return oe(t,e)}catch(e){throw B(e)&&409===e.customData.serverCode?await se(t):await oe(t,{fid:n.fid,registrationStatus:0}),e}}(e,r);return{installationEntry:r,registrationPromise:n}}}(n,t);return r=t.registrationPromise,t.installationEntry});return e.fid===Y?{installationEntry:await r}:{installationEntry:e,registrationPromise:r}}function le(e){return ce(e,e=>{if(!e)throw H.create("installation-not-found");return de(e)})}function de(e){return 1===(t=e).registrationStatus&&t.registrationTime+R<Date.now()?{fid:e.fid,registrationStatus:0}:e;var t}async function pe({appConfig:e,platformLoggerProvider:t},n){const r=([a,i]=[e,n["fid"]],`${q(a)}/${i}/authTokens:generate`);var a,i;const o=G(e,n),s=t.getImmediate({optional:!0});s&&o.append("x-firebase-client",s.getPlatformInfoString());var c={installation:{sdkVersion:x}};const u={method:"POST",headers:o,body:JSON.stringify(c)},l=await W(()=>fetch(r,u));if(l.ok)return V(await l.json());throw await K("Generate Auth Token",l)}async function fe(r,a=!1){let i;var e=await ce(r.appConfig,e=>{if(!ge(e))throw H.create("not-registered");var t,n=e.authToken;if(a||2!==(t=n).requestStatus||function(e){var t=Date.now();return t<e.creationTime||e.creationTime+e.expiresIn<t+F}(t)){if(1===n.requestStatus)return i=async function(e,t){let n=await he(e.appConfig);for(;1===n.authToken.requestStatus;)await z(100),n=await he(e.appConfig);var r=n.authToken;return 0===r.requestStatus?fe(e,t):r}(r,a),e;if(!navigator.onLine)throw H.create("app-offline");n=(t=e,n={requestStatus:1,requestTime:Date.now()},Object.assign(Object.assign({},t),{authToken:n}));return i=async function(t,n){try{var r=await pe(t,n),e=Object.assign(Object.assign({},n),{authToken:r});return await oe(t.appConfig,e),r}catch(e){throw!B(e)||401!==e.customData.serverCode&&404!==e.customData.serverCode?(r=Object.assign(Object.assign({},n),{authToken:{requestStatus:0}}),await oe(t.appConfig,r)):await se(t.appConfig),e}}(r,n),n}return e});return i?await i:e.authToken}function he(e){return ce(e,e=>{if(!ge(e))throw H.create("not-registered");var t,n=e.authToken;return 1===(t=n).requestStatus&&t.requestTime+R<Date.now()?Object.assign(Object.assign({},e),{authToken:{requestStatus:0}}):e})}function ge(e){return void 0!==e&&2===e.registrationStatus}async function me(e,t=!1){var n,r=e;return e=r.appConfig,await((n=(await ue(e)).registrationPromise)&&await n),(await fe(r,t)).token}function we(e){return H.create("missing-app-config-values",{valueName:e})}const ye="installations",ve=e=>{var t=e.getProvider("app").getImmediate();return{app:t,appConfig:function(e){if(!e||!e.options)throw we("App Configuration");if(!e.name)throw we("App Name");for(const t of["projectId","apiKey","appId"])if(!e.options[t])throw we(t);return{appName:e.name,projectId:e.options.projectId,apiKey:e.options.apiKey,appId:e.options.appId}}(t),platformLoggerProvider:ct._getProvider(t,"platform-logger"),_delete:()=>Promise.resolve()}},Ie=e=>{var t=e.getProvider("app").getImmediate();const n=ct._getProvider(t,ye).getImmediate();return{getId:()=>async function(e){var t=e;const{installationEntry:n,registrationPromise:r}=await ue(t.appConfig);return(r||fe(t)).catch(console.error),n.fid}(n),getToken:e=>me(n,e)}};ct._registerComponent(new I(ye,ve,"PUBLIC")),ct._registerComponent(new I("installations-internal",Ie,"PRIVATE")),ct.registerVersion(k,L),ct.registerVersion(k,L,"esm2017");const _e="analytics",be="firebase_id",Ee="origin",Te="https://firebase.googleapis.com/v1alpha/projects/-/apps/{app-id}/webConfig",Se="https://www.googletagmanager.com/gtag/js",Ce=new class{constructor(e){this.name=e,this._logLevel=a,this._logHandler=o,this._userLogHandler=null}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in t))throw new TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel="string"==typeof e?r[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if("function"!=typeof e)throw new TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,t.DEBUG,...e),this._logHandler(this,t.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,t.VERBOSE,...e),this._logHandler(this,t.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,t.INFO,...e),this._logHandler(this,t.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,t.WARN,...e),this._logHandler(this,t.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,t.ERROR,...e),this._logHandler(this,t.ERROR,...e)}}("@firebase/analytics");function Oe(e){return Promise.all(e.map(e=>e.catch(e=>e)))}function Pe(r,a,i,o){return async function(e,t,n){try{"event"===e?await async function(e,n,r,a,i){try{let t=[];if(i&&i.send_to){let e=i.send_to;Array.isArray(e)||(e=[e]);const c=await Oe(r);for(const u of e){var o=c.find(e=>e.measurementId===u),s=o&&n[o.appId];if(!s){t=[];break}t.push(s)}}0===t.length&&(t=Object.values(n)),await Promise.all(t),e("event",a,i||{})}catch(e){Ce.error(e)}}(r,a,i,t,n):"config"===e?await async function(e,t,n,r,a,i){var o=r[a];try{if(o)await t[o];else{const c=await Oe(n);var s=c.find(e=>e.measurementId===a);s&&await t[s.appId]}}catch(e){Ce.error(e)}e("config",a,i)}(r,a,i,o,t,n):r("set",t)}catch(e){Ce.error(e)}}}const De=new l("analytics","Analytics",{"already-exists":"A Firebase Analytics instance with the appId {$id} already exists. Only one Firebase Analytics instance can be created for each appId.","already-initialized":"initializeAnalytics() cannot be called again with different options than those it was initially called with. It can be called again with the same options to return the existing instance, or getAnalytics() can be used to get a reference to the already-intialized instance.","already-initialized-settings":"Firebase Analytics has already been initialized.settings() must be called before initializing any Analytics instanceor it will have no effect.","interop-component-reg-failed":"Firebase Analytics Interop Component failed to instantiate: {$reason}","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}","indexeddb-unavailable":"IndexedDB unavailable or restricted in this environment. Wrap initialization of analytics in analytics.isSupported() to prevent initialization in unsupported environments. Details: {$errorInfo}","fetch-throttle":"The config fetch request timed out while in an exponential backoff state. Unix timestamp in milliseconds when fetch request throttling ends: {$throttleEndTimeMillis}.","config-fetch-failed":"Dynamic config fetch failed: [{$httpStatus}] {$responseMessage}","no-api-key":'The "apiKey" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid API key.',"no-app-id":'The "appId" field is empty in the local Firebase config. Firebase Analytics requires this field tocontain a valid app ID.'}),Ae=30;const Ne=new class{constructor(e={},t=1e3){this.throttleMetadata=e,this.intervalMillis=t}getThrottleMetadata(e){return this.throttleMetadata[e]}setThrottleMetadata(e,t){this.throttleMetadata[e]=t}deleteThrottleMetadata(e){delete this.throttleMetadata[e]}};async function je(e){var t,{appId:n,apiKey:r}=e,r={method:"GET",headers:new Headers({Accept:"application/json","x-goog-api-key":r})},n=Te.replace("{app-id}",n);const a=await fetch(n,r);if(200===a.status||304===a.status)return a.json();{let e="";try{var i=await a.json();null!==(t=i.error)&&void 0!==t&&t.message&&(e=i.error.message)}catch(e){}throw De.create("config-fetch-failed",{httpStatus:a.status,responseMessage:e})}}async function ke(e,t=Ne,n){var{appId:r,apiKey:a,measurementId:i}=e.options;if(!r)throw De.create("no-app-id");if(!a){if(i)return{measurementId:i,appId:r};throw De.create("no-api-key")}var o=t.getThrottleMetadata(r)||{backoffCount:0,throttleEndTimeMillis:Date.now()};const s=new xe;return setTimeout(async()=>{s.abort()},void 0!==n?n:6e4),async function t(n,{throttleEndTimeMillis:e,backoffCount:r},a,i=Ne){const{appId:o,measurementId:s}=n;try{await Le(a,e)}catch(e){if(s)return Ce.warn("Timed out fetching this Firebase app's measurement ID from the server."+` Falling back to the measurement ID ${s}`+` provided in the "measurementId" field in the local Firebase config. [${e.message}]`),{appId:o,measurementId:s};throw e}try{const c=await je(n);return i.deleteThrottleMetadata(o),c}catch(e){if(!Re(e)){if(i.deleteThrottleMetadata(o),s)return Ce.warn("Failed to fetch this Firebase app's measurement ID from the server."+` Falling back to the measurement ID ${s}`+` provided in the "measurementId" field in the local Firebase config. [${e.message}]`),{appId:o,measurementId:s};throw e}const u=503===Number(e.customData.httpStatus)?y(r,i.intervalMillis,Ae):y(r,i.intervalMillis),l={throttleEndTimeMillis:Date.now()+u,backoffCount:r+1};return i.setThrottleMetadata(o,l),Ce.debug(`Calling attemptFetch again in ${u} millis`),t(n,l,a,i)}}({appId:r,apiKey:a,measurementId:i},o,s,t)}function Le(a,i){return new Promise((e,t)=>{var n=Math.max(i-Date.now(),0);const r=setTimeout(e,n);a.addEventListener(()=>{clearTimeout(r),t(De.create("fetch-throttle",{throttleEndTimeMillis:i}))})})}function Re(e){if(!(e instanceof u&&e.customData))return!1;var t=Number(e.customData.httpStatus);return 429===t||500===t||503===t||504===t}class xe{constructor(){this.listeners=[]}addEventListener(e){this.listeners.push(e)}abort(){this.listeners.forEach(e=>e())}}async function $e(t,e,n,r,a,i,o){const s=ke(t);s.then(e=>{n[e.measurementId]=e.appId,t.options.measurementId&&e.measurementId!==t.options.measurementId&&Ce.warn(`The measurement ID in the local Firebase config (${t.options.measurementId})`+` does not match the measurement ID fetched from the server (${e.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(e=>Ce.error(e)),e.push(s);var c=async function(){if(!p())return Ce.warn(De.create("indexeddb-unavailable",{errorInfo:"IndexedDB is not available in this environment."}).message),!1;try{await f()}catch(e){return Ce.warn(De.create("indexeddb-unavailable",{errorInfo:e}).message),!1}return!0}().then(e=>{if(e)return r.getId()}),[u,l]=await Promise.all([s,c]);!function(){var e=window.document.getElementsByTagName("script");for(const t of Object.values(e))if(t.src&&t.src.includes(Se))return t}()&&function(e,t){const n=document.createElement("script");n.src=`${Se}?l=${e}&id=${t}`,n.async=!0,document.head.appendChild(n)}(i,u.measurementId),a("js",new Date);const d=null!==(c=null==o?void 0:o.config)&&void 0!==c?c:{};return d[Ee]="firebase",d.update=!0,null!=l&&(d[be]=l),a("config",u.measurementId,d),u.measurementId}class Me{constructor(e){this.app=e}_delete(){return delete Fe[this.app.options.appId],Promise.resolve()}}let Fe={},He=[];const Be={};let qe="dataLayer",Ve="gtag",Ke,Ue,Ge=!1;function We(e){if(Ge)throw De.create("already-initialized");e.dataLayerName&&(qe=e.dataLayerName),e.gtagName&&(Ve=e.gtagName)}function ze(e,t,n){!function(){const e=[];var t;s()&&e.push("This is a browser extension environment."),c()||e.push("Cookies are not available."),0<e.length&&(t=e.map((e,t)=>`(${t+1}) ${e}`).join(" "),t=De.create("invalid-analytics-context",{errorInfo:t}),Ce.warn(t.message))}();var r,a,i=e.options.appId;if(!i)throw De.create("no-app-id");if(!e.options.apiKey){if(!e.options.measurementId)throw De.create("no-api-key");Ce.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 ${e.options.measurementId}`+' provided in the "measurementId" field in the local Firebase config.')}if(null!=Fe[i])throw De.create("already-exists",{id:i});return Ge||(function(e){let t=[];Array.isArray(window[e])?t=window[e]:window[e]=t,t}(qe),{wrappedGtag:r,gtagCore:a}=function(e,t,n,r,a){let i=function(){window[r].push(arguments)};return window[a]&&"function"==typeof window[a]&&(i=window[a]),window[a]=Pe(i,e,t,n),{gtagCore:i,wrappedGtag:window[a]}}(Fe,He,Be,qe,Ve),Ue=r,Ke=a,Ge=!0),Fe[i]=$e(e,He,Be,t,Ke,qe,n),new Me(e)}async function Je(){if(s())return!1;if(!c())return!1;if(!p())return!1;try{return await f()}catch(e){return!1}}function Ye(e,t,n){e=v(e),async function(e,t,n,r){if(r&&r.global)return e("set",{screen_name:n}),Promise.resolve();e("config",await t,{update:!0,screen_name:n})}(Ue,Fe[e.app.options.appId],t,n).catch(e=>Ce.error(e))}function Xe(e,t,n){e=v(e),async function(e,t,n,r){if(r&&r.global)return e("set",{user_id:n}),Promise.resolve();e("config",await t,{update:!0,user_id:n})}(Ue,Fe[e.app.options.appId],t,n).catch(e=>Ce.error(e))}function Ze(e,t,n){e=v(e),async function(e,t,n,r){if(r&&r.global){const a={};for(const i of Object.keys(n))a[`user_properties.${i}`]=n[i];return e("set",a),Promise.resolve()}e("config",await t,{update:!0,user_properties:n})}(Ue,Fe[e.app.options.appId],t,n).catch(e=>Ce.error(e))}function Qe(e,t){e=v(e),async function(e,t){var n=await e;window[`ga-disable-${n}`]=!t}(Fe[e.app.options.appId],t).catch(e=>Ce.error(e))}function et(e,t,n,r){e=v(e),async function(e,t,n,r,a){var i;a&&a.global?e("event",n,r):(i=await t,e("event",n,Object.assign(Object.assign({},r),{send_to:i})))}(Ue,Fe[e.app.options.appId],t,n,r).catch(e=>Ce.error(e))}const tt="@firebase/analytics";ct._registerComponent(new I(_e,(e,{options:t})=>{return ze(e.getProvider("app").getImmediate(),e.getProvider("installations-internal").getImmediate(),t)},"PUBLIC")),ct._registerComponent(new I("analytics-internal",function(e){try{const r=e.getProvider(_e).getImmediate();return{logEvent:(e,t,n)=>et(r,e,t,n)}}catch(e){throw De.create("interop-component-reg-failed",{reason:e})}},"PRIVATE")),ct.registerVersion(tt,"0.7.5"),ct.registerVersion(tt,"0.7.5","esm2017");var nt,rt,at;class it{constructor(e,t){this.app=e,this._delegate=t}logEvent(e,t,n){et(this._delegate,e,t,n)}setCurrentScreen(e,t){Ye(this._delegate,e,t)}setUserId(e,t){Xe(this._delegate,e,t)}setUserProperties(e,t){Ze(this._delegate,e,t)}setAnalyticsCollectionEnabled(e){Qe(this._delegate,e)}}(rt=nt=nt||{}).ADD_SHIPPING_INFO="add_shipping_info",rt.ADD_PAYMENT_INFO="add_payment_info",rt.ADD_TO_CART="add_to_cart",rt.ADD_TO_WISHLIST="add_to_wishlist",rt.BEGIN_CHECKOUT="begin_checkout",rt.CHECKOUT_PROGRESS="checkout_progress",rt.EXCEPTION="exception",rt.GENERATE_LEAD="generate_lead",rt.LOGIN="login",rt.PAGE_VIEW="page_view",rt.PURCHASE="purchase",rt.REFUND="refund",rt.REMOVE_FROM_CART="remove_from_cart",rt.SCREEN_VIEW="screen_view",rt.SEARCH="search",rt.SELECT_CONTENT="select_content",rt.SELECT_ITEM="select_item",rt.SELECT_PROMOTION="select_promotion",rt.SET_CHECKOUT_OPTION="set_checkout_option",rt.SHARE="share",rt.SIGN_UP="sign_up",rt.TIMING_COMPLETE="timing_complete",rt.VIEW_CART="view_cart",rt.VIEW_ITEM="view_item",rt.VIEW_ITEM_LIST="view_item_list",rt.VIEW_PROMOTION="view_promotion",rt.VIEW_SEARCH_RESULTS="view_search_results";const ot=e=>{var t=e.getProvider("app-compat").getImmediate(),n=e.getProvider("analytics").getImmediate();return new it(t,n)};at={Analytics:it,settings:We,isSupported:Je,EventName:nt},n.default.INTERNAL.registerComponent(new I("analytics-compat",ot,"PUBLIC").setServiceProps(at).setMultipleInstances(!0)),n.default.registerVersion("@firebase/analytics-compat","0.1.6")}).apply(this,arguments)}catch(e){throw console.error(e),new Error("Cannot instantiate firebase-analytics-compat.js - be sure to load firebase-app.js first.")}});
|
|
2
2
|
//# sourceMappingURL=firebase-analytics-compat.js.map
|