CurseForgeModFile.fromMap constructor
CurseForgeModFile.fromMap(
- Map<String, dynamic> map
)
Implementation
factory CurseForgeModFile.fromMap(Map<String, dynamic> map) {
int id = map['id'];
String fileName = map['fileName'];
String? downloadUrl = map['downloadUrl'];
return CurseForgeModFile(
id: id,
gameId: map['gameId'],
modId: map['modId'],
isAvailable: map['isAvailable'],
displayName: map['displayName'],
fileName: fileName,
releaseType: CurseForgeFileReleaseType.values
.firstWhere((e) => e.value == map['releaseType']),
fileStatus: map['fileStatus'],
hashes: List<Hash>.from(map['hashes']?.map((x) => Hash.fromMap(x))),
fileDate: map['fileDate'],
fileLength: map['fileLength'],
downloadCount: map['downloadCount'],
downloadUrl: Util.fixCFFileDownloadUrl(
fileId: id, fileName: fileName, url: downloadUrl),
gameVersions: List<String>.from(map['gameVersions']),
sortableGameVersions: List<SortableGameVersion>.from(
map['sortableGameVersions']
?.map((x) => SortableGameVersion.fromMap(x))),
dependencies: List<Dependency>.from(
map['dependencies']?.map((x) => Dependency.fromMap(x))),
exposeAsAlternative: map['exposeAsAlternative'] ?? false,
parentProjectFileId: map['parentProjectFileId'],
alternateFileId: map['alternateFileId'],
isServerPack: map['isServerPack'],
serverPackFileId: map['serverPackFileId'],
fileFingerprint: map['fileFingerprint'],
modules: List<Module>.from(map['modules']?.map((x) => Module.fromMap(x))),
);
}