CubeDialog.fromJson constructor

CubeDialog.fromJson(
  1. Map<String, dynamic> json
)

Implementation

CubeDialog.fromJson(Map<String, dynamic> json) : super.fromJson(json) {
  dialogId = json['_id'];
  lastMessage = json['last_message'];
  lastMessageDateSent = json['last_message_date_sent'];
  lastMessageUserId = json['last_message_user_id'];
  photo = json['photo'];
  userId = json['user_id'];
  roomJid = json['xmpp_room_jid'];
  unreadMessageCount = json['unread_messages_count'];
  name = json['name'];
  type = json['type'];
  description = json['description'];
  occupantsCount = json['occupants_count'];

  var occupantsIdsRaw = json['occupants_ids'];
  if (occupantsIdsRaw != null) {
    occupantsIds = List.of(occupantsIdsRaw).map((id) => id as int).toList();
  }

  var pinnedMessagesIdsRaw = json['pinned_messages_ids'];
  if (pinnedMessagesIdsRaw != null) {
    pinnedMessagesIds =
        List.of(pinnedMessagesIdsRaw).map((id) => id.toString()).toList();
  }

  var adminsIdsRaw = json['admins_ids'];
  if (adminsIdsRaw != null) {
    adminsIds = List.of(adminsIdsRaw).map((id) => id as int).toList();
  }

  var customDataRaw = json['data'];
  if (customDataRaw != null) {
    customData = CubeDialogCustomData.fromJson(customDataRaw);
  }

  var extensionsRaw = json['extensions'];
  if (extensionsRaw != null) {
    extensions = Map<String, String>.from(extensionsRaw);
  }

  var lastMessageStatus = json['last_message_status'];
  if (lastMessageStatus != null) {
    lastMessageState = lastMessageStatus.toString().toMessageState();
  }

  lastMessageId = json['last_message_id'];
  isEncrypted = json['is_e2ee'];
  isMuted = json['is_muted'];
}