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.
		
		
		
		
		
			
		
			
				
					
					
						
							23 lines
						
					
					
						
							526 B
						
					
					
				
			
		
		
	
	
							23 lines
						
					
					
						
							526 B
						
					
					
				| 'use strict';
 | |
| const builtinModules = require('builtin-modules');
 | |
| 
 | |
| const moduleSet = new Set(builtinModules);
 | |
| const NODE_PROTOCOL = 'node:';
 | |
| 
 | |
| module.exports = moduleName => {
 | |
| 	if (typeof moduleName !== 'string') {
 | |
| 		throw new TypeError('Expected a string');
 | |
| 	}
 | |
| 
 | |
| 	if (moduleName.startsWith(NODE_PROTOCOL)) {
 | |
| 		moduleName = moduleName.slice(NODE_PROTOCOL.length);
 | |
| 	}
 | |
| 
 | |
| 	const slashIndex = moduleName.indexOf('/');
 | |
| 	if (slashIndex !== -1) {
 | |
| 		moduleName = moduleName.slice(0, slashIndex);
 | |
| 	}
 | |
| 
 | |
| 	return moduleSet.has(moduleName);
 | |
| };
 |