Moves reports to common
Adds support for additional information
This commit is contained in:
@@ -33,6 +33,7 @@ import com.vitorpamplona.amethyst.commons.model.nip28PublicChats.PublicChatChann
|
||||
import com.vitorpamplona.amethyst.commons.model.nip28PublicChats.PublicChatListDecryptionCache
|
||||
import com.vitorpamplona.amethyst.commons.model.nip28PublicChats.PublicChatListState
|
||||
import com.vitorpamplona.amethyst.commons.model.nip38UserStatuses.UserStatusAction
|
||||
import com.vitorpamplona.amethyst.commons.model.nip56Reports.ReportAction
|
||||
import com.vitorpamplona.amethyst.commons.richtext.RichTextParser
|
||||
import com.vitorpamplona.amethyst.logTime
|
||||
import com.vitorpamplona.amethyst.model.edits.PrivateStorageRelayListDecryptionCache
|
||||
@@ -77,7 +78,6 @@ import com.vitorpamplona.amethyst.model.nip51Lists.searchRelays.SearchRelayListD
|
||||
import com.vitorpamplona.amethyst.model.nip51Lists.searchRelays.SearchRelayListState
|
||||
import com.vitorpamplona.amethyst.model.nip51Lists.trustedRelays.TrustedRelayListDecryptionCache
|
||||
import com.vitorpamplona.amethyst.model.nip51Lists.trustedRelays.TrustedRelayListState
|
||||
import com.vitorpamplona.amethyst.model.nip56Reports.ReportAction
|
||||
import com.vitorpamplona.amethyst.model.nip65RelayList.Nip65RelayListState
|
||||
import com.vitorpamplona.amethyst.model.nip72Communities.CommunityListDecryptionCache
|
||||
import com.vitorpamplona.amethyst.model.nip72Communities.CommunityListState
|
||||
@@ -571,7 +571,8 @@ class Account(
|
||||
suspend fun report(
|
||||
user: User,
|
||||
type: ReportType,
|
||||
) = sendMyPublicAndPrivateOutbox(ReportAction.report(user, type, userProfile(), signer))
|
||||
content: String = "",
|
||||
) = sendMyPublicAndPrivateOutbox(ReportAction.report(user, type, content, userProfile(), signer))
|
||||
|
||||
suspend fun delete(note: Note) = delete(listOf(note))
|
||||
|
||||
|
||||
+2
-1
@@ -701,9 +701,10 @@ class AccountViewModel(
|
||||
fun report(
|
||||
user: User,
|
||||
type: ReportType,
|
||||
content: String = "",
|
||||
) {
|
||||
launchSigner {
|
||||
account.report(user, type)
|
||||
account.report(user, type, content)
|
||||
account.hideUser(user.pubkeyHex)
|
||||
}
|
||||
}
|
||||
|
||||
+6
-5
@@ -18,10 +18,10 @@
|
||||
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
package com.vitorpamplona.amethyst.model.nip56Reports
|
||||
package com.vitorpamplona.amethyst.commons.model.nip56Reports
|
||||
|
||||
import com.vitorpamplona.amethyst.model.Note
|
||||
import com.vitorpamplona.amethyst.model.User
|
||||
import com.vitorpamplona.amethyst.commons.model.Note
|
||||
import com.vitorpamplona.amethyst.commons.model.User
|
||||
import com.vitorpamplona.quartz.nip01Core.signers.NostrSigner
|
||||
import com.vitorpamplona.quartz.nip56Reports.ReportEvent
|
||||
import com.vitorpamplona.quartz.nip56Reports.ReportType
|
||||
@@ -31,6 +31,7 @@ class ReportAction {
|
||||
suspend fun report(
|
||||
user: User,
|
||||
type: ReportType,
|
||||
content: String = "",
|
||||
by: User,
|
||||
signer: NostrSigner,
|
||||
): ReportEvent? {
|
||||
@@ -39,7 +40,7 @@ class ReportAction {
|
||||
return null
|
||||
}
|
||||
|
||||
val template = ReportEvent.build(user.pubkeyHex, type)
|
||||
val template = ReportEvent.build(user.pubkeyHex, type, content)
|
||||
|
||||
return signer.sign(template)
|
||||
}
|
||||
@@ -57,7 +58,7 @@ class ReportAction {
|
||||
}
|
||||
|
||||
return note.event?.let {
|
||||
signer.sign(ReportEvent.build(it, type))
|
||||
signer.sign(ReportEvent.build(it, type, content))
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -77,8 +77,9 @@ class ReportEvent(
|
||||
fun build(
|
||||
reportedPost: Event,
|
||||
type: ReportType,
|
||||
comment: String = "",
|
||||
createdAt: Long = TimeUtils.now(),
|
||||
) = eventTemplate(KIND, "", createdAt) {
|
||||
) = eventTemplate(KIND, comment, createdAt) {
|
||||
alt(ALT_PREFIX + type.code)
|
||||
event(reportedPost.id, type)
|
||||
user(reportedPost.pubKey, type)
|
||||
@@ -91,8 +92,9 @@ class ReportEvent(
|
||||
fun build(
|
||||
reportedUser: HexKey,
|
||||
type: ReportType,
|
||||
comment: String = "",
|
||||
createdAt: Long = TimeUtils.now(),
|
||||
) = eventTemplate(KIND, "", createdAt) {
|
||||
) = eventTemplate(KIND, comment, createdAt) {
|
||||
alt(ALT_PREFIX + type.code)
|
||||
user(reportedUser, type)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user