29 lines
605 B
Dart
29 lines
605 B
Dart
/// Message model representing a chat message
|
|
class Message {
|
|
final String id;
|
|
final String content;
|
|
final bool isUser;
|
|
final DateTime timestamp;
|
|
|
|
Message({
|
|
required this.id,
|
|
required this.content,
|
|
required this.isUser,
|
|
DateTime? timestamp,
|
|
}) : timestamp = timestamp ?? DateTime.now();
|
|
|
|
Message copyWith({
|
|
String? id,
|
|
String? content,
|
|
bool? isUser,
|
|
DateTime? timestamp,
|
|
}) {
|
|
return Message(
|
|
id: id ?? this.id,
|
|
content: content ?? this.content,
|
|
isUser: isUser ?? this.isUser,
|
|
timestamp: timestamp ?? this.timestamp,
|
|
);
|
|
}
|
|
}
|