reactfire 4.2.3-exp.c7357da → 4.2.4

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 CHANGED
@@ -11,6 +11,10 @@ Firebase.
11
11
  - **Access Firebase libraries from any component** - Need the Firestore SDK? `useFirestore`. Remote Config? `useRemoteConfig`.
12
12
  - **Safely configure Firebase libraries** - Libraries like Firestore and Remote Config require settings like `enablePersistence` to be set before any data fetches are made. This can be tough to support in React's world of re-renders. ReactFire gives you `useInitFirestore` and `useInitRemoteConfig` hooks that guarantee they're set before anything else.
13
13
 
14
+ ## Platform support
15
+
16
+ ReactFire is designed for **web React apps** and wraps the [Firebase Web SDK](https://firebase.google.com/docs/web/setup). It is not compatible with React Native or Expo. For React Native projects, use [react-native-firebase](https://rnfirebase.io/) instead.
17
+
14
18
  ## Install
15
19
 
16
20
  ```bash
@@ -1,4 +1,5 @@
1
1
  import { Observable, Subject, Subscriber, Subscription } from 'rxjs';
2
+ import { ObservableStatus } from './useObservable';
2
3
  export declare class SuspenseSubject<T> extends Subject<T> {
3
4
  private _timeoutWindow;
4
5
  private _suspenseEnabled;
@@ -9,14 +10,18 @@ export declare class SuspenseSubject<T> extends Subject<T> {
9
10
  private _error;
10
11
  private _innerObservable;
11
12
  private _warmupSubscription;
13
+ private _immutableStatus;
14
+ private _isComplete;
12
15
  private _innerSubscriber;
13
16
  private _resolveFirstEmission;
14
17
  constructor(innerObservable: Observable<T>, _timeoutWindow: number, _suspenseEnabled: boolean);
15
18
  get hasValue(): boolean;
16
19
  get value(): T;
17
20
  get firstEmission(): Promise<void>;
21
+ private _updateImmutableStatus;
18
22
  private _next;
19
23
  private _reset;
20
24
  _subscribe(subscriber: Subscriber<T>): Subscription;
21
25
  get ourError(): any;
26
+ get immutableStatus(): ObservableStatus<T>;
22
27
  }
package/dist/auth.d.ts CHANGED
@@ -100,5 +100,5 @@ export declare function ClaimsCheck({ user, fallback, children, requiredClaims }
100
100
  *
101
101
  * Meant for Concurrent mode only (`<FirebaseAppProvider suspense=true />`). [More detail](https://github.com/FirebaseExtended/reactfire/issues/325#issuecomment-827654376).
102
102
  */
103
- export declare function AuthCheck({ fallback, children, requiredClaims }: AuthCheckProps): JSX.Element;
103
+ export declare function AuthCheck({ fallback, children, requiredClaims }: AuthCheckProps): React.ReactElement;
104
104
  export {};
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import type { FirebaseApp, FirebaseOptions } from 'firebase/app';
3
- interface FirebaseAppProviderProps {
3
+ export interface FirebaseAppProviderProps {
4
4
  firebaseApp?: FirebaseApp;
5
5
  firebaseConfig?: FirebaseOptions;
6
6
  appName?: string;
@@ -11,4 +11,3 @@ export declare function FirebaseAppProvider(props: React.PropsWithChildren<Fireb
11
11
  export declare function useIsSuspenseEnabled(): boolean;
12
12
  export declare function useSuspenseEnabledFromConfigAndContext(suspenseFromConfig?: boolean): boolean;
13
13
  export declare function useFirebaseApp(): FirebaseApp;
14
- export {};
@@ -6,7 +6,7 @@ import { Query as FirestoreQuery, QuerySnapshot, DocumentReference, DocumentData
6
6
  *
7
7
  * Use this to warm up `useFirestoreDoc` for a specific document
8
8
  */
9
- export declare function preloadFirestoreDoc(refProvider: () => Promise<DocumentReference>): Promise<import("./SuspenseSubject").SuspenseSubject<DocumentSnapshot<DocumentData>>>;
9
+ export declare function preloadFirestoreDoc(refProvider: () => Promise<DocumentReference>): Promise<import("./SuspenseSubject").SuspenseSubject<DocumentSnapshot<DocumentData, DocumentData>>>;
10
10
  /**
11
11
  * Subscribe to Firestore Document changes
12
12
  *
@@ -20,11 +20,11 @@ export declare function useFirestoreDocOnce<T = DocumentData>(ref: DocumentRefer
20
20
  /**
21
21
  * Subscribe to Firestore Document changes and unwrap the document into a plain object
22
22
  */
23
- export declare function useFirestoreDocData<T = unknown>(ref: DocumentReference<T>, options?: ReactFireOptions<T>): ObservableStatus<T>;
23
+ export declare function useFirestoreDocData<T = unknown>(ref: DocumentReference<T>, options?: ReactFireOptions<T>): ObservableStatus<T | undefined>;
24
24
  /**
25
25
  * Get a Firestore document, unwrap the document into a plain object, and don't subscribe to changes
26
26
  */
27
- export declare function useFirestoreDocDataOnce<T = unknown>(ref: DocumentReference<T>, options?: ReactFireOptions<T>): ObservableStatus<T>;
27
+ export declare function useFirestoreDocDataOnce<T = unknown>(ref: DocumentReference<T>, options?: ReactFireOptions<T>): ObservableStatus<T | undefined>;
28
28
  /**
29
29
  * Subscribe to a Firestore collection
30
30
  */