Fixes Addressable vs Replaceable bases
This commit is contained in:
@@ -25,7 +25,7 @@ import com.vitorpamplona.quartz.nip02FollowList.ContactListEvent
|
|||||||
|
|
||||||
typealias Kind = Int
|
typealias Kind = Int
|
||||||
|
|
||||||
fun Kind.isRegular() = this > 0 && this != ContactListEvent.KIND && this < 10_000
|
fun Kind.isRegular() = this > 0 && this < 10_000 && this != ContactListEvent.KIND
|
||||||
|
|
||||||
fun Kind.isEphemeral() = this >= 20_000 && this < 30_000
|
fun Kind.isEphemeral() = this >= 20_000 && this < 30_000
|
||||||
|
|
||||||
|
|||||||
+4
-2
@@ -21,11 +21,12 @@
|
|||||||
package com.vitorpamplona.quartz.nip01Core.metadata
|
package com.vitorpamplona.quartz.nip01Core.metadata
|
||||||
|
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.Address
|
import com.vitorpamplona.quartz.nip01Core.core.Address
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.BaseAddressableEvent
|
import com.vitorpamplona.quartz.nip01Core.core.BaseReplaceableEvent
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.JsonMapper
|
import com.vitorpamplona.quartz.nip01Core.core.JsonMapper
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.TagArrayBuilder
|
import com.vitorpamplona.quartz.nip01Core.core.TagArrayBuilder
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.builder
|
import com.vitorpamplona.quartz.nip01Core.core.builder
|
||||||
|
import com.vitorpamplona.quartz.nip01Core.metadata.MetadataEvent.Companion.updateOrDeleteTagNames
|
||||||
import com.vitorpamplona.quartz.nip01Core.metadata.tags.AboutTag
|
import com.vitorpamplona.quartz.nip01Core.metadata.tags.AboutTag
|
||||||
import com.vitorpamplona.quartz.nip01Core.metadata.tags.BannerTag
|
import com.vitorpamplona.quartz.nip01Core.metadata.tags.BannerTag
|
||||||
import com.vitorpamplona.quartz.nip01Core.metadata.tags.DisplayNameTag
|
import com.vitorpamplona.quartz.nip01Core.metadata.tags.DisplayNameTag
|
||||||
@@ -53,6 +54,7 @@ import com.vitorpamplona.quartz.utils.text
|
|||||||
import kotlinx.coroutines.CancellationException
|
import kotlinx.coroutines.CancellationException
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
import kotlinx.serialization.json.JsonElement
|
import kotlinx.serialization.json.JsonElement
|
||||||
|
import kotlinx.serialization.json.JsonNull.content
|
||||||
import kotlinx.serialization.json.JsonObject
|
import kotlinx.serialization.json.JsonObject
|
||||||
import kotlinx.serialization.json.JsonPrimitive
|
import kotlinx.serialization.json.JsonPrimitive
|
||||||
|
|
||||||
@@ -63,7 +65,7 @@ class MetadataEvent(
|
|||||||
tags: Array<Array<String>>,
|
tags: Array<Array<String>>,
|
||||||
content: String,
|
content: String,
|
||||||
sig: HexKey,
|
sig: HexKey,
|
||||||
) : BaseAddressableEvent(id, pubKey, createdAt, KIND, tags, content, sig) {
|
) : BaseReplaceableEvent(id, pubKey, createdAt, KIND, tags, content, sig) {
|
||||||
override fun isContentEncoded() = true
|
override fun isContentEncoded() = true
|
||||||
|
|
||||||
fun contactMetadataJson() =
|
fun contactMetadataJson() =
|
||||||
|
|||||||
+3
-2
@@ -22,7 +22,7 @@ package com.vitorpamplona.quartz.nip02FollowList
|
|||||||
|
|
||||||
import androidx.compose.runtime.Stable
|
import androidx.compose.runtime.Stable
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.Address
|
import com.vitorpamplona.quartz.nip01Core.core.Address
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.BaseAddressableEvent
|
import com.vitorpamplona.quartz.nip01Core.core.BaseReplaceableEvent
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
import com.vitorpamplona.quartz.nip01Core.core.HexKey
|
||||||
import com.vitorpamplona.quartz.nip01Core.core.any
|
import com.vitorpamplona.quartz.nip01Core.core.any
|
||||||
import com.vitorpamplona.quartz.nip01Core.hints.PubKeyHintProvider
|
import com.vitorpamplona.quartz.nip01Core.hints.PubKeyHintProvider
|
||||||
@@ -35,6 +35,7 @@ import com.vitorpamplona.quartz.nip01Core.tags.people.isTaggedUser
|
|||||||
import com.vitorpamplona.quartz.nip02FollowList.tags.ContactTag
|
import com.vitorpamplona.quartz.nip02FollowList.tags.ContactTag
|
||||||
import com.vitorpamplona.quartz.nip31Alts.AltTag
|
import com.vitorpamplona.quartz.nip31Alts.AltTag
|
||||||
import com.vitorpamplona.quartz.utils.TimeUtils
|
import com.vitorpamplona.quartz.utils.TimeUtils
|
||||||
|
import kotlinx.serialization.json.JsonNull.content
|
||||||
|
|
||||||
@Stable
|
@Stable
|
||||||
class ContactListEvent(
|
class ContactListEvent(
|
||||||
@@ -44,7 +45,7 @@ class ContactListEvent(
|
|||||||
tags: Array<Array<String>>,
|
tags: Array<Array<String>>,
|
||||||
content: String,
|
content: String,
|
||||||
sig: HexKey,
|
sig: HexKey,
|
||||||
) : BaseAddressableEvent(id, pubKey, createdAt, KIND, tags, content, sig),
|
) : BaseReplaceableEvent(id, pubKey, createdAt, KIND, tags, content, sig),
|
||||||
PubKeyHintProvider {
|
PubKeyHintProvider {
|
||||||
override fun pubKeyHints() = tags.mapNotNull(ContactTag::parseAsHint)
|
override fun pubKeyHints() = tags.mapNotNull(ContactTag::parseAsHint)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user