loginWithCredential method

Future<Result<bool, Exception>> loginWithCredential(
  1. LoginCredential credential
)

Implementation

Future<Result<bool, Exception>> loginWithCredential(LoginCredential credential) async {
  if (credential is GoogleCredential) {
    return getLoginResult(() async {
      return await _flutterAuthApi.loginWithGoogleCredential(
          _appName, credential.toPigeonCredential());
    });
  }

  if (credential is FacebookCredential) {
    return getLoginResult(() async {
      return await _flutterAuthApi.loginWithFacebookCredential(
          _appName, credential.toPigeonCredential());
    });
  }

  if (credential is AppleCredential) {
    return getLoginResult(() async {
      return await _flutterAuthApi.loginWithAppleCredential(
          _appName, credential.toPigeonCredential());
    });
  }

  if (credential is UsernamePasswordCredential) {
    return getLoginResult(() async {
      return await _flutterAuthApi.loginWithUsernamePasswordCredential(
          _appName, credential.toPigeonCredential());
    });
  }

  if (credential is CustomCredential) {
    return getLoginResult(() async {
      return await _flutterAuthApi.loginWithCustomCredential(
          _appName, credential.toPigeonCredential());
    });
  }

  if (credential is PhoneOtpCredential) {
    return getLoginResult(() async {
      return await _flutterAuthApi.loginWithPhoneOtpCredential(
          _appName, credential.toPigeonCredential());
    });
  }

  return Result.failure(Exception("Unknown Credetial Exception"));
}