mirror of
https://github.com/Tyrrrz/DiscordChatExporter.git
synced 2025-05-22 19:05:09 -04:00
[JSON] Add core user mentions to output (#416)
This commit is contained in:
parent
948fab7c86
commit
547bf0a463
1 changed files with 22 additions and 0 deletions
|
@ -4,6 +4,7 @@ using System.Threading.Tasks;
|
|||
using DiscordChatExporter.Domain.Discord.Models;
|
||||
using DiscordChatExporter.Domain.Exporting.Writers.MarkdownVisitors;
|
||||
using DiscordChatExporter.Domain.Internal.Extensions;
|
||||
using DiscordChatExporter.Domain.Markdown.Ast;
|
||||
|
||||
namespace DiscordChatExporter.Domain.Exporting.Writers
|
||||
{
|
||||
|
@ -159,6 +160,20 @@ namespace DiscordChatExporter.Domain.Exporting.Writers
|
|||
await _writer.FlushAsync();
|
||||
}
|
||||
|
||||
private async ValueTask WriteMentionAsync(User mentionedUser)
|
||||
{
|
||||
_writer.WriteStartObject();
|
||||
|
||||
_writer.WriteString("id", mentionedUser.Id);
|
||||
_writer.WriteString("name", mentionedUser.Name);
|
||||
_writer.WriteNumber("discriminator", mentionedUser.Discriminator);
|
||||
_writer.WriteString("nickname", Context.TryGetMember(mentionedUser.Id)?.Nick ?? mentionedUser.Name);
|
||||
_writer.WriteBoolean("isBot", mentionedUser.IsBot);
|
||||
|
||||
_writer.WriteEndObject();
|
||||
await _writer.FlushAsync();
|
||||
}
|
||||
|
||||
public override async ValueTask WritePreambleAsync()
|
||||
{
|
||||
// Root object (start)
|
||||
|
@ -239,6 +254,13 @@ namespace DiscordChatExporter.Domain.Exporting.Writers
|
|||
|
||||
_writer.WriteEndArray();
|
||||
|
||||
// Mentions
|
||||
_writer.WriteStartArray("mentions");
|
||||
foreach (var mention in message.MentionedUsers)
|
||||
await WriteMentionAsync(mention);
|
||||
|
||||
_writer.WriteEndArray();
|
||||
|
||||
_writer.WriteEndObject();
|
||||
await _writer.FlushAsync();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue