build method

  1. @override
Map<String, Object?> build()
override

Implementation

@override
Map<String, Object?> build() => {
      ...super.build(),
      if (topic != null) 'topic': topic,
      if (isNsfw != null) 'nsfw': isNsfw,
      if (!identical(rateLimitPerUser, sentinelDuration)) 'rate_limit_per_user': rateLimitPerUser?.inSeconds,
      if (!identical(parentId, sentinelSnowflake)) 'parent_id': parentId?.toString(),
      if (!identical(defaultAutoArchiveDuration, sentinelDuration)) 'default_auto_archive_duration': defaultAutoArchiveDuration?.inMinutes,
      if (flags != null) 'flags': flags!.value,
      if (tags != null) 'available_tags': tags!.map((e) => e.build()).toList(),
      if (!identical(defaultReaction, sentinelDefaultReaction))
        'default_reaction_emoji': defaultReaction == null
            ? null
            : {
                if (defaultReaction!.emojiId != null) 'emoji_id': defaultReaction!.emojiId!.toString(),
                if (defaultReaction!.emojiName != null) 'emoji_name': defaultReaction!.emojiName,
              },
      if (defaultThreadRateLimitPerUser != null) 'default_thread_rate_limit_per_user': defaultThreadRateLimitPerUser!.inSeconds,
      if (defaultSortOrder != null) 'default_sort_order': defaultSortOrder!.value,
      if (defaultLayout != null) 'default_forum_layout': defaultLayout!.value,
    };