createWithProviderAccount static method

Future<Map<String, dynamic>> createWithProviderAccount({
  1. required OAuthProvider provider,
})

Implementation

static Future<Map<String, dynamic>> createWithProviderAccount({
  /// OAuthProvider
  required OAuthProvider provider,
}) async {
  Account account = Account(_client);
  try {
    await account.createOAuth2Session(
      provider: provider,
      scopes: ['email'],
    );
    models.Session session = await account.getSession(sessionId: 'current');
    _session = session;
    _storage.write('session', session.toMap());
    return session.toMap();
  } on AppwriteException catch (e) {
    return {
      'error': true,
      'type': e.type,
      'message': e.message,
      'code': e.code,
    };
  }
}