{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MonoLocalBinds #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-}
module Vikunja.API.Team where
import Vikunja.Core
import Vikunja.MimeTypes
import Vikunja.Model as M
import qualified Data.Aeson as A
import qualified Data.ByteString as B
import qualified Data.ByteString.Lazy as BL
import qualified Data.Data as P (Typeable, TypeRep, typeOf, typeRep)
import qualified Data.Foldable as P
import qualified Data.Map as Map
import qualified Data.Maybe as P
import qualified Data.Proxy as P (Proxy(..))
import qualified Data.Set as Set
import qualified Data.String as P
import qualified Data.Text as T
import qualified Data.Text.Encoding as T
import qualified Data.Text.Lazy as TL
import qualified Data.Text.Lazy.Encoding as TL
import qualified Data.Time as TI
import qualified Network.HTTP.Client.MultipartFormData as NH
import qualified Network.HTTP.Media as ME
import qualified Network.HTTP.Types as NH
import qualified Web.FormUrlEncoded as WH
import qualified Web.HttpApiData as WH
import Data.Text (Text)
import GHC.Base ((<|>))
import Prelude ((==),(/=),($), (.),(<$>),(<*>),(>>=),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor)
import qualified Prelude as P
teamsGet
:: VikunjaRequest TeamsGet MimeNoContent [ModelsTeam] MimeJSON
teamsGet :: VikunjaRequest TeamsGet MimeNoContent [ModelsTeam] MimeJSON
teamsGet =
Method
-> [ByteString]
-> VikunjaRequest TeamsGet MimeNoContent [ModelsTeam] MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"GET" [ByteString
"/teams"]
VikunjaRequest TeamsGet MimeNoContent [ModelsTeam] MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest TeamsGet MimeNoContent [ModelsTeam] MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
data TeamsGet
instance HasOptionalParam TeamsGet Page where
applyOptionalParam :: VikunjaRequest TeamsGet contentType res accept
-> Page -> VikunjaRequest TeamsGet contentType res accept
applyOptionalParam VikunjaRequest TeamsGet contentType res accept
req (Page Int
xs) =
VikunjaRequest TeamsGet contentType res accept
req VikunjaRequest TeamsGet contentType res accept
-> [QueryItem] -> VikunjaRequest TeamsGet contentType res accept
forall req contentType res accept.
VikunjaRequest req contentType res accept
-> [QueryItem] -> VikunjaRequest req contentType res accept
`addQuery` (Method, Maybe Int) -> [QueryItem]
forall a. ToHttpApiData a => (Method, Maybe a) -> [QueryItem]
toQuery (Method
"page", Int -> Maybe Int
forall a. a -> Maybe a
Just Int
xs)
instance HasOptionalParam TeamsGet PerPage where
applyOptionalParam :: VikunjaRequest TeamsGet contentType res accept
-> PerPage -> VikunjaRequest TeamsGet contentType res accept
applyOptionalParam VikunjaRequest TeamsGet contentType res accept
req (PerPage Int
xs) =
VikunjaRequest TeamsGet contentType res accept
req VikunjaRequest TeamsGet contentType res accept
-> [QueryItem] -> VikunjaRequest TeamsGet contentType res accept
forall req contentType res accept.
VikunjaRequest req contentType res accept
-> [QueryItem] -> VikunjaRequest req contentType res accept
`addQuery` (Method, Maybe Int) -> [QueryItem]
forall a. ToHttpApiData a => (Method, Maybe a) -> [QueryItem]
toQuery (Method
"per_page", Int -> Maybe Int
forall a. a -> Maybe a
Just Int
xs)
instance HasOptionalParam TeamsGet S where
applyOptionalParam :: VikunjaRequest TeamsGet contentType res accept
-> S -> VikunjaRequest TeamsGet contentType res accept
applyOptionalParam VikunjaRequest TeamsGet contentType res accept
req (S Text
xs) =
VikunjaRequest TeamsGet contentType res accept
req VikunjaRequest TeamsGet contentType res accept
-> [QueryItem] -> VikunjaRequest TeamsGet contentType res accept
forall req contentType res accept.
VikunjaRequest req contentType res accept
-> [QueryItem] -> VikunjaRequest req contentType res accept
`addQuery` (Method, Maybe Text) -> [QueryItem]
forall a. ToHttpApiData a => (Method, Maybe a) -> [QueryItem]
toQuery (Method
"s", Text -> Maybe Text
forall a. a -> Maybe a
Just Text
xs)
instance Produces TeamsGet MimeJSON
teamsIdDelete
:: Id
-> VikunjaRequest TeamsIdDelete MimeNoContent ModelsMessage MimeJSON
teamsIdDelete :: Id
-> VikunjaRequest
TeamsIdDelete MimeNoContent ModelsMessage MimeJSON
teamsIdDelete (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest
TeamsIdDelete MimeNoContent ModelsMessage MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"DELETE" [ByteString
"/teams/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id]
VikunjaRequest TeamsIdDelete MimeNoContent ModelsMessage MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TeamsIdDelete MimeNoContent ModelsMessage MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
data TeamsIdDelete
instance Produces TeamsIdDelete MimeJSON
teamsIdGet
:: Id
-> VikunjaRequest TeamsIdGet MimeNoContent ModelsTeam MimeJSON
teamsIdGet :: Id -> VikunjaRequest TeamsIdGet MimeNoContent ModelsTeam MimeJSON
teamsIdGet (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest TeamsIdGet MimeNoContent ModelsTeam MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"GET" [ByteString
"/teams/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id]
VikunjaRequest TeamsIdGet MimeNoContent ModelsTeam MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest TeamsIdGet MimeNoContent ModelsTeam MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
data TeamsIdGet
instance Produces TeamsIdGet MimeJSON
teamsIdMembersPut
:: (Consumes TeamsIdMembersPut MimeJSON, MimeRender MimeJSON ModelsTeamMember)
=> ModelsTeamMember
-> Id
-> VikunjaRequest TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
teamsIdMembersPut :: ModelsTeamMember
-> Id
-> VikunjaRequest
TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
teamsIdMembersPut ModelsTeamMember
team (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest
TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"PUT" [ByteString
"/teams/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id,ByteString
"/members"]
VikunjaRequest TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
VikunjaRequest TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
-> ModelsTeamMember
-> VikunjaRequest
TeamsIdMembersPut MimeJSON ModelsTeamMember MimeJSON
forall req param contentType res accept.
(HasBodyParam req param, Consumes req contentType,
MimeRender contentType param) =>
VikunjaRequest req contentType res accept
-> param -> VikunjaRequest req contentType res accept
`setBodyParam` ModelsTeamMember
team
data TeamsIdMembersPut
instance HasBodyParam TeamsIdMembersPut ModelsTeamMember
instance Consumes TeamsIdMembersPut MimeJSON
instance Produces TeamsIdMembersPut MimeJSON
teamsIdMembersUserIDAdminPost
:: Id
-> UserId
-> VikunjaRequest TeamsIdMembersUserIDAdminPost MimeNoContent ModelsMessage MimeJSON
teamsIdMembersUserIDAdminPost :: Id
-> UserId
-> VikunjaRequest
TeamsIdMembersUserIDAdminPost MimeNoContent ModelsMessage MimeJSON
teamsIdMembersUserIDAdminPost (Id Int
id) (UserId Int
userId) =
Method
-> [ByteString]
-> VikunjaRequest
TeamsIdMembersUserIDAdminPost MimeNoContent ModelsMessage MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"POST" [ByteString
"/teams/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id,ByteString
"/members/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
userId,ByteString
"/admin"]
VikunjaRequest
TeamsIdMembersUserIDAdminPost MimeNoContent ModelsMessage MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TeamsIdMembersUserIDAdminPost MimeNoContent ModelsMessage MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
data TeamsIdMembersUserIDAdminPost
instance Produces TeamsIdMembersUserIDAdminPost MimeJSON
teamsIdMembersUserIDDelete
:: Id
-> UserId
-> VikunjaRequest TeamsIdMembersUserIDDelete MimeNoContent ModelsMessage MimeJSON
teamsIdMembersUserIDDelete :: Id
-> UserId
-> VikunjaRequest
TeamsIdMembersUserIDDelete MimeNoContent ModelsMessage MimeJSON
teamsIdMembersUserIDDelete (Id Int
id) (UserId Int
userId) =
Method
-> [ByteString]
-> VikunjaRequest
TeamsIdMembersUserIDDelete MimeNoContent ModelsMessage MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"DELETE" [ByteString
"/teams/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id,ByteString
"/members/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
userId]
VikunjaRequest
TeamsIdMembersUserIDDelete MimeNoContent ModelsMessage MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TeamsIdMembersUserIDDelete MimeNoContent ModelsMessage MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
data TeamsIdMembersUserIDDelete
instance Produces TeamsIdMembersUserIDDelete MimeJSON
teamsIdPost
:: (Consumes TeamsIdPost MimeJSON, MimeRender MimeJSON ModelsTeam)
=> ModelsTeam
-> Id
-> VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
teamsIdPost :: ModelsTeam
-> Id -> VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
teamsIdPost ModelsTeam
team (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"POST" [ByteString
"/teams/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id]
VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
-> ModelsTeam
-> VikunjaRequest TeamsIdPost MimeJSON ModelsTeam MimeJSON
forall req param contentType res accept.
(HasBodyParam req param, Consumes req contentType,
MimeRender contentType param) =>
VikunjaRequest req contentType res accept
-> param -> VikunjaRequest req contentType res accept
`setBodyParam` ModelsTeam
team
data TeamsIdPost
instance HasBodyParam TeamsIdPost ModelsTeam
instance Consumes TeamsIdPost MimeJSON
instance Produces TeamsIdPost MimeJSON
teamsPut
:: (Consumes TeamsPut MimeJSON, MimeRender MimeJSON ModelsTeam)
=> ModelsTeam
-> VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
teamsPut :: ModelsTeam -> VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
teamsPut ModelsTeam
team =
Method
-> [ByteString]
-> VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"PUT" [ByteString
"/teams"]
VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
forall authMethod req contentType res accept.
AuthMethod authMethod =>
VikunjaRequest req contentType res accept
-> Proxy authMethod -> VikunjaRequest req contentType res accept
`_hasAuthType` (Proxy AuthApiKeyJWTKeyAuth
forall k (t :: k). Proxy t
P.Proxy :: P.Proxy AuthApiKeyJWTKeyAuth)
VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
-> ModelsTeam
-> VikunjaRequest TeamsPut MimeJSON ModelsTeam MimeJSON
forall req param contentType res accept.
(HasBodyParam req param, Consumes req contentType,
MimeRender contentType param) =>
VikunjaRequest req contentType res accept
-> param -> VikunjaRequest req contentType res accept
`setBodyParam` ModelsTeam
team
data TeamsPut
instance HasBodyParam TeamsPut ModelsTeam
instance Consumes TeamsPut MimeJSON
instance Produces TeamsPut MimeJSON