From 96e26cfb7de4fdc807fcd0bd64d7c1c16486d36b Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Fri, 25 Jul 2025 12:39:55 -0400 Subject: [PATCH] Adds a parser and assembler for NIP47 --- .../quartz/nip47WalletConnect/Nip47WalletConnect.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/nip47WalletConnect/Nip47WalletConnect.kt b/quartz/src/main/java/com/vitorpamplona/quartz/nip47WalletConnect/Nip47WalletConnect.kt index 22c696dac1..c3cf1add28 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/nip47WalletConnect/Nip47WalletConnect.kt +++ b/quartz/src/main/java/com/vitorpamplona/quartz/nip47WalletConnect/Nip47WalletConnect.kt @@ -21,8 +21,10 @@ package com.vitorpamplona.quartz.nip47WalletConnect import androidx.core.net.toUri +import com.fasterxml.jackson.module.kotlin.readValue import com.vitorpamplona.quartz.nip01Core.core.HexKey import com.vitorpamplona.quartz.nip01Core.core.toHexKey +import com.vitorpamplona.quartz.nip01Core.jackson.JsonMapper import com.vitorpamplona.quartz.nip01Core.relay.normalizer.NormalizedRelayUrl import com.vitorpamplona.quartz.nip01Core.relay.normalizer.RelayUrlNormalizer import com.vitorpamplona.quartz.nip19Bech32.decodePublicKey @@ -71,6 +73,12 @@ class Nip47WalletConnect { secret, ) } + + companion object { + fun parser(json: String) = JsonMapper.mapper.readValue(json) + + fun serializer(value: Nip47URI) = JsonMapper.mapper.writeValueAsString(value) + } } data class Nip47URINorm(