Browse Source

Make NIP-05 Domain Tappable

Closes: #275
Changelog-Added: Make purple badges on profile page tappable
translations_damus-localizations-en-us-xcloc-localized-contents-en-us-xliff--master_es_419
Joel Klabo 2 years ago
committed by William Casarin
parent
commit
43cc3b6b6b
  1. 4
      damus/Util/NIP05.swift
  2. 7
      damus/Views/ProfileName.swift

4
damus/Util/NIP05.swift

@ -15,6 +15,10 @@ struct NIP05 {
URL(string: "https://\(host)/.well-known/nostr.json?name=\(username)")
}
var siteUrl: URL? {
URL(string: "https://\(host)")
}
static func parse(_ nip05: String) -> NIP05? {
let parts = nip05.split(separator: "@")
guard parts.count == 2 else {

7
damus/Views/ProfileName.swift

@ -34,6 +34,8 @@ struct ProfileName: View {
@State var display_name: String?
@State var nip05: NIP05?
@Environment(\.openURL) var openURL
init(pubkey: String, profile: Profile?, damus: DamusState, show_friend_confirmed: Bool) {
self.pubkey = pubkey
self.profile = profile
@ -72,6 +74,11 @@ struct ProfileName: View {
.foregroundColor(nip05_color)
Text(nip05.host)
.foregroundColor(nip05_color)
.onTapGesture {
if let nip5url = nip05.siteUrl {
openURL(nip5url)
}
}
}
if let friend = friend_icon, current_nip05 == nil {
Image(systemName: friend)

Loading…
Cancel
Save