ChatModal.fromJson constructor

ChatModal.fromJson(
  1. Map data,
  2. String id, {
  3. bool isCachedTemp = false,
})

Implementation

factory ChatModal.fromJson(Map data, String id, {bool isCachedTemp = false}) {
  customPrint('the chat message is $data');
  Timestamp? t;
  if(data['createdAt']!=null && data['createdAt'] is String)
  {
    DateTime d = DateTime.parse(data['createdAt']);
    t= Timestamp.fromDate(d);
  }
  return ChatModal(
    id: id,
    from: data[ApiKeys.from],
    message: data[ApiKeys.message],
    messageType: data[ApiKeys.messageType],
    createdAt: data[ApiKeys.createdAt]!=null && data[ApiKeys.createdAt] is String?t:data[ApiKeys.createdAt],
    durationInSeconds: data[ApiKeys.durationInSeconds],
    thumbnail: data[ApiKeys.thumbnail],
    // likedBy: data[ApiKeys.likedBy'] ?? [],
    fromServer: true,
    isCached: isCachedTemp,
    audioPlayer: data[ApiKeys.messageType] == MessageType.voiceMessage
        ? AudioPlayer()
        : null,
    deliveredTo: data[ApiKeys.deliveredTo] ?? [],
    readBy: data[ApiKeys.readBy] ?? [],
    reactions: data[ApiKeys.reactions] ?? {},

  );
}