loginWith method

Future<bool> loginWith(
  1. String email,
  2. String password,
  3. AuthenticationProvider authProvider,
  4. Future<bool> login(
    1. String,
    2. String,
    3. AuthenticationProvider
    ),
)

login with email and password

Implementation

Future<bool> loginWith(String email, String password, AuthenticationProvider authProvider, Future<bool> Function(String,String, AuthenticationProvider) login) async {
  isLoading = true;
  authExceptionType = null;
  notifyListeners();
  bool isLoginSuccess = false;
  final result = await login(email, password, authProvider);
  if(result){
    if(FirebaseAuth.instance.currentUser != null){
      authState = AuthState.loggedIn;
      userName = FirebaseAuth.instance.currentUser!.displayName;
      email = FirebaseAuth.instance.currentUser!.email!;
      notifyListeners();
      isLoginSuccess =  true;
    }
  }
  isLoading = false;
  notifyListeners();
  return isLoginSuccess;
}