main / internal/interface/web/templates/issues_list_templ.go
13.0 KB · Go Raw
1// Code generated by templ - DO NOT EDIT.
2
3// templ: version: v0.3.865
4package templates
5
6//lint:file-ignore SA4006 This context is only used if a nested component is present.
7
8import "github.com/a-h/templ"
9import templruntime "github.com/a-h/templ/runtime"
10
11import "gitgud/internal/domain"
12
13func IssuesList(user *domain.User, repo *domain.Repository, state string, issues []*domain.Issue, openCount, closedCount int) templ.Component {
14 return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
15 templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
16 if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
17 return templ_7745c5c3_CtxErr
18 }
19 templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
20 if !templ_7745c5c3_IsBuffer {
21 defer func() {
22 templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
23 if templ_7745c5c3_Err == nil {
24 templ_7745c5c3_Err = templ_7745c5c3_BufErr
25 }
26 }()
27 }
28 ctx = templ.InitializeContext(ctx)
29 templ_7745c5c3_Var1 := templ.GetChildren(ctx)
30 if templ_7745c5c3_Var1 == nil {
31 templ_7745c5c3_Var1 = templ.NopComponent
32 }
33 ctx = templ.ClearChildren(ctx)
34 templ_7745c5c3_Var2 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
35 templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
36 templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
37 if !templ_7745c5c3_IsBuffer {
38 defer func() {
39 templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
40 if templ_7745c5c3_Err == nil {
41 templ_7745c5c3_Err = templ_7745c5c3_BufErr
42 }
43 }()
44 }
45 ctx = templ.InitializeContext(ctx)
46 templ_7745c5c3_Err = repoHeader(repo, "issues").Render(ctx, templ_7745c5c3_Buffer)
47 if templ_7745c5c3_Err != nil {
48 return templ_7745c5c3_Err
49 }
50 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 1, " <div class=\"mb-4 flex items-center justify-between\"><div class=\"flex gap-5 text-sm\">")
51 if templ_7745c5c3_Err != nil {
52 return templ_7745c5c3_Err
53 }
54 var templ_7745c5c3_Var3 = []any{stateTabClass(state, "open")}
55 templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var3...)
56 if templ_7745c5c3_Err != nil {
57 return templ_7745c5c3_Err
58 }
59 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 2, "<a class=\"")
60 if templ_7745c5c3_Err != nil {
61 return templ_7745c5c3_Err
62 }
63 var templ_7745c5c3_Var4 string
64 templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs(templ.CSSClasses(templ_7745c5c3_Var3).String())
65 if templ_7745c5c3_Err != nil {
66 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 1, Col: 0}
67 }
68 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4))
69 if templ_7745c5c3_Err != nil {
70 return templ_7745c5c3_Err
71 }
72 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 3, "\" href=\"")
73 if templ_7745c5c3_Err != nil {
74 return templ_7745c5c3_Err
75 }
76 var templ_7745c5c3_Var5 templ.SafeURL = templ.SafeURL(repoPath(repo, "/issues?state=open"))
77 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(string(templ_7745c5c3_Var5)))
78 if templ_7745c5c3_Err != nil {
79 return templ_7745c5c3_Err
80 }
81 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 4, "\">")
82 if templ_7745c5c3_Err != nil {
83 return templ_7745c5c3_Err
84 }
85 var templ_7745c5c3_Var6 string
86 templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(openCount))
87 if templ_7745c5c3_Err != nil {
88 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 10, Col: 124}
89 }
90 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
91 if templ_7745c5c3_Err != nil {
92 return templ_7745c5c3_Err
93 }
94 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 5, " Open</a> ")
95 if templ_7745c5c3_Err != nil {
96 return templ_7745c5c3_Err
97 }
98 var templ_7745c5c3_Var7 = []any{stateTabClass(state, "closed")}
99 templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var7...)
100 if templ_7745c5c3_Err != nil {
101 return templ_7745c5c3_Err
102 }
103 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 6, "<a class=\"")
104 if templ_7745c5c3_Err != nil {
105 return templ_7745c5c3_Err
106 }
107 var templ_7745c5c3_Var8 string
108 templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs(templ.CSSClasses(templ_7745c5c3_Var7).String())
109 if templ_7745c5c3_Err != nil {
110 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 1, Col: 0}
111 }
112 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var8))
113 if templ_7745c5c3_Err != nil {
114 return templ_7745c5c3_Err
115 }
116 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 7, "\" href=\"")
117 if templ_7745c5c3_Err != nil {
118 return templ_7745c5c3_Err
119 }
120 var templ_7745c5c3_Var9 templ.SafeURL = templ.SafeURL(repoPath(repo, "/issues?state=closed"))
121 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(string(templ_7745c5c3_Var9)))
122 if templ_7745c5c3_Err != nil {
123 return templ_7745c5c3_Err
124 }
125 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 8, "\">")
126 if templ_7745c5c3_Err != nil {
127 return templ_7745c5c3_Err
128 }
129 var templ_7745c5c3_Var10 string
130 templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(closedCount))
131 if templ_7745c5c3_Err != nil {
132 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 11, Col: 130}
133 }
134 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var10))
135 if templ_7745c5c3_Err != nil {
136 return templ_7745c5c3_Err
137 }
138 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 9, " Closed</a></div>")
139 if templ_7745c5c3_Err != nil {
140 return templ_7745c5c3_Err
141 }
142 if user != nil {
143 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 10, "<a class=\"btn btn-primary\" href=\"")
144 if templ_7745c5c3_Err != nil {
145 return templ_7745c5c3_Err
146 }
147 var templ_7745c5c3_Var11 templ.SafeURL = templ.SafeURL(repoPath(repo, "/issues/new"))
148 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(string(templ_7745c5c3_Var11)))
149 if templ_7745c5c3_Err != nil {
150 return templ_7745c5c3_Err
151 }
152 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 11, "\">+ New issue</a>")
153 if templ_7745c5c3_Err != nil {
154 return templ_7745c5c3_Err
155 }
156 }
157 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 12, "</div>")
158 if templ_7745c5c3_Err != nil {
159 return templ_7745c5c3_Err
160 }
161 if len(issues) == 0 {
162 templ_7745c5c3_Err = emptyState("No issues here", "There are no "+state+" issues in this repository.", "", "").Render(ctx, templ_7745c5c3_Buffer)
163 if templ_7745c5c3_Err != nil {
164 return templ_7745c5c3_Err
165 }
166 } else {
167 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 13, "<div class=\"card overflow-hidden\">")
168 if templ_7745c5c3_Err != nil {
169 return templ_7745c5c3_Err
170 }
171 for _, i := range issues {
172 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 14, "<div class=\"row border-b border-line px-4 py-3 last:border-0\"><a class=\"flex items-start gap-2.5\" href=\"")
173 if templ_7745c5c3_Err != nil {
174 return templ_7745c5c3_Err
175 }
176 var templ_7745c5c3_Var12 templ.SafeURL = templ.SafeURL(repoPath(repo, "/issues/"+itoa(i.Number)))
177 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(string(templ_7745c5c3_Var12)))
178 if templ_7745c5c3_Err != nil {
179 return templ_7745c5c3_Err
180 }
181 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 15, "\">")
182 if templ_7745c5c3_Err != nil {
183 return templ_7745c5c3_Err
184 }
185 templ_7745c5c3_Err = issueDot(string(i.State)).Render(ctx, templ_7745c5c3_Buffer)
186 if templ_7745c5c3_Err != nil {
187 return templ_7745c5c3_Err
188 }
189 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 16, "<span class=\"min-w-0\"><span class=\"block text-ink hover:text-accent\">")
190 if templ_7745c5c3_Err != nil {
191 return templ_7745c5c3_Err
192 }
193 var templ_7745c5c3_Var13 string
194 templ_7745c5c3_Var13, templ_7745c5c3_Err = templ.JoinStringErrs(i.Title)
195 if templ_7745c5c3_Err != nil {
196 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 26, Col: 64}
197 }
198 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var13))
199 if templ_7745c5c3_Err != nil {
200 return templ_7745c5c3_Err
201 }
202 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 17, "</span> <span class=\"meta\">#")
203 if templ_7745c5c3_Err != nil {
204 return templ_7745c5c3_Err
205 }
206 var templ_7745c5c3_Var14 string
207 templ_7745c5c3_Var14, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(i.Number))
208 if templ_7745c5c3_Err != nil {
209 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 27, Col: 44}
210 }
211 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var14))
212 if templ_7745c5c3_Err != nil {
213 return templ_7745c5c3_Err
214 }
215 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 18, " · opened by ")
216 if templ_7745c5c3_Err != nil {
217 return templ_7745c5c3_Err
218 }
219 var templ_7745c5c3_Var15 string
220 templ_7745c5c3_Var15, templ_7745c5c3_Err = templ.JoinStringErrs(i.AuthorName)
221 if templ_7745c5c3_Err != nil {
222 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 27, Col: 74}
223 }
224 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var15))
225 if templ_7745c5c3_Err != nil {
226 return templ_7745c5c3_Err
227 }
228 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 19, " · ")
229 if templ_7745c5c3_Err != nil {
230 return templ_7745c5c3_Err
231 }
232 var templ_7745c5c3_Var16 string
233 templ_7745c5c3_Var16, templ_7745c5c3_Err = templ.JoinStringErrs(fmtTime(i.CreatedAt))
234 if templ_7745c5c3_Err != nil {
235 return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/interface/web/templates/issues_list.templ`, Line: 27, Col: 102}
236 }
237 _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var16))
238 if templ_7745c5c3_Err != nil {
239 return templ_7745c5c3_Err
240 }
241 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 20, "</span></span></a></div>")
242 if templ_7745c5c3_Err != nil {
243 return templ_7745c5c3_Err
244 }
245 }
246 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 21, "</div>")
247 if templ_7745c5c3_Err != nil {
248 return templ_7745c5c3_Err
249 }
250 }
251 return nil
252 })
253 templ_7745c5c3_Err = Layout("Issues · "+repo.Name, user).Render(templ.WithChildren(ctx, templ_7745c5c3_Var2), templ_7745c5c3_Buffer)
254 if templ_7745c5c3_Err != nil {
255 return templ_7745c5c3_Err
256 }
257 return nil
258 })
259}
260
261func issueDot(state string) templ.Component {
262 return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
263 templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
264 if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil {
265 return templ_7745c5c3_CtxErr
266 }
267 templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
268 if !templ_7745c5c3_IsBuffer {
269 defer func() {
270 templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
271 if templ_7745c5c3_Err == nil {
272 templ_7745c5c3_Err = templ_7745c5c3_BufErr
273 }
274 }()
275 }
276 ctx = templ.InitializeContext(ctx)
277 templ_7745c5c3_Var17 := templ.GetChildren(ctx)
278 if templ_7745c5c3_Var17 == nil {
279 templ_7745c5c3_Var17 = templ.NopComponent
280 }
281 ctx = templ.ClearChildren(ctx)
282 if state == "open" {
283 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 22, "<span class=\"mt-1 size-3.5 shrink-0 rounded-full border-2 border-accent\"></span>")
284 if templ_7745c5c3_Err != nil {
285 return templ_7745c5c3_Err
286 }
287 } else {
288 templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 23, "<span class=\"mt-1 size-3.5 shrink-0 rounded-full border-2 border-faint\"></span>")
289 if templ_7745c5c3_Err != nil {
290 return templ_7745c5c3_Err
291 }
292 }
293 return nil
294 })
295}
296
297var _ = templruntime.GeneratedTemplate