stream-to-promise
Advanced tools
Comparing version 2.0.0 to 2.1.0
@@ -22,2 +22,5 @@ 'use strict' | ||
.then(function concat (parts) { | ||
if (stream._readableState && stream._readableState.objectMode) { | ||
return parts | ||
} | ||
return Buffer.concat(parts.map(bufferize)) | ||
@@ -24,0 +27,0 @@ }) |
{ | ||
"name": "stream-to-promise", | ||
"version": "2.0.0", | ||
"version": "2.1.0", | ||
"description": "Convert streams (readable or writable) to promises", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -1,31 +0,44 @@ | ||
stream-to-promise [![Build Status](https://travis-ci.org/bendrucker/stream-to-promise.svg)](https://travis-ci.org/bendrucker/stream-to-promise) [![NPM version](https://badge.fury.io/js/stream-to-promise.svg)](http://badge.fury.io/js/stream-to-promise) | ||
stream-to-promise [![Build Status](https://travis-ci.org/bendrucker/stream-to-promise.svg)](https://travis-ci.org/bendrucker/stream-to-promise) | ||
================= | ||
Convert streams (readable or writable) to promises | ||
> Convert streams (readable or writable) to promises | ||
## Installing | ||
```sh | ||
$ npm install --save[-dev] stream-to-promise | ||
``` | ||
## Examples | ||
### Readable Streams | ||
```js | ||
streamToPromise(readableStream).then(function (buffer) { | ||
// buffer.length === 3 | ||
}); | ||
readableStream.emit('data', new Buffer()); | ||
readableStream.emit('data', new Buffer()); | ||
readableStream.emit('data', new Buffer()); | ||
readableStream.emit('end'); // promise is resolved here | ||
}) | ||
readableStream.emit('data', new Buffer()) | ||
readableStream.emit('data', new Buffer()) | ||
readableStream.emit('data', new Buffer()) | ||
readableStream.emit('end') // promise is resolved here | ||
``` | ||
### Writable Streams | ||
```js | ||
streamToPromise(writableStream).then(function () { | ||
// resolves undefined | ||
}); | ||
writableStream.write('data'); | ||
writeableStream.end(); // promise is resolved here | ||
}) | ||
writableStream.write('data') | ||
writeableStream.end() // promise is resolved here | ||
``` | ||
### Error Handling | ||
```js | ||
var err = new Error(); | ||
var err = new Error() | ||
streamToPromise(stream).catch(function (error) { | ||
// error === err; | ||
}); | ||
stream.emit('error', err); // promise is rejected here | ||
// error === err | ||
}) | ||
stream.emit('error', err) // promise is rejected here | ||
``` |
3916
30
45