react-query-firebase 2.13.3 → 2.13.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.
Files changed (377) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.js +4 -0
  3. package/dist/react-native/analytics/index.d.ts +3 -0
  4. package/dist/react-native/analytics/index.js +3 -0
  5. package/{react-native/analytics/useAnalytics.ts → dist/react-native/analytics/useAnalytics.js} +1 -3
  6. package/{react-native → dist/react-native}/analytics/useLogEvent.js +1 -1
  7. package/{react-native → dist/react-native}/analytics/useSetAnalyticsCollectionEnabled.js +1 -1
  8. package/dist/react-native/auth/index.d.ts +19 -0
  9. package/dist/react-native/auth/index.js +19 -0
  10. package/{react-native/auth/useAuth.ts → dist/react-native/auth/useAuth.js} +1 -3
  11. package/{react-native → dist/react-native}/auth/useAuthStateReady.js +1 -1
  12. package/{react-native → dist/react-native}/auth/useCreateUserWitEmailAndPasswordMutation.js +2 -2
  13. package/{react-native → dist/react-native}/auth/useCurrentUser.js +1 -1
  14. package/{react-native → dist/react-native}/auth/useIdToken.js +2 -2
  15. package/{react-native → dist/react-native}/auth/useLinkWithCredentialMutation.js +1 -1
  16. package/{react-native → dist/react-native}/auth/useReauthenticateWitCredentialMutation.js +1 -1
  17. package/{react-native → dist/react-native}/auth/useReauthenticateWitRedirectMutation.js +1 -1
  18. package/{react-native → dist/react-native}/auth/useSendEmailVerificationMutation.js +1 -1
  19. package/{react-native → dist/react-native}/auth/useSignInAnonymouslyMutation.js +2 -2
  20. package/{react-native → dist/react-native}/auth/useSignInWitEmailAndPasswordMutation.js +2 -2
  21. package/{react-native → dist/react-native}/auth/useSignInWitRedirectMutation.js +2 -2
  22. package/{react-native → dist/react-native}/auth/useSignInWithCredentialMutation.js +2 -2
  23. package/{react-native → dist/react-native}/auth/useSignOutMutation.js +2 -2
  24. package/{react-native → dist/react-native}/auth/useUpdateProfileMutation.js +1 -1
  25. package/{react-native → dist/react-native}/context/FirebaseContextProvider.js +1 -1
  26. package/dist/react-native/context/index.d.ts +1 -0
  27. package/dist/react-native/context/index.js +1 -0
  28. package/dist/react-native/firestore/index.d.ts +23 -0
  29. package/dist/react-native/firestore/index.js +23 -0
  30. package/{react-native → dist/react-native}/firestore/useAddDocMutation.d.ts +1 -1
  31. package/{react-native → dist/react-native}/firestore/useBatchWrite.js +1 -1
  32. package/{react-native → dist/react-native}/firestore/useCollectionReference.d.ts +1 -1
  33. package/{react-native → dist/react-native}/firestore/useCollectionReference.js +1 -1
  34. package/{react-native → dist/react-native}/firestore/useCompositeFilter.d.ts +2 -2
  35. package/{react-native → dist/react-native}/firestore/useCompositeFilter.js +1 -1
  36. package/{react-native → dist/react-native}/firestore/useCountQuery.d.ts +2 -2
  37. package/{react-native → dist/react-native}/firestore/useDeleteDocMutation.d.ts +1 -1
  38. package/{react-native → dist/react-native}/firestore/useDocReference.d.ts +2 -2
  39. package/{react-native → dist/react-native}/firestore/useDocReference.js +2 -2
  40. package/{react-native → dist/react-native}/firestore/useDocReferences.d.ts +2 -2
  41. package/{react-native → dist/react-native}/firestore/useDocReferences.js +2 -2
  42. package/{web → dist/react-native}/firestore/useEnsureDoc.d.ts +2 -2
  43. package/{react-native → dist/react-native}/firestore/useEnsureDoc.js +3 -3
  44. package/{react-native/firestore/useFirestore.ts → dist/react-native/firestore/useFirestore.js} +1 -2
  45. package/{react-native → dist/react-native}/firestore/useGetDocData.d.ts +2 -2
  46. package/{web → dist/react-native}/firestore/useGetDocData.js +2 -2
  47. package/{react-native → dist/react-native}/firestore/useGetRealtimeDocData.d.ts +1 -1
  48. package/{react-native → dist/react-native}/firestore/useGetRealtimeDocData.js +1 -1
  49. package/{react-native → dist/react-native}/firestore/useInfiniteQuery.d.ts +2 -2
  50. package/{react-native → dist/react-native}/firestore/useQuery.d.ts +2 -2
  51. package/{react-native → dist/react-native}/firestore/useQueryConstraints.d.ts +2 -2
  52. package/{react-native → dist/react-native}/firestore/useQueryConstraints.js +1 -1
  53. package/{react-native → dist/react-native}/firestore/useRunTransaction.js +1 -1
  54. package/{react-native → dist/react-native}/firestore/useSetDocMutation.d.ts +1 -1
  55. package/{react-native → dist/react-native}/firestore/useUpdateDocMutation.d.ts +1 -1
  56. package/{react-native → dist/react-native}/firestore/utils/buildCompositeFilter.d.ts +1 -1
  57. package/{react-native → dist/react-native}/firestore/utils/buildQueryConstraint.d.ts +1 -1
  58. package/{react-native → dist/react-native}/firestore/utils/getDocData.d.ts +2 -2
  59. package/{react-native → dist/react-native}/firestore/utils/getDocData.js +1 -1
  60. package/{react-native → dist/react-native}/firestore/utils/getDocRef.d.ts +1 -1
  61. package/{react-native → dist/react-native}/firestore/utils/getDocSnap.d.ts +2 -2
  62. package/{react-native → dist/react-native}/firestore/utils/getDocSnap.js +1 -1
  63. package/dist/react-native/index.d.ts +1 -0
  64. package/dist/react-native/index.js +1 -0
  65. package/dist/react-native/remoteConfig/index.d.ts +3 -0
  66. package/dist/react-native/remoteConfig/index.js +3 -0
  67. package/{react-native → dist/react-native}/remoteConfig/useFetchAndActivate.js +1 -1
  68. package/{react-native → dist/react-native}/remoteConfig/useGetValue.js +1 -1
  69. package/{react-native/remoteConfig/useRemoteConfig.ts → dist/react-native/remoteConfig/useRemoteConfig.js} +1 -2
  70. package/{types → dist/types}/QueryConstraints.d.ts +1 -1
  71. package/dist/types/index.d.ts +2 -0
  72. package/dist/types/index.js +2 -0
  73. package/dist/web/analytics/index.d.ts +3 -0
  74. package/dist/web/analytics/index.js +3 -0
  75. package/{web/analytics/useAnalytics.ts → dist/web/analytics/useAnalytics.js} +1 -3
  76. package/{web → dist/web}/analytics/useLogEvent.js +1 -1
  77. package/{web → dist/web}/analytics/useSetAnalyticsCollectionEnabled.js +1 -1
  78. package/dist/web/auth/index.d.ts +20 -0
  79. package/dist/web/auth/index.js +20 -0
  80. package/{web/auth/useAuth.ts → dist/web/auth/useAuth.js} +1 -3
  81. package/{web → dist/web}/auth/useAuthStateReady.js +1 -1
  82. package/{web → dist/web}/auth/useCreateUserWitEmailAndPasswordMutation.js +2 -2
  83. package/{web → dist/web}/auth/useCurrentUser.js +1 -1
  84. package/{web → dist/web}/auth/useGetRedirectResultMutation.js +2 -2
  85. package/{web → dist/web}/auth/useIdToken.js +2 -2
  86. package/{web → dist/web}/auth/useLinkWithCredentialMutation.js +1 -1
  87. package/{web → dist/web}/auth/useReauthenticateWitCredentialMutation.js +1 -1
  88. package/{web → dist/web}/auth/useReauthenticateWitRedirectMutation.js +1 -1
  89. package/{web → dist/web}/auth/useSendEmailVerificationMutation.js +1 -1
  90. package/{web → dist/web}/auth/useSignInAnonymouslyMutation.js +2 -2
  91. package/{web → dist/web}/auth/useSignInWitEmailAndPasswordMutation.js +2 -2
  92. package/{web → dist/web}/auth/useSignInWitRedirectMutation.js +2 -2
  93. package/{web → dist/web}/auth/useSignInWithCredentialMutation.js +2 -2
  94. package/{web → dist/web}/auth/useSignOutMutation.js +2 -2
  95. package/{web → dist/web}/auth/useUpdateProfileMutation.js +1 -1
  96. package/{web → dist/web}/context/FirebaseContextProvider.js +1 -1
  97. package/dist/web/context/index.d.ts +1 -0
  98. package/dist/web/context/index.js +1 -0
  99. package/dist/web/firestore/index.d.ts +23 -0
  100. package/dist/web/firestore/index.js +23 -0
  101. package/{web → dist/web}/firestore/useAddDocMutation.d.ts +1 -1
  102. package/{web → dist/web}/firestore/useBatchWrite.js +1 -1
  103. package/{web → dist/web}/firestore/useCollectionReference.d.ts +1 -1
  104. package/{web → dist/web}/firestore/useCollectionReference.js +1 -1
  105. package/{web → dist/web}/firestore/useCompositeFilter.d.ts +2 -2
  106. package/{web → dist/web}/firestore/useCompositeFilter.js +1 -1
  107. package/{web → dist/web}/firestore/useCountQuery.d.ts +2 -2
  108. package/{web → dist/web}/firestore/useDeleteDocMutation.d.ts +1 -1
  109. package/{web → dist/web}/firestore/useDocReference.d.ts +2 -2
  110. package/{web → dist/web}/firestore/useDocReference.js +2 -2
  111. package/{web → dist/web}/firestore/useDocReferences.d.ts +2 -2
  112. package/{web → dist/web}/firestore/useDocReferences.js +2 -2
  113. package/{react-native → dist/web}/firestore/useEnsureDoc.d.ts +2 -2
  114. package/{web → dist/web}/firestore/useEnsureDoc.js +3 -3
  115. package/{web/firestore/useFirestore.ts → dist/web/firestore/useFirestore.js} +1 -2
  116. package/{web → dist/web}/firestore/useGetDocData.d.ts +2 -2
  117. package/{react-native → dist/web}/firestore/useGetDocData.js +2 -2
  118. package/{web → dist/web}/firestore/useGetRealtimeDocData.d.ts +1 -1
  119. package/{web → dist/web}/firestore/useGetRealtimeDocData.js +1 -1
  120. package/{web → dist/web}/firestore/useInfiniteQuery.d.ts +2 -2
  121. package/{web → dist/web}/firestore/useQuery.d.ts +2 -2
  122. package/{web → dist/web}/firestore/useQueryConstraints.d.ts +2 -2
  123. package/{web → dist/web}/firestore/useQueryConstraints.js +1 -1
  124. package/{web → dist/web}/firestore/useRunTransaction.js +1 -1
  125. package/{web → dist/web}/firestore/useSetDocMutation.d.ts +1 -1
  126. package/{web → dist/web}/firestore/useUpdateDocMutation.d.ts +1 -1
  127. package/{web → dist/web}/firestore/utils/buildCompositeFilter.d.ts +1 -1
  128. package/{web → dist/web}/firestore/utils/buildQueryConstraint.d.ts +1 -1
  129. package/{web → dist/web}/firestore/utils/getDocData.d.ts +2 -2
  130. package/{web → dist/web}/firestore/utils/getDocData.js +1 -1
  131. package/{web → dist/web}/firestore/utils/getDocRef.d.ts +1 -1
  132. package/{web → dist/web}/firestore/utils/getDocSnap.d.ts +2 -2
  133. package/{web → dist/web}/firestore/utils/getDocSnap.js +1 -1
  134. package/dist/web/index.d.ts +1 -0
  135. package/dist/web/index.js +1 -0
  136. package/dist/web/remoteConfig/index.d.ts +3 -0
  137. package/dist/web/remoteConfig/index.js +3 -0
  138. package/{web → dist/web}/remoteConfig/useFetchAndActivate.js +1 -1
  139. package/{web → dist/web}/remoteConfig/useGetValue.js +1 -1
  140. package/{web/remoteConfig/useRemoteConfig.ts → dist/web/remoteConfig/useRemoteConfig.js} +1 -2
  141. package/package.json +37 -17
  142. package/react-native/analytics/index.d.ts +0 -3
  143. package/react-native/analytics/index.js +0 -3
  144. package/react-native/analytics/index.ts +0 -3
  145. package/react-native/analytics/useAnalytics.js +0 -10
  146. package/react-native/analytics/useLogEvent.ts +0 -34
  147. package/react-native/analytics/useSetAnalyticsCollectionEnabled.ts +0 -22
  148. package/react-native/auth/index.d.ts +0 -19
  149. package/react-native/auth/index.js +0 -19
  150. package/react-native/auth/index.ts +0 -19
  151. package/react-native/auth/mutation-keys.ts +0 -22
  152. package/react-native/auth/useAppleAuthProviderCredential.ts +0 -31
  153. package/react-native/auth/useAuth.js +0 -10
  154. package/react-native/auth/useAuthStateReady.ts +0 -39
  155. package/react-native/auth/useCreateUserWitEmailAndPasswordMutation.ts +0 -38
  156. package/react-native/auth/useCurrentUser.ts +0 -26
  157. package/react-native/auth/useEmailAuthProviderCredential.ts +0 -38
  158. package/react-native/auth/useFacebookAuthProviderCredential.ts +0 -31
  159. package/react-native/auth/useIdToken.ts +0 -83
  160. package/react-native/auth/useLinkWithCredentialMutation.ts +0 -35
  161. package/react-native/auth/useReauthenticateWitCredentialMutation.ts +0 -36
  162. package/react-native/auth/useReauthenticateWitRedirectMutation.ts +0 -42
  163. package/react-native/auth/useSendEmailVerificationMutation.ts +0 -33
  164. package/react-native/auth/useSignInAnonymouslyMutation.ts +0 -52
  165. package/react-native/auth/useSignInWitEmailAndPasswordMutation.ts +0 -39
  166. package/react-native/auth/useSignInWitRedirectMutation.ts +0 -38
  167. package/react-native/auth/useSignInWithCredentialMutation.ts +0 -36
  168. package/react-native/auth/useSignOutMutation.ts +0 -28
  169. package/react-native/auth/useUpdateProfileMutation.ts +0 -30
  170. package/react-native/context/FirebaseContext.ts +0 -25
  171. package/react-native/context/FirebaseContextProvider.tsx +0 -264
  172. package/react-native/context/index.d.ts +0 -1
  173. package/react-native/context/index.js +0 -1
  174. package/react-native/context/index.ts +0 -1
  175. package/react-native/firestore/index.d.ts +0 -23
  176. package/react-native/firestore/index.js +0 -23
  177. package/react-native/firestore/index.ts +0 -23
  178. package/react-native/firestore/useAddDocMutation.ts +0 -80
  179. package/react-native/firestore/useBatchWrite.ts +0 -58
  180. package/react-native/firestore/useCollectionReference.ts +0 -58
  181. package/react-native/firestore/useCompositeFilter.ts +0 -60
  182. package/react-native/firestore/useCountQuery.ts +0 -85
  183. package/react-native/firestore/useDeleteDocMutation.ts +0 -71
  184. package/react-native/firestore/useDocReference.ts +0 -42
  185. package/react-native/firestore/useDocReferences.ts +0 -40
  186. package/react-native/firestore/useEnsureDoc.ts +0 -79
  187. package/react-native/firestore/useFirestore.js +0 -13
  188. package/react-native/firestore/useGetDocData.ts +0 -52
  189. package/react-native/firestore/useGetRealtimeDocData.ts +0 -106
  190. package/react-native/firestore/useInfiniteQuery.ts +0 -115
  191. package/react-native/firestore/useQuery.ts +0 -89
  192. package/react-native/firestore/useQueryConstraints.ts +0 -44
  193. package/react-native/firestore/useRunTransaction.ts +0 -55
  194. package/react-native/firestore/useSetDocMutation.ts +0 -76
  195. package/react-native/firestore/useUpdateDocMutation.ts +0 -77
  196. package/react-native/firestore/utils/buildCompositeFilter.ts +0 -75
  197. package/react-native/firestore/utils/buildQueryConstraint.ts +0 -54
  198. package/react-native/firestore/utils/getDocData.ts +0 -33
  199. package/react-native/firestore/utils/getDocRef.ts +0 -41
  200. package/react-native/firestore/utils/getDocSnap.ts +0 -34
  201. package/react-native/index.d.ts +0 -1
  202. package/react-native/index.js +0 -1
  203. package/react-native/index.ts +0 -1
  204. package/react-native/remoteConfig/index.d.ts +0 -3
  205. package/react-native/remoteConfig/index.js +0 -3
  206. package/react-native/remoteConfig/index.ts +0 -3
  207. package/react-native/remoteConfig/useFetchAndActivate.ts +0 -36
  208. package/react-native/remoteConfig/useGetValue.ts +0 -16
  209. package/react-native/remoteConfig/useRemoteConfig.js +0 -10
  210. package/types/AppModel.ts +0 -10
  211. package/types/QueryConstraints.ts +0 -57
  212. package/types/index.d.ts +0 -2
  213. package/types/index.js +0 -2
  214. package/types/index.ts +0 -2
  215. package/web/analytics/index.d.ts +0 -3
  216. package/web/analytics/index.js +0 -3
  217. package/web/analytics/index.ts +0 -3
  218. package/web/analytics/useAnalytics.js +0 -10
  219. package/web/analytics/useLogEvent.ts +0 -34
  220. package/web/analytics/useSetAnalyticsCollectionEnabled.ts +0 -22
  221. package/web/auth/index.d.ts +0 -20
  222. package/web/auth/index.js +0 -20
  223. package/web/auth/index.ts +0 -20
  224. package/web/auth/mutation-keys.ts +0 -23
  225. package/web/auth/useAppleAuthProviderCredential.ts +0 -32
  226. package/web/auth/useAuth.js +0 -10
  227. package/web/auth/useAuthStateReady.ts +0 -30
  228. package/web/auth/useCreateUserWitEmailAndPasswordMutation.ts +0 -33
  229. package/web/auth/useCurrentUser.ts +0 -25
  230. package/web/auth/useEmailAuthProviderCredential.ts +0 -38
  231. package/web/auth/useFacebookAuthProviderCredential.ts +0 -31
  232. package/web/auth/useGetRedirectResultMutation.ts +0 -27
  233. package/web/auth/useIdToken.ts +0 -83
  234. package/web/auth/useLinkWithCredentialMutation.ts +0 -30
  235. package/web/auth/useReauthenticateWitCredentialMutation.ts +0 -31
  236. package/web/auth/useReauthenticateWitRedirectMutation.ts +0 -37
  237. package/web/auth/useSendEmailVerificationMutation.ts +0 -28
  238. package/web/auth/useSignInAnonymouslyMutation.ts +0 -49
  239. package/web/auth/useSignInWitEmailAndPasswordMutation.ts +0 -34
  240. package/web/auth/useSignInWitRedirectMutation.ts +0 -33
  241. package/web/auth/useSignInWithCredentialMutation.ts +0 -31
  242. package/web/auth/useSignOutMutation.ts +0 -25
  243. package/web/auth/useUpdateProfileMutation.ts +0 -30
  244. package/web/context/FirebaseContext.ts +0 -25
  245. package/web/context/FirebaseContextProvider.tsx +0 -263
  246. package/web/context/index.d.ts +0 -1
  247. package/web/context/index.js +0 -1
  248. package/web/context/index.ts +0 -1
  249. package/web/firestore/index.d.ts +0 -23
  250. package/web/firestore/index.js +0 -23
  251. package/web/firestore/index.ts +0 -23
  252. package/web/firestore/useAddDocMutation.ts +0 -74
  253. package/web/firestore/useBatchWrite.ts +0 -58
  254. package/web/firestore/useCollectionReference.ts +0 -58
  255. package/web/firestore/useCompositeFilter.ts +0 -55
  256. package/web/firestore/useCountQuery.ts +0 -90
  257. package/web/firestore/useDeleteDocMutation.ts +0 -69
  258. package/web/firestore/useDocReference.ts +0 -43
  259. package/web/firestore/useDocReferences.ts +0 -40
  260. package/web/firestore/useEnsureDoc.ts +0 -92
  261. package/web/firestore/useFirestore.js +0 -13
  262. package/web/firestore/useGetDocData.ts +0 -52
  263. package/web/firestore/useGetRealtimeDocData.ts +0 -105
  264. package/web/firestore/useInfiniteQuery.ts +0 -117
  265. package/web/firestore/useQuery.ts +0 -94
  266. package/web/firestore/useQueryConstraints.ts +0 -44
  267. package/web/firestore/useRunTransaction.ts +0 -56
  268. package/web/firestore/useSetDocMutation.ts +0 -77
  269. package/web/firestore/useUpdateDocMutation.ts +0 -78
  270. package/web/firestore/utils/buildCompositeFilter.ts +0 -73
  271. package/web/firestore/utils/buildQueryConstraint.ts +0 -55
  272. package/web/firestore/utils/getDocData.ts +0 -33
  273. package/web/firestore/utils/getDocRef.ts +0 -43
  274. package/web/firestore/utils/getDocSnap.ts +0 -34
  275. package/web/index.d.ts +0 -1
  276. package/web/index.js +0 -1
  277. package/web/index.ts +0 -1
  278. package/web/remoteConfig/index.d.ts +0 -3
  279. package/web/remoteConfig/index.js +0 -3
  280. package/web/remoteConfig/index.ts +0 -3
  281. package/web/remoteConfig/useFetchAndActivate.ts +0 -36
  282. package/web/remoteConfig/useGetValue.ts +0 -16
  283. package/web/remoteConfig/useRemoteConfig.js +0 -10
  284. /package/{react-native → dist/react-native}/analytics/useAnalytics.d.ts +0 -0
  285. /package/{react-native → dist/react-native}/analytics/useLogEvent.d.ts +0 -0
  286. /package/{react-native → dist/react-native}/analytics/useSetAnalyticsCollectionEnabled.d.ts +0 -0
  287. /package/{react-native → dist/react-native}/auth/mutation-keys.d.ts +0 -0
  288. /package/{react-native → dist/react-native}/auth/mutation-keys.js +0 -0
  289. /package/{react-native → dist/react-native}/auth/useAppleAuthProviderCredential.d.ts +0 -0
  290. /package/{react-native → dist/react-native}/auth/useAppleAuthProviderCredential.js +0 -0
  291. /package/{react-native → dist/react-native}/auth/useAuth.d.ts +0 -0
  292. /package/{react-native → dist/react-native}/auth/useAuthStateReady.d.ts +0 -0
  293. /package/{react-native → dist/react-native}/auth/useCreateUserWitEmailAndPasswordMutation.d.ts +0 -0
  294. /package/{react-native → dist/react-native}/auth/useCurrentUser.d.ts +0 -0
  295. /package/{react-native → dist/react-native}/auth/useEmailAuthProviderCredential.d.ts +0 -0
  296. /package/{react-native → dist/react-native}/auth/useEmailAuthProviderCredential.js +0 -0
  297. /package/{react-native → dist/react-native}/auth/useFacebookAuthProviderCredential.d.ts +0 -0
  298. /package/{react-native → dist/react-native}/auth/useFacebookAuthProviderCredential.js +0 -0
  299. /package/{react-native → dist/react-native}/auth/useIdToken.d.ts +0 -0
  300. /package/{react-native → dist/react-native}/auth/useLinkWithCredentialMutation.d.ts +0 -0
  301. /package/{react-native → dist/react-native}/auth/useReauthenticateWitCredentialMutation.d.ts +0 -0
  302. /package/{react-native → dist/react-native}/auth/useReauthenticateWitRedirectMutation.d.ts +0 -0
  303. /package/{react-native → dist/react-native}/auth/useSendEmailVerificationMutation.d.ts +0 -0
  304. /package/{react-native → dist/react-native}/auth/useSignInAnonymouslyMutation.d.ts +0 -0
  305. /package/{react-native → dist/react-native}/auth/useSignInWitEmailAndPasswordMutation.d.ts +0 -0
  306. /package/{react-native → dist/react-native}/auth/useSignInWitRedirectMutation.d.ts +0 -0
  307. /package/{react-native → dist/react-native}/auth/useSignInWithCredentialMutation.d.ts +0 -0
  308. /package/{react-native → dist/react-native}/auth/useSignOutMutation.d.ts +0 -0
  309. /package/{react-native → dist/react-native}/auth/useUpdateProfileMutation.d.ts +0 -0
  310. /package/{react-native → dist/react-native}/context/FirebaseContext.d.ts +0 -0
  311. /package/{react-native → dist/react-native}/context/FirebaseContext.js +0 -0
  312. /package/{react-native → dist/react-native}/context/FirebaseContextProvider.d.ts +0 -0
  313. /package/{react-native → dist/react-native}/firestore/useAddDocMutation.js +0 -0
  314. /package/{react-native → dist/react-native}/firestore/useBatchWrite.d.ts +0 -0
  315. /package/{react-native → dist/react-native}/firestore/useCountQuery.js +0 -0
  316. /package/{react-native → dist/react-native}/firestore/useDeleteDocMutation.js +0 -0
  317. /package/{react-native → dist/react-native}/firestore/useFirestore.d.ts +0 -0
  318. /package/{react-native → dist/react-native}/firestore/useInfiniteQuery.js +0 -0
  319. /package/{react-native → dist/react-native}/firestore/useQuery.js +0 -0
  320. /package/{react-native → dist/react-native}/firestore/useRunTransaction.d.ts +0 -0
  321. /package/{react-native → dist/react-native}/firestore/useSetDocMutation.js +0 -0
  322. /package/{react-native → dist/react-native}/firestore/useUpdateDocMutation.js +0 -0
  323. /package/{react-native → dist/react-native}/firestore/utils/buildCompositeFilter.js +0 -0
  324. /package/{react-native → dist/react-native}/firestore/utils/buildQueryConstraint.js +0 -0
  325. /package/{react-native → dist/react-native}/firestore/utils/getDocRef.js +0 -0
  326. /package/{react-native → dist/react-native}/remoteConfig/useFetchAndActivate.d.ts +0 -0
  327. /package/{react-native → dist/react-native}/remoteConfig/useGetValue.d.ts +0 -0
  328. /package/{react-native → dist/react-native}/remoteConfig/useRemoteConfig.d.ts +0 -0
  329. /package/{types → dist/types}/AppModel.d.ts +0 -0
  330. /package/{types → dist/types}/AppModel.js +0 -0
  331. /package/{types → dist/types}/QueryConstraints.js +0 -0
  332. /package/{web → dist/web}/analytics/useAnalytics.d.ts +0 -0
  333. /package/{web → dist/web}/analytics/useLogEvent.d.ts +0 -0
  334. /package/{web → dist/web}/analytics/useSetAnalyticsCollectionEnabled.d.ts +0 -0
  335. /package/{web → dist/web}/auth/mutation-keys.d.ts +0 -0
  336. /package/{web → dist/web}/auth/mutation-keys.js +0 -0
  337. /package/{web → dist/web}/auth/useAppleAuthProviderCredential.d.ts +0 -0
  338. /package/{web → dist/web}/auth/useAppleAuthProviderCredential.js +0 -0
  339. /package/{web → dist/web}/auth/useAuth.d.ts +0 -0
  340. /package/{web → dist/web}/auth/useAuthStateReady.d.ts +0 -0
  341. /package/{web → dist/web}/auth/useCreateUserWitEmailAndPasswordMutation.d.ts +0 -0
  342. /package/{web → dist/web}/auth/useCurrentUser.d.ts +0 -0
  343. /package/{web → dist/web}/auth/useEmailAuthProviderCredential.d.ts +0 -0
  344. /package/{web → dist/web}/auth/useEmailAuthProviderCredential.js +0 -0
  345. /package/{web → dist/web}/auth/useFacebookAuthProviderCredential.d.ts +0 -0
  346. /package/{web → dist/web}/auth/useFacebookAuthProviderCredential.js +0 -0
  347. /package/{web → dist/web}/auth/useGetRedirectResultMutation.d.ts +0 -0
  348. /package/{web → dist/web}/auth/useIdToken.d.ts +0 -0
  349. /package/{web → dist/web}/auth/useLinkWithCredentialMutation.d.ts +0 -0
  350. /package/{web → dist/web}/auth/useReauthenticateWitCredentialMutation.d.ts +0 -0
  351. /package/{web → dist/web}/auth/useReauthenticateWitRedirectMutation.d.ts +0 -0
  352. /package/{web → dist/web}/auth/useSendEmailVerificationMutation.d.ts +0 -0
  353. /package/{web → dist/web}/auth/useSignInAnonymouslyMutation.d.ts +0 -0
  354. /package/{web → dist/web}/auth/useSignInWitEmailAndPasswordMutation.d.ts +0 -0
  355. /package/{web → dist/web}/auth/useSignInWitRedirectMutation.d.ts +0 -0
  356. /package/{web → dist/web}/auth/useSignInWithCredentialMutation.d.ts +0 -0
  357. /package/{web → dist/web}/auth/useSignOutMutation.d.ts +0 -0
  358. /package/{web → dist/web}/auth/useUpdateProfileMutation.d.ts +0 -0
  359. /package/{web → dist/web}/context/FirebaseContext.d.ts +0 -0
  360. /package/{web → dist/web}/context/FirebaseContext.js +0 -0
  361. /package/{web → dist/web}/context/FirebaseContextProvider.d.ts +0 -0
  362. /package/{web → dist/web}/firestore/useAddDocMutation.js +0 -0
  363. /package/{web → dist/web}/firestore/useBatchWrite.d.ts +0 -0
  364. /package/{web → dist/web}/firestore/useCountQuery.js +0 -0
  365. /package/{web → dist/web}/firestore/useDeleteDocMutation.js +0 -0
  366. /package/{web → dist/web}/firestore/useFirestore.d.ts +0 -0
  367. /package/{web → dist/web}/firestore/useInfiniteQuery.js +0 -0
  368. /package/{web → dist/web}/firestore/useQuery.js +0 -0
  369. /package/{web → dist/web}/firestore/useRunTransaction.d.ts +0 -0
  370. /package/{web → dist/web}/firestore/useSetDocMutation.js +0 -0
  371. /package/{web → dist/web}/firestore/useUpdateDocMutation.js +0 -0
  372. /package/{web → dist/web}/firestore/utils/buildCompositeFilter.js +0 -0
  373. /package/{web → dist/web}/firestore/utils/buildQueryConstraint.js +0 -0
  374. /package/{web → dist/web}/firestore/utils/getDocRef.js +0 -0
  375. /package/{web → dist/web}/remoteConfig/useFetchAndActivate.d.ts +0 -0
  376. /package/{web → dist/web}/remoteConfig/useGetValue.d.ts +0 -0
  377. /package/{web → dist/web}/remoteConfig/useRemoteConfig.d.ts +0 -0
@@ -1,5 +1,5 @@
1
1
  import { useMemo } from "react";
2
- import { buildQueryConstraint } from "./utils/buildQueryConstraint";
2
+ import { buildQueryConstraint } from "./utils/buildQueryConstraint.js";
3
3
  /**
4
4
  * A hook to build a list of non-filter query constraints for firebase queries.
5
5
  * It uses buildQueryConstraint method and useMemo hook.
@@ -1,6 +1,6 @@
1
1
  import { useMutation } from "@tanstack/react-query";
2
2
  import { runTransaction } from "firebase/firestore";
3
- import { useFirestore } from "./useFirestore";
3
+ import { useFirestore } from "./useFirestore.js";
4
4
  /**
5
5
  * Executes a Firestore transaction
6
6
  *
@@ -1,7 +1,7 @@
1
1
  import { UseMutationOptions } from "@tanstack/react-query";
2
2
  import { DocumentReference, WithFieldValue } from "firebase/firestore";
3
3
  import { FirebaseError } from "firebase/app";
4
- import { AppModel } from "../../types";
4
+ import { AppModel } from "../../types/index.js";
5
5
  /**
6
6
  * @inline
7
7
  */
@@ -1,7 +1,7 @@
1
1
  import { UseMutationOptions } from "@tanstack/react-query";
2
2
  import { DocumentReference, UpdateData } from "firebase/firestore";
3
3
  import { FirebaseError } from "firebase/app";
4
- import { AppModel } from "../../types";
4
+ import { AppModel } from "../../types/index.js";
5
5
  /**
6
6
  * @inline
7
7
  */
@@ -1,5 +1,5 @@
1
1
  import { QueryFilterConstraint as FBQueryFilterConstraint, QueryCompositeFilterConstraint as FBQueryCompositeFilterConstraint, WhereFilterOp } from "firebase/firestore";
2
- import { AppModel } from "../../../types/AppModel";
2
+ import { AppModel } from "../../../types/AppModel.js";
3
3
  export type QueryFilterConstraint = FBQueryFilterConstraint | FBQueryCompositeFilterConstraint;
4
4
  export type QueryElement<AppModelType extends AppModel = AppModel> = {
5
5
  operator?: "OR" | "AND";
@@ -1,5 +1,5 @@
1
1
  import { QueryNonFilterConstraint } from "firebase/firestore";
2
- import { AppModel, NonFilterQueryConstraint } from "../../../types";
2
+ import { AppModel, NonFilterQueryConstraint } from "../../../types/index.js";
3
3
  /**
4
4
  * A generic mothod to build query constraints for firebase
5
5
  *
@@ -1,5 +1,5 @@
1
- import { AppModel } from "../../../types";
2
- import { GetDocSnapOptions } from "./getDocSnap";
1
+ import { AppModel } from "../../../types/index.js";
2
+ import { GetDocSnapOptions } from "./getDocSnap.js";
3
3
  /**
4
4
  * @inline
5
5
  */
@@ -1,4 +1,4 @@
1
- import { getDocSnap } from "./getDocSnap";
1
+ import { getDocSnap } from "./getDocSnap.js";
2
2
  /**
3
3
  * Asynchronously retrieves document data from a specified database reference.
4
4
  * Utilizes the helper function `getDocSnap` to fetch the document snapshot and
@@ -1,5 +1,5 @@
1
1
  import { CollectionReference, DocumentReference, Firestore } from "firebase/firestore";
2
- import { AppModel } from "../../../types";
2
+ import { AppModel } from "../../../types/index.js";
3
3
  /**
4
4
  * @inline
5
5
  */
@@ -1,5 +1,5 @@
1
- import { AppModel } from "../../../types";
2
- import { GetDocRefOptions } from "./getDocRef";
1
+ import { AppModel } from "../../../types/index.js";
2
+ import { GetDocRefOptions } from "./getDocRef.js";
3
3
  /**
4
4
  * @inline
5
5
  */
@@ -1,5 +1,5 @@
1
1
  import { getDoc as firestoreGetDoc } from "firebase/firestore";
2
- import { getDocRef } from "./getDocRef";
2
+ import { getDocRef } from "./getDocRef.js";
3
3
  /**
4
4
  * Asynchronously retrieves a document snapshot from Firestore using a specified document reference
5
5
  * or path information. This function handles getting the appropriate document reference based on
@@ -0,0 +1 @@
1
+ export * from "./context/index.js";
@@ -0,0 +1 @@
1
+ export * from "./context/index.js";
@@ -0,0 +1,3 @@
1
+ export * from "./useFetchAndActivate.js";
2
+ export * from "./useGetValue.js";
3
+ export * from "./useRemoteConfig.js";
@@ -0,0 +1,3 @@
1
+ export * from "./useFetchAndActivate.js";
2
+ export * from "./useGetValue.js";
3
+ export * from "./useRemoteConfig.js";
@@ -1,6 +1,6 @@
1
1
  import { ensureInitialized, fetchAndActivate } from "firebase/remote-config";
2
2
  import { useCallback, useMemo, useState } from "react";
3
- import { useRemoteConfig } from "./useRemoteConfig";
3
+ import { useRemoteConfig } from "./useRemoteConfig.js";
4
4
  /**
5
5
  * Custom hook to fetch and activate remote configuration settings.
6
6
  * Initializes remote configuration, fetches, activates it, and tracks the fetch status.
@@ -1,6 +1,6 @@
1
1
  import { getValue } from "firebase/remote-config";
2
2
  import { useMemo } from "react";
3
- import { useRemoteConfig } from "./useRemoteConfig";
3
+ import { useRemoteConfig } from "./useRemoteConfig.js";
4
4
  /**
5
5
  * Custom hook to retrieve a value associated with a specified key from remote configuration.
6
6
  * Utilizes memoization to optimize performance by recalculating the result only if dependencies change.
@@ -1,6 +1,5 @@
1
1
  import { useContext } from "react";
2
- import { FirebaseContext } from "../context/FirebaseContext";
3
-
2
+ import { FirebaseContext } from "../context/FirebaseContext.js";
4
3
  /**
5
4
  * Hook to access the Firebase Remote Config instance from the context.
6
5
  * @returns {RemoteConfig} The remoteConfig object from the Firebase context.
package/package.json CHANGED
@@ -24,31 +24,31 @@
24
24
  "@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
25
25
  "@react-native-firebase/analytics": "^23.5.0",
26
26
  "@react-native-firebase/app": "^23.5.0",
27
- "@react-native-firebase/auth": "^23.5.0",
28
- "@react-native-firebase/crashlytics": "^23.5.0",
29
- "@react-native-firebase/firestore": "^23.5.0",
30
- "@react-native-firebase/installations": "^23.5.0",
31
- "@react-native-firebase/remote-config": "^23.5.0",
32
- "@tanstack/react-query": "^5.90.6",
33
- "@types/react": "^19.2.2",
27
+ "@react-native-firebase/auth": "^23.7.0",
28
+ "@react-native-firebase/crashlytics": "^23.7.0",
29
+ "@react-native-firebase/firestore": "^23.7.0",
30
+ "@react-native-firebase/installations": "^23.7.0",
31
+ "@react-native-firebase/remote-config": "^23.7.0",
32
+ "@tanstack/react-query": "^5.90.12",
33
+ "@types/react": "^19.2.7",
34
34
  "eslint": "^9.39.1",
35
35
  "eslint-config-prettier": "^10.1.8",
36
36
  "eslint-plugin-import": "^2.32.0",
37
- "eslint-plugin-jest": "^29.0.1",
37
+ "eslint-plugin-jest": "^29.2.1",
38
38
  "eslint-plugin-jsonc": "^2.21.0",
39
39
  "eslint-plugin-prettier": "^5.5.4",
40
40
  "eslint-plugin-react": "^7.37.5",
41
41
  "eslint-plugin-react-hooks": "^7.0.1",
42
42
  "firebase": "^12.5.0",
43
43
  "husky": "^9.1.7",
44
- "lint-staged": "^16.2.6",
45
- "prettier": "^3.6.2",
46
- "react": "^19.2.0",
47
- "typedoc": "^0.28.14",
44
+ "lint-staged": "^16.2.7",
45
+ "prettier": "^3.7.4",
46
+ "react": "^19.2.3",
47
+ "typedoc": "^0.28.15",
48
48
  "typedoc-plugin-markdown": "^4.9.0",
49
49
  "typedoc-vitepress-theme": "^1.1.2",
50
50
  "typescript": "^5.9.3",
51
- "typescript-eslint": "^8.46.3",
51
+ "typescript-eslint": "^8.49.0",
52
52
  "vitepress": "^1.6.4"
53
53
  },
54
54
  "homepage": "https://github.com/vpishuk/react-query-firebase",
@@ -64,10 +64,30 @@
64
64
  "type": "git",
65
65
  "url": "https://github.com/vpishuk/react-query-firebase.git"
66
66
  },
67
+ "exports": {
68
+ ".": {
69
+ "import": "./dist/index.js",
70
+ "require": "./dist/index.js",
71
+ "types": "./dist/index.d.ts"
72
+ },
73
+ "react-native": {
74
+ "import": "./dist/react-native/index.js",
75
+ "require": "./dist/react-native/index.js",
76
+ "types": "./dist/react-native/index.d.ts"
77
+ },
78
+ "web": {
79
+ "import": "./dist/web/index.js",
80
+ "require": "./dist/web/index.js",
81
+ "types": "./dist/web/index.d.ts"
82
+ },
83
+ "types": {
84
+ "import": "./dist/types/index.js",
85
+ "require": "./dist/types/index.js",
86
+ "types": "./dist/types/index.d.ts"
87
+ }
88
+ },
67
89
  "files": [
68
- "./web/",
69
- "./react-native/",
70
- "./types",
90
+ "./dist/",
71
91
  "package.json",
72
92
  "package-lock.json",
73
93
  "README.md",
@@ -84,5 +104,5 @@
84
104
  "docs:build": "vitepress build docs",
85
105
  "docs:preview": "vitepress preview docs"
86
106
  },
87
- "version": "2.13.3"
107
+ "version": "2.13.4"
88
108
  }
@@ -1,3 +0,0 @@
1
- export * from "./useLogEvent";
2
- export * from "./useAnalytics";
3
- export * from "./useSetAnalyticsCollectionEnabled";
@@ -1,3 +0,0 @@
1
- export * from "./useLogEvent";
2
- export * from "./useAnalytics";
3
- export * from "./useSetAnalyticsCollectionEnabled";
@@ -1,3 +0,0 @@
1
- export * from "./useLogEvent";
2
- export * from "./useAnalytics";
3
- export * from "./useSetAnalyticsCollectionEnabled";
@@ -1,10 +0,0 @@
1
- import { useContext } from "react";
2
- import { FirebaseContext } from "../context/FirebaseContext";
3
- /**
4
- * Hook to access Firebase analytics from the Firebase context.
5
- * @returns {any} The analytics object from the Firebase context.
6
- */
7
- export const useAnalytics = () => {
8
- const { analytics } = useContext(FirebaseContext);
9
- return analytics;
10
- };
@@ -1,34 +0,0 @@
1
- import { logEvent } from "@react-native-firebase/analytics";
2
- import { useCallback, useMemo } from "react";
3
- import { useAnalytics } from "./useAnalytics";
4
-
5
- type UseLogEventOptions = {
6
- eventName: string;
7
- eventParams?: {
8
- [key: string]: unknown;
9
- };
10
- };
11
-
12
- /**
13
- * Custom hook to create a log event function that logs an analytics event with specified parameters.
14
- * @param {Object} options - The options for the log event.
15
- * @param {string} options.eventName - The name of the event to be logged.
16
- * @param {Object} options.eventParams - The parameters to be sent along with the event.
17
- * @returns {Object} An object containing a `logEvent` function that, when called, logs the event.
18
- */
19
- export const useLogEvent = ({ eventName, eventParams }: UseLogEventOptions) => {
20
- const analytics = useAnalytics();
21
-
22
- const logEventCallback = useCallback(() => {
23
- if (analytics) {
24
- logEvent(analytics, eventName, eventParams);
25
- }
26
- }, [eventName, eventParams, analytics]);
27
-
28
- return useMemo(
29
- () => ({
30
- logEvent: logEventCallback
31
- }),
32
- [logEventCallback]
33
- );
34
- };
@@ -1,22 +0,0 @@
1
- import { setAnalyticsCollectionEnabled } from "@react-native-firebase/analytics";
2
- import { useEffect } from "react";
3
- import { useAnalytics } from "./useAnalytics";
4
-
5
- type UseSetAnalyticsCollectionEnabledOptions = {
6
- enabled?: boolean;
7
- };
8
-
9
- /**
10
- * Custom hook to enable or disable analytics collection
11
- * @param {Object} options - The options for hook.
12
- * @param {string} options.enabled - Flag that identifies if analytics collection is enabled.
13
- */
14
- export const useSetAnalyticsCollectionEnabled = ({ enabled = false }: UseSetAnalyticsCollectionEnabledOptions) => {
15
- const analytics = useAnalytics();
16
-
17
- useEffect(() => {
18
- if (analytics) {
19
- setAnalyticsCollectionEnabled(analytics, enabled);
20
- }
21
- }, [analytics, enabled]);
22
- };
@@ -1,19 +0,0 @@
1
- export * from "./mutation-keys";
2
- export * from "./useAuth";
3
- export * from "./useCreateUserWitEmailAndPasswordMutation";
4
- export * from "./useSendEmailVerificationMutation";
5
- export * from "./useSignInWitEmailAndPasswordMutation";
6
- export * from "./useCurrentUser";
7
- export * from "./useSignInWitRedirectMutation";
8
- export * from "./useUpdateProfileMutation";
9
- export * from "./useSignOutMutation";
10
- export * from "./useIdToken";
11
- export * from "./useReauthenticateWitCredentialMutation";
12
- export * from "./useReauthenticateWitRedirectMutation";
13
- export * from "./useAuthStateReady";
14
- export * from "./useSignInAnonymouslyMutation";
15
- export * from "./useEmailAuthProviderCredential";
16
- export * from "./useFacebookAuthProviderCredential";
17
- export * from "./useAppleAuthProviderCredential";
18
- export * from "./useLinkWithCredentialMutation";
19
- export * from "./useSignInWithCredentialMutation";
@@ -1,19 +0,0 @@
1
- export * from "./mutation-keys";
2
- export * from "./useAuth";
3
- export * from "./useCreateUserWitEmailAndPasswordMutation";
4
- export * from "./useSendEmailVerificationMutation";
5
- export * from "./useSignInWitEmailAndPasswordMutation";
6
- export * from "./useCurrentUser";
7
- export * from "./useSignInWitRedirectMutation";
8
- export * from "./useUpdateProfileMutation";
9
- export * from "./useSignOutMutation";
10
- export * from "./useIdToken";
11
- export * from "./useReauthenticateWitCredentialMutation";
12
- export * from "./useReauthenticateWitRedirectMutation";
13
- export * from "./useAuthStateReady";
14
- export * from "./useSignInAnonymouslyMutation";
15
- export * from "./useEmailAuthProviderCredential";
16
- export * from "./useFacebookAuthProviderCredential";
17
- export * from "./useAppleAuthProviderCredential";
18
- export * from "./useLinkWithCredentialMutation";
19
- export * from "./useSignInWithCredentialMutation";
@@ -1,19 +0,0 @@
1
- export * from "./mutation-keys";
2
- export * from "./useAuth";
3
- export * from "./useCreateUserWitEmailAndPasswordMutation";
4
- export * from "./useSendEmailVerificationMutation";
5
- export * from "./useSignInWitEmailAndPasswordMutation";
6
- export * from "./useCurrentUser";
7
- export * from "./useSignInWitRedirectMutation";
8
- export * from "./useUpdateProfileMutation";
9
- export * from "./useSignOutMutation";
10
- export * from "./useIdToken";
11
- export * from "./useReauthenticateWitCredentialMutation";
12
- export * from "./useReauthenticateWitRedirectMutation";
13
- export * from "./useAuthStateReady";
14
- export * from "./useSignInAnonymouslyMutation";
15
- export * from "./useEmailAuthProviderCredential";
16
- export * from "./useFacebookAuthProviderCredential";
17
- export * from "./useAppleAuthProviderCredential";
18
- export * from "./useLinkWithCredentialMutation";
19
- export * from "./useSignInWithCredentialMutation";
@@ -1,22 +0,0 @@
1
- export const CREATE_USER_WITH_EMAIL_AND_PASSWORD_MUTATION_KEY = [
2
- "FIREBASE",
3
- "AUTH",
4
- "CREATE_USER_WITH_EMAIL_AND_PASSWORD_MUTATION"
5
- ] as const;
6
- export const SEND_EMAIL_VERIFICATION_MUTATION_KEY = ["FIREBASE", "AUTH", "SEND_EMAIL_VERIFICATION_MUTATION"] as const;
7
- export const SIGN_IN_ANONYMOUSLY_MUTATION_KEY = ["FIREBASE", "AUTH", "SIGN_IN_ANONYMOUSLY_MUTATION"] as const;
8
- export const SIGN_IN_WITH_EMAIL_AND_PASSWORD_MUTATION_KEY = [
9
- "FIREBASE",
10
- "AUTH",
11
- "SIGN_IN_WITH_EMAIL_AND_PASSWORD_MUTATION"
12
- ] as const;
13
- export const SIGN_IN_WITH_REDIRECT_MUTATION_KEY = ["FIREBASE", "AUTH", "SIGN_IN_WITH_REDIRECT_MUTATION"] as const;
14
- export const SIGN_IN_WITH_CREDENTIAL_MUTATION_KEY = ["FIREBASE", "AUTH", "SIGN_IN_WITH_CREDENTIAL_MUTATION"] as const;
15
- export const LINK_WITH_CREDENTIAL_MUTATION_KEY = ["FIREBASE", "AUTH", "LINK_WITH_CREDENTIAL_MUTATION"] as const;
16
- export const SIGN_OUT_MUTATION_KEY = ["FIREBASE", "AUTH", "SIGN_OUT"] as const;
17
- export const REAUTHENTICATE_WITH_REDIRECT_MUTATION_KEY = ["FIREBASE", "AUTH", "REAUTHENTICATE_WITH_REDIRECT"] as const;
18
- export const REAUTHENTICATE_WITH_CREDENTIAL_MUTATION_KEY = [
19
- "FIREBASE",
20
- "AUTH",
21
- "REAUTHENTICATE_WITH_CREDENTIAL"
22
- ] as const;
@@ -1,31 +0,0 @@
1
- import { AppleAuthProvider, FirebaseAuthTypes } from "@react-native-firebase/auth";
2
- import { useCallback } from "react";
3
-
4
- type Credential = {
5
- token: string;
6
- nonce: string;
7
- };
8
-
9
- /**
10
- * A custom hook that returns an auth credential for facebook.
11
- *
12
- * @group Hook
13
- * @param {AuthProvider} provider alas of a provider
14
- *
15
- * @returns {AuthCredential}
16
- *
17
- * @example
18
- * ```jsx
19
- * export const MyComponent = () => {
20
- * const getCredential = useAppleAuthProviderCredential();
21
- * // ...
22
- * getCredential({token, nonce: ''})
23
- * };
24
- * ```
25
- */
26
-
27
- export const useAppleAuthProviderCredential = () => {
28
- return useCallback((credential: Credential): FirebaseAuthTypes.AuthCredential => {
29
- return AppleAuthProvider.credential(credential.token, credential.nonce);
30
- }, []);
31
- };
@@ -1,10 +0,0 @@
1
- import { useContext } from "react";
2
- import { FirebaseContext } from "../context/FirebaseContext";
3
- /**
4
- * Custom hook to retrieve the authentication object from the Firebase context.
5
- * @returns {Auth} The authentication object from the Firebase context.
6
- */
7
- export const useAuth = () => {
8
- const { auth } = useContext(FirebaseContext);
9
- return auth;
10
- };
@@ -1,39 +0,0 @@
1
- import { onAuthStateChanged } from "@react-native-firebase/auth";
2
- import { useEffect, useState } from "react";
3
- import { useAuth } from "./useAuth";
4
-
5
- /**
6
- * A custom hook that determines if the Firebase authentication state is ready.
7
- * It uses Firebase authentication to check if the auth state is ready and updates the state accordingly.
8
- *
9
- * @group Hook
10
- *
11
- * @returns {boolean}
12
- *
13
- * @example
14
- * ```jsx
15
- * export const MyComponent = () => {
16
- * const isAuthStateReady = useAuthStateReady();
17
- * console.log(isAuthStateReady);
18
- * };
19
- * ```
20
- */
21
- export const useAuthStateReady = () => {
22
- const firebaseAuth = useAuth();
23
-
24
- const [isAuthStateReady, setIsAuthStateReady] = useState(false);
25
-
26
- useEffect(() => {
27
- const subscription = onAuthStateChanged(firebaseAuth, () => {
28
- if (!isAuthStateReady) {
29
- setIsAuthStateReady(true);
30
- }
31
- });
32
-
33
- return () => {
34
- subscription();
35
- };
36
- }, [firebaseAuth, isAuthStateReady]);
37
-
38
- return isAuthStateReady;
39
- };
@@ -1,38 +0,0 @@
1
- import { useMutation, UseMutationOptions } from "@tanstack/react-query";
2
- import { createUserWithEmailAndPassword, FirebaseAuthTypes } from "@react-native-firebase/auth";
3
- import { ReactNativeFirebase } from "@react-native-firebase/app";
4
- import { useAuth } from "./useAuth";
5
- import { CREATE_USER_WITH_EMAIL_AND_PASSWORD_MUTATION_KEY } from "./mutation-keys";
6
-
7
- export type UseCreateUserWitEmailAndPasswordMutationVariables = {
8
- email: string;
9
- password: string;
10
- };
11
-
12
- /**
13
- * Custom hook to initiate a user creation process using email and password with Firebase authentication.
14
- * This hook utilizes the `useMutation` functionality to support creating new user credentials asynchronously.
15
- *
16
- * @param {Omit<UseMutationOptions<FirebaseAuthTypes.UserCredential, ReactNativeFirebase.NativeFirebaseError, UseCreateUserWitEmailAndPasswordMutationVariables, TContext>, "mutationKey" | "mutationFn">} options - Optional settings to customize the mutation behavior, excluding `mutationKey` and `mutationFn`.
17
- * @returns {UseMutationResult<FirebaseAuthTypes.UserCredential, ReactNativeFirebase.NativeFirebaseError, UseCreateUserWitEmailAndPasswordMutationVariables, TContext>} The result of the mutation which includes status, user credentials, and error information if any.
18
- */
19
- export const useCreateUserWitEmailAndPasswordMutation = <TContext = unknown>(
20
- options: Omit<
21
- UseMutationOptions<
22
- FirebaseAuthTypes.UserCredential,
23
- ReactNativeFirebase.NativeFirebaseError,
24
- UseCreateUserWitEmailAndPasswordMutationVariables,
25
- TContext
26
- >,
27
- "mutationKey" | "mutationFn"
28
- > = {}
29
- ) => {
30
- const firebaseAuth = useAuth();
31
-
32
- return useMutation({
33
- ...options,
34
- mutationFn: async ({ email, password }: UseCreateUserWitEmailAndPasswordMutationVariables) =>
35
- await createUserWithEmailAndPassword(firebaseAuth, email, password),
36
- mutationKey: CREATE_USER_WITH_EMAIL_AND_PASSWORD_MUTATION_KEY
37
- });
38
- };
@@ -1,26 +0,0 @@
1
- import { onAuthStateChanged } from "@react-native-firebase/auth";
2
- import { useEffect, useState } from "react";
3
- import { useAuth } from "./useAuth";
4
-
5
- /**
6
- * Hook that provides the current authenticated user from Firebase Auth.
7
- * It listens for changes in the authentication state and updates the user accordingly.
8
- * @returns {Object|null} The current authenticated user object or null if no user is authenticated.
9
- */
10
- export const useCurrentUser = () => {
11
- const firebaseAuth = useAuth();
12
-
13
- const [currentUser, setCurrentUser] = useState(firebaseAuth.currentUser);
14
-
15
- useEffect(() => {
16
- const unsubscribe = onAuthStateChanged(firebaseAuth, (user) => {
17
- setCurrentUser(user);
18
- });
19
-
20
- return () => {
21
- unsubscribe();
22
- };
23
- }, [firebaseAuth]);
24
-
25
- return currentUser;
26
- };
@@ -1,38 +0,0 @@
1
- import { EmailAuthProvider, FirebaseAuthTypes } from "@react-native-firebase/auth";
2
- import { useCallback } from "react";
3
-
4
- type Credential = {
5
- email: string;
6
- password?: string;
7
- emailLink?: string;
8
- };
9
-
10
- /**
11
- * A custom hook that returns an auth credential for email.
12
- *
13
- * @group Hook
14
- * @param {AuthProvider} provider alas of a provider
15
- *
16
- * @returns {AuthCredential}
17
- *
18
- * @example
19
- * ```jsx
20
- * export const MyComponent = () => {
21
- * const getCredential = useEmailAuthProviderCredential();
22
- * // ...
23
- * getCredential({email, password})
24
- * };
25
- * ```
26
- */
27
-
28
- export const useEmailAuthProviderCredential = () => {
29
- return useCallback((credential: Credential): FirebaseAuthTypes.AuthCredential => {
30
- if (credential.password) {
31
- return EmailAuthProvider.credential(credential.email, credential.password);
32
- }
33
- if (credential.emailLink) {
34
- return EmailAuthProvider.credentialWithLink(credential.email, credential.emailLink);
35
- }
36
- throw new Error("One of: password or emailLink must be provided");
37
- }, []);
38
- };
@@ -1,31 +0,0 @@
1
- import { FacebookAuthProvider, FirebaseAuthTypes } from "@react-native-firebase/auth";
2
- import { useCallback } from "react";
3
-
4
- type Credential = {
5
- token: string;
6
- nonce?: string;
7
- };
8
-
9
- /**
10
- * A custom hook that returns an auth credential for facebook.
11
- *
12
- * @group Hook
13
- * @param {AuthProvider} provider alas of a provider
14
- *
15
- * @returns {AuthCredential}
16
- *
17
- * @example
18
- * ```jsx
19
- * export const MyComponent = () => {
20
- * const getCredential = useFacebookAuthProviderCredential();
21
- * // ...
22
- * getCredential({token, nonce})
23
- * };
24
- * ```
25
- */
26
-
27
- export const useFacebookAuthProviderCredential = () => {
28
- return useCallback((credential: Credential): FirebaseAuthTypes.AuthCredential => {
29
- return FacebookAuthProvider.credential(credential.token, credential.nonce);
30
- }, []);
31
- };