diff options
Diffstat (limited to 'lib/models/chat.dart')
-rw-r--r-- | lib/models/chat.dart | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/models/chat.dart b/lib/models/chat.dart new file mode 100644 index 0000000..6bd4752 --- /dev/null +++ b/lib/models/chat.dart @@ -0,0 +1,26 @@ +import 'package:linkchat/models/mensaje.dart'; + +class Chat { + final String id; + final String idUsuario1; + final String idUsuario2; + final List<Mensaje> mensajes; + + const Chat({ + required this.id, + required this.idUsuario1, + required this.idUsuario2, + required this.mensajes, + }); + + factory Chat.fromMap(Map<String, dynamic> map) { + return Chat( + id: map['id'], + idUsuario1: map['usuario1_id'], + idUsuario2: map['usuario2_id'], + mensajes: (map['mensajes'] as List<Map<String, dynamic>>) + .map((msj) => Mensaje.fromMap(msj)) + .toList(), + ); + } +} |