{-# OPTIONS_GHC -fno-warn-orphans #-} module Mensam.Server.OpenApi where import Mensam.API.Aeson import Mensam.API.Aeson.StaticText import Mensam.API.Data.Desk import Mensam.API.Data.Reservation import Mensam.API.Data.Space import Mensam.API.Data.Space.Permission import Mensam.API.Data.User import Mensam.API.Data.User.Password import Mensam.API.Data.User.Username import Mensam.API.Order import Mensam.API.Route.Api qualified as Route.Api import Mensam.API.Route.Api.Reservation qualified as Route.Reservation import Mensam.API.Route.Api.Space qualified as Route.Space import Mensam.API.Route.Api.User qualified as Route.User import Mensam.API.Update import Control.Lens import Data.Aeson qualified as A import Data.HashMap.Strict.InsOrd qualified as HMIO import Data.OpenApi import Data.Proxy import Data.Text qualified as T import Data.Text.Lazy.Encoding qualified as TL import Data.Text.Lazy.IO qualified as TL import Data.Typeable import Deriving.Aeson qualified as A import Deriving.Aeson.OrphanInstances qualified as A () import GHC.TypeLits import Servant.API import Servant.Auth.OrphanInstances () import Servant.OpenApi import Text.Email.OrphanInstances () openapi :: OpenApi openapi :: OpenApi openapi = Proxy (NamedRoutes Routes) -> OpenApi forall {k} (api :: k). HasOpenApi api => Proxy api -> OpenApi toOpenApi (Proxy (NamedRoutes Routes) -> OpenApi) -> Proxy (NamedRoutes Routes) -> OpenApi forall a b. (a -> b) -> a -> b $ forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(NamedRoutes Route.Api.Routes) instance ToSchema OpenApi where declareNamedSchema :: Proxy OpenApi -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy OpenApi Proxy = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just Text "OpenAPI") (Schema -> NamedSchema) -> Schema -> NamedSchema forall a b. (a -> b) -> a -> b $ Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Value -> Identity (Maybe Value)) -> Schema -> Identity Schema forall s a. HasExample s a => Lens' s a Lens' Schema (Maybe Value) example ((Maybe Value -> Identity (Maybe Value)) -> Schema -> Identity Schema) -> Value -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApi -> Value forall a. ToJSON a => a -> Value A.toJSON OpenApi openapiExample where openapiExample :: OpenApi openapiExample :: OpenApi openapiExample = OpenApi forall a. Monoid a => a mempty OpenApi -> (OpenApi -> OpenApi) -> OpenApi forall a b. a -> (a -> b) -> b & (Info -> Identity Info) -> OpenApi -> Identity OpenApi forall s a. HasInfo s a => Lens' s a Lens' OpenApi Info info ((Info -> Identity Info) -> OpenApi -> Identity OpenApi) -> ((Text -> Identity Text) -> Info -> Identity Info) -> (Text -> Identity Text) -> OpenApi -> Identity OpenApi forall b c a. (b -> c) -> (a -> b) -> a -> c . (Text -> Identity Text) -> Info -> Identity Info forall s a. HasTitle s a => Lens' s a Lens' Info Text title ((Text -> Identity Text) -> OpenApi -> Identity OpenApi) -> Text -> OpenApi -> OpenApi forall s t a b. ASetter s t a b -> b -> s -> t .~ Text "Example API" OpenApi -> (OpenApi -> OpenApi) -> OpenApi forall a b. a -> (a -> b) -> b & (Info -> Identity Info) -> OpenApi -> Identity OpenApi forall s a. HasInfo s a => Lens' s a Lens' OpenApi Info info ((Info -> Identity Info) -> OpenApi -> Identity OpenApi) -> ((Text -> Identity Text) -> Info -> Identity Info) -> (Text -> Identity Text) -> OpenApi -> Identity OpenApi forall b c a. (b -> c) -> (a -> b) -> a -> c . (Text -> Identity Text) -> Info -> Identity Info forall s a. HasVersion s a => Lens' s a Lens' Info Text version ((Text -> Identity Text) -> OpenApi -> Identity OpenApi) -> Text -> OpenApi -> OpenApi forall s t a b. ASetter s t a b -> b -> s -> t .~ Text "1.0.0" OpenApi -> (OpenApi -> OpenApi) -> OpenApi forall a b. a -> (a -> b) -> b & (InsOrdHashMap FilePath PathItem -> Identity (InsOrdHashMap FilePath PathItem)) -> OpenApi -> Identity OpenApi forall s a. HasPaths s a => Lens' s a Lens' OpenApi (InsOrdHashMap FilePath PathItem) paths ((InsOrdHashMap FilePath PathItem -> Identity (InsOrdHashMap FilePath PathItem)) -> OpenApi -> Identity OpenApi) -> InsOrdHashMap FilePath PathItem -> OpenApi -> OpenApi forall s t a b. ASetter s t a b -> b -> s -> t .~ FilePath -> PathItem -> InsOrdHashMap FilePath PathItem forall k v. Hashable k => k -> v -> InsOrdHashMap k v HMIO.singleton FilePath "/hello_world" ( PathItem forall a. Monoid a => a mempty PathItem -> (PathItem -> PathItem) -> PathItem forall a b. a -> (a -> b) -> b & (Maybe Operation -> Identity (Maybe Operation)) -> PathItem -> Identity PathItem forall s a. HasGet s a => Lens' s a Lens' PathItem (Maybe Operation) get ((Maybe Operation -> Identity (Maybe Operation)) -> PathItem -> Identity PathItem) -> Operation -> PathItem -> PathItem forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ ( Operation forall a. Monoid a => a mempty Operation -> (Operation -> Operation) -> Operation forall a b. a -> (a -> b) -> b & Index Operation -> Lens' Operation (Maybe (IxValue Operation)) forall m. At m => Index m -> Lens' m (Maybe (IxValue m)) at Index Operation 200 ((Maybe (IxValue Operation) -> Identity (Maybe (IxValue Operation))) -> Operation -> Identity Operation) -> IxValue Operation -> Operation -> Operation forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ IxValue Operation "OK" ) ) instance ToParamSchema Password where toParamSchema :: Proxy Password -> Schema toParamSchema Proxy Password Proxy = Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiString Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema forall s a. HasMinLength s a => Lens' s a Lens' Schema (Maybe Integer) minLength ((Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema) -> Integer -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Integer 4 Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema forall s a. HasMaxLength s a => Lens' s a Lens' Schema (Maybe Integer) maxLength ((Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema) -> Integer -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Integer 32 Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasPattern s a => Lens' s a Lens' Schema (Maybe Text) Data.OpenApi.pattern ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> Text -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ (Text "^[a-zA-Z0-9" Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> FilePath -> Text T.pack (FilePath -> FilePath escapeCharsForPatternCharacterSet FilePath passwordValidSymbols) Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text "]{4,32}$") instance ToSchema Password where declareNamedSchema :: Proxy Password -> Declare (Definitions Schema) NamedSchema declareNamedSchema = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> (Proxy Password -> NamedSchema) -> Proxy Password -> Declare (Definitions Schema) NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just Text "Password") (Schema -> NamedSchema) -> (Proxy Password -> Schema) -> Proxy Password -> NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Proxy Password -> Schema forall a. ToParamSchema a => Proxy a -> Schema paramSchemaToSchema instance ToParamSchema Username where toParamSchema :: Proxy Username -> Schema toParamSchema Proxy Username Proxy = Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiString Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema forall s a. HasMinLength s a => Lens' s a Lens' Schema (Maybe Integer) minLength ((Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema) -> Integer -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Integer 4 Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema forall s a. HasMaxLength s a => Lens' s a Lens' Schema (Maybe Integer) maxLength ((Maybe Integer -> Identity (Maybe Integer)) -> Schema -> Identity Schema) -> Integer -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Integer 32 Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasPattern s a => Lens' s a Lens' Schema (Maybe Text) Data.OpenApi.pattern ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> Text -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "^[a-zA-Z0-9]{4,32}$" instance ToSchema Username where declareNamedSchema :: Proxy Username -> Declare (Definitions Schema) NamedSchema declareNamedSchema = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> (Proxy Username -> NamedSchema) -> Proxy Username -> Declare (Definitions Schema) NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just Text "Username") (Schema -> NamedSchema) -> (Proxy Username -> Schema) -> Proxy Username -> NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Proxy Username -> Schema forall a. ToParamSchema a => Proxy a -> Schema paramSchemaToSchema instance KnownSymbol text => ToParamSchema (StaticText text) where toParamSchema :: Proxy (StaticText text) -> Schema toParamSchema Proxy (StaticText text) Proxy = Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiString Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema forall s a. HasEnum s a => Lens' s a Lens' Schema (Maybe [Value]) enum_ ((Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema) -> [Value] -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ [StaticText text -> Value forall a. ToJSON a => a -> Value A.toJSON (StaticText text -> Value) -> StaticText text -> Value forall a b. (a -> b) -> a -> b $ forall (text :: Symbol). StaticText text MkStaticText @text] instance KnownSymbol text => ToSchema (StaticText text) where declareNamedSchema :: Proxy (StaticText text) -> Declare (Definitions Schema) NamedSchema declareNamedSchema = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> (Proxy (StaticText text) -> NamedSchema) -> Proxy (StaticText text) -> Declare (Definitions Schema) NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just (Text -> Maybe Text) -> Text -> Maybe Text forall a b. (a -> b) -> a -> b $ Text "StaticText: " Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text text) (Schema -> NamedSchema) -> (Proxy (StaticText text) -> Schema) -> Proxy (StaticText text) -> NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Proxy (StaticText text) -> Schema forall a. ToParamSchema a => Proxy a -> Schema paramSchemaToSchema where text :: Text text = FilePath -> Text T.pack (FilePath -> Text) -> FilePath -> Text forall a b. (a -> b) -> a -> b $ Value -> FilePath forall a. Show a => a -> FilePath show (Value -> FilePath) -> Value -> FilePath forall a b. (a -> b) -> a -> b $ StaticText text -> Value forall a. ToJSON a => a -> Value A.toJSON (StaticText text -> Value) -> StaticText text -> Value forall a b. (a -> b) -> a -> b $ forall (text :: Symbol). StaticText text MkStaticText @text instance ToParamSchema (StaticTexts '[]) where toParamSchema :: Proxy (StaticTexts '[]) -> Schema toParamSchema Proxy (StaticTexts '[]) Proxy = Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiString Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema forall s a. HasEnum s a => Lens' s a Lens' Schema (Maybe [Value]) enum_ ((Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema) -> [Value] -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ [] instance (KnownSymbol text, ToParamSchema (StaticTexts texts)) => ToParamSchema (StaticTexts (text : texts)) where toParamSchema :: Proxy (StaticTexts (text : texts)) -> Schema toParamSchema Proxy (StaticTexts (text : texts)) Proxy = Schema recParamSchema Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema forall s a. HasEnum s a => Lens' s a Lens' Schema (Maybe [Value]) enum_ ((Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema) -> Maybe [Value] -> Schema -> Schema forall s t a b. ASetter s t a b -> b -> s -> t .~ ((StaticText text -> Value forall a. ToJSON a => a -> Value A.toJSON (forall (text :: Symbol). StaticText text MkStaticText @text) :) ([Value] -> [Value]) -> Maybe [Value] -> Maybe [Value] forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b <$> (Schema recParamSchema Schema -> Getting (Maybe [Value]) Schema (Maybe [Value]) -> Maybe [Value] forall s a. s -> Getting a s a -> a ^. Getting (Maybe [Value]) Schema (Maybe [Value]) forall s a. HasEnum s a => Lens' s a Lens' Schema (Maybe [Value]) enum_)) where recParamSchema :: Schema recParamSchema = Proxy (StaticTexts texts) -> Schema forall a. ToParamSchema a => Proxy a -> Schema toParamSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(StaticTexts texts)) instance ToSchema (StaticTexts '[]) where declareNamedSchema :: Proxy (StaticTexts '[]) -> Declare (Definitions Schema) NamedSchema declareNamedSchema = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> (Proxy (StaticTexts '[]) -> NamedSchema) -> Proxy (StaticTexts '[]) -> Declare (Definitions Schema) NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just Text "StaticTexts: ") (Schema -> NamedSchema) -> (Proxy (StaticTexts '[]) -> Schema) -> Proxy (StaticTexts '[]) -> NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Proxy (StaticTexts '[]) -> Schema forall a. ToParamSchema a => Proxy a -> Schema paramSchemaToSchema instance (KnownSymbol text, ToSchema (StaticTexts texts), Typeable texts) => ToSchema (StaticTexts (text : texts)) where declareNamedSchema :: Proxy (StaticTexts (text : texts)) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (StaticTexts (text : texts)) Proxy = do NamedSchema namedSchema <- Proxy (StaticTexts texts) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(StaticTexts texts)) NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema namedSchema NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Maybe [Value] -> Identity (Maybe [Value])) -> NamedSchema -> Identity NamedSchema forall s a. HasEnum s a => Lens' s a Lens' NamedSchema (Maybe [Value]) enum_ ((Maybe [Value] -> Identity (Maybe [Value])) -> NamedSchema -> Identity NamedSchema) -> Maybe [Value] -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a b -> b -> s -> t .~ ((StaticText text -> Value forall a. ToJSON a => a -> Value A.toJSON (forall (text :: Symbol). StaticText text MkStaticText @text) :) ([Value] -> [Value]) -> Maybe [Value] -> Maybe [Value] forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b <$> (NamedSchema namedSchema NamedSchema -> Getting (Maybe [Value]) NamedSchema (Maybe [Value]) -> Maybe [Value] forall s a. s -> Getting a s a -> a ^. Getting (Maybe [Value]) NamedSchema (Maybe [Value]) forall s a. HasEnum s a => Lens' s a Lens' NamedSchema (Maybe [Value]) enum_)) NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall s a. HasName s a => Lens' s a Lens' NamedSchema (Maybe Text) name ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> Maybe Text -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a b -> b -> s -> t .~ ((Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> (FilePath -> Text T.pack (FilePath -> Text) -> FilePath -> Text forall a b. (a -> b) -> a -> b $ Value -> FilePath forall a. Show a => a -> FilePath show (Value -> FilePath) -> Value -> FilePath forall a b. (a -> b) -> a -> b $ StaticText text -> Value forall a. ToJSON a => a -> Value A.toJSON (StaticText text -> Value) -> StaticText text -> Value forall a b. (a -> b) -> a -> b $ forall (text :: Symbol). StaticText text MkStaticText @text)) (Text -> Text) -> Maybe Text -> Maybe Text forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b <$> (NamedSchema namedSchema NamedSchema -> Getting (Maybe Text) NamedSchema (Maybe Text) -> Maybe Text forall s a. s -> Getting a s a -> a ^. Getting (Maybe Text) NamedSchema (Maybe Text) forall s a. HasName s a => Lens' s a Lens' NamedSchema (Maybe Text) name)) instance ToSchema Route.User.Jwt where declareNamedSchema :: Proxy Jwt -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy Jwt Proxy = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just Text "JWT") (Schema -> NamedSchema) -> Schema -> NamedSchema forall a b. (a -> b) -> a -> b $ Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiString Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasFormat s a => Lens' s a Lens' Schema (Maybe Text) format ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> Text -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "jwt" Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Value -> Identity (Maybe Value)) -> Schema -> Identity Schema forall s a. HasExample s a => Lens' s a Lens' Schema (Maybe Value) example ((Maybe Value -> Identity (Maybe Value)) -> Schema -> Identity Schema) -> Value -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text -> Value A.String Text "eyJhbGciOiJIUzUxMiJ9.eyJkYXQiOnsiaWQiOnsidW5JZGVudGlmaWVyVXNlciI6Mn19LCJleHAiOjEuNjgwMzAyMDY3Njc1OTUxMjYyZTl9.6RGNeoQC7nrA4O_IYfaMchojHLk-ScKSBi1f7-R1_qhUdttNIzVJzZfORvt5IzSfo9ye4OnHphDLDiU76qFxEQ" instance Typeable p => ToParamSchema (ErrorInsufficientPermission p) where toParamSchema :: Proxy (ErrorInsufficientPermission p) -> Schema toParamSchema Proxy (ErrorInsufficientPermission p) Proxy = Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiString Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema forall s a. HasEnum s a => Lens' s a Lens' Schema (Maybe [Value]) enum_ ((Maybe [Value] -> Identity (Maybe [Value])) -> Schema -> Identity Schema) -> [Value] -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ [ErrorInsufficientPermission p -> Value forall a. ToJSON a => a -> Value A.toJSON (ErrorInsufficientPermission p -> Value) -> ErrorInsufficientPermission p -> Value forall a b. (a -> b) -> a -> b $ forall (p :: Permission). ErrorInsufficientPermission p MkErrorInsufficientPermission @p] instance Typeable p => ToSchema (ErrorInsufficientPermission p) where declareNamedSchema :: Proxy (ErrorInsufficientPermission p) -> Declare (Definitions Schema) NamedSchema declareNamedSchema = NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> (Proxy (ErrorInsufficientPermission p) -> NamedSchema) -> Proxy (ErrorInsufficientPermission p) -> Declare (Definitions Schema) NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just (Text -> Maybe Text) -> Text -> Maybe Text forall a b. (a -> b) -> a -> b $ Text "ErrorInsufficientPermission: " Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text text) (Schema -> NamedSchema) -> (Proxy (ErrorInsufficientPermission p) -> Schema) -> Proxy (ErrorInsufficientPermission p) -> NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . Proxy (ErrorInsufficientPermission p) -> Schema forall a. ToParamSchema a => Proxy a -> Schema paramSchemaToSchema where text :: Text text = FilePath -> Text T.pack (FilePath -> Text) -> FilePath -> Text forall a b. (a -> b) -> a -> b $ Value -> FilePath forall a. Show a => a -> FilePath show (Value -> FilePath) -> Value -> FilePath forall a b. (a -> b) -> a -> b $ ErrorInsufficientPermission p -> Value forall a. ToJSON a => a -> Value A.toJSON (ErrorInsufficientPermission p -> Value) -> ErrorInsufficientPermission p -> Value forall a b. (a -> b) -> a -> b $ forall (p :: Permission). ErrorInsufficientPermission p MkErrorInsufficientPermission @p deriving via A.CustomJSON (JSONSettings "MkErrorBasicAuth" "") ErrorBasicAuth instance ToSchema ErrorBasicAuth deriving newtype instance ToSchema ErrorBearerAuth deriving via A.CustomJSON (JSONSettings "Mk" "errorParseBodyJson") ErrorParseBodyJson instance ToSchema ErrorParseBodyJson deriving via A.CustomJSON (JSONSettings "Mk" "errorParseBodyJpeg") ErrorParseBodyJpeg instance ToSchema ErrorParseBodyJpeg deriving via A.CustomJSON (JSONSettings "" "") (NameOrIdentifier name identifier) instance (ToSchema name, ToSchema identifier) => ToSchema (NameOrIdentifier name identifier) deriving newtype instance ToParamSchema IdentifierUser deriving newtype instance ToSchema IdentifierUser deriving newtype instance ToSchema ConfirmationSecret deriving via A.CustomJSON (JSONSettings "Mk" "space") Space instance ToSchema Space deriving newtype instance ToSchema IdentifierSpace deriving newtype instance ToParamSchema IdentifierSpace deriving newtype instance ToSchema NameSpace deriving via A.CustomJSON (JSONSettings "Mk" "role") Role instance ToSchema Role deriving newtype instance ToSchema IdentifierRole deriving newtype instance ToSchema NameRole deriving via A.CustomJSON (JSONSettings "MkAccessibilityRole" "") AccessibilityRole instance ToSchema AccessibilityRole deriving via A.CustomJSON (JSONSettings "MkVisibilitySpace" "") VisibilitySpace instance ToSchema VisibilitySpace deriving via A.CustomJSON (JSONSettings "Mk" "spaceUser") SpaceUser instance ToSchema SpaceUser deriving via A.CustomJSON (JSONSettings "MkPermission" "") Permission instance ToSchema Permission deriving via A.CustomJSON (JSONSettings "Mk" "desk") Desk instance ToSchema Desk deriving newtype instance ToSchema IdentifierDesk deriving newtype instance ToSchema NameDesk deriving via A.CustomJSON (JSONSettings "Mk" "deskNameWithContext") DeskNameWithContext instance ToSchema DeskNameWithContext deriving via A.CustomJSON (JSONSettings "Mk" "locationDesk") LocationDesk instance ToSchema LocationDesk deriving via A.CustomJSON (JSONSettings "Mk" "positionDesk") PositionDesk instance ToSchema PositionDesk deriving newtype instance ToSchema DirectionDesk instance ToSchema Direction where declareNamedSchema :: Proxy Direction -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy Direction Proxy = Proxy Double -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @Double) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> Text -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "Direction on a 2D plane given as the angle relativ to North using degrees. The angle `x` must satisfy `0 <= x < 360`." deriving via A.CustomJSON (JSONSettings "Mk" "sizeDesk") SizeDesk instance ToSchema SizeDesk instance ToSchema (ConstrainedDouble '[]) where declareNamedSchema :: Proxy (ConstrainedDouble '[]) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (ConstrainedDouble '[]) Proxy = Proxy Double -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @Double) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> Text -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "A constrained number:" instance (KnownNat n, ToSchema (ConstrainedDouble cs), Typeable cs) => ToSchema (ConstrainedDouble (MkConstraintDoubleGreaterEqual n : cs)) where declareNamedSchema :: Proxy (ConstrainedDouble (MkConstraintDoubleGreaterEqual n : cs)) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (ConstrainedDouble (MkConstraintDoubleGreaterEqual n : cs)) Proxy = Proxy (ConstrainedDouble cs) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(ConstrainedDouble cs)) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> (Maybe Text -> Maybe Text) -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a b -> (a -> b) -> s -> t %~ ((Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> (Text " `n >= " Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> FilePath -> Text T.pack (Integer -> FilePath forall a. Show a => a -> FilePath show (Proxy n -> Integer forall (n :: Nat) (proxy :: Nat -> *). KnownNat n => proxy n -> Integer natVal (forall (t :: Nat). Proxy t forall {k} (t :: k). Proxy t Proxy @n))) Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text "`")) <$>) instance (KnownNat n, ToSchema (ConstrainedDouble cs), Typeable cs) => ToSchema (ConstrainedDouble (MkConstraintDoubleGreaterThan n : cs)) where declareNamedSchema :: Proxy (ConstrainedDouble (MkConstraintDoubleGreaterThan n : cs)) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (ConstrainedDouble (MkConstraintDoubleGreaterThan n : cs)) Proxy = Proxy (ConstrainedDouble cs) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(ConstrainedDouble cs)) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> (Maybe Text -> Maybe Text) -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a b -> (a -> b) -> s -> t %~ ((Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> (Text " `n > " Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> FilePath -> Text T.pack (Integer -> FilePath forall a. Show a => a -> FilePath show (Proxy n -> Integer forall (n :: Nat) (proxy :: Nat -> *). KnownNat n => proxy n -> Integer natVal (forall (t :: Nat). Proxy t forall {k} (t :: k). Proxy t Proxy @n))) Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text "`")) <$>) instance (KnownNat n, ToSchema (ConstrainedDouble cs), Typeable cs) => ToSchema (ConstrainedDouble (MkConstraintDoubleLessEqual n : cs)) where declareNamedSchema :: Proxy (ConstrainedDouble (MkConstraintDoubleLessEqual n : cs)) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (ConstrainedDouble (MkConstraintDoubleLessEqual n : cs)) Proxy = Proxy (ConstrainedDouble cs) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(ConstrainedDouble cs)) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> (Maybe Text -> Maybe Text) -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a b -> (a -> b) -> s -> t %~ ((Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> (Text " `n <= " Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> FilePath -> Text T.pack (Integer -> FilePath forall a. Show a => a -> FilePath show (Proxy n -> Integer forall (n :: Nat) (proxy :: Nat -> *). KnownNat n => proxy n -> Integer natVal (forall (t :: Nat). Proxy t forall {k} (t :: k). Proxy t Proxy @n))) Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text "`")) <$>) instance (KnownNat n, ToSchema (ConstrainedDouble cs), Typeable cs) => ToSchema (ConstrainedDouble (MkConstraintDoubleLessThan n : cs)) where declareNamedSchema :: Proxy (ConstrainedDouble (MkConstraintDoubleLessThan n : cs)) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (ConstrainedDouble (MkConstraintDoubleLessThan n : cs)) Proxy = Proxy (ConstrainedDouble cs) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(ConstrainedDouble cs)) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> (Maybe Text -> Maybe Text) -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a b -> (a -> b) -> s -> t %~ ((Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> (Text " `n < " Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> FilePath -> Text T.pack (Integer -> FilePath forall a. Show a => a -> FilePath show (Proxy n -> Integer forall (n :: Nat) (proxy :: Nat -> *). KnownNat n => proxy n -> Integer natVal (forall (t :: Nat). Proxy t forall {k} (t :: k). Proxy t Proxy @n))) Text -> Text -> Text forall a. Semigroup a => a -> a -> a <> Text "`")) <$>) deriving via A.CustomJSON (JSONSettings "Mk" "reservation") Reservation instance ToSchema Reservation deriving via A.CustomJSON (JSONSettings "MkStatusReservation" "") StatusReservation instance ToSchema StatusReservation deriving newtype instance ToSchema IdentifierReservation instance ToSchema a => ToSchema (Interval a) where declareNamedSchema :: Proxy (Interval a) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (Interval a) Proxy = Proxy (CustomJSON (JSONSettings "Mk" "interval") (Interval a)) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(A.CustomJSON (JSONSettings "Mk" "interval") (Interval a))) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> Text -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "An ordered interval: `start <= end`" instance ToSchema a => ToSchema (IntervalNonDegenerate a) where declareNamedSchema :: Proxy (IntervalNonDegenerate a) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (IntervalNonDegenerate a) Proxy = Proxy (CustomJSON (JSONSettings "Mk" "interval") (Interval a)) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(A.CustomJSON (JSONSettings "Mk" "interval") (Interval a))) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> Text -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "An ordered and non-degenerate interval: `start < end`" instance ToSchema a => ToSchema (IntervalUnbounded a) where declareNamedSchema :: Proxy (IntervalUnbounded a) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (IntervalUnbounded a) Proxy = Proxy (CustomJSON (JSONSettings "Mk" "interval") (Interval (Maybe a))) -> Declare (Definitions Schema) NamedSchema forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) NamedSchema declareNamedSchema (forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @(A.CustomJSON (JSONSettings "Mk" "interval") (Interval (Maybe a)))) Declare (Definitions Schema) NamedSchema -> (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> Declare (Definitions Schema) NamedSchema forall a b. DeclareT (Definitions Schema) Identity a -> (a -> DeclareT (Definitions Schema) Identity b) -> DeclareT (Definitions Schema) Identity b forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= \NamedSchema x -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ NamedSchema x NamedSchema -> (NamedSchema -> NamedSchema) -> NamedSchema forall a b. a -> (a -> b) -> b & (Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema forall s a. HasSchema s a => Lens' s a Lens' NamedSchema Schema schema ((Schema -> Identity Schema) -> NamedSchema -> Identity NamedSchema) -> ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> (Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema forall b c a. (b -> c) -> (a -> b) -> a -> c . (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> NamedSchema -> Identity NamedSchema) -> Text -> NamedSchema -> NamedSchema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "An ordered and potentially unbounded interval: `start < end`" deriving via A.CustomJSON (JSONSettings "" "") Order instance ToSchema Order deriving via A.CustomJSON (JSONSettings "Mk" "orderByCategory") (OrderByCategory a) instance ToSchema a => ToSchema (OrderByCategory a) deriving via A.CustomJSON (JSONSettings "SpaceOrderCategory" "") SpaceOrderCategory instance ToSchema SpaceOrderCategory deriving newtype instance ToSchema a => ToSchema (OrderByCategories a) instance ToSchema a => ToSchema (Updatable a) where declareNamedSchema :: Proxy (Updatable a) -> Declare (Definitions Schema) NamedSchema declareNamedSchema Proxy (Updatable a) Proxy = do Referenced Schema aSchema <- Proxy a -> Declare (Definitions Schema) (Referenced Schema) forall a. ToSchema a => Proxy a -> Declare (Definitions Schema) (Referenced Schema) declareSchemaRef (Proxy a -> Declare (Definitions Schema) (Referenced Schema)) -> Proxy a -> Declare (Definitions Schema) (Referenced Schema) forall a b. (a -> b) -> a -> b $ forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @a NamedSchema -> Declare (Definitions Schema) NamedSchema forall a. a -> DeclareT (Definitions Schema) Identity a forall (f :: * -> *) a. Applicative f => a -> f a pure (NamedSchema -> Declare (Definitions Schema) NamedSchema) -> NamedSchema -> Declare (Definitions Schema) NamedSchema forall a b. (a -> b) -> a -> b $ Maybe Text -> Schema -> NamedSchema NamedSchema (Text -> Maybe Text forall a. a -> Maybe a Just (Text -> Maybe Text) -> Text -> Maybe Text forall a b. (a -> b) -> a -> b $ FilePath -> Text T.pack (FilePath "Updatable_" FilePath -> FilePath -> FilePath forall a. [a] -> [a] -> [a] ++ TyCon -> FilePath tyConName (TypeRep -> TyCon typeRepTyCon (Proxy a -> TypeRep forall {k} (proxy :: k -> *) (a :: k). Typeable a => proxy a -> TypeRep typeRep (Proxy a -> TypeRep) -> Proxy a -> TypeRep forall a b. (a -> b) -> a -> b $ forall t. Proxy t forall {k} (t :: k). Proxy t Proxy @a)))) (Schema -> NamedSchema) -> Schema -> NamedSchema forall a b. (a -> b) -> a -> b $ Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiObject Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & ([Text] -> Identity [Text]) -> Schema -> Identity Schema forall s a. HasRequired s a => Lens' s a Lens' Schema [Text] required (([Text] -> Identity [Text]) -> Schema -> Identity Schema) -> [Text] -> Schema -> Schema forall s t a b. ASetter s t a b -> b -> s -> t .~ [Text "update"] Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (InsOrdHashMap Text (Referenced Schema) -> Identity (InsOrdHashMap Text (Referenced Schema))) -> Schema -> Identity Schema forall s a. HasProperties s a => Lens' s a Lens' Schema (InsOrdHashMap Text (Referenced Schema)) properties ((InsOrdHashMap Text (Referenced Schema) -> Identity (InsOrdHashMap Text (Referenced Schema))) -> Schema -> Identity Schema) -> InsOrdHashMap Text (Referenced Schema) -> Schema -> Schema forall s t a b. ASetter s t a b -> b -> s -> t .~ [(Text, Referenced Schema)] -> InsOrdHashMap Text (Referenced Schema) forall k v. (Eq k, Hashable k) => [(k, v)] -> InsOrdHashMap k v HMIO.fromList [ (Text "update", Schema -> Referenced Schema forall a. a -> Referenced a Inline (Schema -> Referenced Schema) -> Schema -> Referenced Schema forall a b. (a -> b) -> a -> b $ Schema forall a. Monoid a => a mempty Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema forall s a. HasType s a => Lens' s a Lens' Schema (Maybe OpenApiType) type_ ((Maybe OpenApiType -> Identity (Maybe OpenApiType)) -> Schema -> Identity Schema) -> OpenApiType -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ OpenApiType OpenApiBoolean) , (Text "value", Referenced Schema aSchema) ] Schema -> (Schema -> Schema) -> Schema forall a b. a -> (a -> b) -> b & (Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema forall s a. HasDescription s a => Lens' s a Lens' Schema (Maybe Text) description ((Maybe Text -> Identity (Maybe Text)) -> Schema -> Identity Schema) -> Text -> Schema -> Schema forall s t a b. ASetter s t a (Maybe b) -> b -> s -> t ?~ Text "Whether to overwrite a value with a new one. When \"update\" is `true` the \"value\" field is required. When \"update\" is `false` the value field must be omitted." deriving via A.CustomJSON (JSONSettings "MkResponse" "responseLogin") Route.User.ResponseLogin instance ToSchema Route.User.ResponseLogin deriving via A.CustomJSON (JSONSettings "MkResponse" "responseLogout") Route.User.ResponseLogout instance ToSchema Route.User.ResponseLogout deriving via A.CustomJSON (JSONSettings "MkRequest" "requestRegister") Route.User.RequestRegister instance ToSchema Route.User.RequestRegister deriving via A.CustomJSON (JSONSettings "MkResponse" "responseRegister") Route.User.ResponseRegister instance ToSchema Route.User.ResponseRegister deriving via A.CustomJSON (JSONSettings "MkRequest" "requestPasswordChange") Route.User.RequestPasswordChange instance ToSchema Route.User.RequestPasswordChange deriving via A.CustomJSON (JSONSettings "MkResponse" "responsePasswordChange") Route.User.ResponsePasswordChange instance ToSchema Route.User.ResponsePasswordChange deriving via A.CustomJSON (JSONSettings "MkResponse" "responseConfirmationRequest") Route.User.ResponseConfirmationRequest instance ToSchema Route.User.ResponseConfirmationRequest deriving via A.CustomJSON (JSONSettings "MkRequest" "requestConfirm") Route.User.RequestConfirm instance ToSchema Route.User.RequestConfirm deriving via A.CustomJSON (JSONSettings "MkResponse" "responseConfirm") Route.User.ResponseConfirm instance ToSchema Route.User.ResponseConfirm deriving via A.CustomJSON (JSONSettings "MkRequest" "requestNotifications") Route.User.RequestNotifications instance ToSchema Route.User.RequestNotifications deriving via A.CustomJSON (JSONSettings "MkResponse" "responseNotifications") Route.User.ResponseNotifications instance ToSchema Route.User.ResponseNotifications deriving via A.CustomJSON (JSONSettings "MkRequest" "requestProfile") Route.User.RequestProfile instance ToSchema Route.User.RequestProfile deriving via A.CustomJSON (JSONSettings "MkResponse" "responseProfile") Route.User.ResponseProfile instance ToSchema Route.User.ResponseProfile deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceCreate") Route.Space.RequestSpaceCreate instance ToSchema Route.Space.RequestSpaceCreate deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceCreate") Route.Space.ResponseSpaceCreate instance ToSchema Route.Space.ResponseSpaceCreate deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceDelete") Route.Space.RequestSpaceDelete instance ToSchema Route.Space.RequestSpaceDelete deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceDelete") Route.Space.ResponseSpaceDelete instance ToSchema Route.Space.ResponseSpaceDelete deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceEdit") Route.Space.RequestSpaceEdit instance ToSchema Route.Space.RequestSpaceEdit deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceEdit") Route.Space.ResponseSpaceEdit instance ToSchema Route.Space.ResponseSpaceEdit deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceJoin") Route.Space.RequestSpaceJoin instance ToSchema Route.Space.RequestSpaceJoin deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceJoin") Route.Space.ResponseSpaceJoin instance ToSchema Route.Space.ResponseSpaceJoin deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceLeave") Route.Space.RequestSpaceLeave instance ToSchema Route.Space.RequestSpaceLeave deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceLeave") Route.Space.ResponseSpaceLeave instance ToSchema Route.Space.ResponseSpaceLeave deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceKick") Route.Space.RequestSpaceKick instance ToSchema Route.Space.RequestSpaceKick deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceKick") Route.Space.ResponseSpaceKick instance ToSchema Route.Space.ResponseSpaceKick deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceUserRole") Route.Space.RequestSpaceUserRole instance ToSchema Route.Space.RequestSpaceUserRole deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceUserRole") Route.Space.ResponseSpaceUserRole instance ToSchema Route.Space.ResponseSpaceUserRole deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceView") Route.Space.RequestSpaceView instance ToSchema Route.Space.RequestSpaceView deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceView") Route.Space.ResponseSpaceView instance ToSchema Route.Space.ResponseSpaceView deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceView403") Route.Space.ResponseSpaceView403 instance ToSchema Route.Space.ResponseSpaceView403 deriving via A.CustomJSON (JSONSettings "MkRequest" "requestSpaceList") Route.Space.RequestSpaceList instance ToSchema Route.Space.RequestSpaceList deriving via A.CustomJSON (JSONSettings "MkResponse" "responseSpaceList") Route.Space.ResponseSpaceList instance ToSchema Route.Space.ResponseSpaceList deriving via A.CustomJSON (JSONSettings "Mk" "spaceListSpace") Route.Space.SpaceListSpace instance ToSchema Route.Space.SpaceListSpace deriving via A.CustomJSON (JSONSettings "MkRequest" "requestRoleCreate") Route.Space.RequestRoleCreate instance ToSchema Route.Space.RequestRoleCreate deriving via A.CustomJSON (JSONSettings "MkResponse" "responseRoleCreate") Route.Space.ResponseRoleCreate instance ToSchema Route.Space.ResponseRoleCreate deriving via A.CustomJSON (JSONSettings "MkRequest" "requestRoleEdit") Route.Space.RequestRoleEdit instance ToSchema Route.Space.RequestRoleEdit deriving via A.CustomJSON (JSONSettings "RoleEdit" "roleEditAccessibilityAndPassword") Route.Space.RoleEditAccessibilityAndPassword instance ToSchema Route.Space.RoleEditAccessibilityAndPassword deriving via A.CustomJSON (JSONSettings "MkResponse" "responseRoleEdit") Route.Space.ResponseRoleEdit instance ToSchema Route.Space.ResponseRoleEdit deriving via A.CustomJSON (JSONSettings "MkRequest" "requestRoleDelete") Route.Space.RequestRoleDelete instance ToSchema Route.Space.RequestRoleDelete deriving via A.CustomJSON (JSONSettings "MkResponse" "responseRoleDelete") Route.Space.ResponseRoleDelete instance ToSchema Route.Space.ResponseRoleDelete deriving via A.CustomJSON (JSONSettings "MkRequest" "requestDeskCreate") Route.Space.RequestDeskCreate instance ToSchema Route.Space.RequestDeskCreate deriving via A.CustomJSON (JSONSettings "MkResponse" "responseDeskCreate") Route.Space.ResponseDeskCreate instance ToSchema Route.Space.ResponseDeskCreate deriving via A.CustomJSON (JSONSettings "MkRequest" "requestDeskDelete") Route.Space.RequestDeskDelete instance ToSchema Route.Space.RequestDeskDelete deriving via A.CustomJSON (JSONSettings "MkResponse" "responseDeskDelete") Route.Space.ResponseDeskDelete instance ToSchema Route.Space.ResponseDeskDelete deriving via A.CustomJSON (JSONSettings "MkRequest" "requestDeskEdit") Route.Space.RequestDeskEdit instance ToSchema Route.Space.RequestDeskEdit deriving via A.CustomJSON (JSONSettings "MkResponse" "responseDeskEdit") Route.Space.ResponseDeskEdit instance ToSchema Route.Space.ResponseDeskEdit deriving via A.CustomJSON (JSONSettings "MkRequest" "requestDeskList") Route.Space.RequestDeskList instance ToSchema Route.Space.RequestDeskList deriving via A.CustomJSON (JSONSettings "Mk" "deskWithInfo") Route.Space.DeskWithInfo instance ToSchema Route.Space.DeskWithInfo deriving via A.CustomJSON (JSONSettings "MkResponse" "responseDeskList") Route.Space.ResponseDeskList instance ToSchema Route.Space.ResponseDeskList deriving via A.CustomJSON (JSONSettings "MkRequest" "requestReservationCreate") Route.Reservation.RequestReservationCreate instance ToSchema Route.Reservation.RequestReservationCreate deriving via A.CustomJSON (JSONSettings "MkResponse" "responseReservationCreate") Route.Reservation.ResponseReservationCreate instance ToSchema Route.Reservation.ResponseReservationCreate deriving via A.CustomJSON (JSONSettings "MkRequest" "requestReservationCancel") Route.Reservation.RequestReservationCancel instance ToSchema Route.Reservation.RequestReservationCancel deriving via A.CustomJSON (JSONSettings "MkResponse" "responseReservationCancel") Route.Reservation.ResponseReservationCancel instance ToSchema Route.Reservation.ResponseReservationCancel deriving via A.CustomJSON (JSONSettings "MkRequest" "requestReservationList") Route.Reservation.RequestReservationList instance ToSchema Route.Reservation.RequestReservationList deriving via A.CustomJSON (JSONSettings "Mk" "reservationWithInfo") Route.Reservation.ReservationWithInfo instance ToSchema Route.Reservation.ReservationWithInfo deriving via A.CustomJSON (JSONSettings "MkResponse" "responseReservationList") Route.Reservation.ResponseReservationList instance ToSchema Route.Reservation.ResponseReservationList openapiJsonStdout :: IO () openapiJsonStdout :: IO () openapiJsonStdout = Text -> IO () TL.putStrLn (Text -> IO ()) -> Text -> IO () forall a b. (a -> b) -> a -> b $ ByteString -> Text TL.decodeUtf8 (ByteString -> Text) -> ByteString -> Text forall a b. (a -> b) -> a -> b $ OpenApi -> ByteString forall a. ToJSON a => a -> ByteString A.encode OpenApi Mensam.Server.OpenApi.openapi escapeCharsForPatternCharacterSet :: [Char] -> String escapeCharsForPatternCharacterSet :: FilePath -> FilePath escapeCharsForPatternCharacterSet = \case [] -> [] Char '-' : FilePath chars -> Char '\\' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : Char '-' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : FilePath -> FilePath escapeCharsForPatternCharacterSet FilePath chars Char '[' : FilePath chars -> Char '\\' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : Char '[' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : FilePath -> FilePath escapeCharsForPatternCharacterSet FilePath chars Char ']' : FilePath chars -> Char '\\' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : Char ']' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : FilePath -> FilePath escapeCharsForPatternCharacterSet FilePath chars Char '\\' : FilePath chars -> Char '\\' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : Char '\\' Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : FilePath -> FilePath escapeCharsForPatternCharacterSet FilePath chars Char char : FilePath chars -> Char char Char -> FilePath -> FilePath forall a. a -> [a] -> [a] : FilePath -> FilePath escapeCharsForPatternCharacterSet FilePath chars