import { consola } from 'consola'; import sharp from 'sharp'; import yargs from 'yargs'; import { hideBin } from 'yargs/helpers'; (async () => { const argv = yargs(hideBin(process.argv)) .option('size', { alias: 's', describe: 'Specify the size of the logo', type: 'number', demandOption: true, }) .argv; const size = argv.size; try { const webpImage = './src/@dasig/images/logo.webp' const avifImage = './src/@dasig/images/logo.avif' const inputSrc = './src/images/logo.png' const avifBuffer = await sharp(inputSrc).avif({ quality: 60 }).resize(size).toBuffer() await sharp(avifBuffer).toFile(avifImage) consola.success('Logo successfully optimized in Avif') const webpBuffer = await sharp(inputSrc).webp({ quality: 75 }).resize(size).toBuffer() await sharp(webpBuffer).toFile(webpImage) consola.success('Logo successfully optimized in Webp') } catch (error) { consola.error('Error generating favicon:', error) } })()