createWebIcons function
Start create web icons
Implementation
void createWebIcons({required String imagePath, String? maskableImagePath}) {
CliLogger.info('Creating Web icons...', emoji: '🌐');
final image = Icon.loadFile(imagePath);
if (image == null) {
CliLogger.error('The file $imagePath could not be read.', level: .two);
exit(1);
}
final maskableImageFile =
(maskableImagePath == null || maskableImagePath == imagePath)
? image
: Icon.loadFile(maskableImagePath);
if (maskableImageFile == null) {
CliLogger.error(
'The file ${maskableImagePath!} could not be read.',
level: .two,
);
exit(1);
}
final webIcons = <WebIconTemplate>[
WebIconTemplate(name: 'Icon-192.png', size: 192),
WebIconTemplate(name: 'Icon-512.png', size: 512),
];
for (final template in webIcons) {
_saveImageWeb(template, image);
}
final pwaIcons = <WebIconTemplate>[
WebIconTemplate(name: 'Icon-maskable-192.png', size: 192),
WebIconTemplate(name: 'Icon-maskable-512.png', size: 512),
];
for (final template in pwaIcons) {
_saveImageWeb(template, maskableImageFile);
}
CliLogger.success('Generated icon images', level: .two);
}