convertFromPublic method

Map<String, dynamic>? convertFromPublic(
  1. dynamic item, {
  2. bool createUid = false,
})

Convert object value from public to internal format.

  • item an object of type T in public format to convert. Returns converted Map in internal format for MongoDB.

Implementation

Map<String, dynamic>? convertFromPublic(dynamic item,
    {bool createUid = false}) {
  if (item != null) {
    // var jsonMap = item.toJson();
    var jsonMap = json.decode(json.encode(item));
    // Assign unique id, if need
    if (createUid && jsonMap['id'] == null) {
      jsonMap['id'] = IdGenerator.nextLong();
    }

    if (jsonMap['id'] != null) {
      jsonMap['_id'] = jsonMap['_id'] ?? jsonMap['id'];
      jsonMap.remove('id');
    }
    return jsonMap;
  }
  return null; //<String, dynamic>{};
}