Bitwarden-app-android-iphon.../src/watchOS/bitwarden/bitwarden WatchKit Extension/Views/CipherItemView.swift

59 lines
1.8 KiB
Swift

import SwiftUI
struct CipherItemView: View {
let cipher:Cipher
let maxWidth:CGFloat
init(_ cipher:Cipher, _ maxWidth:CGFloat) {
self.cipher = cipher
self.maxWidth = maxWidth
}
var body: some View {
VStack(alignment: .leading) {
if cipher.id == "-1" {
// Workaround: To display 0 results on search
// and the message to be localized
Text(LocalizedStringKey(cipher.name!))
.font(.title3)
.fontWeight(.bold)
.lineLimit(1)
.truncationMode(.tail)
.frame(maxWidth: .infinity, alignment: .leading)
} else {
Text(cipher.name ?? "")
.font(.title3)
.fontWeight(.bold)
.lineLimit(1)
.truncationMode(.tail)
.frame(maxWidth: .infinity, alignment: .leading)
}
if cipher.login.username != nil {
Text(cipher.login.username! )
.font(.body)
.lineLimit(1)
.truncationMode(.tail)
.foregroundColor(Color.ui.darkTextMuted)
.frame(maxWidth: .infinity, alignment: .leading)
.privacySensitive()
}
}
.padding()
.background(
RoundedRectangle(cornerRadius: 5)
.foregroundColor(Color.ui.itemBackground)
.frame(width: maxWidth,
alignment: .leading)
)
.frame(width: maxWidth,
alignment: .leading)
}
}
struct CipherItemView_Previews: PreviewProvider {
static var previews: some View {
CipherItemView(CipherMock.ciphers[0], .infinity)
}
}