UNPKG

1.06 kBPlain TextView Raw
1#!/usr/bin/env node
2
3var program = require('commander');
4var mason = require('../');
5var pkg = require('../package.json');
6
7program.name = 'mason';
8
9program
10 .version(pkg.version);
11
12program
13 .command('build')
14 .description('build assets')
15 .option('-f, --file [assets]', 'JSON file with asset descriptions [mason.json]', 'mason.json')
16 .option('-j, --javascript [renderer]', 'specify the renderer for JS [uglify]', 'uglify')
17 .action(runBuild);
18
19program
20 .command('watch')
21 .description('build and watch mason.json targets')
22 .option('-f, --file [configFile]', 'JSON file with asset descriptions')
23 .option('-j, --javascript [renderer]', 'specify the renderer for JS [uglify]', 'uglify')
24 .action(runWatch);
25
26if (process.argv.length < 3) {
27 runHelp();
28}
29else {
30 program.parse(process.argv);
31}
32
33function runBuild(options) {
34 mason({
35 file: options.file
36 }).build();
37}
38
39function runWatch(options) {
40 mason.watch(process.cwd(), {
41 'javascript': options.javascript
42 });
43}
44
45function runHelp(options) {
46 console.log(program.helpInformation());
47}
\No newline at end of file