12345678910111213141516171819202122 |
- '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 && slashIndex !== moduleName.length - 1) {
- moduleName = moduleName.slice(0, slashIndex);
- }
- return moduleSet.has(moduleName);
- };
|