You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							30 lines
						
					
					
						
							765 B
						
					
					
				
			
		
		
	
	
							30 lines
						
					
					
						
							765 B
						
					
					
				/**
 | 
						|
 * node-compress-commons
 | 
						|
 *
 | 
						|
 * Copyright (c) 2014 Chris Talkington, contributors.
 | 
						|
 * Licensed under the MIT license.
 | 
						|
 * https://github.com/archiverjs/node-compress-commons/blob/master/LICENSE-MIT
 | 
						|
 */
 | 
						|
var Stream = require('stream').Stream;
 | 
						|
var PassThrough = require('readable-stream').PassThrough;
 | 
						|
 | 
						|
var util = module.exports = {};
 | 
						|
 | 
						|
util.isStream = function(source) {
 | 
						|
  return source instanceof Stream;
 | 
						|
};
 | 
						|
 | 
						|
util.normalizeInputSource = function(source) {
 | 
						|
  if (source === null) {
 | 
						|
    return Buffer.alloc(0);
 | 
						|
  } else if (typeof source === 'string') {
 | 
						|
    return Buffer.from(source);
 | 
						|
  } else if (util.isStream(source) && !source._readableState) {
 | 
						|
    var normalized = new PassThrough();
 | 
						|
    source.pipe(normalized);
 | 
						|
 | 
						|
    return normalized;
 | 
						|
  }
 | 
						|
 | 
						|
  return source;
 | 
						|
}; |