Fix unread notification indicator
[bloat] / renderer / model.go
1 package renderer
2
3 import (
4         "bloat/mastodon"
5         "bloat/model"
6 )
7
8 type Context struct {
9         HideAttachments  bool
10         MaskNSFW         bool
11         FluorideMode     bool
12         ThreadInNewTab   bool
13         DarkMode         bool
14         CSRFToken        string
15         UserID           string
16         AntiDopamineMode bool
17 }
18
19 type NavData struct {
20         CommonData  *CommonData
21         User        *mastodon.Account
22         PostContext model.PostContext
23 }
24
25 type CommonData struct {
26         Title           string
27         CustomCSS       string
28         CSRFToken       string
29         Count           int
30         RefreshInterval int
31         Target          string
32 }
33
34 type ErrorData struct {
35         *CommonData
36         Error string
37 }
38
39 type HomePageData struct {
40         *CommonData
41 }
42
43 type SigninData struct {
44         *CommonData
45 }
46
47 type RootData struct {
48         Title string
49 }
50
51 type TimelineData struct {
52         *CommonData
53         Title    string
54         Statuses []*mastodon.Status
55         NextLink string
56         PrevLink string
57 }
58
59 type ThreadData struct {
60         *CommonData
61         Statuses    []*mastodon.Status
62         PostContext model.PostContext
63         ReplyMap    map[string][]mastodon.ReplyInfo
64 }
65
66 type NotificationData struct {
67         *CommonData
68         Notifications []*mastodon.Notification
69         UnreadCount   int
70         ReadID        string
71         NextLink      string
72 }
73
74 type UserData struct {
75         *CommonData
76         User      *mastodon.Account
77         IsCurrent bool
78         Type      string
79         Users     []*mastodon.Account
80         Statuses  []*mastodon.Status
81         NextLink  string
82 }
83
84 type UserSearchData struct {
85         *CommonData
86         User     *mastodon.Account
87         Q        string
88         Statuses []*mastodon.Status
89         NextLink string
90 }
91
92 type AboutData struct {
93         *CommonData
94 }
95
96 type EmojiData struct {
97         *CommonData
98         Emojis []*mastodon.Emoji
99 }
100
101 type LikedByData struct {
102         *CommonData
103         Users    []*mastodon.Account
104         NextLink string
105 }
106
107 type RetweetedByData struct {
108         *CommonData
109         Users    []*mastodon.Account
110         NextLink string
111 }
112
113 type SearchData struct {
114         *CommonData
115         Q        string
116         Type     string
117         Users    []*mastodon.Account
118         Statuses []*mastodon.Status
119         NextLink string
120 }
121
122 type SettingsData struct {
123         *CommonData
124         Settings    *model.Settings
125         PostFormats []model.PostFormat
126 }