bloat/renderer/model.go

132 lines
2.1 KiB
Go
Raw Normal View History

2019-12-13 20:08:26 +02:00
package renderer
import (
2020-02-01 13:31:44 +02:00
"bloat/mastodon"
2020-01-01 17:58:27 +02:00
"bloat/model"
2019-12-13 20:08:26 +02:00
)
2020-01-14 18:57:16 +02:00
type Context struct {
MaskNSFW bool
FluorideMode bool
ThreadInNewTab bool
DarkMode bool
2020-01-25 12:07:06 +02:00
CSRFToken string
2020-02-02 10:30:40 +02:00
UserID string
2020-01-14 18:57:16 +02:00
}
type HeaderData struct {
Title string
NotificationCount int
CustomCSS string
2020-01-25 12:07:06 +02:00
CSRFToken string
}
2019-12-25 16:13:59 +02:00
type NavbarData struct {
2019-12-24 16:55:05 +02:00
User *mastodon.Account
2019-12-15 19:37:58 +02:00
NotificationCount int
}
type CommonData struct {
HeaderData *HeaderData
NavbarData *NavbarData
}
func (c CommonData) IsCurrentUser(id string) bool {
if c.NavbarData != nil &&
c.NavbarData.User != nil &&
c.NavbarData.User.ID == id {
return true
}
return false
}
2019-12-26 11:11:24 +02:00
type ErrorData struct {
*CommonData
Error string
}
type HomePageData struct {
*CommonData
}
type SigninData struct {
*CommonData
}
2019-12-25 16:13:59 +02:00
type TimelineData struct {
*CommonData
2019-12-25 06:30:21 +02:00
Title string
Statuses []*mastodon.Status
NextLink string
PrevLink string
PostContext model.PostContext
2019-12-13 20:08:26 +02:00
}
2019-12-25 16:13:59 +02:00
type ThreadData struct {
*CommonData
Statuses []*mastodon.Status
PostContext model.PostContext
ReplyMap map[string][]mastodon.ReplyInfo
2019-12-13 20:08:26 +02:00
}
2019-12-25 16:13:59 +02:00
type NotificationData struct {
*CommonData
2019-12-15 19:37:58 +02:00
Notifications []*mastodon.Notification
NextLink string
2020-01-12 19:16:57 +02:00
DarkMode bool
2019-12-13 20:08:26 +02:00
}
2019-12-25 16:13:59 +02:00
type UserData struct {
*CommonData
User *mastodon.Account
IsCurrent bool
Type string
Users []*mastodon.Account
Statuses []*mastodon.Status
NextLink string
DarkMode bool
}
2019-12-21 07:48:48 +02:00
2020-01-30 17:32:37 +02:00
type UserSearchData struct {
*CommonData
User *mastodon.Account
Q string
Statuses []*mastodon.Status
NextLink string
}
2019-12-25 16:13:59 +02:00
type AboutData struct {
*CommonData
2019-12-21 07:48:48 +02:00
}
2019-12-25 16:13:59 +02:00
type EmojiData struct {
2019-12-26 11:11:24 +02:00
*CommonData
2019-12-26 21:18:09 +02:00
Emojis []*mastodon.Emoji
2019-12-26 11:11:24 +02:00
}
type LikedByData struct {
*CommonData
2019-12-26 21:18:09 +02:00
Users []*mastodon.Account
NextLink string
2019-12-26 11:11:24 +02:00
}
type RetweetedByData struct {
*CommonData
2019-12-26 21:18:09 +02:00
Users []*mastodon.Account
NextLink string
}
type SearchData struct {
*CommonData
2019-12-27 10:06:43 +02:00
Q string
Type string
Users []*mastodon.Account
Statuses []*mastodon.Status
2019-12-26 21:18:09 +02:00
NextLink string
2019-12-22 20:10:42 +02:00
}
2019-12-27 10:06:43 +02:00
type SettingsData struct {
*CommonData
Settings *model.Settings
}