parse method

  1. @override
ScheduledEvent parse(
  1. Map<String, Object?> raw
)
override

Parse the raw data received from the API into an instance of the type of this manager.

Implementation

@override
ScheduledEvent parse(Map<String, Object?> raw) {
  return ScheduledEvent(
    id: Snowflake.parse(raw['id']!),
    manager: this,
    guildId: Snowflake.parse(raw['guild_id']!),
    channelId: maybeParse(raw['channel_id'], Snowflake.parse),
    creatorId: maybeParse(raw['creator_id'], Snowflake.parse),
    name: raw['name'] as String,
    description: raw['description'] as String?,
    scheduledStartTime: DateTime.parse(raw['scheduled_start_time'] as String),
    scheduledEndTime: maybeParse(raw['scheduled_end_time'], DateTime.parse),
    privacyLevel: PrivacyLevel.parse(raw['privacy_level'] as int),
    status: EventStatus.parse(raw['status'] as int),
    type: ScheduledEntityType.parse(raw['entity_type'] as int),
    entityId: maybeParse(raw['entity_id'], Snowflake.parse),
    metadata: maybeParse(raw['entity_metadata'], parseEntityMetadata),
    creator: maybeParse(raw['creator'], client.users.parse),
    userCount: raw['user_count'] as int?,
    coverImageHash: raw['image'] as String?,
  );
}