login method

  1. @override
Future<AuthResult<UserModel>> login(
  1. LoginCredentials credentials
)
override

Implementation

@override
Future<AuthResult<UserModel>> login(LoginCredentials credentials) async {
  try {
    fb.UserCredential credential;
    if (credentials.method == AuthMethod.email) {
      credential = await _auth.signInWithEmailAndPassword(
        email: credentials.email!,
        password: credentials.password,
      );
    } else {
      credential = await _auth.signInWithEmailAndPassword(
        email: credentials.email!,
        password: credentials.password,
      );
    }
    return AuthResult.success(_mapFirebaseUser(credential.user!));
  } on fb.FirebaseAuthException catch (e) {
    return AuthResult.failure(AuthException.fromFirebase(e));
  }
}