add minify js :3

This commit is contained in:
Ashley 2023-06-10 08:13:07 +00:00
parent 9a26c2a332
commit f852fc7410

View file

@ -67,12 +67,12 @@ module.exports = function (app, config, renderTemplate) {
}); });
const path = require("path"); const path = require("path");
const fs = require("fs"); const fs = require("fs");
const CleanCSS = require("clean-css"); const CleanCSS = require("clean-css");
const cssDir = "./css/"; const cssDir = "./css/";
app.get("/css/:id", (req, res) => { app.get("/css/:id", (req, res) => {
const filePath = path.join(cssDir, req.params.id); const filePath = path.join(cssDir, req.params.id);
if (!fs.existsSync(filePath)) { if (!fs.existsSync(filePath)) {
res.status(404).send("File not found"); res.status(404).send("File not found");
@ -94,13 +94,26 @@ module.exports = function (app, config, renderTemplate) {
if (req.params.id.endsWith(".js")) { if (req.params.id.endsWith(".js")) {
res.redirect("/static/" + req.params.id); res.redirect("/static/" + req.params.id);
} }
}); });
app.get("/static/:id", (req, res) => { app.get("/static/:id", (req, res) => {
if (req.params.id.endsWith(".css")) { if (req.params.id.endsWith(".css")) {
res.redirect("/css/" + req.params.id); res.redirect("/css/" + req.params.id);
} else if (req.params.id.endsWith(".js")) {
const filePath = path.join(html_location, req.params.id);
if (!fs.existsSync(filePath)) {
res.status(404).send("File not found");
return;
} }
// Minimize the JavaScript file
const js = fs.readFileSync(filePath, "utf8");
const minimizedJs = require("uglify-js").minify(js).code;
// Serve the minimized JavaScript file
res.header("Content-Type", "text/javascript");
res.send("// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-3.0-or-later" + " " + minimizedJs + " " + "// @license-end");
} else {
res.sendFile(req.params.id, { root: html_location }); res.sendFile(req.params.id, { root: html_location });
}); }
});
}; };