feat: add KeyPackage Relays section to AllRelayListScreen
Adds a new section after DM Relays that lets users manage the relays advertised in their MIP-00 KeyPackage Relay List (kind 10051). Mirrors the existing DM Relay pattern: state in KeyPackageRelayListState, backup in AccountSettings, and a ViewModel/view pair for the section. https://claude.ai/code/session_01B7kTUFAPvWarWd6fvQKNBy
This commit is contained in:
+15
@@ -69,6 +69,21 @@ class KeyPackageRelayListEvent(
|
||||
signer: NostrSigner,
|
||||
createdAt: Long = TimeUtils.now(),
|
||||
): KeyPackageRelayListEvent = signer.sign(createdAt, KIND, createTagArray(relays), "")
|
||||
|
||||
suspend fun updateRelayList(
|
||||
earlierVersion: KeyPackageRelayListEvent,
|
||||
relays: List<NormalizedRelayUrl>,
|
||||
signer: NostrSigner,
|
||||
createdAt: Long = TimeUtils.now(),
|
||||
): KeyPackageRelayListEvent {
|
||||
val tags =
|
||||
earlierVersion.tags
|
||||
.filter { it.isEmpty() || it[0] != RelayTag.TAG_NAME }
|
||||
.plus(relays.map { RelayTag.assemble(it) })
|
||||
.toTypedArray()
|
||||
|
||||
return signer.sign(createdAt, KIND, tags, earlierVersion.content)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user