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. |
var util = require('util') var path = require('path') var validate = require('aproba') var without = require('lodash.without') var asyncMap = require('slide').asyncMap var chain = require('slide').chain var npa = require('npm-package-arg') var log = require('npmlog') var npm = require('./npm.js') var Installer = require('./install.js').Installer var findRequirement = require('./install/deps.js').findRequirement var earliestInstallable = require('./install/deps.js').earliestInstallable var checkPermissions = require('./install/check-permissions.js') var decomposeActions = require('./install/decompose-actions.js') var loadExtraneous = require('./install/deps.js').loadExtraneous var computeMetadata = require('./install/deps.js').computeMetadata var sortActions = require('./install/diff-trees.js').sortActions var moduleName = require('./utils/module-name.js') var packageId = require('./utils/package-id.js') var childPath = require('./utils/child-path.js') var usage = require('./utils/usage') var getRequested = require('./install/get-requested.js') module.exports = dedupe module.exports.Deduper = Deduper dedupe.usage = usage( 'dedupe', 'npm dedupe' ) function dedupe (args, cb) { validate('AF', arguments) // the /path/to/node_modules/.. var where = path.resolve(npm.dir, '..') var dryrun = false if (npm.command.match(/^find/)) dryrun = true if (npm.config.get('dry-run')) dryrun = true if (dryrun && !npm.config.get('json')) npm.config.set('parseable', true) new Deduper(where, dryrun).run(cb) } function Deduper (where, dryrun) { validate('SB', arguments) Installer.call(this, where, dryrun, []) this.noPackageJsonOk = true this.topLevelLifecycles = false } util.inherits(Deduper, Installer) Deduper.prototype.loadIdealTree = function (cb) { validate('F', arguments) log.silly('install', 'loadIdealTree') var self = this chain([ [this.newTracker(this.progress.loadIdealTree, 'cloneCurrentTree')], [this, this.cloneCurrentTreeToIdealTree], [this, this.finishTracker, 'cloneCurrentTree'], [this.newTracker(this.progress.loadIdealTree, 'loadAllDepsIntoIdealTree', 10)], [ function (next) { loadExtraneous(self.idealTree, self.progress.loadAllDepsIntoIdealTree, next) } ], [this, this.finishTracker, 'loadAllDepsIntoIdealTree'], [this, andComputeMetadata(this.idealTree)] ], cb) } function andComputeMetadata (tree) { return function (next) { next(null, computeMetadata(tree)) } } Deduper.prototype.generateActionsToTake = function (cb) { validate('F', arguments) log.silly('dedupe', 'generateActionsToTake') chain([ [this.newTracker(log, 'hoist', 1)], [hoistChildren, this.idealTree, this.differences], [this, this.finishTracker, 'hoist'], [this.newTracker(log, 'sort-actions', 1)], [this, function (next) { this.differences = sortActions(this.differences) next() }], [this, this.finishTracker, 'sort-actions'], [checkPermissions, this.differences], [decomposeActions, this.differences, this.todo] ], cb) } function move (node, hoistTo, diff) { node.parent.children = without(node.parent.children, node) hoistTo.children.push(node) node.fromPath = node.path node.path = childPath(hoistTo.path, node) node.parent = hoistTo if (!diff.filter(function (action) { return action[0] === 'move' && action[1] === node }).length) { diff.push(['move', node]) } } function moveRemainingChildren (node, diff) { node.children.forEach(function (child) { move(child, node, diff) moveRemainingChildren(child, diff) }) } function remove (child, diff, done) { remove_(child, diff, new Set(), done) } function remove_ (child, diff, seen, done) { if (seen.has(child)) return done() seen.add(child) diff.push(['remove', child]) child.parent.children = without(child.parent.children, child) asyncMap(child.children, function (child, next) { remove_(child, diff, seen, next) }, done) } function hoistChildren (tree, diff, next) { hoistChildren_(tree, diff, new Set(), next) } function hoistChildren_ (tree, diff, seen, next) { validate('OAOF', arguments) if (seen.has(tree)) return next() seen.add(tree) asyncMap(tree.children, function (child, done) { if (!tree.parent || child.fromBundle || child.package._inBundle) return hoistChildren_(child, diff, seen, done) var better = findRequirement(tree.parent, moduleName(child), getRequested(child) || npa(packageId(child))) if (better) { return chain([ [remove, child, diff], [andComputeMetadata(tree)] ], done) } var hoistTo = earliestInstallable(tree, tree.parent, child.package, log) if (hoistTo) { move(child, hoistTo, diff) chain([ [andComputeMetadata(hoistTo)], [hoistChildren_, child, diff, seen], [ function (next) { moveRemainingChildren(child, diff) next() } ] ], done) } else { done() } }, next) }
SILENT KILLER Tool