Skip to content

Commit 087c9ca

Browse files
committed
Consistency with values emitted by firebase.auth.AuthProvider subclasses
1 parent 9ec08b8 commit 087c9ca

File tree

2 files changed

+23
-27
lines changed

2 files changed

+23
-27
lines changed

ios/Firestack/FirestackAuth.m

+19-23
Original file line numberDiff line numberDiff line change
@@ -67,14 +67,10 @@ @implementation FirestackAuth
6767
}
6868

6969
RCT_EXPORT_METHOD(signInWithProvider:
70-
(NSString *)provider
71-
token:(NSString *)authToken
72-
secret:(NSString *)authTokenSecret
70+
(NSDictionary *)credentialData
7371
callback:(RCTResponseSenderBlock)callback)
7472
{
75-
FIRAuthCredential *credential = [self getCredentialForProvider:provider
76-
token:authToken
77-
secret:authTokenSecret];
73+
FIRAuthCredential *credential = [self getCredentialForProvider:credentialData];
7874
if (credential == nil) {
7975
NSDictionary *err = @{
8076
@"error": @"Unhandled provider"
@@ -340,14 +336,10 @@ @implementation FirestackAuth
340336
}
341337

342338
RCT_EXPORT_METHOD(reauthenticateWithCredentialForProvider:
343-
(NSString *)provider
344-
token:(NSString *)authToken
345-
secret:(NSString *)authTokenSecret
339+
(NSDictionary *)credentialData
346340
callback:(RCTResponseSenderBlock)callback)
347341
{
348-
FIRAuthCredential *credential = [self getCredentialForProvider:provider
349-
token:authToken
350-
secret:authTokenSecret];
342+
FIRAuthCredential *credential = [self getCredentialForProvider:credentialData];
351343
if (credential == nil) {
352344
NSDictionary *err = @{
353345
@"error": @"Unhandled provider"
@@ -440,19 +432,23 @@ - (void) userPropsFromFIRUserWithToken:(FIRUser *) user
440432
}];
441433
}
442434

443-
- (FIRAuthCredential *)getCredentialForProvider:(NSString *)provider
444-
token:(NSString *)authToken
445-
secret:(NSString *)authTokenSecret
435+
- (FIRAuthCredential *)getCredentialForProvider:(NSDictionary *)credentialData
446436
{
447437
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];
456452
} else {
457453
NSLog(@"Provider not yet handled: %@", provider);
458454
}

lib/modules/auth.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -138,16 +138,16 @@ export default class Auth extends Base {
138138
* Sign the user in with a third-party authentication provider
139139
* @return {Promise} A promise resolved upon completion
140140
*/
141-
signInWithCredential(credential: CredentialType): Promise<Object> {
142-
return promisify('signInWithProvider', FirestackAuth)(credential.provider, credential.token, credential.secret);
141+
signInWithCredential(credential: any): Promise<Object> {
142+
return promisify('signInWithProvider', FirestackAuth)(credential);
143143
}
144144

145145
/**
146146
* Re-authenticate a user with a third-party authentication provider
147147
* @return {Promise} A promise resolved upon completion
148148
*/
149-
reauthenticateUser(credential: CredentialType): Promise<Object> {
150-
return promisify('reauthenticateWithCredentialForProvider', FirestackAuth)(credential.provider, credential.token, credential.secret);
149+
reauthenticateUser(credential: any): Promise<Object> {
150+
return promisify('reauthenticateWithCredentialForProvider', FirestackAuth)(credential);
151151
}
152152

153153
/**

0 commit comments

Comments
 (0)