diff options
author | 2023-05-25 10:37:38 +0200 | |
---|---|---|
committer | 2023-05-25 10:37:38 +0200 | |
commit | f5c004d67d4ed66b6c6df100afec47174aa14ae0 (patch) | |
tree | 45b72a6e90450d711e10571d844138186fe023c9 /internal/api/model/list.go | |
parent | [docs] local docs hacking howto (#1816) (diff) | |
download | gotosocial-f5c004d67d4ed66b6c6df100afec47174aa14ae0.tar.xz |
[feature] Add List functionality (#1802)
* start working on lists
* further list work
* test list db functions nicely
* more work on lists
* peepoopeepoo
* poke
* start list timeline func
* we're getting there lads
* couldn't be me working on stuff... could it?
* hook up handlers
* fiddling
* weeee
* woah
* screaming, pissing
* fix streaming being a whiny baby
* lint, small test fix, swagger
* tidying up, testing
* fucked! by the linter
* move timelines to state like a boss
* add timeline start to tests using state
* invalidate lists
Diffstat (limited to 'internal/api/model/list.go')
-rw-r--r-- | internal/api/model/list.go | 49 |
1 files changed, 46 insertions, 3 deletions
diff --git a/internal/api/model/list.go b/internal/api/model/list.go index d50c68f70..f897bcc88 100644 --- a/internal/api/model/list.go +++ b/internal/api/model/list.go @@ -17,14 +17,57 @@ package model -// List represents a list of some users that the authenticated user follows. +// List represents a user-created list of accounts that the user follows. +// +// swagger:model list type List struct { - // The internal database ID of the list. + // The ID of the list. ID string `json:"id"` // The user-defined title of the list. Title string `json:"title"` - // followed = Show replies to any followed user + // RepliesPolicy for this list. + // followed = Show replies to any followed user // list = Show replies to members of the list // none = Show replies to no one RepliesPolicy string `json:"replies_policy"` } + +// ListCreateRequest models list creation parameters. +// +// swagger:parameters listCreate +type ListCreateRequest struct { + // Title of this list. + // example: Cool People + // in: formData + // required: true + Title string `form:"title" json:"title" xml:"title"` + // RepliesPolicy for this list. + // followed = Show replies to any followed user + // list = Show replies to members of the list + // none = Show replies to no one + // example: list + // default: list + // in: formData + RepliesPolicy string `form:"replies_policy" json:"replies_policy" xml:"replies_policy"` +} + +// ListUpdateRequest models list update parameters. +// +// swagger:parameters listUpdate +type ListUpdateRequest struct { + // Title of this list. + // example: Cool People + // in: formData + Title *string `form:"title" json:"title" xml:"title"` + // RepliesPolicy for this list. + // followed = Show replies to any followed user + // list = Show replies to members of the list + // none = Show replies to no one + // in: formData + RepliesPolicy *string `form:"replies_policy" json:"replies_policy" xml:"replies_policy"` +} + +// swagger:ignore +type ListAccountsChangeRequest struct { + AccountIDs []string `form:"account_ids[]" json:"account_ids" xml:"account_ids"` +} |