Package Exports
- resolve-pkg
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (resolve-pkg) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
resolve-pkg 
Resolve the path of a package regardless of it having an entry
Some packages like CLI tools and grunt tasks don't have a entry point, like "main": "foo.js"
in package.json, resulting in them not being resolvable by require.resolve()
. Unlike require.resolve()
, this module also resolves packages without an entry point, returns null
instead of throwing when the module can't be found, and resolves from process.cwd()
instead __dirname
by default.
Install
$ npm install --save resolve-pkg
Usage
const resolvePkg = require('resolve-pkg');
// $ npm install --save-dev grunt-svgmin
resolvePkg('grunt-svgmin/tasks', {cwd: __dirname});
//=> '/Users/sindresorhus/unicorn/node_modules/grunt-svgmin/tasks'
// fails here as grunt tasks usually don't have a defined main entry point
require.resolve('grunt-svgmin/tasks');
//=> Error: Cannot find module 'grunt-svgmin'
API
resolvePkg(moduleId, [options])
moduleId
Type: string
What you would use in require()
.
options
cwd
Type: boolean
Default: process.cwd()
Directory to resolve from.
Related
- resolve-cwd - Resolve the path of a module from the current working directory
- resolve-from - Resolve the path of a module from a given path
- req-from - Require a module from a given path
- req-cwd - Require a module from the current working directory
- lazy-req - Require modules lazily
License
MIT © Sindre Sorhus