Module
Node.Library.Execa.NpmRunPath
- Package
- purescript-node-execa
- Repository
- jordanmartinez/purescript-node-execa
#NpmRunPathOptions Source
type NpmRunPathOptions = { cwd :: Maybe String, execPath :: Maybe String, path :: Maybe String }cwd: the working directory.
path: the PATH to be appended. Set it to an empty string to exclude the default PATH
execPath: the pathe to the current Node.js executable.
Its directory is pushed to the front of PATH.
It can be either an absolute path or a path relative to the cwd option.
#npmRunPathEnv Source
npmRunPathEnv :: Object String -> NpmRunPathOptions -> Effect (Object String)Modifies the given environment's PATH key
so that any locally installed NPM binaries are executed.
Works by recursively walking up the file system
and prepending node_modules/.bin to the PATH.
In other words, given a cwd of parent1/parent2/root/,
updates the PATH key to:
Array.intercalate Path.delimiter $
[ "parent1/parent2/root/node_modules/.bin"
, "parent1/parent2/node_modules/.bin"
, "parent1/node_modules/.bin"
]
<> (foldMap (\a -> [a]) $ Object.lookup "PATH" $ process.env)
- Modules
- Node.
Library. Execa - Node.
Library. Execa. CrossSpawn - Node.
Library. Execa. GetStream - Node.
Library. Execa. IsExe - Node.
Library. Execa. MergeStream - Node.
Library. Execa. NpmRunPath - Node.
Library. Execa. ParseCommand - Node.
Library. Execa. ShebangCommand - Node.
Library. Execa. SignalExit - Node.
Library. Execa. StripFinalNewline - Node.
Library. Execa. Utils - Node.
Library. Execa. Which