nip10: simplify and fix reply-to-root bugs

This removes EventRefs alltogether and uses the form we use in Damus
Android.

This simplifies our ThreadReply logic and fixes a reply-to-root bug

Reported-by: NotBiebs <justinbieber@stemstr.app>
Changelog-Fixed: Fix thread bug where a quote isn't picked up as a reply
Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
William Casarin
2024-05-11 09:02:09 -07:00
parent 8dbdff7ff0
commit 52aefc8d64
17 changed files with 139 additions and 499 deletions

View File

@@ -169,7 +169,7 @@ class EventCache {
var ev = event
while true {
guard let direct_reply = ev.direct_replies(keypair),
guard let direct_reply = ev.direct_replies(),
let next_ev = lookup(direct_reply), next_ev != ev
else {
break
@@ -183,7 +183,7 @@ class EventCache {
}
func add_replies(ev: NostrEvent, keypair: Keypair) {
if let reply = ev.direct_replies(keypair) {
if let reply = ev.direct_replies() {
replies.add(id: reply, reply_id: ev.id)
}
}

View File

@@ -39,7 +39,7 @@ class ReplyCounter {
counted.insert(event.id)
if let reply = event.direct_replies(keypair) {
if let reply = event.direct_replies() {
if event.pubkey == our_pubkey {
self.our_replies[reply] = event
}