X7ROOT File Manager
Current Path:
/lib/node_modules/npm/node_modules/get-stream
lib
/
node_modules
/
npm
/
node_modules
/
get-stream
/
ðŸ“
..
📄
buffer-stream.js
(841 B)
📄
index.js
(1.22 KB)
📄
license
(1.08 KB)
📄
package.json
(1.87 KB)
📄
readme.md
(3.87 KB)
Editing: index.js
'use strict'; const pump = require('pump'); const bufferStream = require('./buffer-stream'); class MaxBufferError extends Error { constructor() { super('maxBuffer exceeded'); this.name = 'MaxBufferError'; } } function getStream(inputStream, options) { if (!inputStream) { return Promise.reject(new Error('Expected a stream')); } options = Object.assign({maxBuffer: Infinity}, options); const {maxBuffer} = options; let stream; return new Promise((resolve, reject) => { const rejectPromise = error => { if (error) { // A null check error.bufferedData = stream.getBufferedValue(); } reject(error); }; stream = pump(inputStream, bufferStream(options), error => { if (error) { rejectPromise(error); return; } resolve(); }); stream.on('data', () => { if (stream.getBufferedLength() > maxBuffer) { rejectPromise(new MaxBufferError()); } }); }).then(() => stream.getBufferedValue()); } module.exports = getStream; module.exports.buffer = (stream, options) => getStream(stream, Object.assign({}, options, {encoding: 'buffer'})); module.exports.array = (stream, options) => getStream(stream, Object.assign({}, options, {array: true})); module.exports.MaxBufferError = MaxBufferError;
Upload File
Create Folder