18 lines
921 B
Dart
18 lines
921 B
Dart
|
import 'package:mobiles_labs_5th_semester/data/dto/games_dto.dart';
|
||
|
import 'package:mobiles_labs_5th_semester/domain/models/game.dart';
|
||
|
import 'package:html/parser.dart';
|
||
|
|
||
|
extension GameDtoToModel on GameDto {
|
||
|
GameData toDomain() {
|
||
|
// удаление HTML-тегов и системных символов из описания
|
||
|
String cleanedDescription = description ?? '';
|
||
|
if (cleanedDescription.isNotEmpty) {
|
||
|
|
||
|
cleanedDescription = cleanedDescription.replaceAll(RegExp(r'<[^>]*>'), '');
|
||
|
//cleanedDescription = cleanedDescription.replaceAll(RegExp(r'\n|\r|\t'), ' ');
|
||
|
}
|
||
|
// return GameData(name: name ?? 'Неизвестная игра', price: 100, image: image?.originalUrl, description: cleanedDescription);
|
||
|
return GameData(id:id, name: name ?? 'Неизвестная игра', date: DateTime.parse(date ?? '2000-01-01'), image: image, description: cleanedDescription);
|
||
|
|
||
|
}
|
||
|
}
|