refactor: Remove Protolude.Conv from OpenAPIw

This commit is contained in:
monacoremo
2021-11-12 20:25:22 +01:00
committed by Remo
parent 71cb8afc0d
commit de531b6b41
+10 -10
View File
@@ -7,12 +7,13 @@ Description : Generates the OpenAPI output
{-# LANGUAGE RecordWildCards #-} {-# LANGUAGE RecordWildCards #-}
module PostgREST.OpenAPI (encode) where module PostgREST.OpenAPI (encode) where
import qualified Data.Aeson as JSON import qualified Data.Aeson as JSON
import qualified Data.ByteString.Lazy as LBS import qualified Data.ByteString.Char8 as BS
import qualified Data.HashMap.Strict as M import qualified Data.ByteString.Lazy as LBS
import qualified Data.HashSet.InsOrd as Set import qualified Data.HashMap.Strict as M
import qualified Data.Text as T import qualified Data.HashSet.InsOrd as Set
import qualified Data.Text.Encoding as T import qualified Data.Text as T
import qualified Data.Text.Encoding as T
import Control.Arrow ((&&&)) import Control.Arrow ((&&&))
import Data.HashMap.Strict.InsOrd (InsOrdHashMap, fromList) import Data.HashMap.Strict.InsOrd (InsOrdHashMap, fromList)
@@ -38,8 +39,7 @@ import PostgREST.Version (docsVersion, prettyVersion)
import PostgREST.ContentType import PostgREST.ContentType
import Protolude hiding (Proxy, get, toS) import Protolude hiding (Proxy, get)
import Protolude.Conv (toS)
encode :: AppConfig -> DbStructure -> [Table] -> M.HashMap k [ProcDescription] -> Maybe Text -> LBS.ByteString encode :: AppConfig -> DbStructure -> [Table] -> M.HashMap k [ProcDescription] -> Maybe Text -> LBS.ByteString
encode conf dbStructure tables procs schemaDescription = encode conf dbStructure tables procs schemaDescription =
@@ -53,7 +53,7 @@ encode conf dbStructure tables procs schemaDescription =
(dbPrimaryKeys dbStructure) (dbPrimaryKeys dbStructure)
makeMimeList :: [ContentType] -> MimeList makeMimeList :: [ContentType] -> MimeList
makeMimeList cs = MimeList $ fmap (fromString . toS . toMime) cs makeMimeList cs = MimeList $ fmap (fromString . BS.unpack . toMime) cs
toSwaggerType :: Text -> SwaggerType t toSwaggerType :: Text -> SwaggerType t
toSwaggerType "character varying" = SwaggerString toSwaggerType "character varying" = SwaggerString
@@ -119,7 +119,7 @@ makeProperty rels pks c = (colName c, Inline s)
colDescription c colDescription c
s = s =
(mempty :: Schema) (mempty :: Schema)
& default_ .~ (JSON.decode . toS . parseDefault (colType c) =<< colDefault c) & default_ .~ (JSON.decode . toUtf8Lazy . parseDefault (colType c) =<< colDefault c)
& description .~ d & description .~ d
& enum_ .~ e & enum_ .~ e
& format ?~ colType c & format ?~ colType c