Current Path: > > lib > node_modules > npm > lib
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
auth | Directory | - | - | |
config | Directory | - | - | |
doctor | Directory | - | - | |
install | Directory | - | - | |
search | Directory | - | - | |
utils | Directory | - | - | |
access.js | File | 5672 bytes | March 10 2021 14:36:36. | |
adduser.js | File | 1337 bytes | March 10 2021 14:36:36. | |
audit.js | File | 10811 bytes | March 10 2021 14:36:36. | |
bin.js | File | 515 bytes | March 10 2021 14:36:36. | |
bugs.js | File | 864 bytes | March 10 2021 14:36:35. | |
build.js | File | 4545 bytes | March 10 2021 14:36:36. | |
cache.js | File | 4773 bytes | March 10 2021 14:36:36. | |
ci.js | File | 1341 bytes | March 10 2021 14:36:36. | |
completion.js | File | 7278 bytes | March 10 2021 14:36:36. | |
config.js | File | 7612 bytes | March 10 2021 14:36:36. | |
dedupe.js | File | 4999 bytes | March 10 2021 14:36:35. | |
deprecate.js | File | 2157 bytes | March 10 2021 14:36:35. | |
dist-tag.js | File | 4204 bytes | March 10 2021 14:36:36. | |
docs.js | File | 1063 bytes | March 10 2021 14:36:36. | |
doctor.js | File | 4075 bytes | March 10 2021 14:36:35. | |
edit.js | File | 1407 bytes | March 10 2021 14:36:36. | |
explore.js | File | 1709 bytes | March 10 2021 14:36:36. | |
fetch-package-metadata.js | File | 4064 bytes | March 10 2021 14:36:36. | |
fetch-package-metadata.md | File | 1811 bytes | March 10 2021 14:36:36. | |
fund.js | File | 5026 bytes | March 10 2021 14:36:36. | |
get.js | File | 235 bytes | March 10 2021 14:36:36. | |
help-search.js | File | 5777 bytes | March 10 2021 14:36:36. | |
help.js | File | 6507 bytes | March 10 2021 14:36:36. | |
hook.js | File | 4727 bytes | March 10 2021 14:36:35. | |
init.js | File | 2805 bytes | March 10 2021 14:36:36. | |
install-ci-test.js | File | 486 bytes | March 10 2021 14:36:36. | |
install-test.js | File | 507 bytes | March 10 2021 14:36:36. | |
install.js | File | 37345 bytes | March 10 2021 14:36:36. | |
link.js | File | 5739 bytes | March 10 2021 14:36:36. | |
logout.js | File | 1289 bytes | March 10 2021 14:36:36. | |
ls.js | File | 16480 bytes | March 10 2021 14:36:36. | |
npm.js | File | 14719 bytes | March 10 2021 14:36:36. | |
org.js | File | 4276 bytes | March 10 2021 14:36:36. | |
outdated.js | File | 12572 bytes | March 10 2021 14:36:35. | |
owner.js | File | 6754 bytes | March 10 2021 14:36:36. | |
pack.js | File | 12068 bytes | March 10 2021 14:36:36. | |
ping.js | File | 1141 bytes | March 10 2021 14:36:36. | |
prefix.js | File | 330 bytes | March 10 2021 14:36:36. | |
profile.js | File | 11401 bytes | March 10 2021 14:36:36. | |
prune.js | File | 2281 bytes | March 10 2021 14:36:36. | |
publish.js | File | 5264 bytes | March 10 2021 14:36:36. | |
rebuild.js | File | 2143 bytes | March 10 2021 14:36:36. | |
repo.js | File | 1471 bytes | March 10 2021 14:36:35. | |
restart.js | File | 64 bytes | March 10 2021 14:36:36. | |
root.js | File | 320 bytes | March 10 2021 14:36:35. | |
run-script.js | File | 5540 bytes | March 10 2021 14:36:36. | |
search.js | File | 3442 bytes | March 10 2021 14:36:36. | |
set.js | File | 276 bytes | March 10 2021 14:36:36. | |
shrinkwrap.js | File | 10056 bytes | March 10 2021 14:36:36. | |
star.js | File | 2157 bytes | March 10 2021 14:36:36. | |
stars.js | File | 1054 bytes | March 10 2021 14:36:36. | |
start.js | File | 62 bytes | March 10 2021 14:36:36. | |
stop.js | File | 61 bytes | March 10 2021 14:36:36. | |
substack.js | File | 509 bytes | March 10 2021 14:36:36. | |
team.js | File | 4724 bytes | March 10 2021 14:36:36. | |
test.js | File | 374 bytes | March 10 2021 14:36:36. | |
token.js | File | 6818 bytes | March 10 2021 14:36:36. | |
unbuild.js | File | 4374 bytes | March 10 2021 14:36:36. | |
uninstall.js | File | 2261 bytes | March 10 2021 14:36:35. | |
unpublish.js | File | 3594 bytes | March 10 2021 14:36:36. | |
update.js | File | 2213 bytes | March 10 2021 14:36:36. | |
version.js | File | 10029 bytes | March 10 2021 14:36:36. | |
view.js | File | 15473 bytes | March 10 2021 14:36:36. | |
visnup.js | File | 4104 bytes | March 10 2021 14:36:35. | |
whoami.js | File | 1809 bytes | March 10 2021 14:36:36. | |
xmas.js | File | 1663 bytes | March 10 2021 14:36:35. |
// link with no args: symlink the folder to the global location // link with package arg: symlink the global to the local var npm = require('./npm.js') var symlink = require('./utils/link.js') var fs = require('graceful-fs') var log = require('npmlog') var asyncMap = require('slide').asyncMap var chain = require('slide').chain var path = require('path') var build = require('./build.js') var npa = require('npm-package-arg') var usage = require('./utils/usage') var output = require('./utils/output.js') module.exports = link link.usage = usage( 'link', 'npm link (in package dir)' + '\nnpm link [<@scope>/]<pkg>[@<version>]' ) link.completion = function (opts, cb) { var dir = npm.globalDir fs.readdir(dir, function (er, files) { cb(er, files.filter(function (f) { return !f.match(/^[._-]/) })) }) } function link (args, cb) { if (process.platform === 'win32') { var semver = require('semver') if (!semver.gte(process.version, '0.7.9')) { var msg = 'npm link not supported on windows prior to node 0.7.9' var e = new Error(msg) e.code = 'ENOTSUP' e.errno = require('constants').ENOTSUP // eslint-disable-line node/no-deprecated-api return cb(e) } } if (npm.config.get('global')) { return cb(new Error( 'link should never be --global.\n' + 'Please re-run this command with --local' )) } if (args.length === 1 && args[0] === '.') args = [] if (args.length) return linkInstall(args, cb) linkPkg(npm.prefix, cb) } function parentFolder (id, folder) { if (id[0] === '@') { return path.resolve(folder, '..', '..') } else { return path.resolve(folder, '..') } } function linkInstall (pkgs, cb) { asyncMap(pkgs, function (pkg, cb) { var t = path.resolve(npm.globalDir, '..') var pp = path.resolve(npm.globalDir, pkg) var rp = null var target = path.resolve(npm.dir, pkg) function n (er, data) { if (er) return cb(er, data) // we want the ONE thing that was installed into the global dir var installed = data.filter(function (info) { var id = info[0] var folder = info[1] return parentFolder(id, folder) === npm.globalDir }) var id = installed[0][0] pp = installed[0][1] var what = npa(id) pkg = what.name target = path.resolve(npm.dir, pkg) next() } // if it's a folder, a random not-installed thing, or not a scoped package, // then link or install it first if (pkg[0] !== '@' && (pkg.indexOf('/') !== -1 || pkg.indexOf('\\') !== -1)) { return fs.lstat(path.resolve(pkg), function (er, st) { if (er || !st.isDirectory()) { npm.commands.install(t, pkg, n) } else { rp = path.resolve(pkg) linkPkg(rp, n) } }) } fs.lstat(pp, function (er, st) { if (er) { rp = pp return npm.commands.install(t, [pkg], n) } else if (!st.isSymbolicLink()) { rp = pp next() } else { return fs.realpath(pp, function (er, real) { if (er) log.warn('invalid symbolic link', pkg) else rp = real next() }) } }) function next () { if (npm.config.get('dry-run')) return resultPrinter(pkg, pp, target, rp, cb) chain( [ [ function (cb) { log.verbose('link', 'symlinking %s to %s', pp, target) cb() } ], [symlink, pp, target, false, false], // do not run any scripts rp && [build, [target], npm.config.get('global'), build._noLC, true], [resultPrinter, pkg, pp, target, rp] ], cb ) } }, cb) } function linkPkg (folder, cb_) { var me = folder || npm.prefix var readJson = require('read-package-json') log.verbose('linkPkg', folder) readJson(path.resolve(me, 'package.json'), function (er, d) { function cb (er) { return cb_(er, [[d && d._id, target, null, null]]) } if (er) return cb(er) if (!d.name) { er = new Error('Package must have a name field to be linked') return cb(er) } var target = path.resolve(npm.globalDir, d.name) if (npm.config.get('dry-run')) return resultPrinter(path.basename(me), me, target, cb) symlink(me, target, false, true, function (er) { if (er) return cb(er) log.verbose('link', 'build target', target) // also install missing dependencies. npm.commands.install(me, [], function (er) { if (er) return cb(er) // build the global stuff. Don't run *any* scripts, because // install command already will have done that. build([target], true, build._noLC, true, function (er) { if (er) return cb(er) resultPrinter(path.basename(me), me, target, cb) }) }) }) }) } function resultPrinter (pkg, src, dest, rp, cb) { if (typeof cb !== 'function') { cb = rp rp = null } var where = dest rp = (rp || '').trim() src = (src || '').trim() // XXX If --json is set, then look up the data from the package.json if (npm.config.get('parseable')) { return parseableOutput(dest, rp || src, cb) } if (rp === src) rp = null output(where + ' -> ' + src + (rp ? ' -> ' + rp : '')) cb() } function parseableOutput (dest, rp, cb) { // XXX this should match ls --parseable and install --parseable // look up the data from package.json, format it the same way. // // link is always effectively 'long', since it doesn't help much to // *just* print the target folder. // However, we don't actually ever read the version number, so // the second field is always blank. output(dest + '::' + rp) cb() }
SILENT KILLER Tool