X7ROOT File Manager
Current Path:
/lib/node_modules/npm/node_modules/stream-iterate
lib
/
node_modules
/
npm
/
node_modules
/
stream-iterate
/
ðŸ“
..
📄
.npmignore
(13 B)
📄
.travis.yml
(60 B)
📄
LICENSE
(1.05 KB)
📄
README.md
(834 B)
📄
index.js
(1.33 KB)
ðŸ“
node_modules
📄
package.json
(1.49 KB)
📄
test.js
(1.2 KB)
Editing: index.js
var Readable = require('readable-stream').Readable var shift = require('stream-shift') var stream2 = function (stream) { if (stream._readableState) return stream return new Readable({objectMode: true, highWaterMark: 16}).wrap(stream) } module.exports = function (stream) { stream = stream2(stream) var ended = false var data = null var err = null var destroyed = false var fn = null var consume = function (e) { if (e) { destroyed = true if (stream.destroy) stream.destroy(e) return } data = null err = null } var onresult = function () { if (!fn) return var tmp = fn fn = undefined tmp(err, data, consume) } var update = function () { if (!fn) return data = shift(stream) if (data === null && !ended) return onresult() } var onend = function () { ended = true onresult() } stream.on('readable', update) stream.on('error', function (e) { err = e onresult() }) stream.on('close', function () { if (stream._readableState.ended) return onend() }) stream.on('end', onend) return function (callback) { if (destroyed) return if (err) return callback(err, null, consume) if (data) return callback(null, data, consume) if (ended) return callback(null, null, consume) fn = callback update() } }
Upload File
Create Folder