Files
alttpr-backend/ALttPRandomizer/JsonOptions.cs
2025-03-03 07:39:28 -06:00

17 lines
651 B
C#

namespace ALttPRandomizer {
using System.Text.Json;
using System.Text.Json.Serialization;
public static class JsonOptions {
public static JsonSerializerOptions Default = new JsonSerializerOptions(JsonSerializerDefaults.Web) {
PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower,
NumberHandling = JsonNumberHandling.Strict,
}.WithStringEnum();
public static JsonSerializerOptions WithStringEnum(this JsonSerializerOptions options) {
options.Converters.Add(new JsonStringEnumConverter(JsonNamingPolicy.SnakeCaseLower, false));
return options;
}
}
}