/
build.js
36 lines (28 loc) · 1.28 KB
/
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
var fs = require('fs');
var path = require('path');
var bowerDir = path.resolve(process.cwd(), 'bower_components');
var buildDir = path.resolve(process.cwd(), 'build');
var aggregateBower = require('aggregate-bower');
var inferBaseCode = '\nmodulex.init({name:"seed"});';
function generateSeedJs() {
var seedDebugJsContent = '',
seedJsContent = '',
filesList = ['modulex', 'feature', 'ua', 'meta'];
for (var i = 0; i < filesList.length; i++) {
var debugFilePath = path.join(buildDir, filesList[i] + '-debug.js'),
miniFilePath = path.join(buildDir, filesList[i] + '.js');
seedDebugJsContent += fs.readFileSync(debugFilePath).toString();
seedJsContent += fs.readFileSync(miniFilePath).toString();
}
seedDebugJsContent += getExtraContent();
seedJsContent += getExtraContent();
fs.writeFileSync(path.join(buildDir, 'seed-debug.js'), seedDebugJsContent + inferBaseCode);
fs.writeFileSync(path.join(buildDir, 'seed.js'), seedJsContent + inferBaseCode);
}
function getExtraContent(){
var kgConfigContent = '\nif( location !== undefined ){ modulex.config({ packages : { kg : { base : "//g.alicdn.com/kg/" } } }) }';
return kgConfigContent;
}
aggregateBower(bowerDir, buildDir);
generateSeedJs();
console.log('done...');