@override Map<String, dynamic> toMap() { return { 'barcodeId': barcode.identifier, 'status': status.toString(), if (_icon != null) 'icon': _icon.toMap(), }; }