mirror of
				https://kkgithub.com/actions/setup-node.git
				synced 2025-11-04 12:46:16 +08:00 
			
		
		
		
	
		
			
	
	
		
			26 lines
		
	
	
		
			579 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			26 lines
		
	
	
		
			579 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var crypto = require('crypto');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								function sha1(bytes) {
							 | 
						||
| 
								 | 
							
								  if (typeof Buffer.from === 'function') {
							 | 
						||
| 
								 | 
							
								    // Modern Buffer API
							 | 
						||
| 
								 | 
							
								    if (Array.isArray(bytes)) {
							 | 
						||
| 
								 | 
							
								      bytes = Buffer.from(bytes);
							 | 
						||
| 
								 | 
							
								    } else if (typeof bytes === 'string') {
							 | 
						||
| 
								 | 
							
								      bytes = Buffer.from(bytes, 'utf8');
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  } else {
							 | 
						||
| 
								 | 
							
								    // Pre-v4 Buffer API
							 | 
						||
| 
								 | 
							
								    if (Array.isArray(bytes)) {
							 | 
						||
| 
								 | 
							
								      bytes = new Buffer(bytes);
							 | 
						||
| 
								 | 
							
								    } else if (typeof bytes === 'string') {
							 | 
						||
| 
								 | 
							
								      bytes = new Buffer(bytes, 'utf8');
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  return crypto.createHash('sha1').update(bytes).digest();
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = sha1;
							 |