loginWithEmailAndPassword method

Future<void> loginWithEmailAndPassword({
  1. required String email,
  2. required String password,
  3. dynamic onSuccess(
    1. String
    )?,
  4. dynamic onError(
    1. dynamic
    )?,
})

Implementation

Future<void> loginWithEmailAndPassword({
  required final String email,
  required final String password,
  final Function(String)? onSuccess,
  final Function(dynamic)? onError,
}) async {
  try {
    final _result = await _auth.signInWithEmailAndPassword(
      email: email,
      password: password,
    );
    _userFromFirebase(_result.user);
    print('Success: Logging in user with email $email');
    if (_result.user == null) {
      throw Future.error('User from firestore was null');
    }

    onSuccess?.call(_result.user!.uid);
  } catch (e) {
    print(e);
    print('Error!!!: Logging in user with email');
    onError?.call(e);
  }
}