parse method
override
Parse the raw
data received from the API into an instance of the type of this manager.
Implementation
@override
Webhook parse(Map<String, Object?> raw) {
return Webhook(
id: Snowflake.parse(raw['id']!),
manager: this,
type: WebhookType.parse(raw['type'] as int),
guildId: maybeParse(raw['guild_id'], Snowflake.parse),
channelId: maybeParse(raw['channel_id'], Snowflake.parse),
user: maybeParse(raw['user'], client.users.parse),
name: raw['name'] as String?,
avatarHash: raw['avatar'] as String?,
token: raw['token'] as String?,
applicationId: maybeParse(raw['application_id'], Snowflake.parse),
sourceGuild: maybeParse(
raw['source_guild'],
(Map<String, Object?> raw) => PartialGuild(
id: Snowflake.parse(raw['id']!),
manager: client.guilds,
),
),
sourceChannel: maybeParse(
raw['source_channel'],
(Map<String, Object?> raw) => PartialChannel(
id: Snowflake.parse(raw['id']!),
manager: client.channels,
),
),
url: maybeParse(raw['url'], Uri.parse),
);
}