Files

40 lines
1.1 KiB
Dart

import 'package:equatable/equatable.dart';
class SearchResultModel extends Equatable {
final String isin;
final String name;
final String symbol;
final String? image;
const SearchResultModel({
required this.isin,
required this.name,
required this.symbol,
this.image,
});
factory SearchResultModel.fromJson(Map<String, dynamic> json) {
return SearchResultModel(
isin: json['isin']?.toString() ?? json['Isin']?.toString() ?? '',
name: json['name']?.toString() ?? json['Name']?.toString() ?? '',
symbol: json['symbol']?.toString() ?? json['Symbol']?.toString() ?? '',
image: json['image']?.toString() ?? json['Image']?.toString(),
);
}
Map<String, dynamic> toJson() {
return {
'isin': isin,
'name': name,
'symbol': symbol,
'image': image,
};
}
String get displayName => name.isNotEmpty ? name : (symbol.isNotEmpty ? symbol : isin);
String get isinCode => isin.isNotEmpty ? isin : (symbol != displayName ? symbol : '');
@override
List<Object?> get props => [isin, name, symbol, image];
}