diff --git a/index.js b/index.js index 81808a9..96c24c9 100644 --- a/index.js +++ b/index.js @@ -55,24 +55,13 @@ RequireJsResolverPlugin.prototype.getConfig = function (fs) { }); }; -function registerHook(object, oldName, newName, cb) { - if (object.hooks) { - object.hooks[newName].tapAsync('RequireJsResolverPlugin', cb); - } else { - object.plugin(oldName, cb); - } -} - RequireJsResolverPlugin.prototype.apply = function (resolver) { const target = resolver.ensureHook('resolve'); - registerHook(resolver, 'module', 'module', (request, resolveContext, callback) => { - if (!callback) { - callback = resolveContext; - } + resolver.getHook('module').tapAsync('RequireJsResolverPlugin', (request, resolveContext, callback) => { this.getConfig(resolver.fileSystem).then(config => { if (config[request.request]) { const nextRequest = Object.assign({}, request, { request: config[request.request] }); - return resolver.doResolve(target, nextRequest, 'mapping via requirejs-config', callback); + return resolver.doResolve(target, nextRequest, 'mapping via requirejs-config', resolveContext, callback); } else { callback(); } diff --git a/package.json b/package.json index 310da30..0acff70 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,12 @@ ], "author": "Something Digital", "license": "ISC", + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, "bugs": { "url": "https://github.com/sdinteractive/webpack-requirejs-resolver/issues" },