{-# 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.Labels 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
labelsGet
:: VikunjaRequest LabelsGet MimeNoContent [ModelsLabel] MimeJSON
labelsGet :: VikunjaRequest LabelsGet MimeNoContent [ModelsLabel] MimeJSON
labelsGet =
Method
-> [ByteString]
-> VikunjaRequest LabelsGet MimeNoContent [ModelsLabel] MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"GET" [ByteString
"/labels"]
VikunjaRequest LabelsGet MimeNoContent [ModelsLabel] MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest LabelsGet MimeNoContent [ModelsLabel] 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 LabelsGet
instance HasOptionalParam LabelsGet Page where
applyOptionalParam :: VikunjaRequest LabelsGet contentType res accept
-> Page -> VikunjaRequest LabelsGet contentType res accept
applyOptionalParam VikunjaRequest LabelsGet contentType res accept
req (Page Int
xs) =
VikunjaRequest LabelsGet contentType res accept
req VikunjaRequest LabelsGet contentType res accept
-> [QueryItem] -> VikunjaRequest LabelsGet 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 LabelsGet PerPage where
applyOptionalParam :: VikunjaRequest LabelsGet contentType res accept
-> PerPage -> VikunjaRequest LabelsGet contentType res accept
applyOptionalParam VikunjaRequest LabelsGet contentType res accept
req (PerPage Int
xs) =
VikunjaRequest LabelsGet contentType res accept
req VikunjaRequest LabelsGet contentType res accept
-> [QueryItem] -> VikunjaRequest LabelsGet 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 LabelsGet S where
applyOptionalParam :: VikunjaRequest LabelsGet contentType res accept
-> S -> VikunjaRequest LabelsGet contentType res accept
applyOptionalParam VikunjaRequest LabelsGet contentType res accept
req (S Text
xs) =
VikunjaRequest LabelsGet contentType res accept
req VikunjaRequest LabelsGet contentType res accept
-> [QueryItem] -> VikunjaRequest LabelsGet 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 LabelsGet MimeJSON
labelsIdDelete
:: Id
-> VikunjaRequest LabelsIdDelete MimeNoContent ModelsLabel MimeJSON
labelsIdDelete :: Id
-> VikunjaRequest LabelsIdDelete MimeNoContent ModelsLabel MimeJSON
labelsIdDelete (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest LabelsIdDelete MimeNoContent ModelsLabel MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"DELETE" [ByteString
"/labels/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id]
VikunjaRequest LabelsIdDelete MimeNoContent ModelsLabel MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest LabelsIdDelete MimeNoContent ModelsLabel 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 LabelsIdDelete
instance Produces LabelsIdDelete MimeJSON
labelsIdGet
:: Id
-> VikunjaRequest LabelsIdGet MimeNoContent ModelsLabel MimeJSON
labelsIdGet :: Id -> VikunjaRequest LabelsIdGet MimeNoContent ModelsLabel MimeJSON
labelsIdGet (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest LabelsIdGet MimeNoContent ModelsLabel MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"GET" [ByteString
"/labels/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id]
VikunjaRequest LabelsIdGet MimeNoContent ModelsLabel MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest LabelsIdGet MimeNoContent ModelsLabel 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 LabelsIdGet
instance Produces LabelsIdGet MimeJSON
labelsIdPut
:: (Consumes LabelsIdPut MimeJSON, MimeRender MimeJSON ModelsLabel)
=> ModelsLabel
-> Id
-> VikunjaRequest LabelsIdPut MimeJSON ModelsLabel MimeJSON
labelsIdPut :: ModelsLabel
-> Id -> VikunjaRequest LabelsIdPut MimeJSON ModelsLabel MimeJSON
labelsIdPut ModelsLabel
label (Id Int
id) =
Method
-> [ByteString]
-> VikunjaRequest LabelsIdPut MimeJSON ModelsLabel MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"PUT" [ByteString
"/labels/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
id]
VikunjaRequest LabelsIdPut MimeJSON ModelsLabel MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest LabelsIdPut MimeJSON ModelsLabel 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 LabelsIdPut MimeJSON ModelsLabel MimeJSON
-> ModelsLabel
-> VikunjaRequest LabelsIdPut MimeJSON ModelsLabel 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` ModelsLabel
label
data LabelsIdPut
instance HasBodyParam LabelsIdPut ModelsLabel
instance Consumes LabelsIdPut MimeJSON
instance Produces LabelsIdPut MimeJSON
labelsPut
:: (Consumes LabelsPut MimeJSON, MimeRender MimeJSON ModelsLabel)
=> ModelsLabel
-> VikunjaRequest LabelsPut MimeJSON ModelsLabel MimeJSON
labelsPut :: ModelsLabel
-> VikunjaRequest LabelsPut MimeJSON ModelsLabel MimeJSON
labelsPut ModelsLabel
label =
Method
-> [ByteString]
-> VikunjaRequest LabelsPut MimeJSON ModelsLabel MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"PUT" [ByteString
"/labels"]
VikunjaRequest LabelsPut MimeJSON ModelsLabel MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest LabelsPut MimeJSON ModelsLabel 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 LabelsPut MimeJSON ModelsLabel MimeJSON
-> ModelsLabel
-> VikunjaRequest LabelsPut MimeJSON ModelsLabel 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` ModelsLabel
label
data LabelsPut
instance HasBodyParam LabelsPut ModelsLabel
instance Consumes LabelsPut MimeJSON
instance Produces LabelsPut MimeJSON
tasksTaskIDLabelsBulkPost
:: (Consumes TasksTaskIDLabelsBulkPost MimeJSON, MimeRender MimeJSON ModelsLabelTaskBulk)
=> ModelsLabelTaskBulk
-> TaskId
-> VikunjaRequest TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk MimeJSON
tasksTaskIDLabelsBulkPost :: ModelsLabelTaskBulk
-> TaskId
-> VikunjaRequest
TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk MimeJSON
tasksTaskIDLabelsBulkPost ModelsLabelTaskBulk
label (TaskId Int
taskId) =
Method
-> [ByteString]
-> VikunjaRequest
TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"POST" [ByteString
"/tasks/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
taskId,ByteString
"/labels/bulk"]
VikunjaRequest
TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk 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
TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk MimeJSON
-> ModelsLabelTaskBulk
-> VikunjaRequest
TasksTaskIDLabelsBulkPost MimeJSON ModelsLabelTaskBulk 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` ModelsLabelTaskBulk
label
data TasksTaskIDLabelsBulkPost
instance HasBodyParam TasksTaskIDLabelsBulkPost ModelsLabelTaskBulk
instance Consumes TasksTaskIDLabelsBulkPost MimeJSON
instance Produces TasksTaskIDLabelsBulkPost MimeJSON
tasksTaskLabelsGet
:: Task
-> VikunjaRequest TasksTaskLabelsGet MimeNoContent [ModelsLabel] MimeJSON
tasksTaskLabelsGet :: Task
-> VikunjaRequest
TasksTaskLabelsGet MimeNoContent [ModelsLabel] MimeJSON
tasksTaskLabelsGet (Task Int
task) =
Method
-> [ByteString]
-> VikunjaRequest
TasksTaskLabelsGet MimeNoContent [ModelsLabel] MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"GET" [ByteString
"/tasks/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
task,ByteString
"/labels"]
VikunjaRequest
TasksTaskLabelsGet MimeNoContent [ModelsLabel] MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TasksTaskLabelsGet MimeNoContent [ModelsLabel] 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 TasksTaskLabelsGet
instance HasOptionalParam TasksTaskLabelsGet Page where
applyOptionalParam :: VikunjaRequest TasksTaskLabelsGet contentType res accept
-> Page -> VikunjaRequest TasksTaskLabelsGet contentType res accept
applyOptionalParam VikunjaRequest TasksTaskLabelsGet contentType res accept
req (Page Int
xs) =
VikunjaRequest TasksTaskLabelsGet contentType res accept
req VikunjaRequest TasksTaskLabelsGet contentType res accept
-> [QueryItem]
-> VikunjaRequest TasksTaskLabelsGet 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 TasksTaskLabelsGet PerPage where
applyOptionalParam :: VikunjaRequest TasksTaskLabelsGet contentType res accept
-> PerPage
-> VikunjaRequest TasksTaskLabelsGet contentType res accept
applyOptionalParam VikunjaRequest TasksTaskLabelsGet contentType res accept
req (PerPage Int
xs) =
VikunjaRequest TasksTaskLabelsGet contentType res accept
req VikunjaRequest TasksTaskLabelsGet contentType res accept
-> [QueryItem]
-> VikunjaRequest TasksTaskLabelsGet 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 TasksTaskLabelsGet S where
applyOptionalParam :: VikunjaRequest TasksTaskLabelsGet contentType res accept
-> S -> VikunjaRequest TasksTaskLabelsGet contentType res accept
applyOptionalParam VikunjaRequest TasksTaskLabelsGet contentType res accept
req (S Text
xs) =
VikunjaRequest TasksTaskLabelsGet contentType res accept
req VikunjaRequest TasksTaskLabelsGet contentType res accept
-> [QueryItem]
-> VikunjaRequest TasksTaskLabelsGet 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 TasksTaskLabelsGet MimeJSON
tasksTaskLabelsLabelDelete
:: Task
-> Label
-> VikunjaRequest TasksTaskLabelsLabelDelete MimeNoContent ModelsMessage MimeJSON
tasksTaskLabelsLabelDelete :: Task
-> Label
-> VikunjaRequest
TasksTaskLabelsLabelDelete MimeNoContent ModelsMessage MimeJSON
tasksTaskLabelsLabelDelete (Task Int
task) (Label Int
label) =
Method
-> [ByteString]
-> VikunjaRequest
TasksTaskLabelsLabelDelete MimeNoContent ModelsMessage MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"DELETE" [ByteString
"/tasks/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
task,ByteString
"/labels/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
label]
VikunjaRequest
TasksTaskLabelsLabelDelete MimeNoContent ModelsMessage MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TasksTaskLabelsLabelDelete 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 TasksTaskLabelsLabelDelete
instance Produces TasksTaskLabelsLabelDelete MimeJSON
tasksTaskLabelsPut
:: (Consumes TasksTaskLabelsPut MimeJSON, MimeRender MimeJSON ModelsLabelTask)
=> ModelsLabelTask
-> Task
-> VikunjaRequest TasksTaskLabelsPut MimeJSON ModelsLabelTask MimeJSON
tasksTaskLabelsPut :: ModelsLabelTask
-> Task
-> VikunjaRequest
TasksTaskLabelsPut MimeJSON ModelsLabelTask MimeJSON
tasksTaskLabelsPut ModelsLabelTask
label (Task Int
task) =
Method
-> [ByteString]
-> VikunjaRequest
TasksTaskLabelsPut MimeJSON ModelsLabelTask MimeJSON
forall req contentType res accept.
Method -> [ByteString] -> VikunjaRequest req contentType res accept
_mkRequest Method
"PUT" [ByteString
"/tasks/",Int -> ByteString
forall a. ToHttpApiData a => a -> ByteString
toPath Int
task,ByteString
"/labels"]
VikunjaRequest TasksTaskLabelsPut MimeJSON ModelsLabelTask MimeJSON
-> Proxy AuthApiKeyJWTKeyAuth
-> VikunjaRequest
TasksTaskLabelsPut MimeJSON ModelsLabelTask 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 TasksTaskLabelsPut MimeJSON ModelsLabelTask MimeJSON
-> ModelsLabelTask
-> VikunjaRequest
TasksTaskLabelsPut MimeJSON ModelsLabelTask 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` ModelsLabelTask
label
data TasksTaskLabelsPut
instance HasBodyParam TasksTaskLabelsPut ModelsLabelTask
instance Consumes TasksTaskLabelsPut MimeJSON
instance Produces TasksTaskLabelsPut MimeJSON