diff --git a/docs/reference/classes/ReactFireError.md b/docs/reference/classes/ReactFireError.md index 591ddb68..94da0f53 100644 --- a/docs/reference/classes/ReactFireError.md +++ b/docs/reference/classes/ReactFireError.md @@ -6,7 +6,7 @@ # Class: ReactFireError -Defined in: [src/index.ts:12](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L12) +Defined in: [src/utils.ts:3](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L3) ## Extends @@ -18,7 +18,7 @@ Defined in: [src/index.ts:12](https://github.com/FirebaseExtended/reactfire/blob > **new ReactFireError**(`code`, `message`, `customData?`): `ReactFireError` -Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) +Defined in: [src/utils.ts:6](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L6) #### Parameters @@ -60,7 +60,7 @@ Defined in: node\_modules/typescript/lib/lib.es2022.error.d.ts:24 > `readonly` **code**: `string` -Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) +Defined in: [src/utils.ts:6](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L6) *** @@ -68,7 +68,7 @@ Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob > `optional` **customData?**: `Record`\<`string`, `unknown`\> -Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) +Defined in: [src/utils.ts:6](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L6) *** @@ -88,7 +88,7 @@ Defined in: node\_modules/typescript/lib/lib.es5.d.ts:1075 > `readonly` **name**: `"ReactFireError"` = `'ReactFireError'` -Defined in: [src/index.ts:13](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L13) +Defined in: [src/utils.ts:4](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L4) #### Overrides diff --git a/docs/reference/functions/AuthCheck.md b/docs/reference/functions/AuthCheck.md index 686f070f..d3a490fc 100644 --- a/docs/reference/functions/AuthCheck.md +++ b/docs/reference/functions/AuthCheck.md @@ -8,7 +8,7 @@ > **AuthCheck**(`__namedParameters`): `ReactElement` -Defined in: [src/auth.tsx:260](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L260) +Defined in: [src/auth.tsx:261](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L261) ## Parameters diff --git a/docs/reference/functions/ClaimsCheck.md b/docs/reference/functions/ClaimsCheck.md index fa5ca95e..641e1904 100644 --- a/docs/reference/functions/ClaimsCheck.md +++ b/docs/reference/functions/ClaimsCheck.md @@ -8,7 +8,7 @@ > **ClaimsCheck**(`__namedParameters`): `Element` -Defined in: [src/auth.tsx:215](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L215) +Defined in: [src/auth.tsx:216](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L216) ## Parameters diff --git a/docs/reference/functions/checkIdField.md b/docs/reference/functions/checkIdField.md index 82d7c5a9..b348cc96 100644 --- a/docs/reference/functions/checkIdField.md +++ b/docs/reference/functions/checkIdField.md @@ -8,7 +8,7 @@ > **checkIdField**(`options`): `any` -Defined in: [src/index.ts:47](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L47) +Defined in: [src/utils.ts:28](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L28) ## Parameters diff --git a/docs/reference/functions/checkOptions.md b/docs/reference/functions/checkOptions.md index 4f4fdaf0..00b60b93 100644 --- a/docs/reference/functions/checkOptions.md +++ b/docs/reference/functions/checkOptions.md @@ -8,7 +8,7 @@ > **checkOptions**(`options`, `field`): `any` -Defined in: [src/index.ts:34](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L34) +Defined in: [src/utils.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L15) ## Parameters diff --git a/docs/reference/functions/checkinitialData.md b/docs/reference/functions/checkinitialData.md index f2c78405..6ebdb7c5 100644 --- a/docs/reference/functions/checkinitialData.md +++ b/docs/reference/functions/checkinitialData.md @@ -8,7 +8,7 @@ > **checkinitialData**(`options`): `any` -Defined in: [src/index.ts:43](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L43) +Defined in: [src/utils.ts:24](https://github.com/FirebaseExtended/reactfire/blob/main/src/utils.ts#L24) ## Parameters diff --git a/docs/reference/functions/preloadFirestoreDoc.md b/docs/reference/functions/preloadFirestoreDoc.md index a9c7db3a..ad21eed6 100644 --- a/docs/reference/functions/preloadFirestoreDoc.md +++ b/docs/reference/functions/preloadFirestoreDoc.md @@ -8,7 +8,7 @@ > **preloadFirestoreDoc**(`refProvider`): `Promise`\<`SuspenseSubject`\<`DocumentSnapshot`\<`DocumentData`, `DocumentData`\>\>\> -Defined in: [src/firestore.tsx:28](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L28) +Defined in: [src/firestore.tsx:29](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L29) Preload a subscription to a Firestore document reference. diff --git a/docs/reference/functions/preloadUser.md b/docs/reference/functions/preloadUser.md index 65e598af..61b6bb2c 100644 --- a/docs/reference/functions/preloadUser.md +++ b/docs/reference/functions/preloadUser.md @@ -8,7 +8,7 @@ > **preloadUser**(`authResolver`): `Promise`\<`User` \| `null` \| `undefined`\> -Defined in: [src/auth.tsx:11](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L11) +Defined in: [src/auth.tsx:12](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L12) ## Parameters diff --git a/docs/reference/functions/useDatabaseList.md b/docs/reference/functions/useDatabaseList.md index 4c501bf7..4cc8b148 100644 --- a/docs/reference/functions/useDatabaseList.md +++ b/docs/reference/functions/useDatabaseList.md @@ -8,7 +8,7 @@ > **useDatabaseList**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T`[] \| `QueryChange`[]\> -Defined in: [src/database.tsx:48](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L48) +Defined in: [src/database.tsx:49](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L49) Subscribe to a Realtime Database list diff --git a/docs/reference/functions/useDatabaseListData.md b/docs/reference/functions/useDatabaseListData.md index 41d5a441..d8ff3d7b 100644 --- a/docs/reference/functions/useDatabaseListData.md +++ b/docs/reference/functions/useDatabaseListData.md @@ -8,7 +8,7 @@ > **useDatabaseListData**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T`[] \| `null`\> -Defined in: [src/database.tsx:58](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L58) +Defined in: [src/database.tsx:59](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L59) ## Type Parameters diff --git a/docs/reference/functions/useDatabaseObject.md b/docs/reference/functions/useDatabaseObject.md index 632d5bf2..ed1033f0 100644 --- a/docs/reference/functions/useDatabaseObject.md +++ b/docs/reference/functions/useDatabaseObject.md @@ -8,7 +8,7 @@ > **useDatabaseObject**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T` \| `QueryChange`\> -Defined in: [src/database.tsx:27](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L27) +Defined in: [src/database.tsx:28](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L28) Subscribe to a Realtime Database object diff --git a/docs/reference/functions/useDatabaseObjectData.md b/docs/reference/functions/useDatabaseObjectData.md index ae86c498..0c4040f8 100644 --- a/docs/reference/functions/useDatabaseObjectData.md +++ b/docs/reference/functions/useDatabaseObjectData.md @@ -8,7 +8,7 @@ > **useDatabaseObjectData**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T`\> -Defined in: [src/database.tsx:34](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L34) +Defined in: [src/database.tsx:35](https://github.com/FirebaseExtended/reactfire/blob/main/src/database.tsx#L35) ## Type Parameters diff --git a/docs/reference/functions/useFirestoreCollection.md b/docs/reference/functions/useFirestoreCollection.md index 8cc2a2e4..9a9b8074 100644 --- a/docs/reference/functions/useFirestoreCollection.md +++ b/docs/reference/functions/useFirestoreCollection.md @@ -8,7 +8,7 @@ > **useFirestoreCollection**\<`T`\>(`query`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`QuerySnapshot`\<`T`, `DocumentData`\>\> -Defined in: [src/firestore.tsx:86](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L86) +Defined in: [src/firestore.tsx:87](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L87) Subscribe to a Firestore collection diff --git a/docs/reference/functions/useFirestoreCollectionData.md b/docs/reference/functions/useFirestoreCollectionData.md index 206f7132..5a1ba62d 100644 --- a/docs/reference/functions/useFirestoreCollectionData.md +++ b/docs/reference/functions/useFirestoreCollectionData.md @@ -8,7 +8,7 @@ > **useFirestoreCollectionData**\<`T`\>(`query`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T`[]\> -Defined in: [src/firestore.tsx:96](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L96) +Defined in: [src/firestore.tsx:97](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L97) Subscribe to a Firestore collection and unwrap the snapshot into an array. diff --git a/docs/reference/functions/useFirestoreDoc.md b/docs/reference/functions/useFirestoreDoc.md index f14bb8b4..821d9ec6 100644 --- a/docs/reference/functions/useFirestoreDoc.md +++ b/docs/reference/functions/useFirestoreDoc.md @@ -8,7 +8,7 @@ > **useFirestoreDoc**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`DocumentSnapshot`\<`T`, `DocumentData`\>\> -Defined in: [src/firestore.tsx:42](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L42) +Defined in: [src/firestore.tsx:43](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L43) Subscribe to Firestore Document changes diff --git a/docs/reference/functions/useFirestoreDocData.md b/docs/reference/functions/useFirestoreDocData.md index ffaaac8b..79f2ded5 100644 --- a/docs/reference/functions/useFirestoreDocData.md +++ b/docs/reference/functions/useFirestoreDocData.md @@ -8,7 +8,7 @@ > **useFirestoreDocData**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T` \| `undefined`\> -Defined in: [src/firestore.tsx:62](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L62) +Defined in: [src/firestore.tsx:63](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L63) Subscribe to Firestore Document changes and unwrap the document into a plain object diff --git a/docs/reference/functions/useFirestoreDocDataOnce.md b/docs/reference/functions/useFirestoreDocDataOnce.md index 32da9e3e..d8c72cc4 100644 --- a/docs/reference/functions/useFirestoreDocDataOnce.md +++ b/docs/reference/functions/useFirestoreDocDataOnce.md @@ -8,7 +8,7 @@ > **useFirestoreDocDataOnce**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`T` \| `undefined`\> -Defined in: [src/firestore.tsx:74](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L74) +Defined in: [src/firestore.tsx:75](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L75) Get a Firestore document, unwrap the document into a plain object, and don't subscribe to changes diff --git a/docs/reference/functions/useFirestoreDocOnce.md b/docs/reference/functions/useFirestoreDocOnce.md index 6280573d..7ca61569 100644 --- a/docs/reference/functions/useFirestoreDocOnce.md +++ b/docs/reference/functions/useFirestoreDocOnce.md @@ -8,7 +8,7 @@ > **useFirestoreDocOnce**\<`T`\>(`ref`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`DocumentSnapshot`\<`T`, `DocumentData`\>\> -Defined in: [src/firestore.tsx:52](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L52) +Defined in: [src/firestore.tsx:53](https://github.com/FirebaseExtended/reactfire/blob/main/src/firestore.tsx#L53) Get a firestore document and don't subscribe to changes diff --git a/docs/reference/functions/useIdTokenResult.md b/docs/reference/functions/useIdTokenResult.md index 7293fc74..4061a34f 100644 --- a/docs/reference/functions/useIdTokenResult.md +++ b/docs/reference/functions/useIdTokenResult.md @@ -8,7 +8,7 @@ > **useIdTokenResult**(`user`, `forceRefresh?`, `options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`IdTokenResult`\> -Defined in: [src/auth.tsx:41](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L41) +Defined in: [src/auth.tsx:42](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L42) ## Parameters diff --git a/docs/reference/functions/useSigninCheck.md b/docs/reference/functions/useSigninCheck.md index 895405bc..86f822a0 100644 --- a/docs/reference/functions/useSigninCheck.md +++ b/docs/reference/functions/useSigninCheck.md @@ -8,7 +8,7 @@ > **useSigninCheck**(`options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<[`SigninCheckResult`](../type-aliases/SigninCheckResult.md)\> -Defined in: [src/auth.tsx:136](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L136) +Defined in: [src/auth.tsx:137](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L137) Subscribe to the signed-in status of a user. diff --git a/docs/reference/functions/useUser.md b/docs/reference/functions/useUser.md index 0f7277e6..892f5cc5 100644 --- a/docs/reference/functions/useUser.md +++ b/docs/reference/functions/useUser.md @@ -8,7 +8,7 @@ > **useUser**\<`T`\>(`options?`): [`ObservableStatus`](../interfaces/ObservableStatus.md)\<`User` \| `null`\> -Defined in: [src/auth.tsx:22](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L22) +Defined in: [src/auth.tsx:23](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L23) Subscribe to Firebase auth state changes, including token refresh diff --git a/docs/reference/interfaces/AuthCheckProps.md b/docs/reference/interfaces/AuthCheckProps.md index c5edcb62..a8a5581b 100644 --- a/docs/reference/interfaces/AuthCheckProps.md +++ b/docs/reference/interfaces/AuthCheckProps.md @@ -6,7 +6,7 @@ # Interface: AuthCheckProps -Defined in: [src/auth.tsx:54](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L54) +Defined in: [src/auth.tsx:55](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L55) ## Properties @@ -14,7 +14,7 @@ Defined in: [src/auth.tsx:54](https://github.com/FirebaseExtended/reactfire/blob > **children**: `ReactNode` -Defined in: [src/auth.tsx:56](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L56) +Defined in: [src/auth.tsx:57](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L57) *** @@ -22,7 +22,7 @@ Defined in: [src/auth.tsx:56](https://github.com/FirebaseExtended/reactfire/blob > **fallback**: `ReactNode` -Defined in: [src/auth.tsx:55](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L55) +Defined in: [src/auth.tsx:56](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L56) *** @@ -30,4 +30,4 @@ Defined in: [src/auth.tsx:55](https://github.com/FirebaseExtended/reactfire/blob > `optional` **requiredClaims?**: `Object` -Defined in: [src/auth.tsx:57](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L57) +Defined in: [src/auth.tsx:58](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L58) diff --git a/docs/reference/interfaces/ClaimCheckErrors.md b/docs/reference/interfaces/ClaimCheckErrors.md index ce0afa98..8df2fe3e 100644 --- a/docs/reference/interfaces/ClaimCheckErrors.md +++ b/docs/reference/interfaces/ClaimCheckErrors.md @@ -6,7 +6,7 @@ # Interface: ClaimCheckErrors -Defined in: [src/auth.tsx:67](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L67) +Defined in: [src/auth.tsx:68](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L68) ## Indexable diff --git a/docs/reference/interfaces/ClaimsCheckProps.md b/docs/reference/interfaces/ClaimsCheckProps.md index 34375923..ad84131d 100644 --- a/docs/reference/interfaces/ClaimsCheckProps.md +++ b/docs/reference/interfaces/ClaimsCheckProps.md @@ -6,7 +6,7 @@ # Interface: ClaimsCheckProps -Defined in: [src/auth.tsx:60](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L60) +Defined in: [src/auth.tsx:61](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L61) ## Properties @@ -14,7 +14,7 @@ Defined in: [src/auth.tsx:60](https://github.com/FirebaseExtended/reactfire/blob > **children**: `ReactNode` -Defined in: [src/auth.tsx:63](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L63) +Defined in: [src/auth.tsx:64](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L64) *** @@ -22,7 +22,7 @@ Defined in: [src/auth.tsx:63](https://github.com/FirebaseExtended/reactfire/blob > **fallback**: `ReactNode` -Defined in: [src/auth.tsx:62](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L62) +Defined in: [src/auth.tsx:63](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L63) *** @@ -30,7 +30,7 @@ Defined in: [src/auth.tsx:62](https://github.com/FirebaseExtended/reactfire/blob > **requiredClaims**: `object` -Defined in: [src/auth.tsx:64](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L64) +Defined in: [src/auth.tsx:65](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L65) #### Index Signature @@ -42,4 +42,4 @@ Defined in: [src/auth.tsx:64](https://github.com/FirebaseExtended/reactfire/blob > **user**: `User` -Defined in: [src/auth.tsx:61](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L61) +Defined in: [src/auth.tsx:62](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L62) diff --git a/docs/reference/interfaces/ClaimsValidator.md b/docs/reference/interfaces/ClaimsValidator.md index 436ddd45..9e640273 100644 --- a/docs/reference/interfaces/ClaimsValidator.md +++ b/docs/reference/interfaces/ClaimsValidator.md @@ -6,11 +6,11 @@ # Interface: ClaimsValidator() -Defined in: [src/auth.tsx:93](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L93) +Defined in: [src/auth.tsx:94](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L94) > **ClaimsValidator**(`claims`): `object` -Defined in: [src/auth.tsx:94](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L94) +Defined in: [src/auth.tsx:95](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L95) ## Parameters diff --git a/docs/reference/interfaces/ReactFireOptions.md b/docs/reference/interfaces/ReactFireOptions.md index 7ca63c5e..0111f3e9 100644 --- a/docs/reference/interfaces/ReactFireOptions.md +++ b/docs/reference/interfaces/ReactFireOptions.md @@ -6,7 +6,7 @@ # Interface: ReactFireOptions\ -Defined in: [src/index.ts:24](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L24) +Defined in: [src/index.ts:14](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L14) ## Extended by @@ -24,7 +24,7 @@ Defined in: [src/index.ts:24](https://github.com/FirebaseExtended/reactfire/blob > `optional` **idField?**: `string` -Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L25) +Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) *** @@ -32,7 +32,7 @@ Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob > `optional` **initialData?**: `any` -Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L26) +Defined in: [src/index.ts:16](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L16) *** @@ -40,7 +40,7 @@ Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob > `optional` **startWithValue?**: `any` -Defined in: [src/index.ts:30](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L30) +Defined in: [src/index.ts:20](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L20) #### Deprecated @@ -52,4 +52,4 @@ use initialData instead > `optional` **suspense?**: `boolean` -Defined in: [src/index.ts:31](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L31) +Defined in: [src/index.ts:21](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L21) diff --git a/docs/reference/interfaces/SignInCheckOptionsBasic.md b/docs/reference/interfaces/SignInCheckOptionsBasic.md index 66967bf8..bbe6b416 100644 --- a/docs/reference/interfaces/SignInCheckOptionsBasic.md +++ b/docs/reference/interfaces/SignInCheckOptionsBasic.md @@ -6,7 +6,7 @@ # Interface: SignInCheckOptionsBasic -Defined in: [src/auth.tsx:85](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L85) +Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L86) ## Extends @@ -23,7 +23,7 @@ Defined in: [src/auth.tsx:85](https://github.com/FirebaseExtended/reactfire/blob > `optional` **forceRefresh?**: `boolean` -Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L86) +Defined in: [src/auth.tsx:87](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L87) *** @@ -31,7 +31,7 @@ Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob > `optional` **idField?**: `string` -Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L25) +Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) #### Inherited from @@ -43,7 +43,7 @@ Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob > `optional` **initialData?**: `any` -Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L26) +Defined in: [src/index.ts:16](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L16) #### Inherited from @@ -55,7 +55,7 @@ Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob > `optional` **startWithValue?**: `any` -Defined in: [src/index.ts:30](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L30) +Defined in: [src/index.ts:20](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L20) #### Deprecated @@ -71,7 +71,7 @@ use initialData instead > `optional` **suspense?**: `boolean` -Defined in: [src/index.ts:31](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L31) +Defined in: [src/index.ts:21](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L21) #### Inherited from diff --git a/docs/reference/interfaces/SignInCheckOptionsClaimsObject.md b/docs/reference/interfaces/SignInCheckOptionsClaimsObject.md index 09a1eae0..59555e6a 100644 --- a/docs/reference/interfaces/SignInCheckOptionsClaimsObject.md +++ b/docs/reference/interfaces/SignInCheckOptionsClaimsObject.md @@ -6,7 +6,7 @@ # Interface: SignInCheckOptionsClaimsObject -Defined in: [src/auth.tsx:89](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L89) +Defined in: [src/auth.tsx:90](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L90) ## Extends @@ -18,7 +18,7 @@ Defined in: [src/auth.tsx:89](https://github.com/FirebaseExtended/reactfire/blob > `optional` **forceRefresh?**: `boolean` -Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L86) +Defined in: [src/auth.tsx:87](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L87) #### Inherited from @@ -30,7 +30,7 @@ Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob > `optional` **idField?**: `string` -Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L25) +Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) #### Inherited from @@ -42,7 +42,7 @@ Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob > `optional` **initialData?**: `any` -Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L26) +Defined in: [src/index.ts:16](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L16) #### Inherited from @@ -54,7 +54,7 @@ Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob > **requiredClaims**: `ParsedToken` -Defined in: [src/auth.tsx:90](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L90) +Defined in: [src/auth.tsx:91](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L91) *** @@ -62,7 +62,7 @@ Defined in: [src/auth.tsx:90](https://github.com/FirebaseExtended/reactfire/blob > `optional` **startWithValue?**: `any` -Defined in: [src/index.ts:30](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L30) +Defined in: [src/index.ts:20](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L20) #### Deprecated @@ -78,7 +78,7 @@ use initialData instead > `optional` **suspense?**: `boolean` -Defined in: [src/index.ts:31](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L31) +Defined in: [src/index.ts:21](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L21) #### Inherited from diff --git a/docs/reference/interfaces/SignInCheckOptionsClaimsValidator.md b/docs/reference/interfaces/SignInCheckOptionsClaimsValidator.md index 5ba7f609..00828e98 100644 --- a/docs/reference/interfaces/SignInCheckOptionsClaimsValidator.md +++ b/docs/reference/interfaces/SignInCheckOptionsClaimsValidator.md @@ -6,7 +6,7 @@ # Interface: SignInCheckOptionsClaimsValidator -Defined in: [src/auth.tsx:100](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L100) +Defined in: [src/auth.tsx:101](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L101) ## Extends @@ -18,7 +18,7 @@ Defined in: [src/auth.tsx:100](https://github.com/FirebaseExtended/reactfire/blo > `optional` **forceRefresh?**: `boolean` -Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L86) +Defined in: [src/auth.tsx:87](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L87) #### Inherited from @@ -30,7 +30,7 @@ Defined in: [src/auth.tsx:86](https://github.com/FirebaseExtended/reactfire/blob > `optional` **idField?**: `string` -Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L25) +Defined in: [src/index.ts:15](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L15) #### Inherited from @@ -42,7 +42,7 @@ Defined in: [src/index.ts:25](https://github.com/FirebaseExtended/reactfire/blob > `optional` **initialData?**: `any` -Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L26) +Defined in: [src/index.ts:16](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L16) #### Inherited from @@ -54,7 +54,7 @@ Defined in: [src/index.ts:26](https://github.com/FirebaseExtended/reactfire/blob > `optional` **startWithValue?**: `any` -Defined in: [src/index.ts:30](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L30) +Defined in: [src/index.ts:20](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L20) #### Deprecated @@ -70,7 +70,7 @@ use initialData instead > `optional` **suspense?**: `boolean` -Defined in: [src/index.ts:31](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L31) +Defined in: [src/index.ts:21](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L21) #### Inherited from @@ -82,4 +82,4 @@ Defined in: [src/index.ts:31](https://github.com/FirebaseExtended/reactfire/blob > **validateCustomClaims**: [`ClaimsValidator`](ClaimsValidator.md) -Defined in: [src/auth.tsx:101](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L101) +Defined in: [src/auth.tsx:102](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L102) diff --git a/docs/reference/type-aliases/ReactFireGlobals.md b/docs/reference/type-aliases/ReactFireGlobals.md index 995ef49a..237782f7 100644 --- a/docs/reference/type-aliases/ReactFireGlobals.md +++ b/docs/reference/type-aliases/ReactFireGlobals.md @@ -8,7 +8,7 @@ > **ReactFireGlobals** = `object` -Defined in: [src/index.ts:6](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L6) +Defined in: [src/index.ts:8](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L8) ## Properties @@ -16,7 +16,7 @@ Defined in: [src/index.ts:6](https://github.com/FirebaseExtended/reactfire/blob/ > **\_reactFireDatabaseCachedQueries**: `DatabaseQuery`[] -Defined in: [src/index.ts:7](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L7) +Defined in: [src/index.ts:9](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L9) *** @@ -24,7 +24,7 @@ Defined in: [src/index.ts:7](https://github.com/FirebaseExtended/reactfire/blob/ > **\_reactFireFirestoreQueryCache**: `FirestoreQuery`[] -Defined in: [src/index.ts:8](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L8) +Defined in: [src/index.ts:10](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L10) *** @@ -32,4 +32,4 @@ Defined in: [src/index.ts:8](https://github.com/FirebaseExtended/reactfire/blob/ > **\_reactFirePreloadedObservables**: `Map`\<`string`, `SuspenseSubject`\<`any`\>\> -Defined in: [src/index.ts:9](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L9) +Defined in: [src/index.ts:11](https://github.com/FirebaseExtended/reactfire/blob/main/src/index.ts#L11) diff --git a/docs/reference/type-aliases/SigninCheckResult.md b/docs/reference/type-aliases/SigninCheckResult.md index f6f71bd1..66736a74 100644 --- a/docs/reference/type-aliases/SigninCheckResult.md +++ b/docs/reference/type-aliases/SigninCheckResult.md @@ -8,4 +8,4 @@ > **SigninCheckResult** = \{ `errors`: \{ \}; `hasRequiredClaims`: `false`; `signedIn`: `false`; `user`: `null`; \} \| \{ `errors`: [`ClaimCheckErrors`](../interfaces/ClaimCheckErrors.md); `hasRequiredClaims`: `boolean`; `signedIn`: `true`; `user`: `User`; \} -Defined in: [src/auth.tsx:71](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L71) +Defined in: [src/auth.tsx:72](https://github.com/FirebaseExtended/reactfire/blob/main/src/auth.tsx#L72) diff --git a/src/auth.tsx b/src/auth.tsx index 82b3b2e8..bd149c3e 100644 --- a/src/auth.tsx +++ b/src/auth.tsx @@ -1,6 +1,7 @@ import * as React from 'react'; import { user } from 'rxfire/auth'; -import { preloadObservable, ReactFireOptions, useAuth, useObservable, ObservableStatus, ReactFireError } from './index.js'; +import { preloadObservable, ReactFireOptions, useAuth, useObservable, ObservableStatus } from './index.js'; +import { ReactFireError } from './utils.js'; import { from, of, defer } from 'rxjs'; import { map, switchMap } from 'rxjs/operators'; import { useSuspenseEnabledFromConfigAndContext } from './firebaseApp.js'; diff --git a/src/database.tsx b/src/database.tsx index 5c5f998c..1d433b54 100644 --- a/src/database.tsx +++ b/src/database.tsx @@ -1,5 +1,6 @@ import { list, object, QueryChange, listVal, objectVal } from 'rxfire/database'; -import { ReactFireOptions, useObservable, checkIdField, ObservableStatus, ReactFireGlobals } from './index.js'; +import { ReactFireOptions, useObservable, ObservableStatus, ReactFireGlobals } from './index.js'; +import { checkIdField } from './utils.js'; import type { Query as DatabaseQuery, DatabaseReference } from 'firebase/database'; diff --git a/src/firestore.tsx b/src/firestore.tsx index 7313cc60..5e981f9a 100644 --- a/src/firestore.tsx +++ b/src/firestore.tsx @@ -1,5 +1,6 @@ import { collectionData, doc, docData, fromRef } from 'rxfire/firestore'; -import { ReactFireOptions, useObservable, checkIdField, ReactFireGlobals } from './index.js'; +import { ReactFireOptions, useObservable, ReactFireGlobals } from './index.js'; +import { checkIdField } from './utils.js'; import { preloadObservable, ObservableStatus } from './useObservable.js'; import { first } from 'rxjs/operators'; diff --git a/src/index.ts b/src/index.ts index 028a4a62..02547a75 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,3 +1,5 @@ +// Types and re-exports only. A runtime value defined here and imported by a product module brings back the +// import of ./index.js that made Turbopack bundle every Firebase product. import { SuspenseSubject } from './SuspenseSubject.js'; import type { Query as FirestoreQuery } from 'firebase/firestore'; @@ -9,18 +11,6 @@ export type ReactFireGlobals = { _reactFirePreloadedObservables: Map>; }; -export class ReactFireError extends Error { - readonly name = 'ReactFireError'; - - constructor(readonly code: string, message: string, public customData?: Record) { - super(message); - - // Fix For ES5 - // https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work - Object.setPrototypeOf(this, ReactFireError.prototype); - } -} - export interface ReactFireOptions { idField?: string; initialData?: T | any; @@ -31,23 +21,7 @@ export interface ReactFireOptions { suspense?: boolean; } -export function checkOptions(options: ReactFireOptions, field: string) { - // make sure the field passed in is a valid key of ReactFire Options - if (field === 'idField' || field === 'initialData' || field === 'suspense') { - return options ? (options[field] as ReactFireOptions['idField'] | ReactFireOptions['initialData'] | ReactFireOptions['suspense']) : undefined; - } - - throw new Error(`Field "${field}" is not a valid key in ReactFireOptions`); -} - -export function checkinitialData(options: ReactFireOptions) { - return checkOptions(options, 'initialData'); -} - -export function checkIdField(options: ReactFireOptions) { - return checkOptions(options, 'idField'); -} - +export { ReactFireError, checkOptions, checkinitialData, checkIdField } from './utils.js'; export * from './auth.js'; export * from './database.js'; export * from './firebaseApp.js'; diff --git a/src/utils.ts b/src/utils.ts new file mode 100644 index 00000000..bfe1efcb --- /dev/null +++ b/src/utils.ts @@ -0,0 +1,30 @@ +import type { ReactFireOptions } from './index.js'; + +export class ReactFireError extends Error { + readonly name = 'ReactFireError'; + + constructor(readonly code: string, message: string, public customData?: Record) { + super(message); + + // Fix For ES5 + // https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work + Object.setPrototypeOf(this, ReactFireError.prototype); + } +} + +export function checkOptions(options: ReactFireOptions, field: string) { + // make sure the field passed in is a valid key of ReactFire Options + if (field === 'idField' || field === 'initialData' || field === 'suspense') { + return options ? (options[field] as ReactFireOptions['idField'] | ReactFireOptions['initialData'] | ReactFireOptions['suspense']) : undefined; + } + + throw new Error(`Field "${field}" is not a valid key in ReactFireOptions`); +} + +export function checkinitialData(options: ReactFireOptions) { + return checkOptions(options, 'initialData'); +} + +export function checkIdField(options: ReactFireOptions) { + return checkOptions(options, 'idField'); +} diff --git a/tsconfig.json b/tsconfig.json index 7cb9a9dd..43bd47c3 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,7 +2,7 @@ // see https://www.typescriptlang.org/tsconfig to better understand tsconfigs "include": ["src", "types"], "compilerOptions": { - "target": "es2015", + "target": "es2021", "module": "esnext", "lib": ["dom", "esnext"], "types": ["vitest/globals"], diff --git a/vite.config.ts b/vite.config.ts index 30d83cb9..b69d981e 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -63,13 +63,27 @@ export default defineConfig({ lib: { entry: resolve(__dirname, 'src/index.ts'), name: 'ReactFire', - fileName: 'index', }, rollupOptions: { external: externals, - output: { - globals: { react: 'React' }, - }, + output: [ + // Emit one ES module per source file so `"sideEffects": false` lets bundlers drop unused products + // (and their `firebase/*` imports) instead of pulling every Firebase SDK in through a single index.js. + { + format: 'es', + preserveModules: true, + preserveModulesRoot: 'src', + // Bundled dependencies must not land under a folder named node_modules: Node stops its package.json + // scope lookup at that name, so the files would lose this package's "type": "module". + entryFileNames: chunk => `${chunk.name.replace(/^node_modules\//, 'vendor/')}.js`, + }, + { + format: 'umd', + name: 'ReactFire', + entryFileNames: 'index.umd.cjs', + globals: { react: 'React' }, + }, + ], }, sourcemap: true, },