working state - adds missing resources for chrome load

This commit is contained in:
2026-05-30 13:12:49 -07:00
parent 95f5fdd3ea
commit f47301c0e4
7 changed files with 589 additions and 3 deletions
+37
View File
@@ -8,9 +8,46 @@
*/
import { defineConfig } from 'vite';
import { resolve } from 'path';
import { copyFileSync, mkdirSync, writeFileSync } from 'fs';
import sharp from 'sharp';
export default defineConfig({
root: 'src',
plugins: [
{
name: 'generate-icons',
async generateBundle() {
const outDir = resolve(__dirname, 'dist');
mkdirSync(resolve(outDir, 'icons'), { recursive: true });
const sizes = [16, 48, 128];
const svgPath = resolve(__dirname, 'src/icons/icon.svg');
const outDirs = [
resolve(outDir, 'icons'),
resolve(__dirname, 'icons'),
];
for (const size of sizes) {
const buffer = await sharp(svgPath)
.resize(size, size)
.png()
.toBuffer();
for (const dir of outDirs) {
mkdirSync(dir, { recursive: true });
writeFileSync(resolve(dir, `icon${size}.png`), buffer);
}
}
},
},
{
name: 'copy-manifest',
generateBundle() {
const manifestPath = resolve(__dirname, 'manifest.json');
const outPath = resolve(__dirname, 'dist/manifest.json');
copyFileSync(manifestPath, outPath);
},
},
],
build: {
outDir: '../dist',
emptyOutDir: true,