import 'package:pmu/data/dtos/cats_dto.dart'; import 'package:pmu/domain/models/card.dart'; import '../../domain/models/home.dart'; const _imagePlaceholder = 'https://upload.wikimedia.org/wikipedia/en/archive/b/b1/20210811082420%21Portrait_placeholder.png'; extension CatsDtoToModel on CatsDto { HomeData toDomain() => HomeData( data: data?.map((e) => e.toDomain()).toList(), nextPage: data != null && data!.isNotEmpty ? 20 : null, ); } extension CatDataDtoToModel on CatDataDto { CardData toDomain() => CardData( name ?? 'UNKNOWN', imageUrl: imageLink ?? _imagePlaceholder, descriptionText: _makeDescriptionText(origin, length), ); String _makeDescriptionText(String? origin, String? length) { return origin != null || length != null ? 'Origin: $origin \nLength: $length' : origin != null ? 'Origin: $origin' : length != null ? 'Length: $length' : ''; } }