Typing indicator, mark as read server-side

This commit is contained in:
2025-05-18 05:35:14 +08:00
parent 5951dab6f1
commit c597df3937
13 changed files with 3646 additions and 36 deletions

View File

@ -37,13 +37,17 @@ public class WebSocketPacket
/// <returns>Deserialized data of type T</returns>
public T? GetData<T>()
{
if (Data == null)
return default;
if (Data is T typedData)
return typedData;
var jsonOpts = new JsonSerializerOptions
{
PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower,
DictionaryKeyPolicy = JsonNamingPolicy.SnakeCaseLower,
};
return JsonSerializer.Deserialize<T>(
JsonSerializer.Serialize(Data)
JsonSerializer.Serialize(Data, jsonOpts),
jsonOpts
);
}