git.iko.soy/typeable/openapi3
on master help sign in
Add lenses for new types
commit08444f28e425496952c904b79fe4214c8a2e87b8 authorMaxim Koltsov <kolmax94@gmail.com> dateTue 23 Jun 2020, 22:50 (6 years ago) parent6dc3170
2 files changed+12−2
src/Data/Swagger/Internal.hs+8−2 src/Data/Swagger/Lens.hs+4
src/Data/Swagger/Internal.hs+8−2
@@ -348,7 +348,7 @@ data RequestBody = RequestBody
348348
349349-- | Each Media Type Object provides schema and examples for the media type identified by its key.
350350data MediaTypeObject = MediaTypeObject
351− { _mediaTypeSchema :: Maybe (Referenced Schema)
351+ { _mediaTypeObjectSchema :: Maybe (Referenced Schema)
352352
353353-- TODO
354354-- , _mediaTypeExample
@@ -975,6 +975,12 @@ instance Monoid Response where
975975 mempty = genericMempty
976976 mappend = (<>)
977977
978+instance Semigroup MediaTypeObject where
979+ (<>) = genericMappend
980+instance Monoid MediaTypeObject where
981+ mempty = genericMempty
982+ mappend = (<>)
983+
978984instance Semigroup ExternalDocs where
979985 (<>) = genericMappend
980986instance Monoid ExternalDocs where
@@ -1498,7 +1504,7 @@ instance HasSwaggerAesonOptions Response where
14981504instance HasSwaggerAesonOptions RequestBody where
14991505 swaggerAesonOptions _ = mkSwaggerAesonOptions "requestBody"
15001506instance HasSwaggerAesonOptions MediaTypeObject where
1501− swaggerAesonOptions _ = mkSwaggerAesonOptions "mediaType"
1507+ swaggerAesonOptions _ = mkSwaggerAesonOptions "mediaTypeObject"
15021508instance HasSwaggerAesonOptions Responses where
15031509 swaggerAesonOptions _ = mkSwaggerAesonOptions "responses" & saoSubObject ?~ "responses"
15041510instance HasSwaggerAesonOptions SecurityScheme where
src/Data/Swagger/Lens.hs+4
@@ -27,6 +27,10 @@ import Data.Text (Text)
2727-- * Classy lenses
2828
2929makeFields ''Swagger
30+makeFields ''Components
31+makeFields ''Server
32+makeFields ''RequestBody
33+makeFields ''MediaTypeObject
3034makeFields ''Host
3135makeFields ''Info
3236makeFields ''Contact