Fix relay compile issue

Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
William Casarin
2024-04-04 20:47:25 +01:00
committed by Daniel D’Aquino
parent 28a06af534
commit 475940aa01
7 changed files with 17 additions and 16 deletions

View File

@@ -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 {

View File

@@ -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"

View File

@@ -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")
}

View File

@@ -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 {

View File

@@ -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 } ?? []
}
}

View File

@@ -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)
}
}

View File

@@ -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)