go-nostr/nip22/nip22.go
fiatjaf 7e04bbb4b8 breaking pointer mess
- ExternalPointer (?)
- nip27, nip22 and nip10 functions to return pointers
- get rid of sdk/thread helpers that were just a thin layer over nip10 and nip22
2025-03-10 02:38:06 -03:00

44 lines
785 B
Go

package nip22
import "github.com/nbd-wtf/go-nostr"
func GetThreadRoot(tags nostr.Tags) nostr.Pointer {
for _, tag := range tags {
if len(tag) < 2 {
continue
}
switch tag[0] {
case "E":
ep, _ := nostr.EventPointerFromTag(tag)
return ep
case "A":
ep, _ := nostr.EntityPointerFromTag(tag)
return ep
case "I":
ep, _ := nostr.ExternalPointerFromTag(tag)
return ep
}
}
return nil
}
func GetImmediateParent(tags nostr.Tags) nostr.Pointer {
for _, tag := range tags {
if len(tag) < 2 {
continue
}
switch tag[0] {
case "e":
ep, _ := nostr.EventPointerFromTag(tag)
return ep
case "a":
ep, _ := nostr.EntityPointerFromTag(tag)
return ep
case "i":
ep, _ := nostr.ExternalPointerFromTag(tag)
return ep
}
}
return nil
}