quicksilver-cli
Version:
Cli tool for Quicksilver
29 lines (28 loc) • 880 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const readline = require("readline");
const colors = require("colors");
function question(question, defaultValue) {
return new Promise((resolve, reject) => {
const r = readline.createInterface({
input: process.stdin,
output: process.stdout
});
if (defaultValue != null) {
question += ` [${defaultValue}]`;
}
r.question(colors.cyan(question), (answer) => {
if (defaultValue == null) {
resolve(answer.trim());
}
else if (/^\s*$/.test(answer)) {
resolve(defaultValue);
}
else {
resolve(answer.trim());
}
r.close();
});
});
}
exports.question = question;