• File: BufferStream.js
  • Full Path: /var/www/nodejs/daily_store_reports_nodejs/node_modules/unzipper/lib/BufferStream.js
  • Date Modified: 02/04/2023 9:31 PM
  • File size: 669 bytes
  • MIME-type: text/plain
  • Charset: utf-8
var Promise = require('bluebird');
var Stream = require('stream');
var Buffer = require('./Buffer');

// Backwards compatibility for node versions < 8
if (!Stream.Writable || !Stream.Writable.prototype.destroy)
  Stream = require('readable-stream');

module.exports = function(entry) {
  return new Promise(function(resolve,reject) {
    var chunks = [];
    var bufferStream = Stream.Transform()
      .on('finish',function() {
        resolve(Buffer.concat(chunks));
      })
      .on('error',reject);
        
    bufferStream._transform = function(d,e,cb) {
      chunks.push(d);
      cb();
    };
    entry.on('error',reject)
      .pipe(bufferStream);
  });
};