Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Mensam.Server.Server.Route.Api.Space
Documentation
handler :: (MonadConfigured m, MonadIO m, MonadLogger m, MonadSeldaPool m) => Routes (AsServerT m) Source #
createSpace :: (MonadIO m, MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 201 ResponseSpaceCreate) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceCreate -> m (Union responses) Source #
deleteSpace :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceDelete) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditSpace)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceDelete -> m (Union responses) Source #
editSpace :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceEdit) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditSpace)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceEdit -> m (Union responses) Source #
pictureUpload :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 (StaticText "Uploaded space picture.")) responses, IsMember (WithStatus 400 ErrorParseBodyJpeg) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditSpace)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either Text IdentifierSpace -> Either String ImageJpegBytes -> m (Union responses) Source #
pictureDelete :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 (StaticText "Deleted space picture.")) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditSpace)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either Text IdentifierSpace -> m (Union responses) Source #
pictureDownload :: (MonadConfigured m, MonadIO m, MonadLogger m, MonadSeldaPool m) => AuthResult UserAuthenticated -> Either Text IdentifierSpace -> m ImageJpegBytes Source #
joinSpace :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceJoin) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (StaticTexts ["Role is inaccessible.", "Wrong role password."])) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceJoin -> m (Union responses) Source #
leaveSpace :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceLeave) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (StaticText "Owner cannot leave space.")) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceLeave -> m (Union responses) Source #
kickUser :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceKick) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditUser)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceKick -> m (Union responses) Source #
setUserRole :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceUserRole) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditUser)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceUserRole -> m (Union responses) Source #
viewSpace :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceView) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 ResponseSpaceView403) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceView -> m (Union responses) Source #
listSpaces :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseSpaceList) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestSpaceList -> m (Union responses) Source #
createRole :: (MonadIO m, MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 201 ResponseRoleCreate) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditRole)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestRoleCreate -> m (Union responses) Source #
editRole :: (MonadIO m, MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseRoleEdit) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditRole)) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestRoleEdit -> m (Union responses) Source #
deleteRole :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseRoleDelete) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditRole)) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestRoleDelete -> m (Union responses) Source #
createDesk :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 201 ResponseDeskCreate) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditDesk)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestDeskCreate -> m (Union responses) Source #
deleteDesk :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseDeskDelete) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditDesk)) responses, IsMember (WithStatus 404 (StaticText "Desk not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestDeskDelete -> m (Union responses) Source #
editDesk :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseDeskEdit) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionEditDesk)) responses, IsMember (WithStatus 404 (StaticText "Desk not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestDeskEdit -> m (Union responses) Source #
listDesks :: (MonadLogger m, MonadSeldaPool m, IsMember (WithStatus 200 ResponseDeskList) responses, IsMember (WithStatus 400 ErrorParseBodyJson) responses, IsMember (WithStatus 401 ErrorBearerAuth) responses, IsMember (WithStatus 403 (ErrorInsufficientPermission MkPermissionViewSpace)) responses, IsMember (WithStatus 404 (StaticText "Space not found.")) responses, IsMember (WithStatus 500 ()) responses) => AuthResult UserAuthenticated -> Either String RequestDeskList -> m (Union responses) Source #
handleBadRequestBody :: (MonadLogger m, IsMember (WithStatus 400 ErrorParseBodyJson) responses) => Either String a -> (a -> m (Union responses)) -> m (Union responses) Source #
handleBadRequestBodyJpeg :: (MonadLogger m, IsMember (WithStatus 400 ErrorParseBodyJpeg) responses) => Either String a -> (a -> m (Union responses)) -> m (Union responses) Source #
handleSeldaException403InsufficientPermission :: forall (p :: Permission) m responses a. (Typeable p, Applicative m, IsMember (WithStatus 403 (ErrorInsufficientPermission p)) responses) => Proxy p -> SeldaResult a -> (SeldaResult a -> m (Union responses)) -> m (Union responses) Source #