{ "_args": [ [ { "raw": "duplexer3@^0.1.4", "scope": null, "escapedName": "duplexer3", "name": "duplexer3", "rawSpec": "^0.1.4", "spec": ">=0.1.4 <0.2.0", "type": "range" }, "/home/jdaugherty/work/GT2/GT2-Android/node_modules/got" ] ], "_from": "duplexer3@>=0.1.4 <0.2.0", "_id": "duplexer3@0.1.4", "_inCache": true, "_location": "/duplexer3", "_nodeVersion": "4.2.3", "_npmUser": { "name": "floatdrop", "email": "floatdrop@gmail.com" }, "_npmVersion": "2.14.7", "_phantomChildren": {}, "_requested": { "raw": "duplexer3@^0.1.4", "scope": null, "escapedName": "duplexer3", "name": "duplexer3", "rawSpec": "^0.1.4", "spec": ">=0.1.4 <0.2.0", "type": "range" }, "_requiredBy": [ "/got" ], "_resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", "_shasum": "ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2", "_shrinkwrap": null, "_spec": "duplexer3@^0.1.4", "_where": "/home/jdaugherty/work/GT2/GT2-Android/node_modules/got", "author": { "name": "Conrad Pankoff", "email": "deoxxa@fknsrs.biz", "url": "http://www.fknsrs.biz/" }, "bugs": { "url": "https://github.com/floatdrop/duplexer3/issues" }, "dependencies": {}, "description": "Like duplexer but using streams3", "devDependencies": { "mocha": "^2.2.5" }, "directories": {}, "dist": { "shasum": "ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2", "tarball": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz" }, "engine": { "node": ">=4" }, "files": [ "index.js" ], "gitHead": "810f45fd7216a4ec4585e673ad28f05852ed05a6", "homepage": "https://github.com/floatdrop/duplexer3#readme", "keywords": [ "duplex", "duplexer", "stream", "stream3", "join", "combine" ], "license": "BSD-3-Clause", "maintainers": [ { "name": "floatdrop", "email": "floatdrop@gmail.com" } ], "name": "duplexer3", "optionalDependencies": {}, "readme": "# duplexer3 [![Build Status](https://travis-ci.org/floatdrop/duplexer3.svg?branch=master)](https://travis-ci.org/floatdrop/duplexer3) [![Coverage Status](https://coveralls.io/repos/floatdrop/duplexer3/badge.svg?branch=master&service=github)](https://coveralls.io/github/floatdrop/duplexer3?branch=master)\n\nLike [duplexer2](https://github.com/deoxxa/duplexer2) but using Streams3 without readable-stream dependency\n\n```javascript\nvar stream = require(\"stream\");\n\nvar duplexer3 = require(\"duplexer3\");\n\nvar writable = new stream.Writable({objectMode: true}),\n readable = new stream.Readable({objectMode: true});\n\nwritable._write = function _write(input, encoding, done) {\n if (readable.push(input)) {\n return done();\n } else {\n readable.once(\"drain\", done);\n }\n};\n\nreadable._read = function _read(n) {\n // no-op\n};\n\n// simulate the readable thing closing after a bit\nwritable.once(\"finish\", function() {\n setTimeout(function() {\n readable.push(null);\n }, 500);\n});\n\nvar duplex = duplexer3(writable, readable);\n\nduplex.on(\"data\", function(e) {\n console.log(\"got data\", JSON.stringify(e));\n});\n\nduplex.on(\"finish\", function() {\n console.log(\"got finish event\");\n});\n\nduplex.on(\"end\", function() {\n console.log(\"got end event\");\n});\n\nduplex.write(\"oh, hi there\", function() {\n console.log(\"finished writing\");\n});\n\nduplex.end(function() {\n console.log(\"finished ending\");\n});\n```\n\n```\ngot data \"oh, hi there\"\nfinished writing\ngot finish event\nfinished ending\ngot end event\n```\n\n## Overview\n\nThis is a reimplementation of [duplexer](https://www.npmjs.com/package/duplexer) using the\nStreams3 API which is standard in Node as of v4. Everything largely\nworks the same.\n\n\n\n## Installation\n\n[Available via `npm`](https://docs.npmjs.com/cli/install):\n\n```\n$ npm i duplexer3\n```\n\n## API\n\n### duplexer3\n\nCreates a new `DuplexWrapper` object, which is the actual class that implements\nmost of the fun stuff. All that fun stuff is hidden. DON'T LOOK.\n\n```javascript\nduplexer3([options], writable, readable)\n```\n\n```javascript\nconst duplex = duplexer3(new stream.Writable(), new stream.Readable());\n```\n\nArguments\n\n* __options__ - an object specifying the regular `stream.Duplex` options, as\n well as the properties described below.\n* __writable__ - a writable stream\n* __readable__ - a readable stream\n\nOptions\n\n* __bubbleErrors__ - a boolean value that specifies whether to bubble errors\n from the underlying readable/writable streams. Default is `true`.\n\n\n## License\n\n3-clause BSD. [A copy](./LICENSE) is included with the source.\n\n## Contact\n\n* GitHub ([deoxxa](http://github.com/deoxxa))\n* Twitter ([@deoxxa](http://twitter.com/deoxxa))\n* Email ([deoxxa@fknsrs.biz](mailto:deoxxa@fknsrs.biz))\n", "readmeFilename": "README.md", "repository": { "type": "git", "url": "git+https://github.com/floatdrop/duplexer3.git" }, "scripts": { "test": "mocha -R tap" }, "version": "0.1.4" }