ls-exports
Version:
CLI for `list-exports`: Given a package name and a version number, or a path to a package.json, what specifiers does it expose?
22 lines (14 loc) • 508 B
JavaScript
;
const { promisify } = require('util');
const path = require('path');
const npa = require('npm-package-arg');
const pacote = require('pacote');
const { dir } = require('tmp');
const tmpDir = promisify(dir);
module.exports = async function getPackageJSONPath(specifier) {
const { name } = npa(specifier);
const cwd = await tmpDir();
const packageDir = path.join(cwd, 'node_modules', name);
await pacote.extract(specifier, packageDir);
return path.join(packageDir, 'package.json');
};