import 'package:e_scan/backend/objectbox/entities/product/product_entity.dart'; import 'package:e_scan/utils/utils.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; part 'product_model.freezed.dart'; part 'product_model.g.dart'; @Freezed(toJson: true) abstract class ProductModel with _$ProductModel { factory ProductModel({ int? id, @JsonKey(fromJson: stringFromJson) String? barcode, @JsonKey(name: 'display_name', fromJson: stringFromJson) String? displayName, }) = _ProductModel; factory ProductModel.fromJson(Map json) => _$ProductModelFromJson(json); } extension ProductModelExt on ProductModel { ProductEntity get toEntity => ProductEntity(id: id ?? 0, displayName: displayName, barcode: barcode); }