23 lines
729 B
Dart
23 lines
729 B
Dart
|
import 'package:mylab/data/dtos/car_dto.dart';
|
||
|
import 'package:mylab/domain/models/car.dart';
|
||
|
|
||
|
const _imagePlaceholder =
|
||
|
'https://upload.wikimedia.org/wikipedia/en/archive/b/b1/20210811082420%21Portrait_placeholder.png';
|
||
|
|
||
|
extension carDataDtoToModel on CarDataDto {
|
||
|
CarData toDomain() => CarData(
|
||
|
attributes?.name ?? 'UNKNOWN',
|
||
|
imageUrl: attributes?.image ?? _imagePlaceholder,
|
||
|
descriptionCar: _makeDescriptionText(attributes?.count, attributes?.price),
|
||
|
);
|
||
|
|
||
|
String _makeDescriptionText(String? count, String? price) {
|
||
|
return count != null && price != null
|
||
|
? '$count - $price'
|
||
|
: count != null
|
||
|
? 'count: $count'
|
||
|
: price != null
|
||
|
? 'price: $price'
|
||
|
: '';
|
||
|
}
|
||
|
}
|