diff --git a/packages/core/src/utils-hoist/node.ts b/packages/core/src/utils-hoist/node.ts index a0311efc7a93..94e8001863aa 100644 --- a/packages/core/src/utils-hoist/node.ts +++ b/packages/core/src/utils-hoist/node.ts @@ -41,21 +41,23 @@ function dynamicRequire(mod: any, request: string): any { * That is to mimic the behavior of `require.resolve` exactly. * * @param moduleName module name to require + * @param existingModule module to use for requiring * @returns possibly required module */ -export function loadModule(moduleName: string): T | undefined { +// eslint-disable-next-line @typescript-eslint/no-explicit-any +export function loadModule(moduleName: string, existingModule: any = module): T | undefined { let mod: T | undefined; try { - mod = dynamicRequire(module, moduleName); + mod = dynamicRequire(existingModule, moduleName); } catch (e) { // no-empty } if (!mod) { try { - const { cwd } = dynamicRequire(module, 'process'); - mod = dynamicRequire(module, `${cwd()}/node_modules/${moduleName}`) as T; + const { cwd } = dynamicRequire(existingModule, 'process'); + mod = dynamicRequire(existingModule, `${cwd()}/node_modules/${moduleName}`) as T; } catch (e) { // no-empty } diff --git a/packages/nextjs/src/config/webpack.ts b/packages/nextjs/src/config/webpack.ts index bb73a2fb1859..8dbebf3935df 100644 --- a/packages/nextjs/src/config/webpack.ts +++ b/packages/nextjs/src/config/webpack.ts @@ -332,7 +332,7 @@ export function constructWebpackConfigFunction( // Symbolication for dev-mode errors is done elsewhere. if (!isDev) { // eslint-disable-next-line @typescript-eslint/no-explicit-any - const { sentryWebpackPlugin } = loadModule<{ sentryWebpackPlugin: any }>('@sentry/webpack-plugin') ?? {}; + const { sentryWebpackPlugin } = loadModule<{ sentryWebpackPlugin: any }>('@sentry/webpack-plugin', module) ?? {}; if (sentryWebpackPlugin) { if (!userSentryOptions.sourcemaps?.disable) { diff --git a/packages/remix/src/utils/instrumentServer.ts b/packages/remix/src/utils/instrumentServer.ts index a0dd11874416..c6113ea7f0a3 100644 --- a/packages/remix/src/utils/instrumentServer.ts +++ b/packages/remix/src/utils/instrumentServer.ts @@ -301,7 +301,7 @@ const makeWrappedCreateRequestHandler = () => export function instrumentServer(): void { const pkg = loadModule<{ createRequestHandler: CreateRequestHandlerFunction; - }>('@remix-run/server-runtime'); + }>('@remix-run/server-runtime', module); if (!pkg) { DEBUG_BUILD && logger.warn('Remix SDK was unable to require `@remix-run/server-runtime` package.');