Fix m->d then d->m reactions not merging

This commit is contained in:
Cadence Ember 2025-06-16 22:50:34 +12:00
commit 2c15468c22
7 changed files with 17 additions and 7 deletions

View file

@ -25,7 +25,7 @@ async function addReaction(data) {
if (!parentID) return // Nothing can be done if the parent message was never bridged.
assert.equal(typeof parentID, "string")
const key = await emojiToKey.emojiToKey(data.emoji)
const key = await emojiToKey.emojiToKey(data.emoji, data.message_id)
const shortcode = key.startsWith("mxc://") ? `:${data.emoji.name}:` : undefined
const roomID = await createRoom.ensureRoom(data.channel_id)

View file

@ -43,7 +43,7 @@ async function removeSomeReactions(data) {
* @param {Ty.Event.Outer<Ty.Event.M_Reaction>[]} reactions
*/
async function removeReaction(data, reactions) {
const key = await emojiToKey.emojiToKey(data.emoji)
const key = await emojiToKey.emojiToKey(data.emoji, data.message_id)
return converter.removeReaction(data, reactions, key)
}
@ -52,7 +52,7 @@ async function removeReaction(data, reactions) {
* @param {Ty.Event.Outer<Ty.Event.M_Reaction>[]} reactions
*/
async function removeEmojiReaction(data, reactions) {
const key = await emojiToKey.emojiToKey(data.emoji)
const key = await emojiToKey.emojiToKey(data.emoji, data.message_id)
const discordPreferredEncoding = await emoji.encodeEmoji(key, undefined)
db.prepare("DELETE FROM reaction WHERE message_id = ? AND encoded_emoji = ?").run(data.message_id, discordPreferredEncoding)