@@ -67,14 +67,10 @@ @implementation FirestackAuth
67
67
}
68
68
69
69
RCT_EXPORT_METHOD (signInWithProvider:
70
- (NSString *)provider
71
- token:(NSString *)authToken
72
- secret:(NSString *)authTokenSecret
70
+ (NSDictionary *)credentialData
73
71
callback:(RCTResponseSenderBlock)callback)
74
72
{
75
- FIRAuthCredential *credential = [self getCredentialForProvider: provider
76
- token: authToken
77
- secret: authTokenSecret];
73
+ FIRAuthCredential *credential = [self getCredentialForProvider: credentialData];
78
74
if (credential == nil ) {
79
75
NSDictionary *err = @{
80
76
@" error" : @" Unhandled provider"
@@ -340,14 +336,10 @@ @implementation FirestackAuth
340
336
}
341
337
342
338
RCT_EXPORT_METHOD (reauthenticateWithCredentialForProvider:
343
- (NSString *)provider
344
- token:(NSString *)authToken
345
- secret:(NSString *)authTokenSecret
339
+ (NSDictionary *)credentialData
346
340
callback:(RCTResponseSenderBlock)callback)
347
341
{
348
- FIRAuthCredential *credential = [self getCredentialForProvider: provider
349
- token: authToken
350
- secret: authTokenSecret];
342
+ FIRAuthCredential *credential = [self getCredentialForProvider: credentialData];
351
343
if (credential == nil ) {
352
344
NSDictionary *err = @{
353
345
@" error" : @" Unhandled provider"
@@ -440,19 +432,23 @@ - (void) userPropsFromFIRUserWithToken:(FIRUser *) user
440
432
}];
441
433
}
442
434
443
- - (FIRAuthCredential *)getCredentialForProvider : (NSString *)provider
444
- token : (NSString *)authToken
445
- secret : (NSString *)authTokenSecret
435
+ - (FIRAuthCredential *)getCredentialForProvider : (NSDictionary *)credentialData
446
436
{
447
437
FIRAuthCredential *credential;
448
- if ([provider compare: @" twitter" options: NSCaseInsensitiveSearch] == NSOrderedSame) {
449
- credential = [FIRTwitterAuthProvider credentialWithToken: authToken
450
- secret: authTokenSecret];
451
- } else if ([provider compare: @" facebook" options: NSCaseInsensitiveSearch] == NSOrderedSame) {
452
- credential = [FIRFacebookAuthProvider credentialWithAccessToken: authToken];
453
- } else if ([provider compare: @" google" options: NSCaseInsensitiveSearch] == NSOrderedSame) {
454
- credential = [FIRGoogleAuthProvider credentialWithIDToken: authToken
455
- accessToken: authTokenSecret];
438
+ NSString *provider = [credentialData valueForKey: @" provider" ];
439
+ if ([provider compare: @" twitter.com" options: NSCaseInsensitiveSearch] == NSOrderedSame) {
440
+ NSString *accessToken = [credentialData valueForKey: @" accessToken" ];
441
+ NSString *secret = [credentialData valueForKey: @" secret" ];
442
+ credential = [FIRTwitterAuthProvider credentialWithToken: accessToken
443
+ secret: secret];
444
+ } else if ([provider compare: @" facebook.com" options: NSCaseInsensitiveSearch] == NSOrderedSame) {
445
+ NSString *accessToken = [credentialData valueForKey: @" accessToken" ];
446
+ credential = [FIRFacebookAuthProvider credentialWithAccessToken: accessToken];
447
+ } else if ([provider compare: @" google.com" options: NSCaseInsensitiveSearch] == NSOrderedSame) {
448
+ NSString *idToken = [credentialData valueForKey: @" idToken" ];
449
+ NSString *accessToken = [credentialData valueForKey: @" accessToken" ];
450
+ credential = [FIRGoogleAuthProvider credentialWithIDToken: idToken
451
+ accessToken: accessToken];
456
452
} else {
457
453
NSLog (@" Provider not yet handled: %@ " , provider);
458
454
}
0 commit comments