Skip to content

Commit

Permalink
Save compressed version of output JS file. Useful with nginx http_gzi…
Browse files Browse the repository at this point in the history
…p_static module.
  • Loading branch information
Staltec committed Nov 8, 2012
1 parent d7324a7 commit 0882779
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 12 deletions.
21 changes: 16 additions & 5 deletions templateready.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ var fs = require("fs");
var async = require("async");
var jsp = require("uglify-js").parser;
var pro = require("uglify-js").uglify;
var zlib = require('zlib');
var meta = require("./package.json");

var cfg = {},
Expand Down Expand Up @@ -158,19 +159,29 @@ function compileFiles (files){
buf += cfg.targetOject+'.require = '+_requireSample.toString()+'\n\n';
buf += res.join('\n\n');

fs.writeFile(cfg.outFile+'.js', hdr + buf, 'utf8', function(err){
if(err) util.error('\nCan`t write script file: "'+cfg.outFile+'.js"\n');
});
// Save common JS file
saveToFile(cfg.outFile+'.js', hdr + buf);

// Save minified JS file
buf = minifier(buf);
saveToFile(cfg.outFile+'.min.js', hdr + buf);

fs.writeFile(cfg.outFile+'.min.js', hdr + minifier(buf), 'utf8', function(err){
if(err) util.error('\nCan`t write script file: "'+cfg.outFile+'.min.js"\n');
// Save compressed JS file
zlib.gzip(buf, function(err, result){
saveToFile(cfg.outFile+'.min.js.gz', result);
});

util.debug('save canges...');

})
}

function saveToFile(name, data){
fs.writeFile(name, data, 'utf8', function(err){
if(err) util.error('\nCan`t write script file: "'+name+'"\n');
});
}


function getFuncName(file){
var fileName = file.replace(sourceDirRegExp,'');
Expand Down
6 changes: 2 additions & 4 deletions wwwroot/app/templates.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Assembled by TemplateReady 0.1.0
// At Thu Nov 08 2012 22:36:32 GMT+0800 (KRAT)
// At Thu Nov 08 2012 23:32:45 GMT+0800 (KRAT)

Core.Template._names = {"underscore/test.htm":"underscoreTest","mustache/test.mustache":"mustacheTest"};

Expand Down Expand Up @@ -41,6 +41,4 @@ __p+='\r\n </ul>\r\n</div>';
return __p;
}



Core.Template.mustacheTest = function(obj){return new Hogan.Template(function(c,p,i){var _=this;_.b(i=i||"");_.b("<div>");_.b("\n" + i);_.b(" <h1>");_.b(_.v(_.f("title",c,p,0)));_.b("</h1>");_.b("\n" + i);_.b("\n" + i);_.b(" <ol>");_.b("\n" + i);if(_.s(_.f("list",c,p,1),c,p,0,52,80,"{{ }}")){_.rs(c,p,function(c,p,_){_.b(" <li>");_.b(_.v(_.d(".",c,p,0)));_.b("</li>");_.b("\n");});c.pop();}if(!_.s(_.f("list",c,p,1),c,p,1,0,0,"")){_.b(" <li>Пустой список (не будет показан).</li>");_.b("\n");};_.b(" </ol>");_.b("\n" + i);_.b("\n" + i);if(_.s(_.f("hash",c,p,1),c,p,0,193,277,"{{ }}")){_.rs(c,p,function(c,p,_){_.b(" <h2>Дискография: ");_.b(_.v(_.f("firstName",c,p,0)));_.b(" ");_.b(_.v(_.f("lastName",c,p,0)));_.b(" ");if(_.s(_.f("age",c,p,1),c,p,0,250,259,"{{ }}")){_.rs(c,p,function(c,p,_){_.b("(");_.b(_.v(_.f("age",c,p,0)));_.b(")");});c.pop();}_.b("</h2>");_.b("\n");});c.pop();}_.b("\n" + i);_.b(" <ul>");_.b("\n" + i);if(_.s(_.f("objList",c,p,1),c,p,0,313,362,"{{ }}")){_.rs(c,p,function(c,p,_){_.b(" <li>");_.b(_.v(_.f("year",c,p,0)));_.b(" &mdash; ");_.b(_.v(_.f("album",c,p,0)));_.b("</li>");_.b("\n");});c.pop();}_.b(" </ul>");_.b("\n" + i);_.b("\n" + i);_.b("\n" + i);_.b("</div>");return _.fl();;}).render(obj)};
Core.Template.mustacheTest = function(obj){return new Hogan.Template(function(c,p,i){var _=this;_.b(i=i||"");_.b("<div>");_.b("\n" + i);_.b(" <h1>");_.b(_.v(_.f("title",c,p,0)));_.b("</h1>");_.b("\n" + i);_.b("\n" + i);_.b(" <ol>");_.b("\n" + i);if(_.s(_.f("list",c,p,1),c,p,0,52,80,"{{ }}")){_.rs(c,p,function(c,p,_){_.b(" <li>");_.b(_.v(_.d(".",c,p,0)));_.b("</li>");_.b("\n");});c.pop();}if(!_.s(_.f("list",c,p,1),c,p,1,0,0,"")){_.b(" <li>Пустой список (не будет показан).</li>");_.b("\n");};_.b(" </ol>");_.b("\n" + i);_.b("\n" + i);if(_.s(_.f("hash",c,p,1),c,p,0,193,277,"{{ }}")){_.rs(c,p,function(c,p,_){_.b(" <h2>Дискография: ");_.b(_.v(_.f("firstName",c,p,0)));_.b(" ");_.b(_.v(_.f("lastName",c,p,0)));_.b(" ");if(_.s(_.f("age",c,p,1),c,p,0,250,259,"{{ }}")){_.rs(c,p,function(c,p,_){_.b("(");_.b(_.v(_.f("age",c,p,0)));_.b(")");});c.pop();}_.b("</h2>");_.b("\n");});c.pop();}_.b("\n" + i);_.b(" <ul>");_.b("\n" + i);if(_.s(_.f("objList",c,p,1),c,p,0,313,362,"{{ }}")){_.rs(c,p,function(c,p,_){_.b(" <li>");_.b(_.v(_.f("year",c,p,0)));_.b(" &mdash; ");_.b(_.v(_.f("album",c,p,0)));_.b("</li>");_.b("\n");});c.pop();}_.b(" </ul>");_.b("\n" + i);_.b("\n" + i);_.b("\n" + i);_.b("</div>");_.b("\n" + i);_.b("\n");return _.fl();;}).render(obj)};
4 changes: 2 additions & 2 deletions wwwroot/app/templates.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file added wwwroot/app/templates.min.js.gz
Binary file not shown.
3 changes: 2 additions & 1 deletion wwwroot/app/templates/mustache/test.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,5 @@
</ul>


</div>
</div>

0 comments on commit 0882779

Please sign in to comment.