New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

absolute-module-mapper-plugin

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

absolute-module-mapper-plugin - npm Package Compare versions

Comparing version 1.2.4 to 1.3.0

217

__tests__/main.test.js

@@ -10,4 +10,34 @@ /**

const fs = require('fs')
const {ResolverFactory, CachedInputFileSystem} = resolve;
const { ResolverFactory, CachedInputFileSystem } = resolve
const plugin = {
apply(resolver) {
const registerHook = name => {
resolver.getHook(name).tapAsync('AbsoluteModuleMapperPlugin', (request, resolveContext, callback) => {
console.log('name', name)
console.log('request', request)
console.log('resolveContext', resolveContext)
callback()
})
}
registerHook("resolve");
registerHook("parsedResolve");
registerHook("describedResolve");
registerHook("rawModule");
registerHook("module");
registerHook("relative");
registerHook("describedRelative");
registerHook("directory");
registerHook("existingDirectory");
registerHook("undescribedRawFile");
registerHook("rawFile");
registerHook("file");
registerHook("existingFile");
registerHook("resolved");
}
}
const sync = resolve.create.sync({

@@ -20,3 +50,3 @@ plugins: [new AbsoluteModuleMapperPlugin()]

fileSystem: new CachedInputFileSystem(fs, 4000),
extensions: [".js", ".json"],
extensions: ['.js', '.json']
}

@@ -26,112 +56,139 @@

it('simple case', function() {
expect(sync(fixture(''), './module')).toBe(
fixture('module/index.js')
)
expect(sync(fixture(''), './module')).toBe(fixture('module/index.js'))
})
it('should mapper', function () {
it('should mapper', function() {
const resolver = ResolverFactory.createResolver({
...resolverOptions,
plugins: [new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
mapper: {
'^<root>/module/(\\w+)': '<root>/to/$1'
}
})]
plugins: [
new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
mapper: {
'^<root>/module/(\\w+)': '<root>/to/$1'
}
}),
]
})
const path = resolver.resolveSync({
issuer: fixture('module/index.js')
}, fixture('module'), './a.js')
const path = resolver.resolveSync(
{
issuer: fixture('module/index.js')
},
fixture('module'),
'./a.js?query'
)
expect(path).toBe(fixture('to/a.js'))
});
expect(path).toBe(fixture('to/a.js?query'))
})
it('should mapper exclude node_modules', function () {
it('should mapper exclude node_modules', function() {
const resolver = ResolverFactory.createResolver({
...resolverOptions,
plugins: [new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
// include: [
// '**{,/}!node_modules{,/}**'
// ],
exclude: [
'**/node_modules/**'
],
mapper: {
'^<root>/module/(\\w+)': '<root>/to/$1'
}
})]
plugins: [
new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
// include: [
// '**{,/}!node_modules{,/}**'
// ],
exclude: ['**/node_modules/**'],
mapper: {
'^<root>/module/(\\w+)': '<root>/to/$1'
}
})
]
})
const path = resolver.resolveSync({
issuer: fixture('node_modules/index.js')
}, fixture('module'), './a.js')
const path = resolver.resolveSync(
{
issuer: fixture('node_modules/index.js')
},
fixture('module'),
'./a.js'
)
expect(path).toBe(fixture('module/a.js'))
});
})
it('should mapper async', function (done) {
it('should mapper async', function(done) {
const resolver = ResolverFactory.createResolver({
...resolverOptions,
plugins: [new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
mapper: (path, ctx, cb) => {
cb(null, path.replace(new RegExp('/module/(\\w+)'), '/to/$1'))
}
})]
plugins: [
new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
mapper: (path, ctx, cb) => {
cb(null, path.replace(new RegExp('/module/(\\w+)'), '/to/$1'))
}
})
]
})
resolver.resolve({
issuer: fixture('module/index.js')
}, fixture('module'), './a.js', {}, (err, result) => {
expect(result).toBe(fixture('to/a.js'))
done(err)
})
});
resolver.resolve(
{
issuer: fixture('module/index.js')
},
fixture('module'),
'./a.js?query',
{},
(err, result) => {
expect(result).toBe(fixture('to/a.js?query'))
done(err)
}
)
})
it('should requestMapper', function () {
it('should requestMapper', function() {
const resolver = ResolverFactory.createResolver({
...resolverOptions,
plugins: [new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
requestMapper: {
'^./a.js': '<root>/to/b.js'
}
})]
plugins: [
new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
requestMapper: {
'^./a.js': '<root>/to/b.js'
}
})
]
})
const path = resolver.resolveSync({
issuer: fixture('module/index.js')
}, fixture('module'), './a.js')
const path = resolver.resolveSync(
{
issuer: fixture('module/index.js')
},
fixture('module'),
'./a.js?query'
)
expect(path).toBe(fixture('to/b.js'))
});
expect(path).toBe(fixture('to/b.js?query'))
})
it('should mapper & requestMapper', function () {
it('should mapper & requestMapper', function() {
const resolver = ResolverFactory.createResolver({
...resolverOptions,
plugins: [new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
requestMapper: {
'^./a.js': '<root>/module/b.js'
},
mapper: {
'^<root>/module/(\\w+)': '<root>/to/$1'
}
})]
plugins: [
new AbsoluteModuleMapperPlugin({
root: fixture(''),
silent: false,
requestMapper: {
'^./a.js': '<root>/module/b.js'
},
mapper: {
'^<root>/module/(\\w+)': '<root>/to/$1'
}
})
]
})
const path = resolver.resolveSync({
issuer: fixture('module/index.js')
}, fixture('module'), './a.js')
const path = resolver.resolveSync(
{
issuer: fixture('module/index.js')
},
fixture('module'),
'./a.js'
)
expect(path).toBe(fixture('to/b.js'))
});
})
})

@@ -0,1 +1,5 @@

# [1.3.0](https://github.com/imcuttle/absolute-module-mapper-plugin/compare/v1.2.4...v1.3.0) (2020-02-16)
## [1.2.4](https://github.com/imcuttle/absolute-module-mapper-plugin/compare/v1.2.3...v1.2.4) (2020-02-13)

@@ -2,0 +6,0 @@

@@ -104,4 +104,3 @@ /**

if (requestMapper) {
const requestTarget = resolver.ensureHook('parsedResolve')
resolver.getHook('resolve').tapAsync('AbsoluteModuleMapperPlugin', (request, resolveContext, callback) => {
resolver.getHook('parsedResolve').tapAsync('AbsoluteModuleMapperPlugin', (request, resolveContext, callback) => {
const from = request.context.issuer

@@ -130,3 +129,2 @@ if (from && isMatch(include, from) && !isMatch(exclude, from)) {

if (mapper) {
const target = resolver.ensureHook('resolved')
resolver.getHook('existingFile').tapAsync('AbsoluteModuleMapperPlugin', (request, resolveContext, callback) => {

@@ -133,0 +131,0 @@ const from = request.context.issuer

{
"name": "absolute-module-mapper-plugin",
"version": "1.2.4",
"version": "1.3.0",
"main": "index.js",

@@ -5,0 +5,0 @@ "description": "The plugin on enhanced-resolver to map module path",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc