UNPKG

braingk58

Version:
48 lines (34 loc) 4.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _readlineSync = _interopRequireDefault(require("readline-sync")); var _hexletPairs = require("hexlet-pairs"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const getQuestion = pair => (0, _hexletPairs.car)(pair); const getAnswer = pair => (0, _hexletPairs.cdr)(pair); const steps = 3; const gameFlow = (description, getPairQuestionAndAnswer) => { const userName = _readlineSync.default.question('May I have your name? '); console.log(`Hello, ${userName}!`); console.log(description); for (let step = 1; step <= steps; step += 1) { const questionAndAnswer = getPairQuestionAndAnswer(); const question = getQuestion(questionAndAnswer); console.log(`Question: ${question}`); const answer = getAnswer(questionAndAnswer); const userAnswer = _readlineSync.default.question('Your answer: '); if (answer === userAnswer) { console.log('Correct!'); } else { console.log(`${userAnswer} is wrong answer ;(. Correct answer was '${answer}'.`); console.log(`Let's try again, ${userName}`); return; } } console.log(`Congratulations, ${userName}`); }; var _default = gameFlow; exports.default = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJnZXRRdWVzdGlvbiIsInBhaXIiLCJnZXRBbnN3ZXIiLCJzdGVwcyIsImdhbWVGbG93IiwiZGVzY3JpcHRpb24iLCJnZXRQYWlyUXVlc3Rpb25BbmRBbnN3ZXIiLCJ1c2VyTmFtZSIsInJlYWRsaW5lU3luYyIsInF1ZXN0aW9uIiwiY29uc29sZSIsImxvZyIsInN0ZXAiLCJxdWVzdGlvbkFuZEFuc3dlciIsImFuc3dlciIsInVzZXJBbnN3ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7OztBQUVBLE1BQU1BLFdBQVcsR0FBR0MsSUFBSSxJQUFJLHNCQUFJQSxJQUFKLENBQTVCOztBQUNBLE1BQU1DLFNBQVMsR0FBR0QsSUFBSSxJQUFJLHNCQUFJQSxJQUFKLENBQTFCOztBQUNBLE1BQU1FLEtBQUssR0FBRyxDQUFkOztBQUVBLE1BQU1DLFFBQVEsR0FBRyxDQUFDQyxXQUFELEVBQWNDLHdCQUFkLEtBQTJDO0FBQzFELFFBQU1DLFFBQVEsR0FBR0Msc0JBQWFDLFFBQWIsQ0FBc0Isd0JBQXRCLENBQWpCOztBQUNBQyxFQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBYSxVQUFTSixRQUFTLEdBQS9CO0FBQ0FHLEVBQUFBLE9BQU8sQ0FBQ0MsR0FBUixDQUFZTixXQUFaOztBQUNBLE9BQUssSUFBSU8sSUFBSSxHQUFHLENBQWhCLEVBQW1CQSxJQUFJLElBQUlULEtBQTNCLEVBQWtDUyxJQUFJLElBQUksQ0FBMUMsRUFBNkM7QUFDM0MsVUFBTUMsaUJBQWlCLEdBQUdQLHdCQUF3QixFQUFsRDtBQUNBLFVBQU1HLFFBQVEsR0FBR1QsV0FBVyxDQUFDYSxpQkFBRCxDQUE1QjtBQUNBSCxJQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBYSxjQUFhRixRQUFTLEVBQW5DO0FBQ0EsVUFBTUssTUFBTSxHQUFHWixTQUFTLENBQUNXLGlCQUFELENBQXhCOztBQUNBLFVBQU1FLFVBQVUsR0FBR1Asc0JBQWFDLFFBQWIsQ0FBc0IsZUFBdEIsQ0FBbkI7O0FBQ0EsUUFBSUssTUFBTSxLQUFLQyxVQUFmLEVBQTJCO0FBQ3pCTCxNQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBWSxVQUFaO0FBQ0QsS0FGRCxNQUVPO0FBQ0xELE1BQUFBLE9BQU8sQ0FBQ0MsR0FBUixDQUFhLEdBQUVJLFVBQVcsNENBQTJDRCxNQUFPLElBQTVFO0FBQ0FKLE1BQUFBLE9BQU8sQ0FBQ0MsR0FBUixDQUFhLG9CQUFtQkosUUFBUyxFQUF6QztBQUNBO0FBQ0Q7QUFDRjs7QUFDREcsRUFBQUEsT0FBTyxDQUFDQyxHQUFSLENBQWEsb0JBQW1CSixRQUFTLEVBQXpDO0FBQ0QsQ0FuQkQ7O2VBb0JlSCxRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlYWRsaW5lU3luYyBmcm9tICdyZWFkbGluZS1zeW5jJztcbmltcG9ydCB7IGNhciwgY2RyIH0gZnJvbSAnaGV4bGV0LXBhaXJzJztcblxuY29uc3QgZ2V0UXVlc3Rpb24gPSBwYWlyID0+IGNhcihwYWlyKTtcbmNvbnN0IGdldEFuc3dlciA9IHBhaXIgPT4gY2RyKHBhaXIpO1xuY29uc3Qgc3RlcHMgPSAzO1xuXG5jb25zdCBnYW1lRmxvdyA9IChkZXNjcmlwdGlvbiwgZ2V0UGFpclF1ZXN0aW9uQW5kQW5zd2VyKSA9PiB7XG4gIGNvbnN0IHVzZXJOYW1lID0gcmVhZGxpbmVTeW5jLnF1ZXN0aW9uKCdNYXkgSSBoYXZlIHlvdXIgbmFtZT8gJyk7XG4gIGNvbnNvbGUubG9nKGBIZWxsbywgJHt1c2VyTmFtZX0hYCk7XG4gIGNvbnNvbGUubG9nKGRlc2NyaXB0aW9uKTtcbiAgZm9yIChsZXQgc3RlcCA9IDE7IHN0ZXAgPD0gc3RlcHM7IHN0ZXAgKz0gMSkge1xuICAgIGNvbnN0IHF1ZXN0aW9uQW5kQW5zd2VyID0gZ2V0UGFpclF1ZXN0aW9uQW5kQW5zd2VyKCk7XG4gICAgY29uc3QgcXVlc3Rpb24gPSBnZXRRdWVzdGlvbihxdWVzdGlvbkFuZEFuc3dlcik7XG4gICAgY29uc29sZS5sb2coYFF1ZXN0aW9uOiAgJHtxdWVzdGlvbn1gKTtcbiAgICBjb25zdCBhbnN3ZXIgPSBnZXRBbnN3ZXIocXVlc3Rpb25BbmRBbnN3ZXIpO1xuICAgIGNvbnN0IHVzZXJBbnN3ZXIgPSByZWFkbGluZVN5bmMucXVlc3Rpb24oJ1lvdXIgYW5zd2VyOiAnKTtcbiAgICBpZiAoYW5zd2VyID09PSB1c2VyQW5zd2VyKSB7XG4gICAgICBjb25zb2xlLmxvZygnQ29ycmVjdCEnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coYCR7dXNlckFuc3dlcn0gaXMgd3JvbmcgYW5zd2VyIDsoLiBDb3JyZWN0IGFuc3dlciB3YXMgJyR7YW5zd2VyfScuYCk7XG4gICAgICBjb25zb2xlLmxvZyhgTGV0J3MgdHJ5IGFnYWluLCAke3VzZXJOYW1lfWApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfVxuICBjb25zb2xlLmxvZyhgQ29uZ3JhdHVsYXRpb25zLCAke3VzZXJOYW1lfWApO1xufTtcbmV4cG9ydCBkZWZhdWx0IGdhbWVGbG93O1xuIl19