feat: optimized png cache

This commit is contained in:
TrèsAbhi committed 2024-03-17 21:23:57 -05:00
1 parent 146d36234e
commit bd3f5dea05
1 file changed
+8 -8
+8 -8
View File
@@ -1,14 +1,14 @@
import sharp from 'sharp';
const cache: Record<string, string> = {};
const cache: Record<string, Buffer> = {};
export async function iconPng(url: string) {
if (cache[url]) return cache[url];
if (!cache[url]) {
const imageResponse = await fetch(url);
const imageBufferWEBP = await imageResponse.arrayBuffer();
const imageBufferPNG = await sharp(imageBufferWEBP).png().toBuffer();
cache[url] = imageBufferPNG;
}
const imageResponse = await fetch(url);
const imageBufferWEBP = await imageResponse.arrayBuffer();
const imageBufferPNG = await sharp(imageBufferWEBP).png().toBuffer();
cache[url] = `data:image/png;base64,${imageBufferPNG.toString('base64')}`;
return cache[url];
return `data:image/png;base64,${cache[url].toString('base64')}`;
}