@@ -10,8 +10,10 @@ import java.util.Base64
10
10
import scala .collection .immutable .ArraySeq
11
11
12
12
object ZioJsonCodecs {
13
- implicit val config : JsonCodecConfiguration =
14
- JsonCodecConfiguration (explicitEmptyCollections = ExplicitEmptyCollections (encoding = false , decoding = false ))
13
+ implicit val config : JsonCodecConfiguration = JsonCodecConfiguration (
14
+ explicitEmptyCollections = ExplicitEmptyCollections (encoding = false , decoding = false ),
15
+ enumValuesAsStrings = true
16
+ )
15
17
implicit val adtC3c : JsonCodec [ADTBase ] = DeriveJsonCodec .gen
16
18
implicit val geoJsonC3c : JsonCodec [GeoJSON .GeoJSON ] = {
17
19
implicit val c1 : JsonCodec [GeoJSON .SimpleGeometry ] = DeriveJsonCodec .gen
@@ -133,22 +135,7 @@ object ZioJsonCodecs {
133
135
}
134
136
implicit val missingRequiredFieldsC3c : JsonCodec [MissingRequiredFields ] = DeriveJsonCodec .gen
135
137
implicit val primitivesC3c : JsonCodec [Primitives ] = DeriveJsonCodec .gen
136
- implicit val enumADTsC3c : JsonCodec [SuitADT ] = new JsonCodec (new JsonEncoder [SuitADT ] {
137
- override def unsafeEncode (a : SuitADT , indent : Option [Int ], out : Write ): Unit = {
138
- out.write('"' )
139
- out.write(a.toString)
140
- out.write('"' )
141
- }
142
- }, new JsonDecoder [SuitADT ] {
143
- private [this ] val values = Array (Hearts , Spades , Diamonds , Clubs )
144
- private [this ] val matrix = new StringMatrix (values.map(_.toString))
145
-
146
- override def unsafeDecode (trace : List [JsonError ], in : RetractReader ): SuitADT = {
147
- val idx = Lexer .enumeration(trace, in, matrix)
148
- if (idx == - 1 ) Lexer .error(" SuitADT" , trace)
149
- values(idx)
150
- }
151
- })
138
+ implicit val enumADTsC3c : JsonCodec [SuitADT ] = DeriveJsonCodec .gen
152
139
implicit val enumsC3c : JsonCodec [SuitEnum ] = new JsonCodec (new JsonEncoder [SuitEnum ] {
153
140
override def unsafeEncode (a : SuitEnum , indent : Option [Int ], out : Write ): Unit = {
154
141
out.write('"' )
0 commit comments