parseTypingStart method

TypingStartEvent parseTypingStart(
  1. Map<String, Object?> raw
)

Parse a TypingStartEvent from raw.

Implementation

TypingStartEvent parseTypingStart(Map<String, Object?> raw) {
  var guildId = maybeParse(raw['guild_id'], Snowflake.parse);
  final userId = Snowflake.parse(raw['user_id']!);

  return TypingStartEvent(
    gateway: this,
    channelId: Snowflake.parse(raw['channel_id']!),
    guildId: guildId,
    userId: userId,
    timestamp: DateTime.fromMillisecondsSinceEpoch((raw['timestamp'] as int) * Duration.millisecondsPerSecond),
    // 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)),
  );
}