diff --git a/Content.Server/Administration/Logs/Converters/EntityStringRepresentationConverter.cs b/Content.Server/Administration/Logs/Converters/EntityStringRepresentationConverter.cs new file mode 100644 index 0000000000..991aa4d457 --- /dev/null +++ b/Content.Server/Administration/Logs/Converters/EntityStringRepresentationConverter.cs @@ -0,0 +1,27 @@ +using System.Text.Json; +using Robust.Shared.GameObjects; + +namespace Content.Server.Administration.Logs.Converters; + +[AdminLogConverter] +public class EntityStringRepresentationConverter : AdminLogConverter +{ + public override void Write(Utf8JsonWriter writer, EntityStringRepresentation value, JsonSerializerOptions options) + { + writer.WriteStartObject(); + + writer.WriteNumber("id", (int) value.Uid); + + if (value.Name != null) + { + writer.WriteString("name", value.Name); + } + + if (value.Session != null) + { + writer.WriteString("player", value.Session.UserId.UserId); + } + + writer.WriteEndObject(); + } +}