@@ -27,6 +27,10 @@ exports.load = function(endpoints, conf) { | |||
//If it's an HTML file, we minify it | |||
if (/\.html$/.test(ep)) { | |||
res.endpoints[i] = minify.html(res.endpoints[i]); | |||
} else if (/\.js$/.test(ep)) { | |||
res.endpoints[i] = minify.js(res.endpoints[i]); | |||
} else if (/\.css$/.test(ep)) { | |||
res.endpoints[i] = minify.css(res.endpoints[i]); | |||
} | |||
} | |||
@@ -1,9 +1,22 @@ | |||
var minify = require("html-minifier").minify; | |||
var minifyHtml = require("html-minifier").minify; | |||
var minifyJs = require("uglify-js"); | |||
var minifyCss = require("uglifycss").processString; | |||
exports.html = function(src) { | |||
return src; | |||
return minify(src, { | |||
return minifyHtml(src, { | |||
removeComments: true, | |||
collapseWhitespace: true, | |||
}); | |||
} | |||
exports.js = function(src) { | |||
var ast = minifyJs.parse(src); | |||
ast.figure_out_scope(); | |||
var compressor = minifyJs.Compressor(); | |||
ast = ast.transform(compressor); | |||
return ast.print_to_string(); | |||
} | |||
exports.css = function(src) { | |||
return minifyCss(src); | |||
} |
@@ -15,6 +15,8 @@ | |||
"license": "GPLv2", | |||
"dependencies": { | |||
"html-minifier": "^0.7.2", | |||
"pg": "^4.4.0" | |||
"pg": "^4.4.0", | |||
"uglify-js": "^2.4.24", | |||
"uglifycss": "0.0.15" | |||
} | |||
} |
@@ -6,10 +6,17 @@ | |||
</head> | |||
<body> | |||
{{global}} | |||
<div id="uploader" class="container"> | |||
<input type="file" id="uploader-input" class="hidden" multiple> | |||
<button class="btn btn-default" onclick="$('#uploader-input').click()">Select Files</button> | |||
<button class="btn btn-default" id="uploader-upload">Upload</button> | |||
<input type="file" accept="image/*" id="uploader-input" class="hidden" multiple> | |||
<button class="btn btn-default" onclick="$('#uploader-input').click()"> | |||
Select Files | |||
</button> | |||
<button class="btn btn-default" id="uploader-upload"> | |||
Upload | |||
</button> | |||
<ul class="list-group" id="uploader-list"></ul> | |||
</div> | |||