Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
refactor: only apply redirect if the hook is enabled
  • Loading branch information
ejose19 committed Oct 5, 2021
commit a0fdd9b99b4202e6d66ff3e65a34a7e5a7ce8e46
29 changes: 16 additions & 13 deletions source-map-support.js
Original file line number Diff line number Diff line change
Expand Up @@ -651,21 +651,24 @@ exports.install = function(options) {
onConflictingLibraryRedirectArr: []
}
Module._resolveFilename = sharedData.moduleResolveFilenameHook.installedValue = function (request, parent, isMain, options) {
// Match all source-map-support entrypoints: source-map-support, source-map-support/register
let requestRedirect;
if (request === 'source-map-support') {
requestRedirect = './';
} else if (request === 'source-map-support/register') {
requestRedirect = './register';
}
if (sharedData.moduleResolveFilenameHook && sharedData.moduleResolveFilenameHook.enabled) {
// Match all source-map-support entrypoints: source-map-support, source-map-support/register
let requestRedirect;
if (request === 'source-map-support') {
requestRedirect = './';
} else if (request === 'source-map-support/register') {
requestRedirect = './register';
}

if (requestRedirect !== undefined) {
const newRequest = require.resolve(requestRedirect);
for (const cb of sharedData.moduleResolveFilenameHook.onConflictingLibraryRedirectArr) {
cb(request, parent, isMain, options, newRequest);
}
request = newRequest;
if (requestRedirect !== undefined) {
const newRequest = require.resolve(requestRedirect);
for (const cb of sharedData.moduleResolveFilenameHook.onConflictingLibraryRedirectArr) {
cb(request, parent, isMain, options, newRequest);
}
request = newRequest;
}
}

return originalValue.call(this, request, parent, isMain, options);
}
}
Expand Down