Commit 1c20fc5c9f
1c20fc5c9fa1ffecea9369a20d6937c70188bca1
parent: 94822078db
Verified · cmc ci/build: success ci/sonar: success ci/test: success
cmc <hello@cleberg.net> · 2026-09-19 02:52 UTC
web: the dashboard is one column; the activity feed is a section after the queues
Ref #222
internal/web/static/style.css
+6 −3
| @@ -1027,6 +1027,11 @@ form.actions { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-top: var |
| 1027 | 1027 | form.actions button { flex: 1 1 auto; } |
| 1028 | 1028 | form.actions select, form.actions textarea { width: 100%; } |
| 1029 | 1029 | .feedline { margin-bottom: var(--sp-2); } |
| 1030 | /* the dashboard's activity feed is a section after the queues, one column */ |
| 1031 | .feed { margin-top: var(--sp-6); max-width: 78ch; } |
| 1032 | .feed h2 { margin-bottom: var(--sp-3); } |
| 1033 | .feed .feedline { font-size: var(--fs-2); } |
| 1034 | .feed .none { color: var(--muted); font-size: var(--fs-1); } |
| 1030 | 1035 | |
| 1031 | 1036 | /* ---- comments and threads ---- */ |
| 1032 | 1037 | article.comment { |
| @@ -1466,10 +1471,8 @@ svg.icon { vertical-align: -0.125em; } |
| 1466 | 1471 | /* ---- breakpoints ---- */ |
| 1467 | 1472 | @media (max-width: 62rem) { |
| 1468 | 1473 | .withaside { grid-template-columns: 1fr; } |
| 1469 | | /* checks and reviewers before a long thread; the dashboard's aside is |
| 1470 | | the activity feed, which reads after the queues */ |
| 1474 | /* checks and reviewers before a long thread */ |
| 1471 | 1475 | .withaside .aside { order: -1; } |
| 1472 | | .withaside.feedlast .aside { order: 0; } |
| 1473 | 1476 | } |
| 1474 | 1477 | |
| 1475 | 1478 | @media (max-width: 52rem) { |
internal/web/templates/dashboard.html
+5 −13
| @@ -19,9 +19,6 @@ |
| 19 | 19 | <h1>Dashboard</h1> |
| 20 | 20 | {{with .Rail.Pinned}}<p class="pinned" aria-label="Pinned repositories">{{range .}}<a class="chip" href="/{{.Owner}}/{{.Name}}"><span class="owner">{{.Owner}}/</span>{{.Name}}</a> {{end}}</p>{{end}} |
| 21 | 21 | |
| 22 | | <div class="withaside feedlast"> |
| 23 | | <div class="mainside"> |
| 24 | | |
| 25 | 22 | {{if .Reviews}}{{template "queue" dict "Title" "Waiting on your review" "Items" .Reviews "Kind" "mrs" "Empty" "Nothing waiting on you"}}{{end}} |
| 26 | 23 | {{if .Assigned}}{{template "queue" dict "Title" "Assigned to you" "Items" .Assigned "Kind" "issues" "Empty" "Nothing assigned to you"}}{{end}} |
| 27 | 24 | {{if .MRs}}{{template "queue" dict "Title" "Open merge requests" "Items" .MRs "Kind" "mrs" "Empty" "No open merge requests" "Hint" "Yours anywhere, and every one in a repository you can write to."}}{{end}} |
| @@ -32,14 +29,9 @@ |
| 32 | 29 | {{if not .MRs}}<h2 class="empty">Open merge requests <span class="count">0</span></h2>{{end}} |
| 33 | 30 | {{if not .Issues}}<h2 class="empty">Open issues <span class="count">0</span></h2>{{end}} |
| 34 | 31 | |
| 35 | | </div> |
| 36 | | |
| 37 | | <aside class="aside"> |
| 38 | | <div class="grp"> |
| 39 | | <h2>Recent activity</h2> |
| 40 | | {{range .Feed}}<p class="row feedline">{{if eq .State "failure"}}<span class="dot bad"></span>{{else if eq .State "success"}}<span class="dot ok"></span>{{else if .State}}<span class="dot pend"></span>{{end}}<a href="/{{.Actor}}">{{.Actor}}</a> {{.Verb}} <a href="{{.URL}}"{{if .Jobs}} title="{{join .Jobs ", "}}"{{end}}>{{.Ref}}</a><br><span class="none">{{.Repo}} · <span title="{{whenT .WhenT}}">{{ago .WhenT}}</span></span></p> |
| 41 | | {{else}}<p class="none">No activity yet</p>{{end}} |
| 42 | | </div> |
| 43 | | </aside> |
| 44 | | </div> |
| 32 | <section class="feed"> |
| 33 | <h2>Recent activity</h2> |
| 34 | {{range .Feed}}<p class="feedline">{{if eq .State "failure"}}<span class="dot bad"></span>{{else if eq .State "success"}}<span class="dot ok"></span>{{else if .State}}<span class="dot pend"></span>{{end}}<a href="/{{.Actor}}">{{.Actor}}</a> {{.Verb}} <a href="{{.URL}}"{{if .Jobs}} title="{{join .Jobs ", "}}"{{end}}>{{.Ref}}</a><br><span class="none">{{.Repo}} · <span title="{{whenT .WhenT}}">{{ago .WhenT}}</span></span></p> |
| 35 | {{else}}<p class="none">No activity yet</p>{{end}} |
| 36 | </section> |
| 45 | 37 | {{end}} |