copyWith method
Creates a copy of this Conversation with updated fields.
Implementation
Conversation copyWith({
String? conversationId,
String? conversationType,
AppEntity? conversationWith,
BaseMessage? lastMessage,
DateTime? updatedAt,
int? unreadMessageCount,
List<String>? tags,
int? unreadMentionsCount,
int? lastReadMessageId,
int? latestMessageId,
bool clearLastMessage = false,
}) {
return Conversation(
conversationId: conversationId ?? this.conversationId,
conversationType: conversationType ?? this.conversationType,
conversationWith: conversationWith ?? this.conversationWith,
lastMessage: clearLastMessage ? null : (lastMessage ?? this.lastMessage),
updatedAt: updatedAt ?? this.updatedAt,
unreadMessageCount: unreadMessageCount ?? this.unreadMessageCount,
tags: tags ?? this.tags,
unreadMentionsCount: unreadMentionsCount ?? this.unreadMentionsCount,
lastReadMessageId: lastReadMessageId ?? this.lastReadMessageId,
latestMessageId: latestMessageId ?? this.latestMessageId,
);
}