jest-pnp-resolver
Advanced tools
Comparing version 1.0.2 to 1.1.0
34
index.js
@@ -10,15 +10,33 @@ | ||
if (pnp) { | ||
module.exports = (request, {basedir, extensions}) => { | ||
let defaultResolver; | ||
function requireDefaultResolver() { | ||
if (!defaultResolver) { | ||
try { | ||
defaultResolver = require(`jest-resolve/build/defaultResolver`).default; | ||
} catch (error) { | ||
defaultResolver = require(`jest-resolve/build/default_resolver`).default; | ||
} | ||
} | ||
return defaultResolver; | ||
} | ||
module.exports = (request, options) => { | ||
const {basedir, defaultResolver, extensions} = options; | ||
if (pnp) { | ||
const resolution = pnp.resolveRequest(request, `${basedir}/`, {extensions}); | ||
// When the request is a native module, Jest expects to get the string back unmodified, but pnp returns null instead. | ||
if (resolution === null) { | ||
if (resolution === null) | ||
return request; | ||
} | ||
return resolution; | ||
}; | ||
} else { | ||
module.exports = require(`jest-resolve/build/default_resolver`).default; | ||
} | ||
} else { | ||
if (!defaultResolver) | ||
defaultResolver = requireDefaultResolver(); | ||
return defaultResolver(request, options); | ||
} | ||
}; |
{ | ||
"name": "jest-pnp-resolver", | ||
"version": "1.0.2", | ||
"version": "1.1.0", | ||
"description": "plug'n'play resolver for Webpack", | ||
@@ -25,3 +25,8 @@ "license": "MIT", | ||
"jest-resolve": "*" | ||
}, | ||
"peerDependenciesMeta": { | ||
"jest-resolve": { | ||
"optional": true | ||
} | ||
} | ||
} |
@@ -11,3 +11,3 @@ # <img src="https://github.com/facebook/jest/blob/master/website/static/img/jest.png" height="40" align="right" /> [Plug'n'Play](https://github.com/yarnpkg/rfcs/pull/101) resolver for Jest | ||
``` | ||
yarn add -D jest-pnp-resolver jest-resolve | ||
yarn add -D jest-pnp-resolver | ||
``` | ||
@@ -21,8 +21,6 @@ | ||
module.exports = { | ||
resolver: require.resolve(`jest-pnp-resolver`); | ||
resolver: require.resolve(`jest-pnp-resolver`) | ||
}; | ||
``` | ||
Note that `jest-resolve` is a peer dependency of `jest-pnp-resolver`, but is only ever used to fallback to the regular resolver when Jest is used on non-pnp environments. | ||
## License (MIT) | ||
@@ -29,0 +27,0 @@ |
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
3691
31
33
3