1
0
Fork 1
mirror of https://github.com/TeamOctolings/Octobot.git synced 2025-04-20 00:43:36 +03:00

Add StringBuilder extensions

Signed-off-by: mctaylors <cantsendmails@mctaylors.ru>
This commit is contained in:
Macintxsh 2023-12-04 14:58:43 +03:00
parent 5fce01c15c
commit fc3c56176a
Signed by: mctaylors
GPG key ID: 7181BEBE676903C1
5 changed files with 55 additions and 37 deletions

View file

@ -135,11 +135,10 @@ public class BanCommandGroup : CommandGroup
return await _feedback.SendContextualEmbedResultAsync(errorEmbed, ct); return await _feedback.SendContextualEmbedResultAsync(errorEmbed, ct);
} }
var builder = new StringBuilder().Append("- ") var builder = new StringBuilder().AppendLineWithBullet(string.Format(Messages.DescriptionActionReason, reason));
.AppendLine(string.Format(Messages.DescriptionActionReason, reason));
if (duration is not null) if (duration is not null)
{ {
builder.Append("- ").Append( builder.AppendWithBullet(
string.Format( string.Format(
Messages.DescriptionActionExpiresAt, Messages.DescriptionActionExpiresAt,
Markdown.Timestamp(DateTimeOffset.UtcNow.Add(duration.Value)))); Markdown.Timestamp(DateTimeOffset.UtcNow.Add(duration.Value))));
@ -274,8 +273,7 @@ public class BanCommandGroup : CommandGroup
.WithColour(ColorsList.Green).Build(); .WithColour(ColorsList.Green).Build();
var title = string.Format(Messages.UserUnbanned, target.GetTag()); var title = string.Format(Messages.UserUnbanned, target.GetTag());
var description = new StringBuilder().Append("- ") var description = new StringBuilder().AppendWithBullet(string.Format(Messages.DescriptionActionReason, reason));
.Append(string.Format(Messages.DescriptionActionReason, reason));
var logResult = _utility.LogActionAsync( var logResult = _utility.LogActionAsync(
data.Settings, channelId, executor, title, description.ToString(), target, ColorsList.Green, ct: ct); data.Settings, channelId, executor, title, description.ToString(), target, ColorsList.Green, ct: ct);
if (!logResult.IsSuccess) if (!logResult.IsSuccess)

View file

@ -136,8 +136,8 @@ public class MuteCommandGroup : CommandGroup
} }
var title = string.Format(Messages.UserMuted, target.GetTag()); var title = string.Format(Messages.UserMuted, target.GetTag());
var description = new StringBuilder().Append("- ").AppendLine(string.Format(Messages.DescriptionActionReason, reason)) var description = new StringBuilder().AppendLineWithBullet(string.Format(Messages.DescriptionActionReason, reason))
.Append("- ").Append(string.Format( .AppendWithBullet(string.Format(
Messages.DescriptionActionExpiresAt, Markdown.Timestamp(until))).ToString(); Messages.DescriptionActionExpiresAt, Markdown.Timestamp(until))).ToString();
var logResult = _utility.LogActionAsync( var logResult = _utility.LogActionAsync(

View file

@ -90,10 +90,9 @@ public class RemindCommandGroup : CommandGroup
for (var i = 0; i < data.Reminders.Count; i++) for (var i = 0; i < data.Reminders.Count; i++)
{ {
var reminder = data.Reminders[i]; var reminder = data.Reminders[i];
builder.Append("- ").AppendLine(string.Format(Messages.ReminderPosition, Markdown.InlineCode((i + 1).ToString()))) builder.AppendLineWithBullet(string.Format(Messages.ReminderPosition, Markdown.InlineCode((i + 1).ToString())))
.Append(" - ").AppendLine(string.Format(Messages.ReminderText, Markdown.InlineCode(reminder.Text))) .AppendLineWithSubBullet(string.Format(Messages.ReminderText, Markdown.InlineCode(reminder.Text)))
.Append(" - ") .AppendLineWithSubBullet(string.Format(Messages.ReminderTime, Markdown.Timestamp(reminder.At)));
.AppendLine(string.Format(Messages.ReminderTime, Markdown.Timestamp(reminder.At)));
} }
var embed = new EmbedBuilder().WithSmallTitle( var embed = new EmbedBuilder().WithSmallTitle(
@ -155,9 +154,9 @@ public class RemindCommandGroup : CommandGroup
Text = text Text = text
}); });
var builder = new StringBuilder().Append("- ").AppendLine(string.Format( var builder = new StringBuilder().AppendLineWithBullet(string.Format(
Messages.ReminderText, Markdown.InlineCode(text))) Messages.ReminderText, Markdown.InlineCode(text)))
.Append("- ").Append(string.Format(Messages.ReminderTime, Markdown.Timestamp(remindAt))); .AppendWithBullet(string.Format(Messages.ReminderTime, Markdown.Timestamp(remindAt)));
var embed = new EmbedBuilder().WithSmallTitle( var embed = new EmbedBuilder().WithSmallTitle(
string.Format(Messages.ReminderCreated, executor.GetTag()), executor) string.Format(Messages.ReminderCreated, executor.GetTag()), executor)
@ -215,8 +214,8 @@ public class RemindCommandGroup : CommandGroup
var reminder = data.Reminders[index]; var reminder = data.Reminders[index];
var description = new StringBuilder() var description = new StringBuilder()
.Append("- ").AppendLine(string.Format(Messages.ReminderText, Markdown.InlineCode(reminder.Text))) .AppendLineWithBullet(string.Format(Messages.ReminderText, Markdown.InlineCode(reminder.Text)))
.Append("- ").AppendLine(string.Format(Messages.ReminderTime, Markdown.Timestamp(reminder.At))); .AppendLineWithBullet(string.Format(Messages.ReminderTime, Markdown.Timestamp(reminder.At)));
data.Reminders.RemoveAt(index); data.Reminders.RemoveAt(index);

View file

@ -102,11 +102,11 @@ public class ToolsCommandGroup : CommandGroup
if (target.GlobalName is not null) if (target.GlobalName is not null)
{ {
builder.Append("- ").AppendLine(Messages.UserInfoDisplayName) builder.AppendLineWithBullet(Messages.UserInfoDisplayName)
.AppendLine(Markdown.InlineCode(target.GlobalName)); .AppendLine(Markdown.InlineCode(target.GlobalName));
} }
builder.Append("- ").AppendLine(Messages.UserInfoDiscordUserSince) builder.AppendLineWithBullet(Messages.UserInfoDiscordUserSince)
.AppendLine(Markdown.Timestamp(target.ID.Timestamp)); .AppendLine(Markdown.Timestamp(target.ID.Timestamp));
var memberData = data.GetOrCreateMemberData(target.ID); var memberData = data.GetOrCreateMemberData(target.ID);
@ -170,23 +170,23 @@ public class ToolsCommandGroup : CommandGroup
{ {
if (guildMember.Nickname.IsDefined(out var nickname)) if (guildMember.Nickname.IsDefined(out var nickname))
{ {
builder.Append("- ").AppendLine(Messages.UserInfoGuildNickname) builder.AppendLineWithBullet(Messages.UserInfoGuildNickname)
.AppendLine(Markdown.InlineCode(nickname)); .AppendLine(Markdown.InlineCode(nickname));
} }
builder.Append("- ").AppendLine(Messages.UserInfoGuildMemberSince) builder.AppendLineWithBullet(Messages.UserInfoGuildMemberSince)
.AppendLine(Markdown.Timestamp(guildMember.JoinedAt)); .AppendLine(Markdown.Timestamp(guildMember.JoinedAt));
if (guildMember.PremiumSince.IsDefined(out var premiumSince)) if (guildMember.PremiumSince.IsDefined(out var premiumSince))
{ {
builder.Append("- ").AppendLine(Messages.UserInfoGuildMemberPremiumSince) builder.AppendLineWithBullet(Messages.UserInfoGuildMemberPremiumSince)
.AppendLine(Markdown.Timestamp(premiumSince.Value)); .AppendLine(Markdown.Timestamp(premiumSince.Value));
color = ColorsList.Magenta; color = ColorsList.Magenta;
} }
if (guildMember.Roles.Count > 0) if (guildMember.Roles.Count > 0)
{ {
builder.Append("- ").AppendLine(Messages.UserInfoGuildRoles); builder.AppendLineWithBullet(Messages.UserInfoGuildRoles);
for (var i = 0; i < guildMember.Roles.Count - 1; i++) for (var i = 0; i < guildMember.Roles.Count - 1; i++)
{ {
builder.Append($"<@&{guildMember.Roles[i]}>, "); builder.Append($"<@&{guildMember.Roles[i]}>, ");
@ -202,30 +202,30 @@ public class ToolsCommandGroup : CommandGroup
{ {
if (memberData.BannedUntil < DateTimeOffset.MaxValue) if (memberData.BannedUntil < DateTimeOffset.MaxValue)
{ {
builder.Append("- ").AppendLine(Messages.UserInfoBanned) builder.AppendLineWithBullet(Messages.UserInfoBanned)
.Append(" - ").AppendLine(string.Format( .AppendLineWithSubBullet(string.Format(
Messages.DescriptionActionExpiresAt, Markdown.Timestamp(memberData.BannedUntil.Value))); Messages.DescriptionActionExpiresAt, Markdown.Timestamp(memberData.BannedUntil.Value)));
return; return;
} }
builder.Append("- ").AppendLine(Messages.UserInfoBannedPermanently); builder.AppendLineWithBullet(Messages.UserInfoBannedPermanently);
} }
private static void AppendMuteInformation( private static void AppendMuteInformation(
MemberData memberData, DateTimeOffset? communicationDisabledUntil, StringBuilder builder) MemberData memberData, DateTimeOffset? communicationDisabledUntil, StringBuilder builder)
{ {
builder.Append("- ").AppendLine(Messages.UserInfoMuted); builder.AppendLineWithBullet(Messages.UserInfoMuted);
if (memberData.MutedUntil is not null && DateTimeOffset.UtcNow <= memberData.MutedUntil) if (memberData.MutedUntil is not null && DateTimeOffset.UtcNow <= memberData.MutedUntil)
{ {
builder.Append(" - ").AppendLine(Messages.UserInfoMutedByMuteRole) builder.AppendLineWithSubBullet(Messages.UserInfoMutedByMuteRole)
.Append(" - ").AppendLine(string.Format( .AppendLineWithSubBullet(string.Format(
Messages.DescriptionActionExpiresAt, Markdown.Timestamp(memberData.MutedUntil.Value))); Messages.DescriptionActionExpiresAt, Markdown.Timestamp(memberData.MutedUntil.Value)));
} }
if (communicationDisabledUntil is not null) if (communicationDisabledUntil is not null)
{ {
builder.Append(" - ").AppendLine(Messages.UserInfoMutedByTimeout) builder.AppendLineWithSubBullet(Messages.UserInfoMutedByTimeout)
.Append(" - ").AppendLine(string.Format( .AppendLineWithSubBullet(string.Format(
Messages.DescriptionActionExpiresAt, Markdown.Timestamp(communicationDisabledUntil.Value))); Messages.DescriptionActionExpiresAt, Markdown.Timestamp(communicationDisabledUntil.Value)));
} }
} }
@ -282,13 +282,13 @@ public class ToolsCommandGroup : CommandGroup
if (guild.Description is not null) if (guild.Description is not null)
{ {
description.Append("- ").AppendLine(Messages.GuildInfoDescription) description.AppendLineWithBullet(Messages.GuildInfoDescription)
.AppendLine(Markdown.InlineCode(guild.Description)); .AppendLine(Markdown.InlineCode(guild.Description));
} }
description.Append("- ").AppendLine(Messages.GuildInfoCreatedAt) description.AppendLineWithBullet(Messages.GuildInfoCreatedAt)
.AppendLine(Markdown.Timestamp(guild.ID.Timestamp)) .AppendLine(Markdown.Timestamp(guild.ID.Timestamp))
.Append("- ").AppendLine(Messages.GuildInfoOwner) .AppendLineWithBullet(Messages.GuildInfoOwner)
.AppendLine(Mention.User(guild.OwnerID)); .AppendLine(Mention.User(guild.OwnerID));
var embedColor = ColorsList.Cyan; var embedColor = ColorsList.Cyan;
@ -296,9 +296,9 @@ public class ToolsCommandGroup : CommandGroup
if (guild.PremiumTier > PremiumTier.None) if (guild.PremiumTier > PremiumTier.None)
{ {
description.Append("### ").AppendLine(Messages.GuildInfoServerBoost) description.Append("### ").AppendLine(Messages.GuildInfoServerBoost)
.Append("- ").Append(Messages.GuildInfoBoostTier) .AppendWithBullet(Messages.GuildInfoBoostTier)
.Append(": ").AppendLine(Markdown.InlineCode(guild.PremiumTier.ToString())) .Append(": ").AppendLine(Markdown.InlineCode(guild.PremiumTier.ToString()))
.Append("- ").Append(Messages.GuildInfoBoostCount) .AppendWithBullet(Messages.GuildInfoBoostCount)
.Append(": ").AppendLine(Markdown.InlineCode(guild.PremiumSubscriptionCount.ToString())); .Append(": ").AppendLine(Markdown.InlineCode(guild.PremiumSubscriptionCount.ToString()));
embedColor = ColorsList.Magenta; embedColor = ColorsList.Magenta;
} }
@ -362,14 +362,14 @@ public class ToolsCommandGroup : CommandGroup
var description = new StringBuilder().Append("# ").Append(i); var description = new StringBuilder().Append("# ").Append(i);
description.AppendLine().Append("- ").Append(string.Format( description.AppendLine().AppendWithBullet(string.Format(
Messages.RandomMin, Markdown.InlineCode(min.ToString()))); Messages.RandomMin, Markdown.InlineCode(min.ToString())));
if (secondNullable is null && first >= secondDefault) if (secondNullable is null && first >= secondDefault)
{ {
description.Append(' ').Append(Messages.Default); description.Append(' ').Append(Messages.Default);
} }
description.AppendLine().Append("- ").Append(string.Format( description.AppendLine().AppendWithBullet(string.Format(
Messages.RandomMax, Markdown.InlineCode(max.ToString()))); Messages.RandomMax, Markdown.InlineCode(max.ToString())));
if (secondNullable is null && first < secondDefault) if (secondNullable is null && first < secondDefault)
{ {
@ -449,7 +449,7 @@ public class ToolsCommandGroup : CommandGroup
foreach (var markdownTimestamp in AllStyles.Select(style => Markdown.Timestamp(timestamp, style))) foreach (var markdownTimestamp in AllStyles.Select(style => Markdown.Timestamp(timestamp, style)))
{ {
description.Append("- ").Append(Markdown.InlineCode(markdownTimestamp)) description.AppendWithBullet(Markdown.InlineCode(markdownTimestamp))
.Append(" → ").AppendLine(markdownTimestamp); .Append(" → ").AppendLine(markdownTimestamp);
} }

View file

@ -0,0 +1,21 @@
using System.Text;
namespace Octobot.Extensions;
public static class StringBuilderExtensions
{
public static StringBuilder AppendWithBullet(this StringBuilder builder, string? text)
{
return builder.Append("- ").Append(text);
}
public static StringBuilder AppendLineWithBullet(this StringBuilder builder, string? text)
{
return builder.Append("- ").AppendLine(text);
}
public static StringBuilder AppendLineWithSubBullet(this StringBuilder builder, string? text)
{
return builder.Append(" - ").AppendLine(text);
}
}