Merge pull request #2114 from greenart7c3/claude/implement-payment-targets-VzxXc

Add payment targets feature with NIP-A3 support
This commit is contained in:
Vitor Pamplona
2026-04-03 16:10:28 -04:00
committed by GitHub
17 changed files with 695 additions and 4 deletions
@@ -35,11 +35,10 @@ class PaymentTargetTag {
ensure(tag.has(1)) { return null }
ensure(tag[0] == TAG_NAME) { return null }
ensure(tag[1].isNotEmpty()) { return null }
ensure(tag.has(2)) { return null }
ensure(tag[2].isNotEmpty()) { return null }
val paymentTarget = PaymentTarget(tag[1], tag[2])
return paymentTarget
return PaymentTarget(tag[1], tag[2])
}
fun assemble(paymentTarget: PaymentTarget) = arrayOf(TAG_NAME, paymentTarget.type, paymentTarget.authority)
@@ -34,6 +34,8 @@ class PaymentTargetsEvent(
content: String,
sig: HexKey,
) : BaseReplaceableEvent(id, pubKey, createdAt, KIND, tags, content, sig) {
fun paymentTargets(): List<PaymentTarget> = tags.mapNotNull { PaymentTargetTag.parse(it) }
companion object {
const val KIND = 10133