import { mkdir } from "fs/promises"; import path from "path"; import sharp from "sharp"; const SOURCE = path.join(process.cwd(), "public", "images", "logo-muaythai.jpg"); const OUT_DIR = path.join(process.cwd(), "public", "icons"); const sizes = [72, 96, 128, 192, 256, 384, 512]; async function main() { await mkdir(OUT_DIR, { recursive: true }); const source = sharp(SOURCE).resize(512, 512, { fit: "cover", position: "centre", }); for (const size of sizes) { await source .clone() .resize(size, size) .png() .toFile(path.join(OUT_DIR, `icon-${size}x${size}.png`)); console.log(`✓ icon-${size}x${size}.png`); } await source .clone() .resize(180, 180) .png() .toFile(path.join(OUT_DIR, "apple-touch-icon.png")); console.log(`✓ apple-touch-icon.png`); await source.clone().resize(32, 32).png().toFile(path.join(OUT_DIR, "favicon-32.png")); console.log(`✓ favicon-32.png`); await source.clone().resize(16, 16).png().toFile(path.join(OUT_DIR, "favicon-16.png")); console.log(`✓ favicon-16.png`); console.log("Icônes PWA générées ✅"); } main().catch((e) => { console.error(e); process.exit(1); });