33 lines
		
	
	
		
			639 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			639 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| const os = require('os');
 | |
| 
 | |
| const nameMap = new Map([
 | |
| 	[19, 'Catalina'],
 | |
| 	[18, 'Mojave'],
 | |
| 	[17, 'High Sierra'],
 | |
| 	[16, 'Sierra'],
 | |
| 	[15, 'El Capitan'],
 | |
| 	[14, 'Yosemite'],
 | |
| 	[13, 'Mavericks'],
 | |
| 	[12, 'Mountain Lion'],
 | |
| 	[11, 'Lion'],
 | |
| 	[10, 'Snow Leopard'],
 | |
| 	[9, 'Leopard'],
 | |
| 	[8, 'Tiger'],
 | |
| 	[7, 'Panther'],
 | |
| 	[6, 'Jaguar'],
 | |
| 	[5, 'Puma']
 | |
| ]);
 | |
| 
 | |
| const macosRelease = release => {
 | |
| 	release = Number((release || os.release()).split('.')[0]);
 | |
| 	return {
 | |
| 		name: nameMap.get(release),
 | |
| 		version: '10.' + (release - 4)
 | |
| 	};
 | |
| };
 | |
| 
 | |
| module.exports = macosRelease;
 | |
| // TODO: remove this in the next major version
 | |
| module.exports.default = macosRelease;
 |