toJsonFromFields method
Map<String, dynamic>
toJsonFromFields({
- O? obj,
- JsonEncoder? jsonEncoder,
- bool duplicatedEntitiesAsID = false,
- bool? autoResetEntityCache,
Returns a JSON Map from fieldsNames, calling getField for each one.
- If
obj
is not provided, uses object as instance.
Implementation
Map<String, dynamic> toJsonFromFields(
{O? obj,
JsonEncoder? jsonEncoder,
bool duplicatedEntitiesAsID = false,
bool? autoResetEntityCache}) {
obj ??= object;
if (obj == null) {
StateError("Null object!");
}
var entries = fieldsWhere((f) => f.isEntityField, obj).map((f) {
var val = f.get();
var name = f.jsonName;
return MapEntry(name, val);
});
var map = Map<String, dynamic>.fromEntries(entries);
jsonEncoder ??= JsonEncoder.defaultEncoder;
return jsonEncoder.toJson(map,
duplicatedEntitiesAsID: duplicatedEntitiesAsID,
autoResetEntityCache: autoResetEntityCache);
}