mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2024-10-01 17:30:50 +00:00
Removes the Draft dependency for signer implementations
This commit is contained in:
parent
d3a0ae743a
commit
d3f54a7082
@ -88,7 +88,11 @@ class ChannelMessageEvent(
|
|||||||
arrayOf("alt", ALT),
|
arrayOf("alt", ALT),
|
||||||
)
|
)
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), message, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), message, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), message, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -107,7 +107,11 @@ class ChatMessageEvent(
|
|||||||
}
|
}
|
||||||
// tags.add(arrayOf("alt", alt))
|
// tags.add(arrayOf("alt", alt))
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -193,7 +193,11 @@ class ClassifiedsEvent(
|
|||||||
}
|
}
|
||||||
tags.add(arrayOf("alt", ALT))
|
tags.add(arrayOf("alt", ALT))
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), message, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), message, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), message, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -157,7 +157,11 @@ class GitReplyEvent(
|
|||||||
}
|
}
|
||||||
tags.add(arrayOf("alt", "a git issue reply"))
|
tags.add(arrayOf("alt", "a git issue reply"))
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -99,7 +99,11 @@ class LiveActivitiesChatMessageEvent(
|
|||||||
}
|
}
|
||||||
tags.add(arrayOf("alt", ALT))
|
tags.add(arrayOf("alt", ALT))
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), content, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), content, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), content, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -113,7 +113,11 @@ class PollNoteEvent(
|
|||||||
}
|
}
|
||||||
tags.add(arrayOf("alt", ALT))
|
tags.add(arrayOf("alt", ALT))
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -168,7 +168,11 @@ class PrivateDmEvent(
|
|||||||
tags.add(arrayOf("alt", ALT))
|
tags.add(arrayOf("alt", ALT))
|
||||||
|
|
||||||
signer.nip04Encrypt(message, recipientPubKey) { content ->
|
signer.nip04Encrypt(message, recipientPubKey) { content ->
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), content, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), content, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), content, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -125,7 +125,11 @@ class TextNoteEvent(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady, isDraft)
|
if (isDraft) {
|
||||||
|
signer.assembleRumor(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
} else {
|
||||||
|
signer.sign(createdAt, KIND, tags.toTypedArray(), msg, onReady)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,9 @@
|
|||||||
package com.vitorpamplona.quartz.signers
|
package com.vitorpamplona.quartz.signers
|
||||||
|
|
||||||
import com.vitorpamplona.quartz.encoders.HexKey
|
import com.vitorpamplona.quartz.encoders.HexKey
|
||||||
|
import com.vitorpamplona.quartz.encoders.toHexKey
|
||||||
import com.vitorpamplona.quartz.events.Event
|
import com.vitorpamplona.quartz.events.Event
|
||||||
|
import com.vitorpamplona.quartz.events.EventFactory
|
||||||
import com.vitorpamplona.quartz.events.LnZapPrivateEvent
|
import com.vitorpamplona.quartz.events.LnZapPrivateEvent
|
||||||
import com.vitorpamplona.quartz.events.LnZapRequestEvent
|
import com.vitorpamplona.quartz.events.LnZapRequestEvent
|
||||||
|
|
||||||
@ -32,7 +34,6 @@ abstract class NostrSigner(val pubKey: HexKey) {
|
|||||||
tags: Array<Array<String>>,
|
tags: Array<Array<String>>,
|
||||||
content: String,
|
content: String,
|
||||||
onReady: (T) -> Unit,
|
onReady: (T) -> Unit,
|
||||||
isDraft: Boolean = false,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
abstract fun nip04Encrypt(
|
abstract fun nip04Encrypt(
|
||||||
@ -63,4 +64,26 @@ abstract class NostrSigner(val pubKey: HexKey) {
|
|||||||
event: LnZapRequestEvent,
|
event: LnZapRequestEvent,
|
||||||
onReady: (LnZapPrivateEvent) -> Unit,
|
onReady: (LnZapPrivateEvent) -> Unit,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
fun <T : Event> assembleRumor(
|
||||||
|
createdAt: Long,
|
||||||
|
kind: Int,
|
||||||
|
tags: Array<Array<String>>,
|
||||||
|
content: String,
|
||||||
|
onReady: (T) -> Unit,
|
||||||
|
) {
|
||||||
|
val id = Event.generateId(pubKey, createdAt, kind, tags, content).toHexKey()
|
||||||
|
|
||||||
|
onReady(
|
||||||
|
EventFactory.create(
|
||||||
|
id = id,
|
||||||
|
pubKey = pubKey,
|
||||||
|
createdAt = createdAt,
|
||||||
|
kind = kind,
|
||||||
|
tags = tags,
|
||||||
|
content = content,
|
||||||
|
sig = "",
|
||||||
|
) as T,
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -40,13 +40,7 @@ class NostrSignerExternal(
|
|||||||
tags: Array<Array<String>>,
|
tags: Array<Array<String>>,
|
||||||
content: String,
|
content: String,
|
||||||
onReady: (T) -> Unit,
|
onReady: (T) -> Unit,
|
||||||
isDraft: Boolean,
|
|
||||||
) {
|
) {
|
||||||
if (isDraft) {
|
|
||||||
unsignedEvent(createdAt, kind, tags, content, onReady)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
val id = Event.generateId(pubKey, createdAt, kind, tags, content).toHexKey()
|
val id = Event.generateId(pubKey, createdAt, kind, tags, content).toHexKey()
|
||||||
|
|
||||||
val event =
|
val event =
|
||||||
@ -92,28 +86,6 @@ class NostrSignerExternal(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun <T : Event> unsignedEvent(
|
|
||||||
createdAt: Long,
|
|
||||||
kind: Int,
|
|
||||||
tags: Array<Array<String>>,
|
|
||||||
content: String,
|
|
||||||
onReady: (T) -> Unit,
|
|
||||||
) {
|
|
||||||
val id = Event.generateId(pubKey, createdAt, kind, tags, content)
|
|
||||||
|
|
||||||
onReady(
|
|
||||||
EventFactory.create(
|
|
||||||
id.toHexKey(),
|
|
||||||
pubKey,
|
|
||||||
createdAt,
|
|
||||||
kind,
|
|
||||||
tags,
|
|
||||||
content,
|
|
||||||
"",
|
|
||||||
) as T,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun nip04Encrypt(
|
override fun nip04Encrypt(
|
||||||
decryptedContent: String,
|
decryptedContent: String,
|
||||||
toPublicKey: HexKey,
|
toPublicKey: HexKey,
|
||||||
|
@ -38,15 +38,9 @@ class NostrSignerInternal(val keyPair: KeyPair) : NostrSigner(keyPair.pubKey.toH
|
|||||||
tags: Array<Array<String>>,
|
tags: Array<Array<String>>,
|
||||||
content: String,
|
content: String,
|
||||||
onReady: (T) -> Unit,
|
onReady: (T) -> Unit,
|
||||||
isDraft: Boolean,
|
|
||||||
) {
|
) {
|
||||||
if (keyPair.privKey == null) return
|
if (keyPair.privKey == null) return
|
||||||
|
|
||||||
if (isDraft) {
|
|
||||||
unsignedEvent(createdAt, kind, tags, content, onReady)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isUnsignedPrivateEvent(kind, tags)) {
|
if (isUnsignedPrivateEvent(kind, tags)) {
|
||||||
// this is a private zap
|
// this is a private zap
|
||||||
signPrivateZap(createdAt, kind, tags, content, onReady)
|
signPrivateZap(createdAt, kind, tags, content, onReady)
|
||||||
@ -88,30 +82,6 @@ class NostrSignerInternal(val keyPair: KeyPair) : NostrSigner(keyPair.pubKey.toH
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun <T : Event> unsignedEvent(
|
|
||||||
createdAt: Long,
|
|
||||||
kind: Int,
|
|
||||||
tags: Array<Array<String>>,
|
|
||||||
content: String,
|
|
||||||
onReady: (T) -> Unit,
|
|
||||||
) {
|
|
||||||
if (keyPair.privKey == null) return
|
|
||||||
|
|
||||||
val id = Event.generateId(pubKey, createdAt, kind, tags, content)
|
|
||||||
|
|
||||||
onReady(
|
|
||||||
EventFactory.create(
|
|
||||||
id.toHexKey(),
|
|
||||||
pubKey,
|
|
||||||
createdAt,
|
|
||||||
kind,
|
|
||||||
tags,
|
|
||||||
content,
|
|
||||||
"",
|
|
||||||
) as T,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun nip04Encrypt(
|
override fun nip04Encrypt(
|
||||||
decryptedContent: String,
|
decryptedContent: String,
|
||||||
toPublicKey: HexKey,
|
toPublicKey: HexKey,
|
||||||
|
Loading…
Reference in New Issue
Block a user