git.iko.soy/deriving-openapi3
on master help sign in
Let's add toParamSchema also?
4d656fdVille Tirronen
src/Deriving/OpenApi.hs+8
@@ -40,6 +40,7 @@ import Control.Lens
40import qualified Data.Aeson.Types as A
40import qualified Data.Aeson.Types as A
41import Data.OpenApi
41import Data.OpenApi
42import Data.OpenApi.Internal.Schema
42import Data.OpenApi.Internal.Schema
43+import Data.OpenApi.Internal.ParamSchema
43import Data.Proxy
44import Data.Proxy
44import Data.Typeable
45import Data.Typeable
45import Deriving.Aeson
46import Deriving.Aeson
@@ -77,6 +78,13 @@ instance
77 openApiSchemaModifier @xs
78 openApiSchemaModifier @xs
78 <$> genericDeclareNamedSchema (openApiOptionsModifier @xs defaultSchemaOptions) (Proxy @x)
79 <$> genericDeclareNamedSchema (openApiOptionsModifier @xs defaultSchemaOptions) (Proxy @x)
79
80
81+instance
82+ (OpenApiOptionModifier xs, GToParamSchema (Rep x), Generic x) =>
83+ ToParamSchema (CustomJSON (xs :: k) x)
84+ where
85+ toParamSchema Proxy =
86+ genericToParamSchema (openApiOptionsModifier @xs defaultSchemaOptions) (Proxy @x)
87+
80class OpenApiOptionModifier x where
88class OpenApiOptionModifier x where
81 openApiOptionsModifier :: SchemaOptions -> SchemaOptions
89 openApiOptionsModifier :: SchemaOptions -> SchemaOptions
82 openApiOptionsModifier = id
90 openApiOptionsModifier = id