0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
nodejs/deps/npm/node_modules/find-npm-prefix
Rebecca Turner 468ab4519e deps: upgrade npm to 6.1.0
PR-URL: https://github.com/nodejs/node/pull/20190
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2018-05-24 23:24:45 -07:00
..
test
find-prefix.js deps: upgrade npm to 6.1.0 2018-05-24 23:24:45 -07:00
LICENSE
package.json deps: upgrade npm to 6.1.0 2018-05-24 23:24:45 -07:00
README.md

find-npm-prefix

Find the npm project directory associated with for a given directory

USAGE

const findPrefix = require('find-npm-prefix')

findPrefix(process.cwd).then(prefix => {
  …
})

findPrefix(dir) → Promise(prefix)

This computes the npm prefix, that is, the directory that npm adds and removes modules from for a given path.

It takes a directory as an argument and returns a promise of the associated prefix directory.

Algorithm

  1. If the directory is a node_modules folder, scan up the tree till you find a non-node_modules directory and return that.
  2. Else, look for the first parent directory that contains a node_modules or a package.json
  3. If one is found, that's the prefix.
  4. If none are found, return the original directory we were given