copyWith method Null safety

CollectionData copyWith(
  1. {String? id,
  2. DateTime? created,
  3. DateTime? updated,
  4. CollectionType? type,
  5. String? name,
  6. bool? system,
  7. Value<String?> listRule = const Value.absent(),
  8. Value<String?> viewRule = const Value.absent(),
  9. Value<String?> createRule = const Value.absent(),
  10. Value<String?> updateRule = const Value.absent(),
  11. Value<String?> deleteRule = const Value.absent(),
  12. String? extra}
)

Implementation

CollectionData copyWith(
        {String? id,
        DateTime? created,
        DateTime? updated,
        CollectionType? type,
        String? name,
        bool? system,
        Value<String?> listRule = const Value.absent(),
        Value<String?> viewRule = const Value.absent(),
        Value<String?> createRule = const Value.absent(),
        Value<String?> updateRule = const Value.absent(),
        Value<String?> deleteRule = const Value.absent(),
        String? extra}) =>
    CollectionData(
      id: id ?? this.id,
      created: created ?? this.created,
      updated: updated ?? this.updated,
      type: type ?? this.type,
      name: name ?? this.name,
      system: system ?? this.system,
      listRule: listRule.present ? listRule.value : this.listRule,
      viewRule: viewRule.present ? viewRule.value : this.viewRule,
      createRule: createRule.present ? createRule.value : this.createRule,
      updateRule: updateRule.present ? updateRule.value : this.updateRule,
      deleteRule: deleteRule.present ? deleteRule.value : this.deleteRule,
      extra: extra ?? this.extra,
    );