-
Notifications
You must be signed in to change notification settings - Fork 2
/
attention.js
33 lines (23 loc) · 845 Bytes
/
attention.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
'use strict';
var generateBox = require('../lib/generate-message');
module.exports = function(grunt) {
grunt.registerMultiTask('attention', 'Echo a message to the user', function() {
var options = this.options({
message: 'This is a test',
border: false,
borderColor: false
});
function displayMessage(message) {
var messageToUse = message || options.message;
grunt.log.writeln(generateBox(messageToUse, options.border, options.borderColor));
}
// message can be a promise
if (options.message.then) {
return options.then(displayMessage);
}
if (typeof options.message === 'function') {
return displayMessage(options.message(this));
}
return displayMessage();
});
};