parseMessageReactionAdd method
Parse a MessageReactionAddEvent from raw
.
Implementation
MessageReactionAddEvent parseMessageReactionAdd(Map<String, Object?> raw) {
final guildId = maybeParse(raw['guild_id'], Snowflake.parse);
final userId = Snowflake.parse(raw['user_id']!);
return MessageReactionAddEvent(
gateway: this,
userId: userId,
channelId: Snowflake.parse(raw['channel_id']!),
messageId: Snowflake.parse(raw['message_id']!),
guildId: guildId,
// Don't use a tearoff so we don't evaluate `guildId!` unless member is set.
member: maybeParse(raw['member'], (Map<String, Object?> raw) => client.guilds[guildId!].members.parse(raw, userId: userId)),
emoji: client.guilds[Snowflake.zero].emojis.parse(raw['emoji'] as Map<String, Object?>),
messageAuthorId: maybeParse(raw['message_author_id'], Snowflake.parse),
);
}