openclaw/apps/macos/Sources/Clawdis/SessionMenuLabelView.swift

39 lines
1.3 KiB
Swift
Raw Normal View History

2025-12-22 19:29:24 +01:00
import SwiftUI
struct SessionMenuLabelView: View {
let row: SessionRow
2025-12-22 20:14:54 +01:00
let width: CGFloat
private let paddingLeading: CGFloat = 20
private let paddingTrailing: CGFloat = 10
2025-12-22 19:29:24 +01:00
var body: some View {
VStack(alignment: .leading, spacing: 5) {
ContextUsageBar(
usedTokens: row.tokens.total,
contextTokens: row.tokens.contextTokens,
width: max(1, self.width - (self.paddingLeading + self.paddingTrailing)),
2025-12-22 20:14:54 +01:00
height: 4)
2025-12-22 19:29:24 +01:00
HStack(alignment: .firstTextBaseline, spacing: 8) {
Text(row.key)
.font(.caption.weight(row.key == "main" ? .semibold : .regular))
.lineLimit(1)
.truncationMode(.middle)
.layoutPriority(1)
Spacer(minLength: 8)
Text(row.tokens.contextSummaryShort)
.font(.caption.monospacedDigit())
.foregroundStyle(.secondary)
.lineLimit(1)
.fixedSize(horizontal: true, vertical: false)
.layoutPriority(2)
}
}
.padding(.vertical, 4)
.padding(.leading, self.paddingLeading)
.padding(.trailing, self.paddingTrailing)
2025-12-22 19:29:24 +01:00
}
}