import 'dart:convert'; import 'package:appwrite/models.dart'; import 'package:messaging_app/models/messages.dart'; class Chats { String ownerId; List members; String? type; List>? messages; Chats({ required this.ownerId, required this.members, required this.type, required this.messages, }); factory Chats.fromDocument(Document _document) { // // List> _messagesList = []; List _members = _document.data['members']; List _messages = _document.data['messages']; for (var i = 0; i < _members.length; i++) { List _msg = []; _msg = json.decode(_messages[i])[_members[i]]; _messagesList.add(_msg.map((_temp) { return Messages.fromMap(_temp); }).toList()); } return Chats( ownerId: _document.data['ownerId'], members: _members.map((_member) { return _member.toString(); }).toList(), type: _document.data['type'], messages: _messagesList, ); } }