summaryrefslogtreecommitdiff
path: root/internal/api/model
diff options
context:
space:
mode:
Diffstat (limited to 'internal/api/model')
-rw-r--r--internal/api/model/notification.go21
-rw-r--r--internal/api/model/timeline.go8
2 files changed, 26 insertions, 3 deletions
diff --git a/internal/api/model/notification.go b/internal/api/model/notification.go
index 8f929cab4..efcd2431b 100644
--- a/internal/api/model/notification.go
+++ b/internal/api/model/notification.go
@@ -43,3 +43,24 @@ type Notification struct {
// Status that was the object of the notification, e.g. in mentions, reblogs, favourites, or polls.
Status *Status `json:"status,omitempty"`
}
+
+/*
+ The below functions are added onto the apimodel notification so that it satisfies
+ the Timelineable interface in internal/timeline.
+*/
+
+func (n *Notification) GetID() string {
+ return n.ID
+}
+
+func (n *Notification) GetAccountID() string {
+ return ""
+}
+
+func (n *Notification) GetBoostOfID() string {
+ return ""
+}
+
+func (n *Notification) GetBoostOfAccountID() string {
+ return ""
+}
diff --git a/internal/api/model/timeline.go b/internal/api/model/timeline.go
index 66a5263b8..71d839ed2 100644
--- a/internal/api/model/timeline.go
+++ b/internal/api/model/timeline.go
@@ -18,9 +18,11 @@
package model
-// StatusTimelineResponse wraps a slice of statuses, ready to be serialized, along with the Link
+import "github.com/superseriousbusiness/gotosocial/internal/timeline"
+
+// TimelineResponse wraps a slice of timelineables, ready to be serialized, along with the Link
// header for the previous and next queries, to be returned to the client.
-type StatusTimelineResponse struct {
- Statuses []*Status
+type TimelineResponse struct {
+ Items []timeline.Timelineable
LinkHeader string
}