Polish BookmarkRow to match approved HTML mock
All checks were successful
CI / build-and-deploy (push) Successful in 44s

- Meta line .tertiary → .secondary (more readable domain/date line)
- Tag font 11pt → 12pt
- Reading progress bar: full-width, green, pinned to row bottom edge via overlay

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Krishna Kumar
2026-05-24 13:24:32 -05:00
parent 199fc2d043
commit b7ae15ae87

View File

@@ -34,7 +34,7 @@ struct BookmarkRow: View {
Text(bookmark.dateAdded, style: .relative)
}
.font(.system(size: 13))
.foregroundStyle(.tertiary)
.foregroundStyle(.secondary)
}
Spacer()
@@ -68,7 +68,7 @@ struct BookmarkRow: View {
HStack(spacing: 6) {
ForEach(effectiveTags, id: \.self) { tag in
Text(tag)
.font(.system(size: 11, weight: .medium))
.font(.system(size: 12, weight: .medium))
.foregroundStyle(.secondary)
.padding(.horizontal, 8)
.padding(.vertical, 3)
@@ -80,24 +80,23 @@ struct BookmarkRow: View {
.padding(.leading, 44)
}
// Reading progress indicator
}
.padding(.vertical, 14)
.contentShape(Rectangle())
.overlay(alignment: .bottom) {
if readingProgress > 0.02 {
GeometryReader { geo in
ZStack(alignment: .leading) {
Rectangle()
.fill(Color(.systemGray5))
Rectangle()
.fill(Color.blue.opacity(0.55))
.fill(Color(.systemGreen))
.frame(width: geo.size.width * min(readingProgress, 1))
}
}
.frame(height: 2)
.clipShape(Capsule())
.padding(.leading, 44)
}
}
.padding(.vertical, 14)
.contentShape(Rectangle())
}
private var podcastCached: Bool {