1 | #!/usr/bin/env node
|
2 | 'use strict';
|
3 |
|
4 | var path = require('path')
|
5 | , fs = require('fs')
|
6 | , colors = require('ansicolors')
|
7 | , viralify = require('../')
|
8 |
|
9 | function usage() {
|
10 | var usageFile = path.join(__dirname, 'usage.txt');
|
11 | fs.createReadStream(usageFile).pipe(process.stdout);
|
12 | }
|
13 |
|
14 | var argv = require('minimist')(
|
15 | process.argv.slice(2)
|
16 | , { 'boolean': [ 'f', 'front', 'h', 'help' ] }
|
17 | , { 'string': [ 'transform', 't' ] }
|
18 | );
|
19 |
|
20 | (function () {
|
21 |
|
22 | if (argv.h || argv.help) return usage();
|
23 |
|
24 | var front = argv.f || argv.front
|
25 | , root = argv._[0] && path.resolve(argv._[0]);
|
26 |
|
27 | if (!root) {
|
28 | console.error('\nviralify %s Need to specify root dir i.e. ./root\n', colors.red('ERR'));
|
29 | return usage();
|
30 | }
|
31 |
|
32 | var transform = [].concat(argv.t).concat(argv.transform).filter(Boolean);
|
33 |
|
34 | if (!transform.length) {
|
35 | console.error('\nviralify %s Need to specify at least one transform\n', colors.red('ERR'));
|
36 | return usage();
|
37 | }
|
38 |
|
39 | console.log('viralify %s Processing %s', colors.green('INFO'), root);
|
40 | viralify(root, transform, front, function (err) {
|
41 | if (err) return console.error(err);
|
42 | console.log('viralify %s Everything is OK', colors.green('INFO'));
|
43 | })
|
44 |
|
45 | })()
|