toJson method
Implementation
@override
Map<String, dynamic>? toJson(ImageProvider? value) {
if (value == null) return null;
assert(
value is AssetImage || value is MemoryImage || value is NetworkImage);
if (value is AssetImage) {
return <String, dynamic>{
'assetName': value.assetName,
'package': value.package,
'type': 'asset',
};
} else if (value is MemoryImage) {
return <String, dynamic>{
'bytes': base64Encode(value.bytes),
'scale': value.scale,
'type': 'memory',
};
} else if (value is NetworkImage) {
return <String, dynamic>{
'headers': value.headers,
'scale': value.scale,
'type': 'network',
'url': value.url,
};
}
throw 'Json_Unsuported_Value';
}