reactfire 4.0.0-exp.b6c8eeb → 4.0.0-exp.f654109
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/README.md +5 -3
- package/dist/SuspenseSubject.d.ts +1 -1
- package/dist/functions.d.ts +12 -0
- package/dist/index.d.ts +1 -0
- package/dist/reactfire.cjs.development.js +122 -177
- package/dist/reactfire.cjs.development.js.map +1 -1
- package/dist/reactfire.cjs.production.min.js +1 -1
- package/dist/reactfire.cjs.production.min.js.map +1 -1
- package/dist/reactfire.esm.js +105 -176
- package/dist/reactfire.esm.js.map +1 -1
- package/dist/{remote-config/index.d.ts → remote-config.d.ts} +2 -7
- package/dist/sdk.d.ts +22 -1
- package/package.json +7 -5
- package/src/SuspenseSubject.ts +6 -4
- package/src/firebaseApp.tsx +1 -1
- package/src/functions.tsx +26 -0
- package/src/index.ts +1 -0
- package/src/{remote-config/index.tsx → remote-config.tsx} +4 -16
- package/src/sdk.tsx +22 -28
- package/src/storage.tsx +2 -24
- package/src/useObservable.ts +48 -28
- package/dist/remote-config/getValue.d.ts +0 -10
- package/src/remote-config/getValue.tsx +0 -58
package/dist/reactfire.esm.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { useMemo, createElement, useContext, createContext, version as version$1, Fragment,
|
|
1
|
+
import { useMemo, createElement, useContext, createContext, version as version$1, Fragment, useReducer, useEffect, Suspense, useLayoutEffect } from 'react';
|
|
2
2
|
import { user } from 'rxfire/auth';
|
|
3
|
-
import { from, of, empty, Subject
|
|
3
|
+
import { from, of, empty, Subject } from 'rxjs';
|
|
4
4
|
import { switchMap, map, tap, catchError, shareReplay, first } from 'rxjs/operators';
|
|
5
5
|
import { getApps, registerVersion, initializeApp } from 'firebase/app';
|
|
6
6
|
import { object, objectVal, list, listVal } from 'rxfire/database';
|
|
7
7
|
import { doc, docData, fromRef, collectionData } from 'rxfire/firestore';
|
|
8
8
|
import { queryEqual } from 'firebase/firestore';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
9
|
+
import { httpsCallable } from 'rxfire/functions';
|
|
10
|
+
import { getValue, getString, getNumber, getBoolean, getAll } from 'rxfire/remote-config';
|
|
11
|
+
import { fromTask, getDownloadURL } from 'rxfire/storage';
|
|
11
12
|
import { ref } from 'firebase/storage';
|
|
12
13
|
|
|
13
14
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -956,9 +957,9 @@ try {
|
|
|
956
957
|
|
|
957
958
|
var DEFAULT_APP_NAME = '[DEFAULT]';
|
|
958
959
|
var FirebaseAppContext = /*#__PURE__*/createContext(undefined);
|
|
959
|
-
var SuspenseEnabledContext = /*#__PURE__*/createContext(false); // @ts-
|
|
960
|
+
var SuspenseEnabledContext = /*#__PURE__*/createContext(false); // @ts-expect-error: "__REACTFIRE_VERSION__" is replaced with actual ReactFire version (see babel.config.js)
|
|
960
961
|
|
|
961
|
-
var version = "4.0.0-exp.
|
|
962
|
+
var version = "4.0.0-exp.f654109";
|
|
962
963
|
|
|
963
964
|
var shallowEq = function shallowEq(a, b) {
|
|
964
965
|
return a === b || [].concat(Object.keys(a), Object.keys(b)).every(function (key) {
|
|
@@ -1346,8 +1347,8 @@ function useDatabaseListData(ref, options) {
|
|
|
1346
1347
|
var SuspenseSubject = /*#__PURE__*/function (_Subject) {
|
|
1347
1348
|
_inheritsLoose(SuspenseSubject, _Subject);
|
|
1348
1349
|
|
|
1349
|
-
// @ts-
|
|
1350
|
-
// @ts-
|
|
1350
|
+
// @ts-expect-error: TODO: double check to see if this is an RXJS thing or if we should listen to TS
|
|
1351
|
+
// @ts-expect-error: TODO: double check to see if this is an RXJS thing or if we should listen to TS
|
|
1351
1352
|
function SuspenseSubject(innerObservable, _timeoutWindow) {
|
|
1352
1353
|
var _this;
|
|
1353
1354
|
|
|
@@ -1438,6 +1439,8 @@ var SuspenseSubject = /*#__PURE__*/function (_Subject) {
|
|
|
1438
1439
|
// As it is now, this will burn the cache entry until the timeout fires.
|
|
1439
1440
|
if (this._error) {
|
|
1440
1441
|
throw this._error;
|
|
1442
|
+
} else if (!this.hasValue) {
|
|
1443
|
+
throw Error('Can only get value if SuspenseSubject has a value');
|
|
1441
1444
|
}
|
|
1442
1445
|
|
|
1443
1446
|
return this._value;
|
|
@@ -1477,6 +1480,39 @@ function preloadObservable(source, id) {
|
|
|
1477
1480
|
return observable;
|
|
1478
1481
|
}
|
|
1479
1482
|
}
|
|
1483
|
+
|
|
1484
|
+
function reducerFactory(observable) {
|
|
1485
|
+
return function reducer(state, action) {
|
|
1486
|
+
// always make sure these values are in sync with the observable
|
|
1487
|
+
var newState = _extends({}, state, {
|
|
1488
|
+
hasEmitted: state.hasEmitted || observable.hasValue,
|
|
1489
|
+
error: observable.ourError,
|
|
1490
|
+
firstValuePromise: observable.firstEmission
|
|
1491
|
+
});
|
|
1492
|
+
|
|
1493
|
+
if (observable.hasValue) {
|
|
1494
|
+
newState.data = observable.value;
|
|
1495
|
+
}
|
|
1496
|
+
|
|
1497
|
+
switch (action) {
|
|
1498
|
+
case 'value':
|
|
1499
|
+
newState.status = 'success';
|
|
1500
|
+
return newState;
|
|
1501
|
+
|
|
1502
|
+
case 'error':
|
|
1503
|
+
newState.status = 'error';
|
|
1504
|
+
return newState;
|
|
1505
|
+
|
|
1506
|
+
case 'complete':
|
|
1507
|
+
newState.isComplete = true;
|
|
1508
|
+
return newState;
|
|
1509
|
+
|
|
1510
|
+
default:
|
|
1511
|
+
throw new Error("invalid action \"" + action + "\"");
|
|
1512
|
+
}
|
|
1513
|
+
};
|
|
1514
|
+
}
|
|
1515
|
+
|
|
1480
1516
|
function useObservable(observableId, source, config) {
|
|
1481
1517
|
var _config$initialData, _config, _config2;
|
|
1482
1518
|
|
|
@@ -1484,71 +1520,52 @@ function useObservable(observableId, source, config) {
|
|
|
1484
1520
|
config = {};
|
|
1485
1521
|
}
|
|
1486
1522
|
|
|
1523
|
+
// Register the observable with the cache
|
|
1487
1524
|
if (!observableId) {
|
|
1488
1525
|
throw new Error('cannot call useObservable without an observableId');
|
|
1489
1526
|
}
|
|
1490
1527
|
|
|
1491
|
-
var observable = preloadObservable(source, observableId);
|
|
1528
|
+
var observable = preloadObservable(source, observableId); // Suspend if suspense is enabled and no initial data exists
|
|
1529
|
+
|
|
1492
1530
|
var hasInitialData = config.hasOwnProperty('initialData') || config.hasOwnProperty('startWithValue');
|
|
1531
|
+
var hasData = observable.hasValue || hasInitialData;
|
|
1493
1532
|
var suspenseEnabled = useSuspenseEnabledFromConfigAndContext(config.suspense);
|
|
1494
1533
|
|
|
1495
|
-
if (suspenseEnabled === true && !
|
|
1534
|
+
if (suspenseEnabled === true && !hasData) {
|
|
1496
1535
|
throw observable.firstEmission;
|
|
1497
1536
|
}
|
|
1498
1537
|
|
|
1499
|
-
var
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
var _React$useState2 = useState(false),
|
|
1508
|
-
isComplete = _React$useState2[0],
|
|
1509
|
-
setIsComplete = _React$useState2[1];
|
|
1538
|
+
var initialState = {
|
|
1539
|
+
status: hasData ? 'success' : 'loading',
|
|
1540
|
+
hasEmitted: hasData,
|
|
1541
|
+
isComplete: false,
|
|
1542
|
+
data: observable.hasValue ? observable.value : (_config$initialData = (_config = config) == null ? void 0 : _config.initialData) != null ? _config$initialData : (_config2 = config) == null ? void 0 : _config2.startWithValue,
|
|
1543
|
+
error: observable.ourError,
|
|
1544
|
+
firstValuePromise: observable.firstEmission
|
|
1545
|
+
};
|
|
1510
1546
|
|
|
1511
|
-
var _React$
|
|
1512
|
-
|
|
1513
|
-
|
|
1547
|
+
var _React$useReducer = useReducer(reducerFactory(observable), initialState),
|
|
1548
|
+
status = _React$useReducer[0],
|
|
1549
|
+
dispatch = _React$useReducer[1];
|
|
1514
1550
|
|
|
1515
1551
|
useEffect(function () {
|
|
1516
1552
|
var subscription = observable.subscribe({
|
|
1517
|
-
next: function next(
|
|
1518
|
-
|
|
1519
|
-
return v;
|
|
1520
|
-
});
|
|
1553
|
+
next: function next() {
|
|
1554
|
+
dispatch('value');
|
|
1521
1555
|
},
|
|
1522
1556
|
error: function error(e) {
|
|
1523
|
-
|
|
1557
|
+
dispatch('error');
|
|
1524
1558
|
throw e;
|
|
1525
1559
|
},
|
|
1526
1560
|
complete: function complete() {
|
|
1527
|
-
|
|
1561
|
+
dispatch('complete');
|
|
1528
1562
|
}
|
|
1529
1563
|
});
|
|
1530
1564
|
return function () {
|
|
1531
1565
|
return subscription.unsubscribe();
|
|
1532
1566
|
};
|
|
1533
1567
|
}, [observable]);
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
if (hasError) {
|
|
1537
|
-
status = 'error';
|
|
1538
|
-
} else if (observable.hasValue || hasInitialData) {
|
|
1539
|
-
status = 'success';
|
|
1540
|
-
} else {
|
|
1541
|
-
status = 'loading';
|
|
1542
|
-
}
|
|
1543
|
-
|
|
1544
|
-
return {
|
|
1545
|
-
status: status,
|
|
1546
|
-
hasEmitted: observable.hasValue || hasInitialData,
|
|
1547
|
-
isComplete: isComplete,
|
|
1548
|
-
data: latest,
|
|
1549
|
-
error: observable.ourError,
|
|
1550
|
-
firstValuePromise: observable.firstEmission
|
|
1551
|
-
};
|
|
1568
|
+
return status;
|
|
1552
1569
|
}
|
|
1553
1570
|
|
|
1554
1571
|
var cachedQueries$1 = globalThis._reactFireFirestoreQueryCache || [];
|
|
@@ -1673,6 +1690,21 @@ function useFirestoreCollectionData(query, options) {
|
|
|
1673
1690
|
return useObservable(observableId, observable$, options);
|
|
1674
1691
|
}
|
|
1675
1692
|
|
|
1693
|
+
/**
|
|
1694
|
+
* Calls a callable function.
|
|
1695
|
+
*
|
|
1696
|
+
* @param functionName - The name of the function to call
|
|
1697
|
+
* @param options
|
|
1698
|
+
*/
|
|
1699
|
+
|
|
1700
|
+
function useCallableFunctionResponse(functionName, options) {
|
|
1701
|
+
var functions = useFunctions();
|
|
1702
|
+
var observableId = "functions:callableResponse:" + functionName + ":" + JSON.stringify(options == null ? void 0 : options.data) + ":" + JSON.stringify(options == null ? void 0 : options.httpsCallableOptions);
|
|
1703
|
+
var obsFactory = httpsCallable(functions, functionName, options == null ? void 0 : options.httpsCallableOptions);
|
|
1704
|
+
var observable$ = obsFactory(options == null ? void 0 : options.data);
|
|
1705
|
+
return useObservable(observableId, observable$, options);
|
|
1706
|
+
}
|
|
1707
|
+
|
|
1676
1708
|
function SuspenseWithPerf(_ref) {
|
|
1677
1709
|
var _performance;
|
|
1678
1710
|
|
|
@@ -1704,76 +1736,6 @@ function SuspenseWithPerf(_ref) {
|
|
|
1704
1736
|
}, children);
|
|
1705
1737
|
}
|
|
1706
1738
|
|
|
1707
|
-
function parameter$(_ref) {
|
|
1708
|
-
var remoteConfig = _ref.remoteConfig,
|
|
1709
|
-
key = _ref.key,
|
|
1710
|
-
getter = _ref.getter;
|
|
1711
|
-
return new Observable(function (subscriber) {
|
|
1712
|
-
ensureInitialized(remoteConfig).then(function () {
|
|
1713
|
-
// 'this' for the getter loses context in the next()
|
|
1714
|
-
// call, so it needs to be bound.
|
|
1715
|
-
subscriber.next(getter.bind(remoteConfig)(key));
|
|
1716
|
-
});
|
|
1717
|
-
});
|
|
1718
|
-
}
|
|
1719
|
-
|
|
1720
|
-
function getValue(remoteConfig, key) {
|
|
1721
|
-
var getter = function getter() {
|
|
1722
|
-
return getValue$1(remoteConfig, key);
|
|
1723
|
-
};
|
|
1724
|
-
|
|
1725
|
-
return parameter$({
|
|
1726
|
-
remoteConfig: remoteConfig,
|
|
1727
|
-
key: key,
|
|
1728
|
-
getter: getter
|
|
1729
|
-
});
|
|
1730
|
-
}
|
|
1731
|
-
function getString(remoteConfig, key) {
|
|
1732
|
-
var getter = function getter() {
|
|
1733
|
-
return getString$1(remoteConfig, key);
|
|
1734
|
-
};
|
|
1735
|
-
|
|
1736
|
-
return parameter$({
|
|
1737
|
-
remoteConfig: remoteConfig,
|
|
1738
|
-
key: key,
|
|
1739
|
-
getter: getter
|
|
1740
|
-
});
|
|
1741
|
-
}
|
|
1742
|
-
function getNumber(remoteConfig, key) {
|
|
1743
|
-
var getter = function getter() {
|
|
1744
|
-
return getNumber$1(remoteConfig, key);
|
|
1745
|
-
};
|
|
1746
|
-
|
|
1747
|
-
return parameter$({
|
|
1748
|
-
remoteConfig: remoteConfig,
|
|
1749
|
-
key: key,
|
|
1750
|
-
getter: getter
|
|
1751
|
-
});
|
|
1752
|
-
}
|
|
1753
|
-
function getBoolean(remoteConfig, key) {
|
|
1754
|
-
var getter = function getter() {
|
|
1755
|
-
return getBoolean$1(remoteConfig, key);
|
|
1756
|
-
};
|
|
1757
|
-
|
|
1758
|
-
return parameter$({
|
|
1759
|
-
remoteConfig: remoteConfig,
|
|
1760
|
-
key: key,
|
|
1761
|
-
getter: getter
|
|
1762
|
-
});
|
|
1763
|
-
}
|
|
1764
|
-
function getAll(remoteConfig) {
|
|
1765
|
-
var getter = function getter() {
|
|
1766
|
-
return getAll$1(remoteConfig);
|
|
1767
|
-
}; // No key is needed for getAll()
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
return parameter$({
|
|
1771
|
-
remoteConfig: remoteConfig,
|
|
1772
|
-
key: '',
|
|
1773
|
-
getter: getter
|
|
1774
|
-
});
|
|
1775
|
-
}
|
|
1776
|
-
|
|
1777
1739
|
/**
|
|
1778
1740
|
* Helper function to construct type safe functions. Since Remote Config has
|
|
1779
1741
|
* methods that return different types for values, we need to be extra safe
|
|
@@ -1784,12 +1746,8 @@ function getAll(remoteConfig) {
|
|
|
1784
1746
|
*/
|
|
1785
1747
|
|
|
1786
1748
|
function useRemoteConfigValue_INTERNAL(key, getter) {
|
|
1787
|
-
var
|
|
1788
|
-
|
|
1789
|
-
var remoteConfig = useRemoteConfig(); // INVESTIGATE need to use a public API to get at the app name, one doesn't appear to exist...
|
|
1790
|
-
// we might need to iterate over the Firebase apps and check for remoteConfig equality? this works for now
|
|
1791
|
-
|
|
1792
|
-
var appName = (_remoteConfig$_storag = remoteConfig._storage) == null ? void 0 : _remoteConfig$_storag.appName;
|
|
1749
|
+
var remoteConfig = useRemoteConfig();
|
|
1750
|
+
var appName = remoteConfig.app.name;
|
|
1793
1751
|
var $value = getter(remoteConfig, key);
|
|
1794
1752
|
var observableId = "remoteConfig:" + key + ":" + getter.name + ":" + appName;
|
|
1795
1753
|
return useObservable(observableId, $value);
|
|
@@ -1799,7 +1757,6 @@ function useRemoteConfigValue_INTERNAL(key, getter) {
|
|
|
1799
1757
|
* Remote Config Value.
|
|
1800
1758
|
*
|
|
1801
1759
|
* @param key The parameter key in Remote Config
|
|
1802
|
-
* @param remoteConfig Optional instance. If not provided ReactFire will either grab the default instance or lazy load.
|
|
1803
1760
|
*/
|
|
1804
1761
|
|
|
1805
1762
|
|
|
@@ -1809,7 +1766,6 @@ function useRemoteConfigValue(key) {
|
|
|
1809
1766
|
/**
|
|
1810
1767
|
* Convience method similar to useRemoteConfigValue. Returns a `string` from a Remote Config parameter.
|
|
1811
1768
|
* @param key The parameter key in Remote Config
|
|
1812
|
-
* @param remoteConfig Optional instance. If not provided ReactFire will either grab the default instance or lazy load.
|
|
1813
1769
|
*/
|
|
1814
1770
|
|
|
1815
1771
|
function useRemoteConfigString(key) {
|
|
@@ -1818,7 +1774,6 @@ function useRemoteConfigString(key) {
|
|
|
1818
1774
|
/**
|
|
1819
1775
|
* Convience method similar to useRemoteConfigValue. Returns a `number` from a Remote Config parameter.
|
|
1820
1776
|
* @param key The parameter key in Remote Config
|
|
1821
|
-
* @param remoteConfig Optional instance. If not provided ReactFire will either grab the default instance or lazy load.
|
|
1822
1777
|
*/
|
|
1823
1778
|
|
|
1824
1779
|
function useRemoteConfigNumber(key) {
|
|
@@ -1827,7 +1782,6 @@ function useRemoteConfigNumber(key) {
|
|
|
1827
1782
|
/**
|
|
1828
1783
|
* Convience method similar to useRemoteConfigValue. Returns a `boolean` from a Remote Config parameter.
|
|
1829
1784
|
* @param key The parameter key in Remote Config
|
|
1830
|
-
* @param remoteConfig Optional instance. If not provided ReactFire will either grab the default instance or lazy load.
|
|
1831
1785
|
*/
|
|
1832
1786
|
|
|
1833
1787
|
function useRemoteConfigBoolean(key) {
|
|
@@ -1836,7 +1790,6 @@ function useRemoteConfigBoolean(key) {
|
|
|
1836
1790
|
/**
|
|
1837
1791
|
* Convience method similar to useRemoteConfigValue. Returns allRemote Config parameters.
|
|
1838
1792
|
* @param key The parameter key in Remote Config
|
|
1839
|
-
* @param remoteConfig Optional instance. If not provided ReactFire will either grab the default instance or lazy load.
|
|
1840
1793
|
*/
|
|
1841
1794
|
|
|
1842
1795
|
function useRemoteConfigAll(key) {
|
|
@@ -1844,30 +1797,6 @@ function useRemoteConfigAll(key) {
|
|
|
1844
1797
|
}
|
|
1845
1798
|
|
|
1846
1799
|
var _excluded = ["storage", "storagePath", "suspense", "placeHolder"];
|
|
1847
|
-
/**
|
|
1848
|
-
* modified version of rxFire's _fromTask
|
|
1849
|
-
*
|
|
1850
|
-
* @param task
|
|
1851
|
-
*/
|
|
1852
|
-
|
|
1853
|
-
function _fromTask(task) {
|
|
1854
|
-
return new Observable(function (subscriber) {
|
|
1855
|
-
var progress = function progress(snap) {
|
|
1856
|
-
return subscriber.next(snap);
|
|
1857
|
-
};
|
|
1858
|
-
|
|
1859
|
-
var error = function error(e) {
|
|
1860
|
-
return subscriber.error(e);
|
|
1861
|
-
};
|
|
1862
|
-
|
|
1863
|
-
var complete = function complete() {
|
|
1864
|
-
return subscriber.complete();
|
|
1865
|
-
};
|
|
1866
|
-
|
|
1867
|
-
task.on('state_changed', progress, error, complete); // I REMOVED THE UNSUBSCRIBE RETURN BECAUSE IT CANCELS THE UPLOAD
|
|
1868
|
-
// https://github.com/firebase/firebase-js-sdk/issues/1659
|
|
1869
|
-
});
|
|
1870
|
-
}
|
|
1871
1800
|
/**
|
|
1872
1801
|
* Subscribe to the progress of a storage task
|
|
1873
1802
|
*
|
|
@@ -1876,12 +1805,9 @@ function _fromTask(task) {
|
|
|
1876
1805
|
* @param options
|
|
1877
1806
|
*/
|
|
1878
1807
|
|
|
1879
|
-
|
|
1880
1808
|
function useStorageTask(task, ref, options) {
|
|
1881
1809
|
var observableId = "storage:task:" + ref.toString();
|
|
1882
|
-
|
|
1883
|
-
var observable$ = _fromTask(task);
|
|
1884
|
-
|
|
1810
|
+
var observable$ = fromTask(task);
|
|
1885
1811
|
return useObservable(observableId, observable$, options);
|
|
1886
1812
|
}
|
|
1887
1813
|
/**
|
|
@@ -1948,35 +1874,24 @@ function StorageImage(props) {
|
|
|
1948
1874
|
}
|
|
1949
1875
|
}
|
|
1950
1876
|
|
|
1877
|
+
var AppCheckSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1951
1878
|
var AuthSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1952
1879
|
var AnalyticsSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1953
1880
|
var DatabaseSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1954
1881
|
var FirestoreSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1882
|
+
var FunctionsSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1955
1883
|
var StorageSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1956
1884
|
var PerformanceSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1957
1885
|
var RemoteConfigSdkContext = /*#__PURE__*/createContext(undefined);
|
|
1958
1886
|
|
|
1959
1887
|
function getSdkProvider(SdkContext) {
|
|
1960
1888
|
return function SdkProvider(props) {
|
|
1961
|
-
var
|
|
1962
|
-
var sdkAppName; // @ts-ignore Auth doesn't have field 'app'
|
|
1963
|
-
|
|
1964
|
-
if (props.sdk.app) {
|
|
1965
|
-
// @ts-ignore Auth doesn't have field 'app'
|
|
1966
|
-
sdkAppName = props.sdk.app.name; // @ts-ignore only Auth has field 'name'
|
|
1967
|
-
} else if (props.sdk.name) {
|
|
1968
|
-
// @ts-ignore only Auth has field 'name'
|
|
1969
|
-
sdkAppName = props.sdk.name;
|
|
1970
|
-
}
|
|
1971
|
-
|
|
1972
|
-
if (sdkAppName !== contextualAppName) {
|
|
1973
|
-
throw new Error('sdk was initialized with a different firebase app');
|
|
1974
|
-
}
|
|
1975
|
-
|
|
1976
|
-
if (!props.sdk) {
|
|
1977
|
-
throw new Error('no sdk provided');
|
|
1978
|
-
}
|
|
1889
|
+
var _props$sdk, _props$sdk$app;
|
|
1979
1890
|
|
|
1891
|
+
if (!props.sdk) throw new Error('no sdk provided');
|
|
1892
|
+
var contextualAppName = useFirebaseApp().name;
|
|
1893
|
+
var sdkAppName = props == null ? void 0 : (_props$sdk = props.sdk) == null ? void 0 : (_props$sdk$app = _props$sdk.app) == null ? void 0 : _props$sdk$app.name;
|
|
1894
|
+
if (sdkAppName !== contextualAppName) throw new Error('sdk was initialized with a different firebase app');
|
|
1980
1895
|
return createElement(SdkContext.Provider, _extends({
|
|
1981
1896
|
value: props.sdk
|
|
1982
1897
|
}, props));
|
|
@@ -2008,13 +1923,18 @@ function useInitSdk(sdkName, SdkContext, sdkInitializer, options) {
|
|
|
2008
1923
|
return useObservable("firebase-sdk:" + sdkName + ":" + firebaseApp.name, from(initializeSdk), options);
|
|
2009
1924
|
}
|
|
2010
1925
|
|
|
1926
|
+
var AppCheckProvider = /*#__PURE__*/getSdkProvider(AppCheckSdkContext);
|
|
2011
1927
|
var AuthProvider = /*#__PURE__*/getSdkProvider(AuthSdkContext);
|
|
2012
1928
|
var AnalyticsProvider = /*#__PURE__*/getSdkProvider(AnalyticsSdkContext);
|
|
2013
1929
|
var DatabaseProvider = /*#__PURE__*/getSdkProvider(DatabaseSdkContext);
|
|
2014
1930
|
var FirestoreProvider = /*#__PURE__*/getSdkProvider(FirestoreSdkContext);
|
|
1931
|
+
var FunctionsProvider = /*#__PURE__*/getSdkProvider(FunctionsSdkContext);
|
|
2015
1932
|
var PerformanceProvider = /*#__PURE__*/getSdkProvider(PerformanceSdkContext);
|
|
2016
1933
|
var StorageProvider = /*#__PURE__*/getSdkProvider(StorageSdkContext);
|
|
2017
1934
|
var RemoteConfigProvider = /*#__PURE__*/getSdkProvider(RemoteConfigSdkContext);
|
|
1935
|
+
var useAppCheck = function useAppCheck() {
|
|
1936
|
+
return useSdk(AppCheckSdkContext);
|
|
1937
|
+
};
|
|
2018
1938
|
var useAuth = function useAuth() {
|
|
2019
1939
|
return useSdk(AuthSdkContext);
|
|
2020
1940
|
};
|
|
@@ -2027,6 +1947,9 @@ var useDatabase = function useDatabase() {
|
|
|
2027
1947
|
var useFirestore = function useFirestore() {
|
|
2028
1948
|
return useSdk(FirestoreSdkContext);
|
|
2029
1949
|
};
|
|
1950
|
+
var useFunctions = function useFunctions() {
|
|
1951
|
+
return useSdk(FunctionsSdkContext);
|
|
1952
|
+
};
|
|
2030
1953
|
var usePerformance = function usePerformance() {
|
|
2031
1954
|
return useSdk(PerformanceSdkContext);
|
|
2032
1955
|
};
|
|
@@ -2036,6 +1959,9 @@ var useStorage = function useStorage() {
|
|
|
2036
1959
|
var useRemoteConfig = function useRemoteConfig() {
|
|
2037
1960
|
return useSdk(RemoteConfigSdkContext);
|
|
2038
1961
|
};
|
|
1962
|
+
var useInitAppCheck = function useInitAppCheck(initializer, options) {
|
|
1963
|
+
return useInitSdk('appcheck', AppCheckSdkContext, initializer, options);
|
|
1964
|
+
};
|
|
2039
1965
|
var useInitAuth = function useInitAuth(initializer, options) {
|
|
2040
1966
|
return useInitSdk('auth', AuthSdkContext, initializer, options);
|
|
2041
1967
|
};
|
|
@@ -2048,6 +1974,9 @@ var useInitDatabase = function useInitDatabase(initializer, options) {
|
|
|
2048
1974
|
var useInitFirestore = function useInitFirestore(initializer, options) {
|
|
2049
1975
|
return useInitSdk('firestore', FirestoreSdkContext, initializer, options);
|
|
2050
1976
|
};
|
|
1977
|
+
var useInitFunctions = function useInitFunctions(initializer, options) {
|
|
1978
|
+
return useInitSdk('functions', FunctionsSdkContext, initializer, options);
|
|
1979
|
+
};
|
|
2051
1980
|
var useInitPerformance = function useInitPerformance(initializer, options) {
|
|
2052
1981
|
return useInitSdk('performance', PerformanceSdkContext, initializer, options);
|
|
2053
1982
|
};
|
|
@@ -2093,5 +2022,5 @@ function checkIdField(options) {
|
|
|
2093
2022
|
return checkOptions(options, 'idField');
|
|
2094
2023
|
}
|
|
2095
2024
|
|
|
2096
|
-
export { AnalyticsProvider, AuthCheck, AuthProvider, ClaimsCheck, DatabaseProvider, FirebaseAppProvider, FirestoreProvider, PerformanceProvider, ReactFireError, RemoteConfigProvider, StorageImage, StorageProvider, SuspenseWithPerf, checkIdField, checkOptions, checkinitialData, preloadFirestoreDoc, preloadObservable, preloadUser, useAnalytics, useAuth, useDatabase, useDatabaseList, useDatabaseListData, useDatabaseObject, useDatabaseObjectData, useFirebaseApp, useFirestore, useFirestoreCollection, useFirestoreCollectionData, useFirestoreDoc, useFirestoreDocData, useFirestoreDocDataOnce, useFirestoreDocOnce, useIdTokenResult, useInitAnalytics, useInitAuth, useInitDatabase, useInitFirestore, useInitPerformance, useInitRemoteConfig, useInitStorage, useIsSuspenseEnabled, useObservable, usePerformance, useRemoteConfig, useRemoteConfigAll, useRemoteConfigBoolean, useRemoteConfigNumber, useRemoteConfigString, useRemoteConfigValue, useSigninCheck, useStorage, useStorageDownloadURL, useStorageTask, useSuspenseEnabledFromConfigAndContext, useUser, version };
|
|
2025
|
+
export { AnalyticsProvider, AnalyticsSdkContext, AppCheckProvider, AppCheckSdkContext, AuthCheck, AuthProvider, AuthSdkContext, ClaimsCheck, DatabaseProvider, DatabaseSdkContext, FirebaseAppProvider, FirestoreProvider, FirestoreSdkContext, FunctionsProvider, FunctionsSdkContext, PerformanceProvider, PerformanceSdkContext, ReactFireError, RemoteConfigProvider, RemoteConfigSdkContext, StorageImage, StorageProvider, StorageSdkContext, SuspenseWithPerf, checkIdField, checkOptions, checkinitialData, preloadFirestoreDoc, preloadObservable, preloadUser, useAnalytics, useAppCheck, useAuth, useCallableFunctionResponse, useDatabase, useDatabaseList, useDatabaseListData, useDatabaseObject, useDatabaseObjectData, useFirebaseApp, useFirestore, useFirestoreCollection, useFirestoreCollectionData, useFirestoreDoc, useFirestoreDocData, useFirestoreDocDataOnce, useFirestoreDocOnce, useFunctions, useIdTokenResult, useInitAnalytics, useInitAppCheck, useInitAuth, useInitDatabase, useInitFirestore, useInitFunctions, useInitPerformance, useInitRemoteConfig, useInitStorage, useIsSuspenseEnabled, useObservable, usePerformance, useRemoteConfig, useRemoteConfigAll, useRemoteConfigBoolean, useRemoteConfigNumber, useRemoteConfigString, useRemoteConfigValue, useSigninCheck, useStorage, useStorageDownloadURL, useStorageTask, useSuspenseEnabledFromConfigAndContext, useUser, version };
|
|
2097
2026
|
//# sourceMappingURL=reactfire.esm.js.map
|