PIbd-33_Dyakonov_R_R_PMD/lib/data/mappers/characters_mapper.dart
2024-12-08 19:17:00 +04:00

27 lines
788 B
Dart

import 'package:lab/data/dtos/characters_dto.dart';
import 'package:lab/domain/models/card_data.dart';
import 'package:lab/domain/models/home_data.dart';
extension FCharacterDtoToModel on FCharacterDto {
CardData toDomain() => CardData(
id: id.toString(),
name: name ?? "UNKNOWN NAME",
image: image ??
"https://upload.wikimedia.org/wikipedia/commons/a/a2/Person_Image_Placeholder.png",
species: species ?? "UNKNOWN SPECIES");
}
extension FCharactersDataDtoToModel on FCharactersDataDto {
HomeData toDomain() {
int nextPage = 1;
if (page != null && pages != null) {
nextPage = page! >= pages! ? page! : page! + 1;
}
return HomeData(
data: items?.map((e) => e.toDomain()).toList(),
nextPage: nextPage,
);
}
}