createAccount function

String createAccount({
  1. required Entry authDatabase,
  2. required String username,
  3. required String password,
  4. List<String>? roles,
})

Implementation

String createAccount({
  required Entry authDatabase,
  required String username,
  required String password,
  List<String>? roles,
}){
  DbObject? existingAccount = _getAccount(
    authDatabase: authDatabase,
    username: username,
  );
  if(existingAccount == null){
    authDatabase.select().insert(
      key: "accounts",
      value: [
        {
          "username": username,
          "password": password,
          "roles": roles ?? [],
          "accessTokens": [],
        },
      ],
    );
    return "Account creation for $username successful.";
  }else{
    throw "Account associated with $username already exist.";
  }
}