batch delete emoji reacts

pull/638/head
ryanzhao 2 years ago
parent f5572ff6b3
commit d4bca094a1

@ -844,7 +844,9 @@ extension ConversationVC : InputViewDelegate, MessageCellDelegate, ContextMenuAc
}
func cancelAllReact(reactMessages: [ReactMessage]) {
guard let groupThread = thread as? TSGroupThread, groupThread.isOpenGroup else { return }
guard let threadId = groupThread.uniqueId, let openGroupV2 = Storage.shared.getV2OpenGroup(for: threadId) else { return }
OpenGroupAPIV2.batchDeleteMessages(for: openGroupV2.room, on: openGroupV2.server, messageIds: reactMessages.compactMap{ $0.messageId })
}
private func react(_ viewItem: ConversationViewItem, with emoji: String, cancel: Bool) {

@ -368,6 +368,12 @@ public final class OpenGroupAPIV2 : NSObject {
}
}
public static func batchDeleteMessages(for room: String, on server: String, messageIds: [String]) -> Promise<Void> {
let json: JSON = ["ids": messageIds.compactMap{ Int($0) }]
let request = Request(verb: .post, room: room, server: server, endpoint: "delete_messages", parameters: json)
return send(request).map(on: OpenGroupAPIV2.workQueue) { _ in }
}
private static func parseDeletions(from rawDeletions: [JSON], for room: String, on server: String) -> Promise<[Deletion]> {
let storage = SNMessagingKitConfiguration.shared.storage
let deletions = rawDeletions.compactMap { Deletion.from($0) }

Loading…
Cancel
Save