From 3eb17b96c5817240f9861b1b323c4f608478f2fa Mon Sep 17 00:00:00 2001 From: Octol1ttle Date: Sun, 9 Jul 2023 22:36:44 +0500 Subject: [PATCH] Tidy up project structure, fix bug with edit logging (#47) The project structure has been changed because the previous one had everything in 1 folder. From this PR onwards, the following is true: - The source code is stored in `src/` - `*.resx` and `Messages.Designer.cs` is stored in `locale/` - Documentation is stored on the wiki and in `docs/` - Miscellaneous files, such as dotfiles, are stored in the root folder of the repository This PR additionally fixes an issue that would cause logs of edited messages to not be syntax highlighted. This happened because the responder of edited messages was changed to use the universal `InBlockCode` extension method which did not support syntax highlighting until this PR This PR additionally changes CODEOWNERS to be more reliable. Previously, it would be possible for some PRs to be unable to be approved because the only person who can approve them is the same person who opened the PR. --------- Signed-off-by: Octol1ttle --- .github/CODEOWNERS | 4 +- Boyfriend.csproj | 5 +- docs/README.md | 2 +- .../Messages.Designer.cs | 318 +++++++++--------- Messages.resx => locale/Messages.resx | 0 Messages.ru.resx => locale/Messages.ru.resx | 0 .../Messages.tt-ru.resx | 0 Boyfriend.cs => src/Boyfriend.cs | 0 ColorsList.cs => src/ColorsList.cs | 0 .../Commands}/AboutCommandGroup.cs | 4 +- {Commands => src/Commands}/BanCommandGroup.cs | 12 +- .../Commands}/ClearCommandGroup.cs | 0 .../Commands}/ErrorLoggingEvents.cs | 0 .../Commands}/KickCommandGroup.cs | 0 .../Commands}/MuteCommandGroup.cs | 0 .../Commands}/PingCommandGroup.cs | 0 .../Commands}/RemindCommandGroup.cs | 0 .../Commands}/SettingsCommandGroup.cs | 0 {Data => src/Data}/GuildConfiguration.cs | 0 {Data => src/Data}/GuildData.cs | 0 {Data => src/Data}/MemberData.cs | 0 {Data => src/Data}/Reminder.cs | 0 {Data => src/Data}/ScheduledEventData.cs | 0 EventResponders.cs => src/EventResponders.cs | 0 Extensions.cs => src/Extensions.cs | 14 +- .../InteractionResponders.cs | 0 .../Services}/GuildDataService.cs | 0 .../Services}/GuildUpdateService.cs | 0 {Services => src/Services}/UtilityService.cs | 0 29 files changed, 180 insertions(+), 179 deletions(-) rename Messages.Designer.cs => locale/Messages.Designer.cs (95%) rename Messages.resx => locale/Messages.resx (100%) rename Messages.ru.resx => locale/Messages.ru.resx (100%) rename Messages.tt-ru.resx => locale/Messages.tt-ru.resx (100%) rename Boyfriend.cs => src/Boyfriend.cs (100%) rename ColorsList.cs => src/ColorsList.cs (100%) rename {Commands => src/Commands}/AboutCommandGroup.cs (95%) rename {Commands => src/Commands}/BanCommandGroup.cs (97%) rename {Commands => src/Commands}/ClearCommandGroup.cs (100%) rename {Commands => src/Commands}/ErrorLoggingEvents.cs (100%) rename {Commands => src/Commands}/KickCommandGroup.cs (100%) rename {Commands => src/Commands}/MuteCommandGroup.cs (100%) rename {Commands => src/Commands}/PingCommandGroup.cs (100%) rename {Commands => src/Commands}/RemindCommandGroup.cs (100%) rename {Commands => src/Commands}/SettingsCommandGroup.cs (100%) rename {Data => src/Data}/GuildConfiguration.cs (100%) rename {Data => src/Data}/GuildData.cs (100%) rename {Data => src/Data}/MemberData.cs (100%) rename {Data => src/Data}/Reminder.cs (100%) rename {Data => src/Data}/ScheduledEventData.cs (100%) rename EventResponders.cs => src/EventResponders.cs (100%) rename Extensions.cs => src/Extensions.cs (92%) rename InteractionResponders.cs => src/InteractionResponders.cs (100%) rename {Services => src/Services}/GuildDataService.cs (100%) rename {Services => src/Services}/GuildUpdateService.cs (100%) rename {Services => src/Services}/UtilityService.cs (100%) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 4c792a0..eeccdc0 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,4 +1,2 @@ * @TeamOctolings/boyfriend -.github/CODEOWNERS @TeamOctolings/boyfriend-admins -/docs/ @mctaylors -Messages.tt-ru.resx @mctaylors +/docs/ @TeamOctolings/boyfriend-docs diff --git a/Boyfriend.csproj b/Boyfriend.csproj index a9af80e..f6cc7dc 100644 --- a/Boyfriend.csproj +++ b/Boyfriend.csproj @@ -23,8 +23,9 @@ - - + + + ResXFileCodeGenerator Messages.Designer.cs diff --git a/docs/README.md b/docs/README.md index 5a4fe26..21ffbbf 100644 --- a/docs/README.md +++ b/docs/README.md @@ -14,7 +14,7 @@ ![CodeFactor](https://img.shields.io/codefactor/grade/github/TeamOctolings/Boyfriend) Beep! I'm a general-purpose bot for moderation written by [@Octol1ttle](https://github.com/Octol1ttle) in C# and -Discord.Net +Remora.Discord ## Features diff --git a/Messages.Designer.cs b/locale/Messages.Designer.cs similarity index 95% rename from Messages.Designer.cs rename to locale/Messages.Designer.cs index aaf5bc1..de6955b 100644 --- a/Messages.Designer.cs +++ b/locale/Messages.Designer.cs @@ -9,32 +9,32 @@ namespace Boyfriend { using System; - - + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] [System.Diagnostics.DebuggerNonUserCodeAttribute()] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Messages { - + private static System.Resources.ResourceManager resourceMan; - + private static System.Globalization.CultureInfo resourceCulture; - + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal Messages() { } - + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] internal static System.Resources.ResourceManager ResourceManager { get { if (object.Equals(null, resourceMan)) { - System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Boyfriend.Messages", typeof(Messages).Assembly); + System.Resources.ResourceManager temp = new System.Resources.ResourceManager("Boyfriend.locale.Messages", typeof(Messages).Assembly); resourceMan = temp; } return resourceMan; } } - + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] internal static System.Globalization.CultureInfo Culture { get { @@ -44,907 +44,907 @@ namespace Boyfriend { resourceCulture = value; } } - + internal static string Ready { get { return ResourceManager.GetString("Ready", resourceCulture); } } - + internal static string CachedMessageDeleted { get { return ResourceManager.GetString("CachedMessageDeleted", resourceCulture); } } - + internal static string CachedMessageCleared { get { return ResourceManager.GetString("CachedMessageCleared", resourceCulture); } } - + internal static string CachedMessageEdited { get { return ResourceManager.GetString("CachedMessageEdited", resourceCulture); } } - + internal static string DefaultWelcomeMessage { get { return ResourceManager.GetString("DefaultWelcomeMessage", resourceCulture); } } - + internal static string Beep1 { get { return ResourceManager.GetString("Beep1", resourceCulture); } } - + internal static string Beep2 { get { return ResourceManager.GetString("Beep2", resourceCulture); } } - + internal static string Beep3 { get { return ResourceManager.GetString("Beep3", resourceCulture); } } - + internal static string CommandNoPermissionBot { get { return ResourceManager.GetString("CommandNoPermissionBot", resourceCulture); } } - + internal static string CommandNoPermissionUser { get { return ResourceManager.GetString("CommandNoPermissionUser", resourceCulture); } } - + internal static string YouWereBanned { get { return ResourceManager.GetString("YouWereBanned", resourceCulture); } } - + internal static string PunishmentExpired { get { return ResourceManager.GetString("PunishmentExpired", resourceCulture); } } - + internal static string ClearAmountTooSmall { get { return ResourceManager.GetString("ClearAmountTooSmall", resourceCulture); } } - + internal static string ClearAmountTooLarge { get { return ResourceManager.GetString("ClearAmountTooLarge", resourceCulture); } } - + internal static string CommandHelp { get { return ResourceManager.GetString("CommandHelp", resourceCulture); } } - + internal static string YouWereKicked { get { return ResourceManager.GetString("YouWereKicked", resourceCulture); } } - + internal static string Milliseconds { get { return ResourceManager.GetString("Milliseconds", resourceCulture); } } - + internal static string MemberAlreadyMuted { get { return ResourceManager.GetString("MemberAlreadyMuted", resourceCulture); } } - + internal static string ChannelNotSpecified { get { return ResourceManager.GetString("ChannelNotSpecified", resourceCulture); } } - + internal static string RoleNotSpecified { get { return ResourceManager.GetString("RoleNotSpecified", resourceCulture); } } - + internal static string CurrentSettings { get { return ResourceManager.GetString("CurrentSettings", resourceCulture); } } - + internal static string SettingsLang { get { return ResourceManager.GetString("SettingsLang", resourceCulture); } } - + internal static string SettingsPrefix { get { return ResourceManager.GetString("SettingsPrefix", resourceCulture); } } - + internal static string SettingsRemoveRolesOnMute { get { return ResourceManager.GetString("SettingsRemoveRolesOnMute", resourceCulture); } } - + internal static string SettingsSendWelcomeMessages { get { return ResourceManager.GetString("SettingsSendWelcomeMessages", resourceCulture); } } - + internal static string SettingsMuteRole { get { return ResourceManager.GetString("SettingsMuteRole", resourceCulture); } } - + internal static string LanguageNotSupported { get { return ResourceManager.GetString("LanguageNotSupported", resourceCulture); } } - + internal static string Yes { get { return ResourceManager.GetString("Yes", resourceCulture); } } - + internal static string No { get { return ResourceManager.GetString("No", resourceCulture); } } - + internal static string UserNotBanned { get { return ResourceManager.GetString("UserNotBanned", resourceCulture); } } - + internal static string MemberNotMuted { get { return ResourceManager.GetString("MemberNotMuted", resourceCulture); } } - + internal static string SettingsWelcomeMessage { get { return ResourceManager.GetString("SettingsWelcomeMessage", resourceCulture); } } - + internal static string ClearAmountInvalid { get { return ResourceManager.GetString("ClearAmountInvalid", resourceCulture); } } - + internal static string UserBanned { get { return ResourceManager.GetString("UserBanned", resourceCulture); } } - + internal static string SettingDoesntExist { get { return ResourceManager.GetString("SettingDoesntExist", resourceCulture); } } - + internal static string SettingsReceiveStartupMessages { get { return ResourceManager.GetString("SettingsReceiveStartupMessages", resourceCulture); } } - + internal static string InvalidSettingValue { get { return ResourceManager.GetString("InvalidSettingValue", resourceCulture); } } - + internal static string InvalidRole { get { return ResourceManager.GetString("InvalidRole", resourceCulture); } } - + internal static string InvalidChannel { get { return ResourceManager.GetString("InvalidChannel", resourceCulture); } } - + internal static string DurationRequiredForTimeOuts { get { return ResourceManager.GetString("DurationRequiredForTimeOuts", resourceCulture); } } - + internal static string CannotTimeOutBot { get { return ResourceManager.GetString("CannotTimeOutBot", resourceCulture); } } - + internal static string EventCreated { get { return ResourceManager.GetString("EventCreated", resourceCulture); } } - + internal static string SettingsEventNotificationRole { get { return ResourceManager.GetString("SettingsEventNotificationRole", resourceCulture); } } - + internal static string SettingsEventNotificationChannel { get { return ResourceManager.GetString("SettingsEventNotificationChannel", resourceCulture); } } - + internal static string SettingsEventStartedReceivers { get { return ResourceManager.GetString("SettingsEventStartedReceivers", resourceCulture); } } - + internal static string EventStarted { get { return ResourceManager.GetString("EventStarted", resourceCulture); } } - + internal static string SettingsFrowningFace { get { return ResourceManager.GetString("SettingsFrowningFace", resourceCulture); } } - + internal static string EventCancelled { get { return ResourceManager.GetString("EventCancelled", resourceCulture); } } - + internal static string EventCompleted { get { return ResourceManager.GetString("EventCompleted", resourceCulture); } } - + internal static string Ever { get { return ResourceManager.GetString("Ever", resourceCulture); } } - + internal static string MessagesCleared { get { return ResourceManager.GetString("MessagesCleared", resourceCulture); } } - + internal static string FeedbackMemberKicked { get { return ResourceManager.GetString("FeedbackMemberKicked", resourceCulture); } } - + internal static string FeedbackMemberMuted { get { return ResourceManager.GetString("FeedbackMemberMuted", resourceCulture); } } - + internal static string FeedbackUserUnbanned { get { return ResourceManager.GetString("FeedbackUserUnbanned", resourceCulture); } } - + internal static string FeedbackMemberUnmuted { get { return ResourceManager.GetString("FeedbackMemberUnmuted", resourceCulture); } } - + internal static string SettingsNothingChanged { get { return ResourceManager.GetString("SettingsNothingChanged", resourceCulture); } } - + internal static string SettingNotDefined { get { return ResourceManager.GetString("SettingNotDefined", resourceCulture); } } - + internal static string FeedbackSettingsUpdated { get { return ResourceManager.GetString("FeedbackSettingsUpdated", resourceCulture); } } - + internal static string CommandDescriptionBan { get { return ResourceManager.GetString("CommandDescriptionBan", resourceCulture); } } - + internal static string CommandDescriptionClear { get { return ResourceManager.GetString("CommandDescriptionClear", resourceCulture); } } - + internal static string CommandDescriptionHelp { get { return ResourceManager.GetString("CommandDescriptionHelp", resourceCulture); } } - + internal static string CommandDescriptionKick { get { return ResourceManager.GetString("CommandDescriptionKick", resourceCulture); } } - + internal static string CommandDescriptionMute { get { return ResourceManager.GetString("CommandDescriptionMute", resourceCulture); } } - + internal static string CommandDescriptionPing { get { return ResourceManager.GetString("CommandDescriptionPing", resourceCulture); } } - + internal static string CommandDescriptionSettings { get { return ResourceManager.GetString("CommandDescriptionSettings", resourceCulture); } } - + internal static string CommandDescriptionUnban { get { return ResourceManager.GetString("CommandDescriptionUnban", resourceCulture); } } - + internal static string CommandDescriptionUnmute { get { return ResourceManager.GetString("CommandDescriptionUnmute", resourceCulture); } } - + internal static string MissingNumber { get { return ResourceManager.GetString("MissingNumber", resourceCulture); } } - + internal static string MissingUser { get { return ResourceManager.GetString("MissingUser", resourceCulture); } } - + internal static string InvalidUser { get { return ResourceManager.GetString("InvalidUser", resourceCulture); } } - + internal static string MissingMember { get { return ResourceManager.GetString("MissingMember", resourceCulture); } } - + internal static string InvalidMember { get { return ResourceManager.GetString("InvalidMember", resourceCulture); } } - + internal static string UserCannotBanMembers { get { return ResourceManager.GetString("UserCannotBanMembers", resourceCulture); } } - + internal static string UserCannotManageMessages { get { return ResourceManager.GetString("UserCannotManageMessages", resourceCulture); } } - + internal static string UserCannotKickMembers { get { return ResourceManager.GetString("UserCannotKickMembers", resourceCulture); } } - + internal static string UserCannotModerateMembers { get { return ResourceManager.GetString("UserCannotModerateMembers", resourceCulture); } } - + internal static string UserCannotManageGuild { get { return ResourceManager.GetString("UserCannotManageGuild", resourceCulture); } } - + internal static string BotCannotBanMembers { get { return ResourceManager.GetString("BotCannotBanMembers", resourceCulture); } } - + internal static string BotCannotManageMessages { get { return ResourceManager.GetString("BotCannotManageMessages", resourceCulture); } } - + internal static string BotCannotKickMembers { get { return ResourceManager.GetString("BotCannotKickMembers", resourceCulture); } } - + internal static string BotCannotModerateMembers { get { return ResourceManager.GetString("BotCannotModerateMembers", resourceCulture); } } - + internal static string BotCannotManageGuild { get { return ResourceManager.GetString("BotCannotManageGuild", resourceCulture); } } - + internal static string MissingBanReason { get { return ResourceManager.GetString("MissingBanReason", resourceCulture); } } - + internal static string MissingKickReason { get { return ResourceManager.GetString("MissingKickReason", resourceCulture); } } - + internal static string MissingMuteReason { get { return ResourceManager.GetString("MissingMuteReason", resourceCulture); } } - + internal static string MissingUnbanReason { get { return ResourceManager.GetString("MissingUnbanReason", resourceCulture); } } - + internal static string MissingUnmuteReason { get { return ResourceManager.GetString("MissingUnmuteReason", resourceCulture); } } - + internal static string UserCannotBanOwner { get { return ResourceManager.GetString("UserCannotBanOwner", resourceCulture); } } - + internal static string UserCannotBanThemselves { get { return ResourceManager.GetString("UserCannotBanThemselves", resourceCulture); } } - + internal static string UserCannotBanBot { get { return ResourceManager.GetString("UserCannotBanBot", resourceCulture); } } - + internal static string BotCannotBanTarget { get { return ResourceManager.GetString("BotCannotBanTarget", resourceCulture); } } - + internal static string UserCannotBanTarget { get { return ResourceManager.GetString("UserCannotBanTarget", resourceCulture); } } - + internal static string UserCannotKickOwner { get { return ResourceManager.GetString("UserCannotKickOwner", resourceCulture); } } - + internal static string UserCannotKickThemselves { get { return ResourceManager.GetString("UserCannotKickThemselves", resourceCulture); } } - + internal static string UserCannotKickBot { get { return ResourceManager.GetString("UserCannotKickBot", resourceCulture); } } - + internal static string BotCannotKickTarget { get { return ResourceManager.GetString("BotCannotKickTarget", resourceCulture); } } - + internal static string UserCannotKickTarget { get { return ResourceManager.GetString("UserCannotKickTarget", resourceCulture); } } - + internal static string UserCannotMuteOwner { get { return ResourceManager.GetString("UserCannotMuteOwner", resourceCulture); } } - + internal static string UserCannotMuteThemselves { get { return ResourceManager.GetString("UserCannotMuteThemselves", resourceCulture); } } - + internal static string UserCannotMuteBot { get { return ResourceManager.GetString("UserCannotMuteBot", resourceCulture); } } - + internal static string BotCannotMuteTarget { get { return ResourceManager.GetString("BotCannotMuteTarget", resourceCulture); } } - + internal static string UserCannotMuteTarget { get { return ResourceManager.GetString("UserCannotMuteTarget", resourceCulture); } } - + internal static string UserCannotUnmuteOwner { get { return ResourceManager.GetString("UserCannotUnmuteOwner", resourceCulture); } } - + internal static string UserCannotUnmuteThemselves { get { return ResourceManager.GetString("UserCannotUnmuteThemselves", resourceCulture); } } - + internal static string UserCannotUnmuteBot { get { return ResourceManager.GetString("UserCannotUnmuteBot", resourceCulture); } } - + internal static string BotCannotUnmuteTarget { get { return ResourceManager.GetString("BotCannotUnmuteTarget", resourceCulture); } } - + internal static string UserCannotUnmuteTarget { get { return ResourceManager.GetString("UserCannotUnmuteTarget", resourceCulture); } } - + internal static string EventEarlyNotification { get { return ResourceManager.GetString("EventEarlyNotification", resourceCulture); } } - + internal static string SettingsEventEarlyNotificationOffset { get { return ResourceManager.GetString("SettingsEventEarlyNotificationOffset", resourceCulture); } } - + internal static string UserNotFound { get { return ResourceManager.GetString("UserNotFound", resourceCulture); } } - + internal static string SettingsDefaultRole { get { return ResourceManager.GetString("SettingsDefaultRole", resourceCulture); } } - + internal static string CommandDescriptionRemind { get { return ResourceManager.GetString("CommandDescriptionRemind", resourceCulture); } } - + internal static string SettingsPublicFeedbackChannel { get { return ResourceManager.GetString("SettingsPublicFeedbackChannel", resourceCulture); } } - + internal static string SettingsPrivateFeedbackChannel { get { return ResourceManager.GetString("SettingsPrivateFeedbackChannel", resourceCulture); } } - + internal static string SettingsReturnRolesOnRejoin { get { return ResourceManager.GetString("SettingsReturnRolesOnRejoin", resourceCulture); } } - + internal static string SettingsAutoStartEvents { get { return ResourceManager.GetString("SettingsAutoStartEvents", resourceCulture); } } - + internal static string MissingReminderText { get { return ResourceManager.GetString("MissingReminderText", resourceCulture); } } - + internal static string DescriptionReminderCreated { get { return ResourceManager.GetString("DescriptionReminderCreated", resourceCulture); } } - + internal static string InvalidRemindIn { get { return ResourceManager.GetString("InvalidRemindIn", resourceCulture); } } - + internal static string IssuedBy { get { return ResourceManager.GetString("IssuedBy", resourceCulture); } } - + internal static string EventCreatedTitle { get { return ResourceManager.GetString("EventCreatedTitle", resourceCulture); } } - + internal static string DescriptionLocalEventCreated { get { return ResourceManager.GetString("DescriptionLocalEventCreated", resourceCulture); } } - + internal static string DescriptionExternalEventCreated { get { return ResourceManager.GetString("DescriptionExternalEventCreated", resourceCulture); } } - + internal static string EventDetailsButton { get { return ResourceManager.GetString("EventDetailsButton", resourceCulture); } } - + internal static string EventDuration { get { return ResourceManager.GetString("EventDuration", resourceCulture); } } - + internal static string DescriptionLocalEventStarted { get { return ResourceManager.GetString("DescriptionLocalEventStarted", resourceCulture); } } - + internal static string DescriptionExternalEventStarted { get { return ResourceManager.GetString("DescriptionExternalEventStarted", resourceCulture); } } - + internal static string UserAlreadyBanned { get { return ResourceManager.GetString("UserAlreadyBanned", resourceCulture); } } - + internal static string UserUnbanned { get { return ResourceManager.GetString("UserUnbanned", resourceCulture); } } - + internal static string UserMuted { get { return ResourceManager.GetString("UserMuted", resourceCulture); } } - + internal static string UserUnmuted { get { return ResourceManager.GetString("UserUnmuted", resourceCulture); } } - + internal static string UserNotMuted { get { return ResourceManager.GetString("UserNotMuted", resourceCulture); } } - + internal static string UserNotFoundShort { get { return ResourceManager.GetString("UserNotFoundShort", resourceCulture); } } - + internal static string UserKicked { get { return ResourceManager.GetString("UserKicked", resourceCulture); } } - + internal static string DescriptionActionReason { get { return ResourceManager.GetString("DescriptionActionReason", resourceCulture); } } - + internal static string DescriptionActionExpiresAt { get { return ResourceManager.GetString("DescriptionActionExpiresAt", resourceCulture); } } - + internal static string UserAlreadyMuted { get { return ResourceManager.GetString("UserAlreadyMuted", resourceCulture); } } - + internal static string MessageFrom { get { return ResourceManager.GetString("MessageFrom", resourceCulture); } } - + internal static string AboutTitleDevelopers { get { return ResourceManager.GetString("AboutTitleDevelopers", resourceCulture); } } - + internal static string AboutTitleWiki { get { return ResourceManager.GetString("AboutTitleWiki", resourceCulture); } } - + internal static string AboutBot { get { return ResourceManager.GetString("AboutBot", resourceCulture); } } - + internal static string AboutDeveloper_mctaylors { get { return ResourceManager.GetString("AboutDeveloper@mctaylors", resourceCulture); } } - + internal static string AboutDeveloper_Octol1ttle { get { return ResourceManager.GetString("AboutDeveloper@Octol1ttle", resourceCulture); } } - + internal static string AboutDeveloper_neroduckale { get { return ResourceManager.GetString("AboutDeveloper@neroduckale", resourceCulture); } } - + internal static string ReminderCreated { get { return ResourceManager.GetString("ReminderCreated", resourceCulture); } } - + internal static string Reminder { get { return ResourceManager.GetString("Reminder", resourceCulture); } } - + internal static string DescriptionReminder { get { return ResourceManager.GetString("DescriptionReminder", resourceCulture); } } - + internal static string SettingsListTitle { get { return ResourceManager.GetString("SettingsListTitle", resourceCulture); } } - + internal static string SettingSuccessfullyChanged { get { return ResourceManager.GetString("SettingSuccessfullyChanged", resourceCulture); } } - + internal static string SettingNotChanged { get { return ResourceManager.GetString("SettingNotChanged", resourceCulture); } } - + internal static string SettingIsNow { get { return ResourceManager.GetString("SettingIsNow", resourceCulture); diff --git a/Messages.resx b/locale/Messages.resx similarity index 100% rename from Messages.resx rename to locale/Messages.resx diff --git a/Messages.ru.resx b/locale/Messages.ru.resx similarity index 100% rename from Messages.ru.resx rename to locale/Messages.ru.resx diff --git a/Messages.tt-ru.resx b/locale/Messages.tt-ru.resx similarity index 100% rename from Messages.tt-ru.resx rename to locale/Messages.tt-ru.resx diff --git a/Boyfriend.cs b/src/Boyfriend.cs similarity index 100% rename from Boyfriend.cs rename to src/Boyfriend.cs diff --git a/ColorsList.cs b/src/ColorsList.cs similarity index 100% rename from ColorsList.cs rename to src/ColorsList.cs diff --git a/Commands/AboutCommandGroup.cs b/src/Commands/AboutCommandGroup.cs similarity index 95% rename from Commands/AboutCommandGroup.cs rename to src/Commands/AboutCommandGroup.cs index e4820c6..5ff757e 100644 --- a/Commands/AboutCommandGroup.cs +++ b/src/Commands/AboutCommandGroup.cs @@ -59,8 +59,8 @@ public class AboutCommandGroup : CommandGroup { builder.AppendLine($"@{dev} — {$"AboutDeveloper@{dev}".Localized()}"); builder.AppendLine() - .AppendLine(Markdown.Bold(Messages.AboutTitleWiki)) - .AppendLine("https://github.com/TeamOctolings/Boyfriend/wiki"); + .AppendLine(Markdown.Bold(Messages.AboutTitleWiki)) + .AppendLine("https://github.com/TeamOctolings/Boyfriend/wiki"); var embed = new EmbedBuilder().WithSmallTitle(Messages.AboutBot, currentUser) .WithDescription(builder.ToString()) diff --git a/Commands/BanCommandGroup.cs b/src/Commands/BanCommandGroup.cs similarity index 97% rename from Commands/BanCommandGroup.cs rename to src/Commands/BanCommandGroup.cs index a525afb..02e0fa2 100644 --- a/Commands/BanCommandGroup.cs +++ b/src/Commands/BanCommandGroup.cs @@ -63,10 +63,9 @@ public class BanCommandGroup : CommandGroup { [RequireBotDiscordPermissions(DiscordPermission.BanMembers)] [Description("Ban user")] public async Task BanUserAsync( - [Description("User to ban")] IUser target, - [Description("Ban reason")] string reason, - [Description("Ban duration")] - TimeSpan? duration = null) { + [Description("User to ban")] IUser target, + [Description("Ban reason")] string reason, + [Description("Ban duration")] TimeSpan? duration = null) { if (!_context.TryGetContextIDs(out var guildId, out var channelId, out var userId)) return Result.FromError( new ArgumentNullError(nameof(_context), "Unable to retrieve necessary IDs from command context")); @@ -199,9 +198,8 @@ public class BanCommandGroup : CommandGroup { [RequireBotDiscordPermissions(DiscordPermission.BanMembers)] [Description("Unban user")] public async Task UnbanUserAsync( - [Description("User to unban")] IUser target, - [Description("Unban reason")] - string reason) { + [Description("User to unban")] IUser target, + [Description("Unban reason")] string reason) { if (!_context.TryGetContextIDs(out var guildId, out var channelId, out var userId)) return Result.FromError( new ArgumentNullError(nameof(_context), "Unable to retrieve necessary IDs from command context")); diff --git a/Commands/ClearCommandGroup.cs b/src/Commands/ClearCommandGroup.cs similarity index 100% rename from Commands/ClearCommandGroup.cs rename to src/Commands/ClearCommandGroup.cs diff --git a/Commands/ErrorLoggingEvents.cs b/src/Commands/ErrorLoggingEvents.cs similarity index 100% rename from Commands/ErrorLoggingEvents.cs rename to src/Commands/ErrorLoggingEvents.cs diff --git a/Commands/KickCommandGroup.cs b/src/Commands/KickCommandGroup.cs similarity index 100% rename from Commands/KickCommandGroup.cs rename to src/Commands/KickCommandGroup.cs diff --git a/Commands/MuteCommandGroup.cs b/src/Commands/MuteCommandGroup.cs similarity index 100% rename from Commands/MuteCommandGroup.cs rename to src/Commands/MuteCommandGroup.cs diff --git a/Commands/PingCommandGroup.cs b/src/Commands/PingCommandGroup.cs similarity index 100% rename from Commands/PingCommandGroup.cs rename to src/Commands/PingCommandGroup.cs diff --git a/Commands/RemindCommandGroup.cs b/src/Commands/RemindCommandGroup.cs similarity index 100% rename from Commands/RemindCommandGroup.cs rename to src/Commands/RemindCommandGroup.cs diff --git a/Commands/SettingsCommandGroup.cs b/src/Commands/SettingsCommandGroup.cs similarity index 100% rename from Commands/SettingsCommandGroup.cs rename to src/Commands/SettingsCommandGroup.cs diff --git a/Data/GuildConfiguration.cs b/src/Data/GuildConfiguration.cs similarity index 100% rename from Data/GuildConfiguration.cs rename to src/Data/GuildConfiguration.cs diff --git a/Data/GuildData.cs b/src/Data/GuildData.cs similarity index 100% rename from Data/GuildData.cs rename to src/Data/GuildData.cs diff --git a/Data/MemberData.cs b/src/Data/MemberData.cs similarity index 100% rename from Data/MemberData.cs rename to src/Data/MemberData.cs diff --git a/Data/Reminder.cs b/src/Data/Reminder.cs similarity index 100% rename from Data/Reminder.cs rename to src/Data/Reminder.cs diff --git a/Data/ScheduledEventData.cs b/src/Data/ScheduledEventData.cs similarity index 100% rename from Data/ScheduledEventData.cs rename to src/Data/ScheduledEventData.cs diff --git a/EventResponders.cs b/src/EventResponders.cs similarity index 100% rename from EventResponders.cs rename to src/EventResponders.cs diff --git a/Extensions.cs b/src/Extensions.cs similarity index 92% rename from Extensions.cs rename to src/Extensions.cs index 983aea2..95500ac 100644 --- a/Extensions.cs +++ b/src/Extensions.cs @@ -125,13 +125,17 @@ public static class Extensions { } /// - /// Sanitizes a string (see ) and formats the string with block code. + /// Sanitizes a string (see ) and formats the string to use Markdown Block Code formatting with a specified + /// language for syntax highlighting. /// /// The string to sanitize and format. - /// The sanitized string formatted with . - public static string InBlockCode(this string s) { + /// + /// The sanitized string formatted to use Markdown Block Code with a specified + /// language for syntax highlighting. + public static string InBlockCode(this string s, string language = "") { s = s.SanitizeForBlockCode(); - return $"```{s.SanitizeForBlockCode()}{(s.EndsWith("`") || string.IsNullOrWhiteSpace(s) ? " " : "")}```"; + return + $"```{language}\n{s.SanitizeForBlockCode()}{(s.EndsWith("`") || string.IsNullOrWhiteSpace(s) ? " " : "")}```"; } public static string Localized(this string key) { @@ -159,7 +163,7 @@ public static class Extensions { builder.AppendLine(line.Text); } - return InBlockCode(builder.ToString()); + return InBlockCode(builder.ToString(), "diff"); } public static string GetTag(this IUser user) { diff --git a/InteractionResponders.cs b/src/InteractionResponders.cs similarity index 100% rename from InteractionResponders.cs rename to src/InteractionResponders.cs diff --git a/Services/GuildDataService.cs b/src/Services/GuildDataService.cs similarity index 100% rename from Services/GuildDataService.cs rename to src/Services/GuildDataService.cs diff --git a/Services/GuildUpdateService.cs b/src/Services/GuildUpdateService.cs similarity index 100% rename from Services/GuildUpdateService.cs rename to src/Services/GuildUpdateService.cs diff --git a/Services/UtilityService.cs b/src/Services/UtilityService.cs similarity index 100% rename from Services/UtilityService.cs rename to src/Services/UtilityService.cs