mirror of
https://github.com/chenasraf/pokemon_api_dart.git
synced 2026-05-18 01:49:03 +00:00
49 lines
1.3 KiB
Dart
49 lines
1.3 KiB
Dart
import 'base.dart';
|
|
import 'named_api_resource.dart';
|
|
|
|
class PokemonHeldItem with ResourceBase {
|
|
final NamedAPIResource item;
|
|
final List<PokemonHeldItemVersion> versionDetails;
|
|
@override
|
|
final Map<String, dynamic> rawData;
|
|
|
|
PokemonHeldItem({
|
|
required this.rawData,
|
|
required this.item,
|
|
required this.versionDetails,
|
|
});
|
|
|
|
factory PokemonHeldItem.fromJson(Map<String, dynamic> json) => PokemonHeldItem(
|
|
rawData: json,
|
|
item: NamedAPIResource.fromJson(json["item"]),
|
|
versionDetails:
|
|
List<PokemonHeldItemVersion>.from(json["version_details"].map((x) => PokemonHeldItemVersion.fromJson(x))),
|
|
);
|
|
|
|
@override
|
|
Map<String, dynamic> toJson() => {
|
|
"item": item.toJson(),
|
|
"version_details": List<dynamic>.from(versionDetails.map((x) => x.toJson())),
|
|
};
|
|
}
|
|
|
|
class PokemonHeldItemVersion with ResourceBase {
|
|
PokemonHeldItemVersion({
|
|
required this.rawData,
|
|
required this.version,
|
|
required this.rarity,
|
|
});
|
|
|
|
final NamedAPIResource version;
|
|
final int rarity;
|
|
@override
|
|
final Map<String, dynamic> rawData;
|
|
|
|
factory PokemonHeldItemVersion.fromJson(Map<String, dynamic> json) => PokemonHeldItemVersion(
|
|
rawData: json,
|
|
version: NamedAPIResource.fromJson(json["version"]),
|
|
rarity: json["rarity"],
|
|
);
|
|
}
|
|
|