UNPKG

@sap/cds-dk

Version:

Command line client and development toolkit for the SAP Cloud Application Programming Model

51 lines (44 loc) 1.41 kB
const readline = require('readline'); module.exports = class Question { static askQuestion(question, defaultValue, hidden = false) { const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); if (defaultValue) { question += '(' + defaultValue + ') '; } return new Promise(resolve => { rl.question(question, answer => { answer = answer.replace(/\r?\n|\r/g, ''); if (answer.length === 0 && defaultValue) { answer = defaultValue; } resolve(answer); rl.close(); }); if (hidden) { const rla = rl; rla._writeToOutput = function _writeToOutput() { rla.output.write('*'); }; } }); } static askBooleanQuestion(question) { const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); return new Promise(resolve => { rl.question(question, answer => { if (answer === 'y' || answer === 'Y') { resolve(true); } else { resolve(false); } rl.close(); }); }); } }