forked from Flotype/now
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.js
39 lines (30 loc) · 945 Bytes
/
build.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*
* Module dependencies.
*/
var fs = require('fs')
, package = JSON.parse(fs.readFileSync(__dirname + '/../package.json'))
, jsp = require("uglify-js").parser
, pro = require("uglify-js").uglify;
var template = '/*! now.js build:' + package.version + '. Copyright(c) 2011 Flotype <team@flotype.com> MIT Licensed */\n'
var base = ['now.js'];
var files = [];
base.forEach(function (file) {
files.push(__dirname + '/../lib/client/' + file);
});
var results = {};
files.forEach(function (file) {
fs.readFile(file, function (err, content) {
if (err) throw err;
var code = content.toString();
var ast = jsp.parse(code);
ast = pro.ast_squeeze(ast, {make_seqs: false, dead_code: false});
var code = template + pro.gen_code(ast, {ascii_only: true});
code += ';';
fs.write(
fs.openSync(__dirname + '/../dist/now.js', 'w')
, code
, 0
, 'utf8'
);
});
});