@@ -16,14 +16,35 @@ @implementation FirestackAuth
1616
1717RCT_EXPORT_MODULE (FirestackAuth);
1818
19+ RCT_EXPORT_METHOD (signInAnonymously:
20+ (RCTResponseSenderBlock) callBack)
21+ {
22+
23+ [[FIRAuth auth ] signInAnonymouslyWithCompletion
24+ :^(FIRUser *user, NSError *error) {
25+ if (!user) {
26+ NSDictionary *evt = @{
27+ @" eventName" : @" SignInAnonymouslyError" ,
28+ @" msg" : [error localizedFailureReason ]
29+ };
30+
31+ [self sendJSEvent: AUTH_CHANGED_EVENT props: evt];
32+ callBack (@[evt]);
33+ return ;
34+ }
35+ NSDictionary *userProps = [self userPropsFromFIRUser: user];
36+ callBack (@[[NSNull null ], userProps]);
37+ }];
38+ }
39+
1940RCT_EXPORT_METHOD (signInWithCustomToken:
2041 (NSString *)customToken
2142 callback:(RCTResponseSenderBlock) callback)
2243{
2344 [[FIRAuth auth ]
2445 signInWithCustomToken: customToken
2546 completion: ^(FIRUser *user, NSError *error) {
26-
47+
2748 if (user != nil ) {
2849 NSDictionary *userProps = [self userPropsFromFIRUser: user];
2950 callback (@[[NSNull null ], userProps]);
@@ -52,7 +73,7 @@ @implementation FirestackAuth
5273 };
5374 return callback (@[err]);
5475 }
55-
76+
5677 @try {
5778 [[FIRAuth auth ] signInWithCredential: credential
5879 completion: ^(FIRUser *user, NSError *error) {
@@ -98,7 +119,7 @@ @implementation FirestackAuth
98119 self->authListenerHandle =
99120 [[FIRAuth auth ] addAuthStateDidChangeListener: ^(FIRAuth *_Nonnull auth,
100121 FIRUser *_Nullable user) {
101-
122+
102123 if (user != nil ) {
103124 // User is signed in.
104125 [self userPropsFromFIRUserWithToken: user
@@ -146,7 +167,7 @@ @implementation FirestackAuth
146167RCT_EXPORT_METHOD (getCurrentUser:(RCTResponseSenderBlock)callback)
147168{
148169 FIRUser *user = [FIRAuth auth ].currentUser ;
149-
170+
150171 if (user != nil ) {
151172 NSDictionary *userProps = [self userPropsFromFIRUser: user];
152173 callback (@[[NSNull null ], userProps]);
@@ -191,7 +212,7 @@ @implementation FirestackAuth
191212 completion: ^(FIRUser *user, NSError *error) {
192213 if (user != nil ) {
193214 NSDictionary *userProps = [self userPropsFromFIRUser: user];
194-
215+
195216 callback (@[[NSNull null ], @{
196217 @" user" : userProps
197218 }]);
@@ -209,7 +230,7 @@ @implementation FirestackAuth
209230 callback:(RCTResponseSenderBlock) callback)
210231{
211232 FIRUser *user = [FIRAuth auth ].currentUser ;
212-
233+
213234 [user updateEmail: email completion: ^(NSError *_Nullable error) {
214235 if (error) {
215236 // An error happened.
@@ -229,9 +250,9 @@ @implementation FirestackAuth
229250RCT_EXPORT_METHOD (updateUserPassword:(NSString *)newPassword
230251 callback:(RCTResponseSenderBlock) callback)
231252{
232-
253+
233254 FIRUser *user = [FIRAuth auth ].currentUser ;
234-
255+
235256 [user updatePassword: newPassword completion: ^(NSError *_Nullable error) {
236257 if (error) {
237258 // An error happened.
@@ -251,7 +272,7 @@ @implementation FirestackAuth
251272RCT_EXPORT_METHOD (sendPasswordResetWithEmail:(NSString *)email
252273 callback:(RCTResponseSenderBlock) callback)
253274{
254-
275+
255276 [[FIRAuth auth ] sendPasswordResetWithEmail: email
256277 completion: ^(NSError *_Nullable error) {
257278 if (error) {
@@ -273,7 +294,7 @@ @implementation FirestackAuth
273294RCT_EXPORT_METHOD (deleteUser:(RCTResponseSenderBlock) callback)
274295{
275296 FIRUser *user = [FIRAuth auth ].currentUser ;
276-
297+
277298 [user deleteWithCompletion: ^(NSError *_Nullable error) {
278299 if (error) {
279300 NSDictionary *err =
@@ -290,7 +311,7 @@ @implementation FirestackAuth
290311RCT_EXPORT_METHOD (getToken:(RCTResponseSenderBlock) callback)
291312{
292313 FIRUser *user = [FIRAuth auth ].currentUser ;
293-
314+
294315 [user getTokenWithCompletion: ^(NSString *token, NSError *_Nullable error) {
295316 if (error) {
296317 NSDictionary *err =
@@ -308,7 +329,7 @@ @implementation FirestackAuth
308329RCT_EXPORT_METHOD (getTokenWithCompletion:(RCTResponseSenderBlock) callback)
309330{
310331 FIRUser *user = [FIRAuth auth ].currentUser ;
311-
332+
312333 [user getTokenWithCompletion: ^(NSString *token , NSError *_Nullable error) {
313334 if (error) {
314335 NSDictionary *err =
@@ -338,9 +359,9 @@ @implementation FirestackAuth
338359 };
339360 return callback (@[err]);
340361 }
341-
362+
342363 FIRUser *user = [FIRAuth auth ].currentUser ;
343-
364+
344365 [user reauthenticateWithCredential: credential completion: ^(NSError *_Nullable error) {
345366 if (error) {
346367 NSDictionary *err =
@@ -360,7 +381,7 @@ @implementation FirestackAuth
360381{
361382 FIRUser *user = [FIRAuth auth ].currentUser ;
362383 FIRUserProfileChangeRequest *changeRequest = [user profileChangeRequest ];
363-
384+
364385 NSMutableArray *allKeys = [[userProps allKeys ] mutableCopy ];
365386 for (NSString *key in allKeys) {
366387 // i.e. changeRequest.displayName = userProps[displayName];
@@ -405,12 +426,12 @@ - (NSDictionary *) userPropsFromFIRUser:(FIRUser *) user
405426 @" refreshToken" : user.refreshToken ,
406427 @" providerID" : user.providerID
407428 } mutableCopy];
408-
429+
409430 if ([user valueForKey: @" photoURL" ] != nil ) {
410431 [userProps setValue: [NSString stringWithFormat: @" %@ " , user.photoURL]
411432 forKey: @" photoURL" ];
412433 }
413-
434+
414435 return userProps;
415436}
416437
@@ -422,7 +443,7 @@ - (void) userPropsFromFIRUserWithToken:(FIRUser *) user
422443 if (error != nil ) {
423444 return callback (nil , error);
424445 }
425-
446+
426447 [userProps setValue: token forKey: @" idToken" ];
427448 callback (userProps, nil );
428449 }];
0 commit comments