Message.fromJson constructor

Message.fromJson(
  1. Map<String, dynamic> map
)

Implementation

factory Message.fromJson(Map<String, dynamic> map) {
  return Message(
    id: DbQueryField.tryParseObjectId(map['_id']),
    bsid: DbQueryField.tryParseObjectId(map['_bsid']),
    time: DbQueryField.tryParseInt(map['_time']),
    extra: map['_extra'] is Map ? DbJsonWraper.fromJson(map['_extra']) : map['_extra'],
    trans: (map['_trans'] as List?)?.map((v) => DbQueryField.parseObjectId(v)).toList(),
    sid: DbQueryField.tryParseObjectId(map['sid']),
    uid: DbQueryField.tryParseObjectId(map['uid']),
    from: DbQueryField.tryParseInt(map['from']),
    type: DbQueryField.tryParseInt(map['type']),
    title: DbQueryField.tryParseString(map['title']),
    body: DbQueryField.tryParseString(map['body']),
    short: DbQueryField.tryParseString(map['short']),
    mediaTimeS: DbQueryField.tryParseInt(map['mediaTimeS']),
    mediaTimeE: DbQueryField.tryParseInt(map['mediaTimeE']),
    mediaGoing: DbQueryField.tryParseBool(map['mediaGoing']),
    mediaJoined: (map['mediaJoined'] as List?)?.map((v) => DbQueryField.parseObjectId(v)).toList(),
    rmbfenTotal: DbQueryField.tryParseInt(map['rmbfenTotal']),
    rmbfenCount: DbQueryField.tryParseInt(map['rmbfenCount']),
    rmbfenEvery: (map['rmbfenEvery'] as List?)?.map((v) => DbQueryField.parseInt(v)).toList(),
    rmbfenLuckly: (map['rmbfenLuckly'] as List?)?.map((v) => DbQueryField.parseObjectId(v)).toList(),
    rmbfenPending: (map['rmbfenPending'] as List?)?.map((v) => DbQueryField.parseObjectId(v)).toList(),
    rmbfenUpdate: DbQueryField.tryParseInt(map['rmbfenUpdate']),
    rmbfenFinished: DbQueryField.tryParseBool(map['rmbfenFinished']),
    readpackNotice: (map['readpackNotice'] as List?)?.map((v) => DbQueryField.parseObjectId(v)).toList(),
    shareCardId: DbQueryField.tryParseObjectId(map['shareCardId']),
    shareIconUrl: DbQueryField.tryParseString(map['shareIconUrl']),
    shareHeadUrl: (map['shareHeadUrl'] as List?)?.map((v) => DbQueryField.parseString(v)).toList(),
    shareLinkUrl: DbQueryField.tryParseString(map['shareLinkUrl']),
    shareLocation: map['shareLocation'] is Map ? Location.fromJson(map['shareLocation']) : map['shareLocation'],
    customType: DbQueryField.tryParseInt(map['customType']),
    revoked: DbQueryField.tryParseBool(map['revoked']),
  );
}