CubeMessage.fromJson constructor
CubeMessage.fromJson(
- Map<String, dynamic> json
)
Implementation
CubeMessage.fromJson(Map<String, dynamic> json) {
for (String property in json.keys) {
switch (property) {
case '_id':
messageId = json[property];
break;
case 'chat_dialog_id':
dialogId = json[property];
break;
case 'message':
body = json[property];
break;
case 'date_sent':
dateSent = json[property];
break;
case 'sender_id':
senderId = json[property];
break;
case 'recipient_id':
recipientId = json[property];
break;
case 'views_count':
viewsCount = json[property];
break;
case 'read_ids':
readIds = List.of(json[property]).map((id) => id as int).toList();
break;
case 'delivered_ids':
deliveredIds =
List.of(json[property]).map((id) => id as int).toList();
break;
case 'attachments':
attachments = List.of(json[property])
.map((element) => CubeAttachment.fromJson(element))
.toList();
break;
case 'reactions':
var reactionsRaw = json[property];
reactions = reactionsRaw == null
? null
: CubeMessageReactions.fromJson(json[property]);
break;
case 'read':
isRead = json[property] == 1;
break;
case 'created_at':
createdAt = DateTime.parse(json[property]);
break;
case 'updated_at':
updatedAt = DateTime.parse(json[property]);
break;
default:
properties[property] = json[property].toString();
}
}
}