feat: split ignores into 'ignore messages' and 'ignore entities'

This commit is contained in:
sam 2024-11-18 00:47:27 +01:00
parent d48ab7e16e
commit 0cac964aa6
Signed by: sam
GPG key ID: 5F3C3C1B3166639D
32 changed files with 730 additions and 488 deletions

View file

@ -19,6 +19,7 @@ public class ChannelsBackup
{
public List<ulong> IgnoredChannels { get; init; } = [];
public List<ulong> IgnoredUsers { get; init; } = [];
public List<ulong> IgnoredRoles { get; init; } = [];
public Dictionary<ulong, List<ulong>> IgnoredUsersPerChannel { get; init; } = [];
public Dictionary<ulong, ulong> Redirects { get; init; } = [];
@ -46,12 +47,18 @@ public class ChannelsBackup
public ulong MessageDelete { get; init; }
public ulong MessageDeleteBulk { get; init; }
public Guild.ChannelConfig ToGuildConfig() =>
public Guild.MessageConfig ToMessageConfig() =>
new()
{
IgnoredChannels = IgnoredChannels,
IgnoredUsers = IgnoredUsers,
IgnoredRoles = IgnoredRoles,
IgnoredUsersPerChannel = IgnoredUsersPerChannel,
};
public Guild.ChannelConfig ToChannelConfig() =>
new()
{
Redirects = Redirects,
GuildUpdate = GuildUpdate,
GuildEmojisUpdate = GuildEmojisUpdate,
@ -78,35 +85,36 @@ public class ChannelsBackup
MessageDeleteBulk = MessageDeleteBulk,
};
public static ChannelsBackup FromGuildConfig(Guild.ChannelConfig channels) =>
public static ChannelsBackup FromGuildConfig(Guild guild) =>
new()
{
IgnoredChannels = channels.IgnoredChannels,
IgnoredUsers = channels.IgnoredUsers,
IgnoredUsersPerChannel = channels.IgnoredUsersPerChannel,
Redirects = channels.Redirects,
GuildUpdate = channels.GuildUpdate,
GuildEmojisUpdate = channels.GuildEmojisUpdate,
GuildRoleCreate = channels.GuildRoleCreate,
GuildRoleUpdate = channels.GuildRoleUpdate,
GuildRoleDelete = channels.GuildRoleDelete,
ChannelCreate = channels.ChannelCreate,
ChannelUpdate = channels.ChannelUpdate,
ChannelDelete = channels.ChannelDelete,
GuildMemberAdd = channels.GuildMemberAdd,
GuildMemberUpdate = channels.GuildMemberUpdate,
GuildKeyRoleUpdate = channels.GuildKeyRoleUpdate,
GuildMemberNickUpdate = channels.GuildMemberNickUpdate,
GuildMemberAvatarUpdate = channels.GuildMemberAvatarUpdate,
GuildMemberTimeout = channels.GuildMemberTimeout,
GuildMemberRemove = channels.GuildMemberRemove,
GuildMemberKick = channels.GuildMemberKick,
GuildBanAdd = channels.GuildBanAdd,
GuildBanRemove = channels.GuildBanRemove,
InviteCreate = channels.InviteCreate,
InviteDelete = channels.InviteDelete,
MessageUpdate = channels.MessageUpdate,
MessageDelete = channels.MessageDelete,
MessageDeleteBulk = channels.MessageDeleteBulk,
IgnoredChannels = guild.Messages.IgnoredChannels,
IgnoredUsers = guild.Messages.IgnoredUsers,
IgnoredRoles = guild.Messages.IgnoredRoles,
IgnoredUsersPerChannel = guild.Messages.IgnoredUsersPerChannel,
Redirects = guild.Channels.Redirects,
GuildUpdate = guild.Channels.GuildUpdate,
GuildEmojisUpdate = guild.Channels.GuildEmojisUpdate,
GuildRoleCreate = guild.Channels.GuildRoleCreate,
GuildRoleUpdate = guild.Channels.GuildRoleUpdate,
GuildRoleDelete = guild.Channels.GuildRoleDelete,
ChannelCreate = guild.Channels.ChannelCreate,
ChannelUpdate = guild.Channels.ChannelUpdate,
ChannelDelete = guild.Channels.ChannelDelete,
GuildMemberAdd = guild.Channels.GuildMemberAdd,
GuildMemberUpdate = guild.Channels.GuildMemberUpdate,
GuildKeyRoleUpdate = guild.Channels.GuildKeyRoleUpdate,
GuildMemberNickUpdate = guild.Channels.GuildMemberNickUpdate,
GuildMemberAvatarUpdate = guild.Channels.GuildMemberAvatarUpdate,
GuildMemberTimeout = guild.Channels.GuildMemberTimeout,
GuildMemberRemove = guild.Channels.GuildMemberRemove,
GuildMemberKick = guild.Channels.GuildMemberKick,
GuildBanAdd = guild.Channels.GuildBanAdd,
GuildBanRemove = guild.Channels.GuildBanRemove,
InviteCreate = guild.Channels.InviteCreate,
InviteDelete = guild.Channels.InviteDelete,
MessageUpdate = guild.Channels.MessageUpdate,
MessageDelete = guild.Channels.MessageDelete,
MessageDeleteBulk = guild.Channels.MessageDeleteBulk,
};
}