Files
damus/damus/Views/ReplyQuoteView.swift
William Casarin ce989450f4 many updates
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-25 08:28:07 -07:00

68 lines
1.9 KiB
Swift

//
// SwiftUIView.swift
// damus
//
// Created by William Casarin on 2022-04-19.
//
import SwiftUI
struct ReplyQuoteView: View {
let quoter: NostrEvent
let event_id: String
@EnvironmentObject var profiles: Profiles
@EnvironmentObject var thread: ThreadModel
func MainContent(event: NostrEvent) -> some View {
HStack(alignment: .top) {
Rectangle().frame(width: 2)
.padding([.leading], 4)
.foregroundColor(.accentColor)
VStack(alignment: .leading) {
HStack(alignment: .top) {
ProfilePicView(picture: profiles.lookup(id: event.pubkey)?.picture, size: 16, highlight: .reply)
Text(Profile.displayName(profile: profiles.lookup(id: event.pubkey), pubkey: event.pubkey))
.foregroundColor(.accentColor)
Text("\(format_relative_time(event.created_at))")
.foregroundColor(.gray)
}
Text(event.content)
//.frame(maxWidth: .infinity, alignment: .leading)
.textSelection(.enabled)
//Spacer()
}
//.border(Color.red)
}
//.border(Color.green)
}
var body: some View {
Group {
if let event = thread.lookup(event_id) {
MainContent(event: event)
.padding(4)
.frame(maxHeight: 100)
.contentShape(Rectangle())
.onTapGesture {
NotificationCenter.default.post(name: .select_quote, object: event)
}
} else {
ProgressView()
.progressViewStyle(.circular)
}
}
}
}
/*
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView()
}
}
*/