forked from projectmoon/tenebrous-dicebot
26 lines
675 B
JavaScript
26 lines
675 B
JavaScript
|
const prompt = ({ message, defaultResponse, stream }) => {
|
||
|
const readline = require('readline');
|
||
|
const rl = readline.createInterface({
|
||
|
input: process.stdin,
|
||
|
output: stream,
|
||
|
});
|
||
|
|
||
|
return new Promise((resolve) => {
|
||
|
rl.question(`${message} `, (answer) => {
|
||
|
// Close the stream
|
||
|
rl.close();
|
||
|
|
||
|
const response = (answer || defaultResponse).toLowerCase();
|
||
|
|
||
|
// Resolve with the input response
|
||
|
if (response === 'y' || response === 'yes') {
|
||
|
resolve(true);
|
||
|
} else {
|
||
|
resolve(false);
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
};
|
||
|
|
||
|
module.exports = prompt;
|