parseMessageUpdate method
Parse a MessageUpdateEvent from raw
.
Implementation
MessageUpdateEvent parseMessageUpdate(Map<String, Object?> raw) {
final guildId = maybeParse(raw['guild_id'], Snowflake.parse);
final channelId = Snowflake.parse(raw['channel_id']!);
final id = Snowflake.parse(raw['id']!);
return MessageUpdateEvent(
gateway: this,
guildId: guildId,
member: maybeParse(
raw['member'],
(Map<String, Object?> _) => PartialMember(
id: Snowflake.parse((raw['author'] as Map<String, Object?>)['id']!),
manager: client.guilds[guildId!].members,
),
),
mentions: maybeParseMany(raw['mentions'], client.users.parse),
message: (client.channels[channelId] as PartialTextChannel).messages[id],
oldMessage: (client.channels[channelId] as PartialTextChannel).messages.cache[id],
);
}