import 'package:pmu_project/data/dtos/character_dto.dart'; import 'package:pmu_project/domain/models/card.dart'; import '../../domain/models/home.dart'; const _imagePlaceHolder = 'https://avatars.mds.yandex.net/i?id=754d78a3c15c744d93908f05c5ae9e85_l-4140023-images-thumbs&n=13'; extension CharactersDtoToModel on CharactersDto { HomeData toDomain() => HomeData( data: data?.map((e) => e.toDomain()).toList(), nextPage: meta?.pagination?.next, ); } extension CharacterDataDtoToModel on CharacterDataDto { CardData toDomain() => CardData( name ?? 'Unknown', _makeDescriptionText(), clan: 'clan: ${attributes != null ? (attributes?.clan ?? 'unknown') : 'unknown'}', imageUrl: '${(images != null && images!.length > 0) ? (images?[0] ?? _imagePlaceHolder) : _imagePlaceHolder}' ); String _makeDescriptionText() { return 'birthdate: ${attributes != null ? (attributes?.birthdate ?? 'unknown') : 'unknown'}\n' 'sex: ${attributes != null ? (attributes?.sex ?? 'unknown') : 'unknown'}\n' 'clan: ${attributes != null ? (attributes?.clan ?? 'unknown') : 'unknown'}'; } }