Prepares to create follow packs

This commit is contained in:
Vitor Pamplona
2025-11-12 12:33:10 -05:00
parent 8554257329
commit 90330165d2
3 changed files with 26 additions and 4 deletions
@@ -161,7 +161,7 @@ class FollowListEvent(
) { ) {
dTag(dTag) dTag(dTag)
alt(ALT) alt(ALT)
name(name) title(name)
people(people) people(people)
initializer() initializer()
@@ -20,10 +20,32 @@
*/ */
package com.vitorpamplona.quartz.nip51Lists.followList package com.vitorpamplona.quartz.nip51Lists.followList
import com.vitorpamplona.quartz.nip01Core.core.HexKey
import com.vitorpamplona.quartz.nip01Core.core.TagArrayBuilder import com.vitorpamplona.quartz.nip01Core.core.TagArrayBuilder
import com.vitorpamplona.quartz.nip01Core.relay.normalizer.NormalizedRelayUrl
import com.vitorpamplona.quartz.nip51Lists.muteList.tags.UserTag import com.vitorpamplona.quartz.nip51Lists.muteList.tags.UserTag
import com.vitorpamplona.quartz.nip51Lists.tags.NameTag import com.vitorpamplona.quartz.nip51Lists.tags.DescriptionTag
import com.vitorpamplona.quartz.nip51Lists.tags.ImageTag
import com.vitorpamplona.quartz.nip51Lists.tags.TitleTag
fun TagArrayBuilder<FollowListEvent>.name(name: String) = addUnique(NameTag.assemble(name)) fun TagArrayBuilder<FollowListEvent>.title(title: String) = addUnique(TitleTag.assemble(title))
fun TagArrayBuilder<FollowListEvent>.description(desc: String) = addUnique(DescriptionTag.assemble(desc))
fun TagArrayBuilder<FollowListEvent>.image(imageUrl: String) = addUnique(ImageTag.assemble(imageUrl))
fun TagArrayBuilder<FollowListEvent>.people(peoples: List<UserTag>) = addAll(peoples.map { it.toTagArray() }) fun TagArrayBuilder<FollowListEvent>.people(peoples: List<UserTag>) = addAll(peoples.map { it.toTagArray() })
fun TagArrayBuilder<FollowListEvent>.person(person: UserTag) = add(person.toTagArray())
fun TagArrayBuilder<FollowListEvent>.person(
pubkey: HexKey,
relayHint: NormalizedRelayUrl?,
) = add(UserTag.assemble(pubkey, relayHint))
fun TagArrayBuilder<FollowListEvent>.personFirst(
pubkey: HexKey,
relayHint: NormalizedRelayUrl?,
) = addFirst(UserTag.assemble(pubkey, relayHint))
fun TagArrayBuilder<FollowListEvent>.removePerson(pubkey: HexKey) = remove(UserTag.TAG_NAME, pubkey)
@@ -29,6 +29,6 @@ class ImageTag {
return tag[1] return tag[1]
} }
fun assemble(name: String) = arrayOf(TAG_NAME, name) fun assemble(url: String) = arrayOf(TAG_NAME, url)
} }
} }