openSignInFlow method

  1. @override
Future<User?> openSignInFlow(
  1. String provider,
  2. List<String> scopes,
  3. [Map<String, String>? customOAuthParameters]
)
override

Starts a OAuth sign-in flow for provider using Firebase. The instance of FirebaseAuth will be from the default Firebase App Unless withApp is used to build an instance

Implementation

@override
Future<User?> openSignInFlow(String provider, List<String> scopes,
    [Map<String, String>? customOAuthParameters]) async {
  final oAuthProvider = web.OAuthProvider(provider);
  scopes.forEach((scope) => oAuthProvider.addScope(scope));
  if (customOAuthParameters != null) {
    oAuthProvider.setCustomParameters(customOAuthParameters);
  }
  await web.app(_app().name).auth().signInWithPopup(oAuthProvider);
  return FirebaseAuth.instanceFor(app: _app()).currentUser;
}