refactor: change ulong[] to List<ulong> for better ergonomics

This commit is contained in:
sam 2024-11-18 21:01:52 +01:00
parent e12bd6194b
commit 4eb5c16451
Signed by: sam
GPG key ID: 5F3C3C1B3166639D
8 changed files with 37 additions and 46 deletions

View file

@ -116,7 +116,7 @@ public partial class GuildsController
if (channel == null)
return NoContent();
guildConfig.IgnoredChannels = [.. guildConfig.IgnoredChannels, channelId];
guildConfig.IgnoredChannels.Add(channelId);
await guildRepository.UpdateConfigAsync(guildId, guildConfig);
return NoContent();
@ -128,9 +128,7 @@ public partial class GuildsController
var (guildId, _) = await ParseGuildAsync(id);
var guildConfig = await guildRepository.GetAsync(guildId);
var channels = guildConfig.IgnoredChannels.ToList();
channels.Remove(channelId);
guildConfig.IgnoredChannels = channels.ToArray();
guildConfig.IgnoredChannels.Remove(channelId);
await guildRepository.UpdateConfigAsync(guildId, guildConfig);
return NoContent();
@ -148,7 +146,7 @@ public partial class GuildsController
if (roleCache.GuildRoles(guildId).All(r => r.ID.Value != roleId))
return NoContent();
guildConfig.IgnoredRoles = [.. guildConfig.IgnoredRoles, roleId];
guildConfig.IgnoredRoles.Add(roleId);
await guildRepository.UpdateConfigAsync(guildId, guildConfig);
return NoContent();
@ -160,9 +158,7 @@ public partial class GuildsController
var (guildId, _) = await ParseGuildAsync(id);
var guildConfig = await guildRepository.GetAsync(guildId);
var roles = guildConfig.IgnoredRoles.ToList();
roles.Remove(roleId);
guildConfig.IgnoredRoles = roles.ToArray();
guildConfig.IgnoredRoles.Remove(roleId);
await guildRepository.UpdateConfigAsync(guildId, guildConfig);
return NoContent();

View file

@ -38,7 +38,8 @@ public partial class GuildsController
"Role is already a key role"
);
await guildRepository.AddKeyRoleAsync(guildId, DiscordSnowflake.New(roleId));
guildConfig.KeyRoles.Add(roleId);
await guildRepository.UpdateConfigAsync(guildId, guildConfig);
return NoContent();
}
@ -55,7 +56,8 @@ public partial class GuildsController
"Role is already not a key role"
);
await guildRepository.RemoveKeyRoleAsync(guildId, DiscordSnowflake.New(roleId));
guildConfig.KeyRoles.Remove(roleId);
await guildRepository.UpdateConfigAsync(guildId, guildConfig);
return NoContent();
}
}

View file

@ -140,11 +140,11 @@ public partial class GuildsController(
IEnumerable<GuildCategory> Categories,
IEnumerable<GuildChannel> ChannelsWithoutCategory,
IEnumerable<GuildRole> Roles,
ulong[] IgnoredChannels,
ulong[] IgnoredRoles,
List<ulong> IgnoredChannels,
List<ulong> IgnoredRoles,
Database.Models.Guild.MessageConfig Messages,
Database.Models.Guild.ChannelConfig Channels,
ulong[] KeyRoles
List<ulong> KeyRoles
);
private record GuildCategory(string Id, string Name, IEnumerable<GuildChannel> Channels);