| 1 |
const { execSync } = require("child_process"); |
| 2 |
const fs = require("fs"); |
| 3 |
const path = require("path"); |
| 4 |
|
| 5 |
const cssDir = path.join(__dirname, "css"); |
| 6 |
const src = path.join(cssDir, "styles.css"); |
| 7 |
const dest = path.join(cssDir, "styles.min.css"); |
| 8 |
|
| 9 |
if (!fs.existsSync(dest) || fs.statSync(src).mtimeMs > fs.statSync(dest).mtimeMs) { |
| 10 |
console.log("Minifying CSS..."); |
| 11 |
execSync(`npx --yes clean-css-cli "${src}" -o "${dest}"`, { stdio: "inherit" }); |
| 12 |
const srcSize = fs.statSync(src).size; |
| 13 |
const destSize = fs.statSync(dest).size; |
| 14 |
console.log(`CSS minified: ${srcSize} -> ${destSize} bytes`); |
| 15 |
} else { |
| 16 |
console.log("CSS already up to date"); |
| 17 |
} |
| 18 |
|