@@ -22,20 +22,21 @@ module Data.Schematic
2222 , field
2323 ) where
2424
25−import Control.Monad.Validation
26−import Data.Aeson as J
27−import Data.Aeson.Types as J
28−import Data.ByteString.Lazy as BL
29−import Data.Functor.Identity as F
30−import Data.Schematic.DSL
31−import Data.Schematic.Helpers
32−import Data.Schematic.JsonSchema
33−import Data.Schematic.Lens
34−import Data.Schematic.Migration
35−import Data.Schematic.Schema
36−import Data.Schematic.Validation
37−import Data.Singletons.Prelude hiding ((:.))
38−import Data.Text as T
25+import Control.Monad.Validation
26+import Data.Aeson as J
27+import Data.Aeson.Types as J
28+import Data.ByteString.Lazy as BL
29+import Data.Functor.Identity as F
30+import Data.Schematic.DSL
31+import Data.Schematic.Helpers
32+import Data.Schematic.JsonSchema
33+import Data.Schematic.Lens
34+import Data.Schematic.Migration
35+import Data.Schematic.Schema
36+import Data.Schematic.Validation
37+import Data.Singletons.Prelude hiding ((:.))
38+import Data.Tagged
39+import Data.Text as T
3940
4041
4142parseAndValidateJson
@@ -85,7 +86,8 @@ parseAndValidateWithMList
8586 -> J.Value
8687 -> m (ParseResult (JsonRepr (Head revisions)))
8788parseAndValidateWithMList MNil v = pure $ parseAndValidateJson v
88−parseAndValidateWithMList ((:&&) p f tl) v = case parseAndValidateJsonBy p v of
89+parseAndValidateWithMList (Tagged f :&& tl) v =
90+ case parseAndValidateJsonBy Proxy v of
8991 Valid a -> pure $ Valid a
9092 DecodingError _ -> do
9193 pr <- parseAndValidateWithMList tl v