@@ -77,18 +77,26 @@ public class GoogleAuth: CAPPlugin {
77
77
self . signInCall? . reject ( error. localizedDescription) ;
78
78
return ;
79
79
}
80
- self . resolveSignInCallWith ( user: user!)
80
+ self . resolveSignInCallWith ( user: user!, serverAuthCode : nil )
81
81
}
82
82
} else {
83
83
let presentingVc = self . bridge!. viewController!;
84
84
85
- self . googleSignIn. signIn ( with: self . googleSignInConfiguration, presenting: presentingVc, hint: nil , additionalScopes: self . additionalScopes) { user, error in
85
+ self . googleSignIn. signIn (
86
+ withPresenting: presentingVc,
87
+ hint: nil ,
88
+ additionalScopes: self . additionalScopes
89
+ ) { signInResult, error in
86
90
if let error = error {
87
91
self . signInCall? . reject ( error. localizedDescription, " \( error. _code) " ) ;
88
92
return ;
89
93
}
90
- self . resolveSignInCallWith ( user: user!) ;
91
- } ;
94
+
95
+ let user = signInResult? . user;
96
+ let serverAuthCode = signInResult? . serverAuthCode;
97
+
98
+ self . resolveSignInCallWith ( user: user!, serverAuthCode: serverAuthCode) ;
99
+ }
92
100
}
93
101
}
94
102
}
@@ -100,18 +108,13 @@ public class GoogleAuth: CAPPlugin {
100
108
call. reject ( " User not logged in. " ) ;
101
109
return
102
110
}
103
- self . googleSignIn. currentUser!. authentication. do { ( authentication, error) in
104
- guard let authentication = authentication else {
105
- call. reject ( error? . localizedDescription ?? " Something went wrong. " ) ;
106
- return ;
107
- }
108
- let authenticationData : [ String : Any ] = [
109
- " accessToken " : authentication. accessToken,
110
- " idToken " : authentication. idToken ?? NSNull ( ) ,
111
- " refreshToken " : authentication. refreshToken
112
- ]
113
- call. resolve ( authenticationData) ;
114
- }
111
+
112
+ let authenticationData : [ String : Any ] = [
113
+ " accessToken " : self . googleSignIn. currentUser!. accessToken,
114
+ " idToken " : self . googleSignIn. currentUser!. idToken ?? NSNull ( ) ,
115
+ " refreshToken " : self . googleSignIn. currentUser!. refreshToken
116
+ ]
117
+ call. resolve ( authenticationData) ;
115
118
}
116
119
}
117
120
@@ -161,14 +164,14 @@ public class GoogleAuth: CAPPlugin {
161
164
return nil ;
162
165
}
163
166
164
- func resolveSignInCallWith( user: GIDGoogleUser ) {
167
+ func resolveSignInCallWith( user: GIDGoogleUser , serverAuthCode : String ? ) {
165
168
var userData : [ String : Any ] = [
166
169
" authentication " : [
167
- " accessToken " : user. authentication . accessToken,
168
- " idToken " : user. authentication . idToken,
169
- " refreshToken " : user. authentication . refreshToken
170
+ " accessToken " : user. accessToken. tokenString ,
171
+ " idToken " : user. idToken? . tokenString ,
172
+ " refreshToken " : user. refreshToken. tokenString
170
173
] ,
171
- " serverAuthCode " : user . serverAuthCode ?? NSNull ( ) ,
174
+ " serverAuthCode " : serverAuthCode ?? NSNull ( ) ,
172
175
" email " : user. profile? . email ?? NSNull ( ) ,
173
176
" familyName " : user. profile? . familyName ?? NSNull ( ) ,
174
177
" givenName " : user. profile? . givenName ?? NSNull ( ) ,
0 commit comments