mirror of
https://github.com/sudoxnym/habitica-self-host.git
synced 2026-07-14 02:02:19 +00:00
refactor(caching): only 1 css file, use grunt-contrib-cssmin to rewrite urls
This commit is contained in:
parent
fbe3ecc033
commit
fb496de42f
2 changed files with 24 additions and 17 deletions
20
Gruntfile.js
20
Gruntfile.js
|
|
@ -106,22 +106,30 @@ module.exports = function(grunt) {
|
|||
var files = grunt.file.readJSON('./public/manifest.json');
|
||||
var uglify = {};
|
||||
var cssmin = {};
|
||||
|
||||
_.each(files, function(val, key){
|
||||
|
||||
var js = uglify['build/' + key + '.js'] = [];
|
||||
|
||||
_.each(files[key]['js'], function(val){
|
||||
js.push('public/' + val);
|
||||
});
|
||||
|
||||
var css = cssmin['build/' + key + '.css'] = [];
|
||||
|
||||
_.each(files[key]['css'], function(val){
|
||||
if(val == 'app.css' || val == 'static.css'){
|
||||
cssmin['build/' + val] = ['build/' + val]
|
||||
}else{
|
||||
cssmin['build/' + val] = ['public/' + val]
|
||||
}
|
||||
var path = (val == 'app.css' || val == 'static.css') ? 'build/' : 'public/';
|
||||
css.push(path + val)
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
grunt.config.set('uglify.build.files', uglify);
|
||||
grunt.config.set('uglify.build.options', {compress: false})
|
||||
grunt.config.set('uglify.build.options', {compress: false});
|
||||
|
||||
grunt.config.set('cssmin.build.files', cssmin);
|
||||
// Rewrite urls to relative path
|
||||
grunt.config.set('cssmin.build.options', {'target': 'public/css/whatever-css.css'});
|
||||
});
|
||||
|
||||
// Register tasks.
|
||||
|
|
|
|||
|
|
@ -122,22 +122,21 @@ var getManifestFiles = function(page){
|
|||
|
||||
if(!files) throw new Error("Page not found!");
|
||||
|
||||
var css = '';
|
||||
|
||||
_.each(files.css, function(file){
|
||||
css += '<link rel="stylesheet" type="text/css" href="' + getBuildUrl(file) + '">';
|
||||
});
|
||||
var code = '';
|
||||
|
||||
if(nconf.get('NODE_ENV') === 'production'){
|
||||
return css + '<script type="text/javascript" src="' + getBuildUrl(page + '.js') + '"></script>';
|
||||
code += '<link rel="stylesheet" type="text/css" href="' + getBuildUrl(page + '.css') + '">';
|
||||
code += '<script type="text/javascript" src="' + getBuildUrl(page + '.js') + '"></script>';
|
||||
}else{
|
||||
var results = css;
|
||||
_.each(files.js, function(file){
|
||||
results += '<script type="text/javascript" src="' + getBuildUrl(file) + '"></script>';
|
||||
_.each(files.css, function(file){
|
||||
code += '<link rel="stylesheet" type="text/css" href="' + getBuildUrl(file) + '">';
|
||||
});
|
||||
_.each(files.js, function(file){
|
||||
code += '<script type="text/javascript" src="' + getBuildUrl(file) + '"></script>';
|
||||
});
|
||||
return results;
|
||||
}
|
||||
|
||||
|
||||
return code;
|
||||
}
|
||||
|
||||
// Translations
|
||||
|
|
|
|||
Loading…
Reference in a new issue