From f3891f2bfe9b8a03252a5e529b670318cfa8b431 Mon Sep 17 00:00:00 2001 From: nek0 Date: Sat, 28 May 2022 12:54:13 +0200 Subject: [PATCH] start openapi implememntation --- mateamt.cabal | 2 ++ src/Model/Auth.hs | 2 +- src/Types/Refine.hs | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/mateamt.cabal b/mateamt.cabal index 36ea931..5216b68 100644 --- a/mateamt.cabal +++ b/mateamt.cabal @@ -84,9 +84,11 @@ library , bytestring >=0.10.12.0 , base16-bytestring , base64-bytestring + , openapi3 >=3 , random , servant , servant-server + , servant-openapi3 , servant-rawm >= 0.3.0.0 , servant-rawm-server , opaleye diff --git a/src/Model/Auth.hs b/src/Model/Auth.hs index a5a9b98..181baa4 100644 --- a/src/Model/Auth.hs +++ b/src/Model/Auth.hs @@ -49,7 +49,7 @@ import Util.Crypto initToken :: PGS.Query initToken = mconcat [ "CREATE TABLE IF NOT EXISTS \"token\" (" - , "token_string TEXT NOT NULL PRIMARY KEY," + , "token_string BYTEA NOT NULL PRIMARY KEY," , "token_user INTEGER REFERENCES \"user\"(user_id) NOT NULL," , "token_expiry TIMESTAMPTZ NOT NULL," , "token_method INT NOT NULL" diff --git a/src/Types/Refine.hs b/src/Types/Refine.hs index 17d1316..5da6bf1 100644 --- a/src/Types/Refine.hs +++ b/src/Types/Refine.hs @@ -5,6 +5,8 @@ module Types.Refine where import GHC.Generics +import Data.OpenApi (ToParamSchema(..)) + import Web.HttpApiData data UserRefine = AllUsers | ActiveUsers | OldUsers @@ -24,6 +26,7 @@ instance ToHttpApiData UserRefine where ActiveUsers -> "active" OldUsers -> "old" +instance ToParamSchema UserRefine data ProductRefine = AllProducts | AvailableProducts | DepletedProducts deriving (Generic, Show, Enum) @@ -41,3 +44,5 @@ instance ToHttpApiData ProductRefine where AllProducts -> "all" AvailableProducts -> "available" DepletedProducts -> "depleted" + +instance ToParamSchema ProductRefine