Skip to content

Commit c00c3a2

Browse files
author
jbavari
committed
Adding in more booleans for bin/ionic call. Adding console logging helpers for cli
1 parent 027e4f2 commit c00c3a2

2 files changed

Lines changed: 40 additions & 6 deletions

File tree

bin/ionic

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616

1717
process.title = 'ionic';
1818

19-
var argv = require('optimist').argv,
19+
var argv = require('optimist')
20+
.boolean(['no-cordova', 'sass', 'list', 'w','nohooks',
21+
'n', 'r', 'noresources', 'nosave', 'e']).argv,
2022
IonicCli = require('../lib/cli');
2123

2224
IonicCli.run(argv);

lib/cli.js

Lines changed: 37 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ Cli.run = function run(argv) {
2424
IonicAppLib.events.on('log', console.log);
2525

2626
Cli.attachErrorHandling();
27-
2827
Cli.checkLatestVersion();
28+
Cli.setUpConsoleLoggingHelpers();
2929

3030
process.on('exit', function(){
3131
Cli.printVersionWarning();
@@ -60,19 +60,51 @@ Cli.run = function run(argv) {
6060
if(!taskSetting) {
6161
return Cli.printAvailableTasks();
6262
}
63-
// var taskModule = require(taskSetting.module).IonicTask;
64-
var taskModule = Cli.lookupTask(taskSetting.module);
6563

64+
var taskModule = Cli.lookupTask(taskSetting.module);
6665
var taskInstance = new taskModule();
67-
taskInstance.run(Cli);
66+
var promise = taskInstance.run(Cli, argv);
67+
return promise;
6868
} catch (ex) {
69+
console.log(ex);
70+
console.log(ex.stack);
6971
Utils.fail(ex);
7072
}
7173
};
7274

75+
Cli.setUpConsoleLoggingHelpers = function setUpConsoleLoggingHelpers() {
76+
var consoleInfo = console.info;
77+
console.info = function() {
78+
if (arguments.length === 1 && !arguments[0]) return;
79+
var msg = '';
80+
for (var n in arguments) {
81+
msg += arguments[n] + ' ';
82+
}
83+
consoleInfo.call(console, msg.blue.bold);
84+
};
85+
86+
var consoleError = console.error;
87+
console.error = function() {
88+
if (arguments.length === 1 && !arguments[0]) return;
89+
var msg = ' ✗';
90+
for (var n in arguments) {
91+
msg += ' ' + arguments[n];
92+
}
93+
consoleError.call(console, msg.red.bold);
94+
};
95+
96+
console.success = function() {
97+
if (arguments.length === 1 && !arguments[0]) return;
98+
var msg = ' ✓';
99+
for (var n in arguments) {
100+
msg += ' ' + arguments[n];
101+
}
102+
console.log(msg.green.bold);
103+
};
104+
};
105+
73106
Cli.lookupTask = function lookupTask(module) {
74107
try {
75-
console.log(module);
76108
var taskModule = require(module).IonicTask;
77109
return taskModule;
78110
} catch (ex) {

0 commit comments

Comments
 (0)