| Author | Dave Jarvis <email> |
|---|---|
| Date | 2026-02-10 19:17:06 GMT-0800 |
| Commit | 1b6090a8d1968e1303039f708c037ef7c40f651d |
| Parent | c3267c9 |
| $commitUrl = '?action=commits&hash=' . $targetSha . $repoParam; | ||
| - echo '<div class="ref-item tag-item">'; | ||
| + echo '<div class="tag-row">'; | ||
| - // Header: Name and Date | ||
| - echo '<div class="ref-header">'; | ||
| - echo '<a href="' . $filesUrl . '" class="ref-name">'; | ||
| + echo '<div class="tag-name">'; | ||
| + echo '<a href="' . $filesUrl . '">'; | ||
| echo '<i class="fas fa-tag"></i> ' . htmlspecialchars($name); | ||
| echo '</a>'; | ||
| - | ||
| - if ($timestamp > 0) { | ||
| - echo '<span class="ref-date">'; | ||
| - $this->renderTime($timestamp); | ||
| - echo '</span>'; | ||
| - } | ||
| echo '</div>'; | ||
| - // Body: Message | ||
| + echo '<div class="tag-message">'; | ||
| + | ||
| if ($message !== '') { | ||
| - // Get first line only for brevity in list view | ||
| $firstLine = strtok($message, "\n"); | ||
| - echo '<div class="ref-message">' . htmlspecialchars($firstLine) . '</div>'; | ||
| + echo htmlspecialchars($firstLine); | ||
| + } else { | ||
| + echo '<span style="color: #484f58; font-style: italic;">No description</span>'; | ||
| } | ||
| + echo '</div>'; | ||
| - // Footer: SHA and Author | ||
| - echo '<div class="ref-meta">'; | ||
| - echo '<a href="' . $commitUrl . '" class="commit-hash">' . substr($sha, 0, 7) . '</a>'; | ||
| + echo '<div class="tag-meta">'; | ||
| if ($author !== '') { | ||
| - echo '<span class="ref-author"> by ' . htmlspecialchars($author) . '</span>'; | ||
| + echo htmlspecialchars($author) . ' • '; | ||
| } | ||
| + | ||
| + $this->renderTime($timestamp); | ||
| + | ||
| + echo ' • <a href="' . $commitUrl . '" class="commit-hash">' . substr($sha, 0, 7) . '</a>'; | ||
| echo '</div>'; | ||
| echo '<h2>Tags</h2>'; | ||
| - echo '<div class="refs-list">'; | ||
| + echo '<div class="tag-list">'; | ||
| $tags = []; |
| -/* --- GIT DIFF STYLES (Protanopia Dark) --- */ | ||
| - | ||
| .diff-container { | ||
| display: flex; | ||
| .status-del { color: #d29922; } | ||
| .status-mod { color: #a371f7; } | ||
| + | ||
| +.tag-list { | ||
| + margin-top: 10px; | ||
| +} | ||
| + | ||
| +.tag-row { | ||
| + display: flex; | ||
| + padding: 10px 0; | ||
| + border-bottom: 1px solid #30363d; | ||
| + gap: 15px; | ||
| + align-items: baseline; | ||
| + color: #c9d1d9; | ||
| +} | ||
| + | ||
| +.tag-row:last-child { | ||
| + border-bottom: none; | ||
| +} | ||
| + | ||
| +.tag-row:hover { | ||
| + background: rgba(110, 118, 129, 0.05); | ||
| +} | ||
| + | ||
| +.tag-row .tag-name { | ||
| + font-family: 'SFMono-Regular', Consolas, monospace; | ||
| + font-size: 0.9rem; | ||
| + color: #58a6ff; | ||
| + width: 150px; | ||
| + flex-shrink: 0; | ||
| + white-space: nowrap; | ||
| + overflow: hidden; | ||
| + text-overflow: ellipsis; | ||
| +} | ||
| + | ||
| +.tag-row .tag-name a { | ||
| + text-decoration: none; | ||
| + color: inherit; | ||
| +} | ||
| + | ||
| +.tag-row .tag-name a:hover { | ||
| + text-decoration: underline; | ||
| +} | ||
| + | ||
| +.tag-row .tag-message { | ||
| + flex: 1; | ||
| + font-weight: 500; | ||
| + white-space: nowrap; | ||
| + overflow: hidden; | ||
| + text-overflow: ellipsis; | ||
| + color: #c9d1d9; | ||
| +} | ||
| + | ||
| +.tag-row .tag-meta { | ||
| + font-size: 0.85em; | ||
| + color: #8b949e; | ||
| + white-space: nowrap; | ||
| + text-align: right; | ||
| +} | ||
| + | ||
| +.tag-row .tag-meta a { | ||
| + color: inherit; | ||
| + text-decoration: none; | ||
| +} | ||
| +.tag-row .tag-meta a:hover { | ||
| + text-decoration: underline; | ||
| + color: #58a6ff; | ||
| +} | ||
| Delta | 82 lines added, 20 lines removed, 62-line increase |
|---|