$57 GRAYBYTE WORDPRESS FILE MANAGER $59

SERVER : vnpttt-amd7f72-h1.vietnix.vn #1 SMP Fri May 24 12:42:50 UTC 2024
SERVER IP : 103.200.23.149 | ADMIN IP 216.73.216.22
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/usr/lib/node_modules/npm/lib/install/

HOME
Current File : /usr/lib/node_modules/npm/lib/install//validate-args.js
'use strict'
var validate = require('aproba')
var asyncMap = require('slide').asyncMap
var chain = require('slide').chain
var npmInstallChecks = require('npm-install-checks')
var iferr = require('iferr')
var checkEngine = npmInstallChecks.checkEngine
var checkPlatform = npmInstallChecks.checkPlatform
var npm = require('../npm.js')

module.exports = function (idealTree, args, next) {
  validate('OAF', arguments)
  var force = npm.config.get('force')

  asyncMap(args, function (pkg, done) {
    chain([
      [hasMinimumFields, pkg],
      [checkSelf, idealTree, pkg, force],
      [isInstallable, idealTree, pkg]
    ], done)
  }, next)
}

function hasMinimumFields (pkg, cb) {
  if (pkg.name === '' || pkg.name == null) {
    return cb(new Error(`Can't install ${pkg._resolved}: Missing package name`))
  } else if (pkg.version === '' || pkg.version == null) {
    return cb(new Error(`Can't install ${pkg._resolved}: Missing package version`))
  } else {
    return cb()
  }
}

function setWarnings (idealTree, warn) {
  function top (tree) {
    if (tree.parent) return top(tree.parent)
    return tree
  }

  var topTree = top(idealTree)
  if (!topTree.warnings) topTree.warnings = []

  if (topTree.warnings.every(i => (
    i.code !== warn.code ||
    i.required !== warn.required ||
    i.pkgid !== warn.pkgid))) {
    topTree.warnings.push(warn)
  }
}

var isInstallable = module.exports.isInstallable = function (idealTree, pkg, next) {
  var force = npm.config.get('force')
  var nodeVersion = npm.config.get('node-version')
  if (/-/.test(nodeVersion)) {
    // for the purposes of validation, if the node version is a prerelease,
    // strip that. We check and warn about this sceanrio over in validate-tree.
    nodeVersion = nodeVersion.replace(/-.*/, '')
  }
  var strict = npm.config.get('engine-strict')
  checkEngine(pkg, npm.version, nodeVersion, force, strict, iferr(next, thenWarnEngineIssues))
  function thenWarnEngineIssues (warn) {
    if (idealTree && warn) setWarnings(idealTree, warn)
    checkPlatform(pkg, force, next)
  }
}

function checkSelf (idealTree, pkg, force, next) {
  if (idealTree.package && idealTree.package.name !== pkg.name) return next()
  if (force) {
    var warn = new Error("Wouldn't install " + pkg.name + ' as a dependency of itself, but being forced')
    warn.code = 'ENOSELF'
    idealTree.warnings.push(warn)
    next()
  } else {
    var er = new Error('Refusing to install package with name "' + pkg.name +
     '" under a package\n' +
     'also called "' + pkg.name + '". Did you name your project the same\n' +
     'as the dependency you\'re installing?\n\n' +
     'For more information, see:\n' +
     '    <https://docs.npmjs.com/cli/install#limitations-of-npms-install-algorithm>')
    er.code = 'ENOSELF'
    next(er)
  }
}

Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
31 Aug 2024 8.02 AM
root / root
0755
action
--
31 Aug 2024 8.02 AM
root / root
0755
access-error.js
0.197 KB
10 Mar 2021 9.36 PM
root / root
0644
actions.js
5.516 KB
10 Mar 2021 9.36 PM
root / root
0644
and-add-parent-to-errors.js
0.366 KB
10 Mar 2021 9.36 PM
root / root
0644
and-finish-tracker.js
0.352 KB
10 Mar 2021 9.36 PM
root / root
0644
and-ignore-errors.js
0.199 KB
10 Mar 2021 9.36 PM
root / root
0644
audit.js
8.243 KB
10 Mar 2021 9.36 PM
root / root
0644
check-permissions.js
1.853 KB
10 Mar 2021 9.36 PM
root / root
0644
copy-tree.js
0.752 KB
10 Mar 2021 9.36 PM
root / root
0644
decompose-actions.js
2.18 KB
10 Mar 2021 9.36 PM
root / root
0644
deps.js
30.32 KB
10 Mar 2021 9.36 PM
root / root
0644
diff-trees.js
9.119 KB
10 Mar 2021 9.36 PM
root / root
0644
exists.js
0.757 KB
10 Mar 2021 9.36 PM
root / root
0644
flatten-tree.js
0.997 KB
10 Mar 2021 9.36 PM
root / root
0644
fund.js
1.282 KB
10 Mar 2021 9.36 PM
root / root
0644
get-requested.js
0.62 KB
10 Mar 2021 9.36 PM
root / root
0644
has-modern-meta.js
0.686 KB
10 Mar 2021 9.36 PM
root / root
0644
inflate-bundled.js
0.613 KB
10 Mar 2021 9.36 PM
root / root
0644
inflate-shrinkwrap.js
8.873 KB
10 Mar 2021 9.36 PM
root / root
0644
is-dev-dep.js
0.171 KB
10 Mar 2021 9.36 PM
root / root
0644
is-extraneous.js
0.604 KB
10 Mar 2021 9.36 PM
root / root
0644
is-fs-access-available.js
0.745 KB
10 Mar 2021 9.36 PM
root / root
0644
is-only-dev.js
1.238 KB
10 Mar 2021 9.36 PM
root / root
0644
is-only-optional.js
0.658 KB
10 Mar 2021 9.36 PM
root / root
0644
is-opt-dep.js
0.181 KB
10 Mar 2021 9.36 PM
root / root
0644
is-prod-dep.js
0.168 KB
10 Mar 2021 9.36 PM
root / root
0644
module-staging-path.js
0.253 KB
10 Mar 2021 9.36 PM
root / root
0644
mutate-into-logical-tree.js
4.516 KB
10 Mar 2021 9.36 PM
root / root
0644
node.js
1.851 KB
10 Mar 2021 9.36 PM
root / root
0644
read-shrinkwrap.js
3.672 KB
10 Mar 2021 9.36 PM
root / root
0644
realize-shrinkwrap-specifier.js
0.606 KB
10 Mar 2021 9.36 PM
root / root
0644
report-optional-failure.js
1.017 KB
10 Mar 2021 9.36 PM
root / root
0644
save.js
5.908 KB
10 Mar 2021 9.36 PM
root / root
0644
update-package-json.js
1.87 KB
10 Mar 2021 9.36 PM
root / root
0644
validate-args.js
2.731 KB
10 Mar 2021 9.36 PM
root / root
0644
validate-tree.js
3.104 KB
10 Mar 2021 9.36 PM
root / root
0644
writable.js
1.003 KB
10 Mar 2021 9.36 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF