reactfire 4.0.0-exp.e80fc49 → 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 +14 -15
- 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 +148 -204
- 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 +129 -204
- 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 +28 -1
- package/package.json +8 -6
- package/src/SuspenseSubject.ts +6 -4
- package/src/database.tsx +3 -29
- package/src/firebaseApp.tsx +1 -1
- package/src/firestore.tsx +3 -3
- 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 +26 -27
- 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
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Observable } from 'rxjs';
|
|
2
|
-
import {
|
|
3
|
-
ensureInitialized,
|
|
4
|
-
getValue as rcGetValue,
|
|
5
|
-
getString as rcGetString,
|
|
6
|
-
getNumber as rcGetNumber,
|
|
7
|
-
getBoolean as rcGetBoolean,
|
|
8
|
-
getAll as rcGetAll,
|
|
9
|
-
} from 'firebase/remote-config';
|
|
10
|
-
|
|
11
|
-
import type { RemoteConfig, Value as RemoteConfigValue } from 'firebase/remote-config';
|
|
12
|
-
|
|
13
|
-
export type AllParameters = {
|
|
14
|
-
[key: string]: RemoteConfigValue;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
interface ParameterSettings<T> {
|
|
18
|
-
remoteConfig: RemoteConfig;
|
|
19
|
-
key: string;
|
|
20
|
-
getter: (key: string) => T;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
// TODO(davideast): Replace with RxFire functions when they land
|
|
24
|
-
function parameter$<T>({ remoteConfig, key, getter }: ParameterSettings<T>): Observable<T> {
|
|
25
|
-
return new Observable((subscriber) => {
|
|
26
|
-
ensureInitialized(remoteConfig).then(() => {
|
|
27
|
-
// 'this' for the getter loses context in the next()
|
|
28
|
-
// call, so it needs to be bound.
|
|
29
|
-
subscriber.next(getter.bind(remoteConfig)(key));
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export function getValue(remoteConfig: RemoteConfig, key: string) {
|
|
35
|
-
const getter = () => rcGetValue(remoteConfig, key);
|
|
36
|
-
return parameter$({ remoteConfig, key, getter });
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export function getString(remoteConfig: RemoteConfig, key: string) {
|
|
40
|
-
const getter = () => rcGetString(remoteConfig, key);
|
|
41
|
-
return parameter$<string>({ remoteConfig, key, getter });
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export function getNumber(remoteConfig: RemoteConfig, key: string) {
|
|
45
|
-
const getter = () => rcGetNumber(remoteConfig, key);
|
|
46
|
-
return parameter$<number>({ remoteConfig, key, getter });
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export function getBoolean(remoteConfig: RemoteConfig, key: string) {
|
|
50
|
-
const getter = () => rcGetBoolean(remoteConfig, key);
|
|
51
|
-
return parameter$<boolean>({ remoteConfig, key, getter });
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export function getAll(remoteConfig: RemoteConfig) {
|
|
55
|
-
const getter = () => rcGetAll(remoteConfig);
|
|
56
|
-
// No key is needed for getAll()
|
|
57
|
-
return parameter$<AllParameters>({ remoteConfig, key: '', getter });
|
|
58
|
-
}
|