git.iko.soy/typeable/openapi3
on master help sign in
Fix Schema object's required field
43e3605Nickolay Kudasov
src/Data/Swagger.hs+1
@@ -37,6 +37,7 @@ module Data.Swagger (
37 SwaggerParameterSchema(..),
37 SwaggerParameterSchema(..),
38 SwaggerParameterOtherSchema(..),
38 SwaggerParameterOtherSchema(..),
39 SwaggerParameterLocation(..),
39 SwaggerParameterLocation(..),
40+ SwaggerParamName(..),
40 SwaggerItems(..),
41 SwaggerItems(..),
41 SwaggerHeader(..),
42 SwaggerHeader(..),
42 SwaggerExample(..),
43 SwaggerExample(..),
src/Data/Swagger/Internal.hs+5−2
@@ -381,12 +381,14 @@ data SwaggerItemsCollectionFormat
381 | SwaggerItemsCollectionPipes -- ^ Pipe separated values: @foo|bar@.
381 | SwaggerItemsCollectionPipes -- ^ Pipe separated values: @foo|bar@.
382 deriving (Eq, Show)
382 deriving (Eq, Show)
383
383
384+type SwaggerParamName = Text
385+
384data SwaggerSchema = SwaggerSchema
386data SwaggerSchema = SwaggerSchema
385 { swaggerSchemaType :: SwaggerSchemaType
387 { swaggerSchemaType :: SwaggerSchemaType
386 , swaggerSchemaFormat :: Maybe SwaggerFormat
388 , swaggerSchemaFormat :: Maybe SwaggerFormat
387 , swaggerSchemaTitle :: Maybe Text
389 , swaggerSchemaTitle :: Maybe Text
388 , swaggerSchemaDescription :: Maybe Text
390 , swaggerSchemaDescription :: Maybe Text
389− , swaggerSchemaRequired :: Maybe Bool
391+ , swaggerSchemaRequired :: [SwaggerParamName]
390
392
391 , swaggerSchemaItems :: Maybe SwaggerSchemaItems
393 , swaggerSchemaItems :: Maybe SwaggerSchemaItems
392 , swaggerSchemaAllOf :: Maybe [SwaggerSchema]
394 , swaggerSchemaAllOf :: Maybe [SwaggerSchema]
@@ -889,7 +891,8 @@ instance FromJSON SwaggerSecurityScheme where
889
891
890instance FromJSON SwaggerSchema where
892instance FromJSON SwaggerSchema where
891 parseJSON = genericParseJSONWithSub "common" (jsonPrefix "swaggerSchema")
893 parseJSON = genericParseJSONWithSub "common" (jsonPrefix "swaggerSchema")
892− `withDefaults` [ "properties" .= (mempty :: HashMap Text SwaggerSchema) ]
894+ `withDefaults` [ "properties" .= (mempty :: HashMap Text SwaggerSchema)
895+ , "required" .= ([] :: [SwaggerParamName]) ]
893
896
894instance FromJSON SwaggerHeader where
897instance FromJSON SwaggerHeader where
895 parseJSON = genericParseJSONWithSub "common" (jsonPrefix "swaggerHeader")
898 parseJSON = genericParseJSONWithSub "common" (jsonPrefix "swaggerHeader")