verifyOtp method

  1. @override
Future<AuthResult<bool>> verifyOtp(
  1. String contact,
  2. String otp,
  3. AuthMethod method
)
override

Implementation

@override
Future<AuthResult<bool>> verifyOtp(String contact, String otp, AuthMethod method) async {
  try {
    if (method == AuthMethod.phone) {
      final credential = fb.PhoneAuthProvider.credential(
        verificationId: contact,
        smsCode: otp,
      );
      await _auth.signInWithCredential(credential);
      return const AuthResult.success(true);
    }
    return const AuthResult.success(true);
  } on fb.FirebaseAuthException catch (e) {
    return AuthResult.failure(AuthException.fromFirebase(e));
  }
}