34 lines
690 B
Dart
34 lines
690 B
Dart
import 'dart:convert';
|
|
|
|
enum MessageType {
|
|
Text,
|
|
Image,
|
|
}
|
|
|
|
class Messages {
|
|
String message;
|
|
String senderId;
|
|
MessageType type;
|
|
DateTime timeStamp;
|
|
|
|
Messages({
|
|
required this.message,
|
|
required this.senderId,
|
|
required this.type,
|
|
required this.timeStamp,
|
|
});
|
|
|
|
factory Messages.fromData(String _message) {
|
|
var _messageType = json.decode(_message)['type'] == "text"
|
|
? MessageType.Text
|
|
: MessageType.Image;
|
|
|
|
return Messages(
|
|
message: json.decode(_message)['message'],
|
|
senderId: json.decode(_message)['senderId'],
|
|
type: _messageType,
|
|
timeStamp: DateTime.parse(json.decode(_message)['timeStamp'] ?? ""),
|
|
);
|
|
}
|
|
}
|