mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
module: use kNodeModulesRE to detect node_modules
This is faster and more consistent with other places using the regular expression to detect node_modules. PR-URL: https://github.com/nodejs/node/pull/55243 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Jacob Smith <jacob@frende.me> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
This commit is contained in:
parent
d2ad9b4fb6
commit
bdd590be73
@ -124,6 +124,7 @@ const { pathToFileURL, fileURLToPath, isURL } = require('internal/url');
|
||||
const {
|
||||
pendingDeprecate,
|
||||
emitExperimentalWarning,
|
||||
isUnderNodeModules,
|
||||
kEmptyObject,
|
||||
setOwnProperty,
|
||||
getLazy,
|
||||
@ -146,7 +147,6 @@ const { safeGetenv } = internalBinding('credentials');
|
||||
const {
|
||||
getCjsConditions,
|
||||
initializeCjsConditions,
|
||||
isUnderNodeModules,
|
||||
loadBuiltinModule,
|
||||
makeRequireFunction,
|
||||
setHasStartedUserCJSExecution,
|
||||
|
@ -3,7 +3,10 @@
|
||||
const {
|
||||
RegExpPrototypeExec,
|
||||
} = primordials;
|
||||
const { kEmptyObject } = require('internal/util');
|
||||
const {
|
||||
isUnderNodeModules,
|
||||
kEmptyObject,
|
||||
} = require('internal/util');
|
||||
|
||||
const { defaultGetFormat } = require('internal/modules/esm/get_format');
|
||||
const { validateAttributes, emitImportAssertionWarning } = require('internal/modules/esm/assert');
|
||||
@ -14,9 +17,6 @@ const defaultType =
|
||||
getOptionValue('--experimental-default-type');
|
||||
|
||||
const { Buffer: { from: BufferFrom } } = require('buffer');
|
||||
const {
|
||||
isUnderNodeModules,
|
||||
} = require('internal/modules/helpers');
|
||||
|
||||
const { URL } = require('internal/url');
|
||||
const {
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
const {
|
||||
ArrayPrototypeForEach,
|
||||
ArrayPrototypeIncludes,
|
||||
ObjectDefineProperty,
|
||||
ObjectFreeze,
|
||||
ObjectPrototypeHasOwnProperty,
|
||||
@ -11,7 +10,6 @@ const {
|
||||
StringPrototypeCharCodeAt,
|
||||
StringPrototypeIncludes,
|
||||
StringPrototypeSlice,
|
||||
StringPrototypeSplit,
|
||||
StringPrototypeStartsWith,
|
||||
} = primordials;
|
||||
const {
|
||||
@ -387,13 +385,6 @@ function stripTypeScriptTypes(source, filename) {
|
||||
return `${code}\n\n//# sourceURL=${filename}`;
|
||||
}
|
||||
|
||||
function isUnderNodeModules(filename) {
|
||||
const resolvedPath = path.resolve(filename);
|
||||
const normalizedPath = path.normalize(resolvedPath);
|
||||
const splitPath = StringPrototypeSplit(normalizedPath, path.sep);
|
||||
return ArrayPrototypeIncludes(splitPath, 'node_modules');
|
||||
}
|
||||
|
||||
/** @type {import('internal/util/types')} */
|
||||
let _TYPES = null;
|
||||
/**
|
||||
@ -494,7 +485,6 @@ module.exports = {
|
||||
getCjsConditions,
|
||||
getCompileCacheDir,
|
||||
initializeCjsConditions,
|
||||
isUnderNodeModules,
|
||||
loadBuiltinModule,
|
||||
makeRequireFunction,
|
||||
normalizeReferrerURL,
|
||||
|
@ -484,6 +484,10 @@ function spliceOne(list, index) {
|
||||
|
||||
const kNodeModulesRE = /^(?:.*)[\\/]node_modules[\\/]/;
|
||||
|
||||
function isUnderNodeModules(filename) {
|
||||
return filename && (RegExpPrototypeExec(kNodeModulesRE, filename) !== null);
|
||||
}
|
||||
|
||||
let getStructuredStackImpl;
|
||||
|
||||
function lazyGetStructuredStack() {
|
||||
@ -531,7 +535,7 @@ function isInsideNodeModules() {
|
||||
) {
|
||||
continue;
|
||||
}
|
||||
return RegExpPrototypeExec(kNodeModulesRE, filename) !== null;
|
||||
return isUnderNodeModules(filename);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
@ -911,6 +915,7 @@ module.exports = {
|
||||
guessHandleType,
|
||||
isError,
|
||||
isInsideNodeModules,
|
||||
isUnderNodeModules,
|
||||
isMacOS,
|
||||
isWindows,
|
||||
join,
|
||||
|
Loading…
Reference in New Issue
Block a user