From bcb3838e85de7790728c2e688fae3f4473b621ea Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Tue, 18 Feb 2025 12:04:39 -0500 Subject: [PATCH] Fixes isTagged for events --- .../com/vitorpamplona/quartz/nip01Core/tags/events/ETag.kt | 6 ++++++ .../quartz/nip01Core/tags/events/TagArrayExt.kt | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/ETag.kt b/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/ETag.kt index c4c0b08fd..0fb707e07 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/ETag.kt +++ b/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/ETag.kt @@ -60,6 +60,12 @@ data class ETag( @JvmStatic fun isTagged(tag: Array) = tag.size >= TAG_SIZE && tag[0] == TAG_NAME && tag[1].isNotEmpty() + @JvmStatic + fun isTagged( + tag: Array, + eventId: HexKey, + ) = tag.size >= TAG_SIZE && tag[0] == TAG_NAME && tag[1] == eventId + @JvmStatic fun parse(tag: Array): ETag? { if (tag.size < TAG_SIZE || tag[0] != TAG_NAME) return null diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/TagArrayExt.kt b/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/TagArrayExt.kt index b0ed27872..f4aa37bfd 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/TagArrayExt.kt +++ b/quartz/src/main/java/com/vitorpamplona/quartz/nip01Core/tags/events/TagArrayExt.kt @@ -22,6 +22,7 @@ package com.vitorpamplona.quartz.nip01Core.tags.events import com.vitorpamplona.quartz.nip01Core.HexKey import com.vitorpamplona.quartz.nip01Core.core.TagArray +import com.vitorpamplona.quartz.nip01Core.core.any import com.vitorpamplona.quartz.nip01Core.core.forEachTagged import com.vitorpamplona.quartz.nip01Core.core.isTagged import com.vitorpamplona.quartz.nip01Core.core.mapValueTagged @@ -36,4 +37,4 @@ fun TagArray.taggedEventIds() = this.mapNotNull(ETag::parseId) fun TagArray.firstTaggedEvent() = this.firstNotNullOfOrNull(ETag::parse) -fun TagArray.isTaggedEvent(idHex: String) = this.isTagged(ETag.TAG_NAME, idHex) +fun TagArray.isTaggedEvent(idHex: String) = this.any(ETag::isTagged, idHex)