mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-15 19:08:17 +00:00
20 lines
952 B
TypeScript
20 lines
952 B
TypeScript
import { Bot } from "../../bot.ts";
|
|
import type { DiscordGatewayPayload } from "../../types/gateway/gatewayPayload.ts";
|
|
import type { MessageReactionAdd } from "../../types/messages/messageReactionAdd.ts";
|
|
import { SnakeCasedPropertiesDeep } from "../../types/util.ts";
|
|
|
|
export async function handleMessageReactionAdd(bot: Bot, data: DiscordGatewayPayload) {
|
|
const payload = data.d as SnakeCasedPropertiesDeep<MessageReactionAdd>;
|
|
|
|
const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined;
|
|
const userId = bot.transformers.snowflake(payload.user_id);
|
|
bot.events.reactionAdd(bot, {
|
|
userId,
|
|
channelId: bot.transformers.snowflake(payload.channel_id),
|
|
messageId: bot.transformers.snowflake(payload.message_id),
|
|
guildId,
|
|
member: payload.member && guildId ? bot.transformers.member(bot, payload.member, guildId, userId) : undefined,
|
|
emoji: bot.transformers.emoji(bot, payload.emoji),
|
|
});
|
|
}
|