Make NIP-05 Domain Tappable
Closes: #275 Changelog-Added: Make purple badges on profile page tappable
This commit is contained in:
committed by
William Casarin
parent
b367382aae
commit
43cc3b6b6b
@@ -15,6 +15,10 @@ struct NIP05 {
|
|||||||
URL(string: "https://\(host)/.well-known/nostr.json?name=\(username)")
|
URL(string: "https://\(host)/.well-known/nostr.json?name=\(username)")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var siteUrl: URL? {
|
||||||
|
URL(string: "https://\(host)")
|
||||||
|
}
|
||||||
|
|
||||||
static func parse(_ nip05: String) -> NIP05? {
|
static func parse(_ nip05: String) -> NIP05? {
|
||||||
let parts = nip05.split(separator: "@")
|
let parts = nip05.split(separator: "@")
|
||||||
guard parts.count == 2 else {
|
guard parts.count == 2 else {
|
||||||
|
|||||||
@@ -34,6 +34,8 @@ struct ProfileName: View {
|
|||||||
@State var display_name: String?
|
@State var display_name: String?
|
||||||
@State var nip05: NIP05?
|
@State var nip05: NIP05?
|
||||||
|
|
||||||
|
@Environment(\.openURL) var openURL
|
||||||
|
|
||||||
init(pubkey: String, profile: Profile?, damus: DamusState, show_friend_confirmed: Bool) {
|
init(pubkey: String, profile: Profile?, damus: DamusState, show_friend_confirmed: Bool) {
|
||||||
self.pubkey = pubkey
|
self.pubkey = pubkey
|
||||||
self.profile = profile
|
self.profile = profile
|
||||||
@@ -72,6 +74,11 @@ struct ProfileName: View {
|
|||||||
.foregroundColor(nip05_color)
|
.foregroundColor(nip05_color)
|
||||||
Text(nip05.host)
|
Text(nip05.host)
|
||||||
.foregroundColor(nip05_color)
|
.foregroundColor(nip05_color)
|
||||||
|
.onTapGesture {
|
||||||
|
if let nip5url = nip05.siteUrl {
|
||||||
|
openURL(nip5url)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if let friend = friend_icon, current_nip05 == nil {
|
if let friend = friend_icon, current_nip05 == nil {
|
||||||
Image(systemName: friend)
|
Image(systemName: friend)
|
||||||
|
|||||||
Reference in New Issue
Block a user