classInstantiate method
Implementation
@override
String classInstantiate(AssetType asset) {
final info = parseMetadata || parseAnimation ? _getMetadata(asset) : null;
final buffer = StringBuffer(className);
buffer.write('(');
buffer.write('\'${asset.posixStylePath}\'');
if (info != null) {
buffer.write(', size: const Size(${info.width}, ${info.height})');
if (info.animation case final animation?) {
buffer.write(', animation: const AssetGenImageAnimation(');
buffer.write('isAnimation: ${animation.frames > 1}');
buffer.write(
', duration: Duration(milliseconds: ${animation.duration.inMilliseconds})',
);
buffer.write(', frames: ${animation.frames}');
buffer.write(')');
}
}
if (asset.flavors.isNotEmpty) {
buffer.write(', flavors: {');
final flavors = asset.flavors.map((e) => '\'$e\'').join(', ');
buffer.write(flavors);
buffer.write('}');
buffer.write(','); // Better formatting.
}
buffer.write(')');
return buffer.toString();
}