build method
Implementation
@override
Map<String, dynamic> build() {
return {
if (_type != null) 'type': _type.value,
if (_name != null) 'name': _name,
if (_topic != null) 'topic': _topic,
if (_position != null) 'position': _position,
if (_bitrate != null) 'bitrate': _bitrate,
if (_userLimit != null) 'user_limit': _userLimit,
if (_rateLimitPerUser != null) 'rate_limit_per_user': _rateLimitPerUser!.inSeconds,
if (_permissionOverwrites.isNotEmpty)
'permission_overwrites': _permissionOverwrites
.map((element) => {
'id': element.id,
'type': element.type.value,
'allow': listToBitfield(element.allow),
'deny': listToBitfield(element.deny),
})
.toList(),
if (_parentId != null) 'parent_id': _parentId,
if (_nsfw != null) 'nsfw': _nsfw,
if (_rtcRegion != null) 'rtc_region': _rtcRegion,
if (_videoQualityMode != null) 'video_quality_mode': _videoQualityMode?.value,
if (_defaultAutoArchiveDuration != null)
'default_auto_archive_duration': _defaultAutoArchiveDuration!.inMinutes,
if (_defaultForumLayout != null) 'default_forum_layout': _defaultForumLayout,
if (_defaultReactionEmoji != null)
'default_reaction_emoji': {
'emoji_id': _defaultReactionEmoji?.id,
'emoji_name': _defaultReactionEmoji?.name,
},
if (_defaultSortOrder != null) 'default_sort_order': _defaultSortOrder,
if (_defaultThreadRateLimitPerUser != null)
'default_thread_rate_limit_per_user': _defaultThreadRateLimitPerUser!.inSeconds,
};
}