committed by
Daniel D’Aquino
parent
28a06af534
commit
475940aa01
@@ -218,13 +218,13 @@ struct EventActionBar: View {
|
||||
}
|
||||
}
|
||||
|
||||
var event_relay_url_strings: [String] {
|
||||
var event_relay_url_strings: [RelayURL] {
|
||||
let relays = damus_state.nostrNetwork.relaysForEvent(event: event)
|
||||
if !relays.isEmpty {
|
||||
return relays.prefix(Constants.MAX_SHARE_RELAYS).map { $0.absoluteString }
|
||||
return relays.prefix(Constants.MAX_SHARE_RELAYS).map { $0 }
|
||||
}
|
||||
|
||||
return userProfile.getCappedRelayStrings()
|
||||
return userProfile.getCappedRelays()
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
|
||||
@@ -27,13 +27,13 @@ struct ShareAction: View {
|
||||
self._show_share = show_share
|
||||
}
|
||||
|
||||
var event_relay_url_strings: [String] {
|
||||
var event_relay_url_strings: [RelayURL] {
|
||||
let relays = userProfile.damus.nostrNetwork.relaysForEvent(event: event)
|
||||
if !relays.isEmpty {
|
||||
return relays.prefix(Constants.MAX_SHARE_RELAYS).map { $0.absoluteString }
|
||||
return relays.prefix(Constants.MAX_SHARE_RELAYS).map { $0 }
|
||||
}
|
||||
|
||||
return userProfile.getCappedRelayStrings()
|
||||
return userProfile.getCappedRelays()
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
@@ -49,7 +49,7 @@ struct ShareAction: View {
|
||||
|
||||
ShareActionButton(img: "link", text: NSLocalizedString("Copy Link", comment: "Button to copy link to note")) {
|
||||
dismiss()
|
||||
UIPasteboard.general.string = "https://damus.io/" + Bech32Object.encode(.nevent(NEvent(event: event, relays: event_relay_url_strings)))
|
||||
UIPasteboard.general.string = "https://damus.io/" + Bech32Object.encode(.nevent(NEvent(noteid: event.id, relays: userProfile.getCappedRelays())))
|
||||
}
|
||||
|
||||
let bookmarkImg = isBookmarked ? "bookmark.fill" : "bookmark"
|
||||
|
||||
@@ -64,13 +64,13 @@ struct MenuItems: View {
|
||||
self.profileModel = profileModel
|
||||
}
|
||||
|
||||
var event_relay_url_strings: [String] {
|
||||
var event_relay_url_strings: [RelayURL] {
|
||||
let relays = damus_state.nostrNetwork.relaysForEvent(event: event)
|
||||
if !relays.isEmpty {
|
||||
return relays.prefix(Constants.MAX_SHARE_RELAYS).map { $0.absoluteString }
|
||||
return relays.prefix(Constants.MAX_SHARE_RELAYS).map { $0 }
|
||||
}
|
||||
|
||||
return profileModel.getCappedRelayStrings()
|
||||
return profileModel.getCappedRelays()
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
@@ -82,7 +82,7 @@ struct MenuItems: View {
|
||||
}
|
||||
|
||||
Button {
|
||||
UIPasteboard.general.string = Bech32Object.encode(.nprofile(NProfile(author: target_pubkey, relays: profileModel.getCappedRelayStrings())))
|
||||
UIPasteboard.general.string = Bech32Object.encode(.nprofile(NProfile(author: target_pubkey, relays: profileModel.getCappedRelays())))
|
||||
} label: {
|
||||
Label(NSLocalizedString("Copy user public key", comment: "Context menu option for copying the ID of the user who created the note."), image: "user")
|
||||
}
|
||||
|
||||
@@ -920,7 +920,7 @@ func build_post(state: DamusState, post: NSAttributedString, action: PostAction,
|
||||
|
||||
case .quoting(let ev):
|
||||
let relay_urls = state.nostrNetwork.relaysForEvent(event: ev)
|
||||
let nevent = Bech32Object.encode(.nevent(NEvent(event: ev, relays: relay_urls.prefix(4).map { $0.absoluteString })))
|
||||
let nevent = Bech32Object.encode(.nevent(NEvent(event: ev, relays: relay_urls.prefix(4).map { $0 })))
|
||||
content.append("\n\nnostr:\(nevent)")
|
||||
|
||||
if let first_relay = relay_urls.first?.absoluteString {
|
||||
|
||||
@@ -219,8 +219,8 @@ class ProfileModel: ObservableObject, Equatable {
|
||||
damus.nostrNetwork.pool.unsubscribe(sub_id: findRelay_subid)
|
||||
}
|
||||
|
||||
func getCappedRelayStrings() -> [String] {
|
||||
return self.relay_urls?.prefix(Constants.MAX_SHARE_RELAYS).map { $0.absoluteString } ?? []
|
||||
func getCappedRelays() -> [RelayURL] {
|
||||
return relay_list?.relays.keys.prefix(Constants.MAX_SHARE_RELAYS).map { $0 } ?? []
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ struct NEvent : Equatable, Hashable {
|
||||
self.kind = kind
|
||||
}
|
||||
|
||||
init(event: NostrEvent, relays: [String]) {
|
||||
init(event: NostrEvent, relays: [RelayURL]) {
|
||||
self.init(noteid: event.id, relays: relays, author: event.pubkey, kind: event.kind)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -169,7 +169,8 @@ class Bech32ObjectTests: XCTestCase {
|
||||
}
|
||||
|
||||
func testTLVEncoding_NeventFromNostrEvent_ValidContent() throws {
|
||||
let relays = ["wss://relay.damus.io", "wss://relay.nostr.band"]
|
||||
let relay_strings = ["wss://relay.damus.io", "wss://relay.nostr.band"]
|
||||
let relays = relay_strings.map({ RelayURL($0)! })
|
||||
let nevent = NEvent(event: test_note, relays: relays)
|
||||
|
||||
XCTAssertEqual(nevent.noteid, test_note.id)
|
||||
|
||||
Reference in New Issue
Block a user