configureProviders static method

void configureProviders(
  1. List<AuthProvider<AuthListener, AuthCredential>> configs, {
  2. FirebaseApp? app,
})

Implementation

static void configureProviders(
  List<AuthProvider> configs, {
  FirebaseApp? app,
}) {
  if (!_isTestMode && Firebase.apps.isEmpty) {
    throw Exception(
      'You must call Firebase.initializeApp() '
      'before calling configureProviders()',
    );
  }

  final resolvedApp = app ?? Firebase.app();

  if (_configuredApps[resolvedApp] ?? false) {
    throw Exception(
      'You can only configure providers once '
      'for each Firebase App',
    );
  }

  _providers[resolvedApp] = configs;

  configs.whereType<OAuthProvider>().forEach((element) {
    final auth = fba.FirebaseAuth.instanceFor(app: resolvedApp);
    OAuthProviders.register(auth, element);
  });
}