summaryrefslogtreecommitdiff
path: root/internal/api/model/list.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2023-05-25 10:37:38 +0200
committerLibravatar GitHub <noreply@github.com>2023-05-25 10:37:38 +0200
commitf5c004d67d4ed66b6c6df100afec47174aa14ae0 (patch)
tree45b72a6e90450d711e10571d844138186fe023c9 /internal/api/model/list.go
parent[docs] local docs hacking howto (#1816) (diff)
downloadgotosocial-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.go49
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"`
+}