validateVerificationCode method
Future<AuthenticatedUser?>
validateVerificationCode({
- required String provider,
- required String method,
- required String smsCode,
- required String verificationId,
- required dynamic onSuccess(
- AuthenticatedUser,
- String idToken
- required dynamic onError(
- String error
- required dynamic onVerificationFailure(
- String error
override
Verifies a phone code using smsCode and verificationId.
Implementation
@override
Future<AuthenticatedUser?> validateVerificationCode({
required String provider,
required String method,
required String smsCode,
required String verificationId,
required Function(AuthenticatedUser, String idToken) onSuccess,
required Function(String) onError,
required Function(String) onVerificationFailure,
}) async {
try {
final SignInWithVerificationCode _signInWithVerificationCode =
SignInWithVerificationCode();
final response =
await _signInWithVerificationCode.validateVerificationCode(
provider: provider,
method: method,
smsCode: smsCode,
verificationId: verificationId,
);
if (response != null) {
final user = response['user'];
final idToken = response['idToken'];
await AuthManager()._updateCurrentUser(
Utils.globalAppKey.currentContext!,
user,
);
onSuccess(user, idToken);
} else {
onError('Something went wrong, User not found');
}
return response?['user'];
} catch (e) {
onVerificationFailure('Error verifying phone code: ${e.toString()}');
return null;
}
}