build: minify final mjs

This commit is contained in:
鲁树人
2024-01-18 00:59:11 +00:00
parent 1ae2f93e99
commit 8e4367fbf9
3 changed files with 52 additions and 16 deletions

19
scripts/minify-mjs.mjs Normal file
View File

@@ -0,0 +1,19 @@
import { minify } from 'terser';
import { readFileSync, writeFileSync, readdirSync } from 'fs';
for (const file of readdirSync('dist/assets')) {
if (!/\.(mjs|js)$/.test(file)) {
continue;
}
console.log(`minifying ${file}...`);
const isModule = /\.mjs$/.test(file);
const output = await minify(readFileSync(`dist/assets/${file}`, 'utf-8'), {
compress: true,
mangle: true,
module: isModule,
});
writeFileSync(`dist/assets/${file}`, output.code);
}