toPositiveUpdateJson method
Implementation
Map<String, dynamic> toPositiveUpdateJson() {
final _extraData = extraData
..removeWhere((key, value) => value is! FieldValue);
final _data = <String, dynamic>{
'user_ids': userIds == null ? null : FieldValue.arrayUnion(userIds!),
'typing_user_ids':
typingUserIds == null ? null : FieldValue.arrayUnion(typingUserIds!),
'pinned_chat_user_ids': pinnedChatUserIds == null
? null
: FieldValue.arrayUnion(pinnedChatUserIds!),
..._extraData,
};
final _unreadMessages = unreadMessages ?? [];
_unreadMessages.forEach((element) {
if (element.uid != null) {
_data['z_${element.uid}_unread_messages'] =
FieldValue.increment(element.unreadMessagesCount);
}
});
return _data..removeWhere((key, value) => value == null);
}