parseMessageCreate method
Parse a MessageCreateEvent from raw
.
Implementation
MessageCreateEvent parseMessageCreate(Map<String, Object?> raw) {
final guildId = maybeParse(raw['guild_id'], Snowflake.parse);
final message = MessageManager(
client.options.messageCacheConfig,
client,
channelId: Snowflake.parse(raw['channel_id']!),
).parse(raw);
return MessageCreateEvent(
gateway: this,
guildId: guildId,
member: maybeParse(
raw['member'],
(Map<String, Object?> raw) => PartialMember(
id: message.author.id,
manager: MemberManager(client.options.memberCacheConfig, client, guildId: guildId!),
),
),
mentions: parseMany(raw['mentions'] as List<Object?>, client.users.parse),
message: message,
);
}