mirror of
https://github.com/nbd-wtf/go-nostr.git
synced 2025-03-17 13:22:56 +01:00
- 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
44 lines
785 B
Go
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
|
|
}
|