Backdrops.cs 918 B

1234567891011121314151617181920212223242526272829303132
  1. using Newtonsoft.Json;
  2. namespace FNZCM.BlazorWasm.UI.Components.FnzBoostrap.Modal
  3. {
  4. public enum BackdropMode
  5. {
  6. On,
  7. Off,
  8. Static
  9. }
  10. public class BackdropsJsonConverter : JsonConverter
  11. {
  12. public override bool CanConvert(Type objectType)
  13. => objectType == typeof(BackdropMode);
  14. public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
  15. => throw new NotImplementedException();
  16. public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
  17. {
  18. var v = (BackdropMode)value;
  19. writer.WriteValue(v switch
  20. {
  21. BackdropMode.On => true,
  22. BackdropMode.Off => false,
  23. BackdropMode.Static => "static",
  24. _ => null,
  25. });
  26. }
  27. }
  28. }