UNPKG

miter

Version:

A typescript web framework based on ExpressJs based loosely on SailsJs

34 lines 946 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const readline_1 = require("readline"); let nativeCin = null; function getNativeCin() { if (!nativeCin) { nativeCin = readline_1.createInterface({ input: process.stdin, output: process.stdout }); nativeCin.on('line', (line) => emitLine(line)); } return nativeCin; } let resolveFns = []; function emitLine(line) { if (!resolveFns.length) return; let resolveFn = resolveFns.splice(0, 1)[0]; resolveFn(line.trim()); } exports.cin = { readline: () => { return new Promise((resolve, reject) => { resolveFns.push(resolve); getNativeCin().prompt(); }); }, getNative: getNativeCin, pause: () => void getNativeCin().pause(), resume: () => void getNativeCin().resume(), emit: (line) => emitLine(line) }; //# sourceMappingURL=cin.js.map