toJson method

  1. @override
Map<String, dynamic>? toJson([
  1. JsonEncoder? jsonEncoder
])
override

Encodes this EntityReferenceList instance to JSON.

Fields:

Implementation

@override
Map<String, dynamic>? toJson([JsonEncoder? jsonEncoder]) {
  if (isNull) {
    return null;
  }

  if (isEntitiesSet) {
    var entities = this.entities!;
    var ids = this.ids;

    var hasAnyEntity = entities.any((e) => e != null);
    var hasAnyID = ids != null && ids.any((id) => id != null);

    return <String, dynamic>{
      'EntityReferenceList': typeName,
      if (hasAnyID) 'ids': ids,
      if (hasAnyEntity) 'entities': entitiesToJson(jsonEncoder),
    };
  } else if (isIDsSet) {
    var ids = this.ids!;
    var hasAnyID = ids.any((id) => id != null);

    return <String, dynamic>{
      'EntityReferenceList': typeName,
      if (hasAnyID) 'ids': ids,
    };
  } else {
    return <String, dynamic>{
      'EntityReferenceList': typeName,
    };
  }
}