waitForData.js 285 B

123456789101112
  1. export default function waitForData(stream, cond = null) {
  2. return new Promise(resolve => {
  3. const listener = data => {
  4. if (cond ? cond(data) : true) {
  5. resolve(data)
  6. stream.removeListener('data', listener)
  7. }
  8. }
  9. stream.on('data', listener)
  10. })
  11. }