@@ -42,14 +42,16 @@ import Data.OpenApi
42import Data.OpenApi.Internal.ParamSchema
42import Data.OpenApi.Internal.ParamSchema
43import Data.OpenApi.Internal.Schema
43import Data.OpenApi.Internal.Schema
44import Data.Proxy
44import Data.Proxy
45−import Data.Text (Text)
46−import qualified Data.Text as T
47import Data.Typeable
45import Data.Typeable
48import Deriving.Aeson
46import Deriving.Aeson
49import GHC.Generics
47import GHC.Generics
50import GHC.TypeLits
48import GHC.TypeLits
52−data Description (desc :: Symbol) = Description
50+#ifdef SERVANT_DESCRIPTION
53+import Data.Text (Text)
54+import qualified Data.Text as T
54instance (AesonOptions xs) => AesonOptions (Description f ': xs) where
56instance (AesonOptions xs) => AesonOptions (Description f ': xs) where
55 aesonOptions = aesonOptions @xs
57 aesonOptions = aesonOptions @xs
@@ -60,6 +62,8 @@ instance KnownSymbol t => OpenApiOptionModifier (Description t) where
60toTextLine :: forall s. KnownSymbol s => Text
62toTextLine :: forall s. KnownSymbol s => Text
61toTextLine = "\n\n" <> T.pack (symbolVal (Proxy @s))
63toTextLine = "\n\n" <> T.pack (symbolVal (Proxy @s))
64-- >>> import qualified Data.Yaml
68-- >>> import qualified Data.Yaml
65-- >>> import qualified Data.ByteString.Char8
69-- >>> import qualified Data.ByteString.Char8