#!/usr/bin/env node process.bin = process.title = 'kick'; 'use strict'; // Not using ES6 syntax here, so checking for older node versions will work var child_process = require('child_process'); var nodeVersion = child_process.execSync('node -v').toString(); var colors = require('colors'); function ensureNodeVersion() { if (!nodeVersion.match(/v4\.\d/)) { console.log('⚠ '.red + 'You need nodejs '.yellow + '>= 4.0'.white + ' in order to use angular'.yellow); process.exit(0); } } ensureNodeVersion(); const Logger = require('../lib/logger'); const Utils = require('../lib/utils'); const fs = require('fs-extra'); const open = require('opn'); const message = require('../lib/messages'); const commands = require('../lib/commands/commands'); const command = process.argv[2]; const ROOT = __dirname + '/..'; const kickVersion = fs.readJSONSync(ROOT + '/package.json').version; switch (command) { case '--version': case '-v': Logger.log(kickVersion); break; case 'help': case '--help': case 'h': case '-h': commands.help(); break; case 'about': case 'a': commands.about(); break; case 'new': case 'n': commands.new(); break; case 'generate': case 'g': commands.generate(); break; case 'destroy': case 'd': commands.destroy(); break; case 'setup': case 'set': commands.setup(); break; case 'start': case 's': commands.start(); break; case 'tdd': case 'ass': commands.tdd(); break; case 'bundle': case 'b': commands.bundle(); break; case 'test': case 't': commands.test(); break; case 'upgrade': case 'u': commands.upgrade(); break; case 'docs': open('http://www.angular-kick.com'); break; case 'karma-debug': open('http://localhost:9876/debug.html'); break; default: if (command) { Logger.warn(message.unrecognizedCommand(command)) } else { Logger.warn(message.noCommand); } }