|
|
@ -1,11 +1,12 @@ |
|
|
|
'use strict'; |
|
|
|
|
|
|
|
module.exports = function (cb) { |
|
|
|
var stdin = process.stdin; |
|
|
|
|
|
|
|
module.exports = function () { |
|
|
|
var ret = ''; |
|
|
|
|
|
|
|
return new Promise(function (resolve) { |
|
|
|
if (stdin.isTTY) { |
|
|
|
setImmediate(cb, ret); |
|
|
|
resolve(ret); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
@ -14,36 +15,38 @@ module.exports = function (cb) { |
|
|
|
stdin.on('readable', function () { |
|
|
|
var chunk; |
|
|
|
|
|
|
|
while (chunk = stdin.read()) { |
|
|
|
while ((chunk = stdin.read())) { |
|
|
|
ret += chunk; |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
stdin.on('end', function () { |
|
|
|
cb(ret); |
|
|
|
resolve(ret); |
|
|
|
}); |
|
|
|
}); |
|
|
|
}; |
|
|
|
|
|
|
|
module.exports.buffer = function (cb) { |
|
|
|
var stdin = process.stdin; |
|
|
|
module.exports.buffer = function () { |
|
|
|
var ret = []; |
|
|
|
var len = 0; |
|
|
|
|
|
|
|
return new Promise(function (resolve) { |
|
|
|
if (stdin.isTTY) { |
|
|
|
setImmediate(cb, new Buffer('')); |
|
|
|
resolve(new Buffer('')); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
stdin.on('readable', function () { |
|
|
|
var chunk; |
|
|
|
|
|
|
|
while (chunk = stdin.read()) { |
|
|
|
while ((chunk = stdin.read())) { |
|
|
|
ret.push(chunk); |
|
|
|
len += chunk.length; |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
stdin.on('end', function () { |
|
|
|
cb(Buffer.concat(ret, len)); |
|
|
|
resolve(Buffer.concat(ret, len)); |
|
|
|
}); |
|
|
|
}); |
|
|
|
}; |
|
|
|