deleteAccountByPassword static method

Future<AuthResult> deleteAccountByPassword(
  1. String password, [
  2. String? passwordEncryptType
])

delete account by password.

Implementation

static Future<AuthResult> deleteAccountByPassword(String password,
    [String? passwordEncryptType]) async {
  Map map = {};
  map.putIfAbsent('password',
      () => Util.encrypt(password, encryptType: passwordEncryptType));
  if (passwordEncryptType != null) {
    map.putIfAbsent('passwordEncryptType', () => passwordEncryptType);
  }
  var body = {'verifyMethod': 'PASSWORD', 'passwordPayload': map};
  final Result tokenResult =
      await post('/api/v3/verify-delete-account-request', jsonEncode(body));
  if (tokenResult.statusCode == 200) {
    var resultBody = {
      'deleteAccountToken': tokenResult.data['deleteAccountToken'],
    };
    final Result result =
        await post('/api/v3/delete-account', jsonEncode(resultBody));
    AuthResult authResult = AuthResult(result);
    return authResult;
  } else {
    return AuthResult(tokenResult);
  }
}