feat(html): add CDN bundles and inline template minification (#827)

This commit is contained in:
rahim
2026-03-10 11:11:13 -07:00
committed by GitHub
parent 982107ee92
commit 40807b2e3a
21 changed files with 698 additions and 101 deletions
+29
View File
@@ -0,0 +1,29 @@
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
import { dirname, resolve } from 'node:path';
import { fileURLToPath } from 'node:url';
import { transform } from 'lightningcss';
const root = resolve(dirname(fileURLToPath(import.meta.url)), '..');
const htmlDist = resolve(root, 'dist/default/define');
const outDir = resolve(root, 'cdn');
const cssFiles = [
{ src: 'video/skin.css', dest: 'video.css' },
{ src: 'video/minimal-skin.css', dest: 'video-minimal.css' },
{ src: 'audio/skin.css', dest: 'audio.css' },
{ src: 'audio/minimal-skin.css', dest: 'audio-minimal.css' },
{ src: 'background/skin.css', dest: 'background.css' },
];
for (const { src, dest } of cssFiles) {
const srcPath = resolve(htmlDist, src);
const destPath = resolve(outDir, dest);
const raw = readFileSync(srcPath);
const { code } = transform({ filename: srcPath, code: raw, minify: true });
mkdirSync(dirname(destPath), { recursive: true });
writeFileSync(destPath, code);
console.log(` ${dest} (${raw.length}${code.length})`);
}