copyWith method

MessageDto copyWith({
  1. String? id,
  2. int? seq,
  3. DateTime? readAt,
  4. String? content,
  5. Json? metadata,
  6. bool clearReadAt = false,
})

Copies with some fields replaced.

Implementation

MessageDto copyWith({
  String? id,
  int? seq,
  DateTime? readAt,
  String? content,
  Json? metadata,
  bool clearReadAt = false,
}) => MessageDto(
  id: id ?? this.id,
  conversationId: conversationId,
  seq: seq ?? this.seq,
  senderType: senderType,
  senderId: senderId,
  senderName: senderName,
  visibility: visibility,
  contentType: contentType,
  content: content ?? this.content,
  attachments: attachments,
  clientId: clientId,
  metadata: metadata ?? this.metadata,
  deliveryStatus: deliveryStatus,
  deliveryError: deliveryError,
  readAt: clearReadAt ? null : (readAt ?? this.readAt),
  createdAt: createdAt,
);