atcheck/lsscanner/new_ubuntu/node_modules/npm/lib/install/has-modern-meta.js

21 lines
702 B
JavaScript
Raw Normal View History

2019-12-16 18:42:21 +01:00
'use strict'
module.exports = hasModernMeta
const npa = require('npm-package-arg')
const moduleName = require('../utils/module-name.js')
function isLink (child) {
return child.isLink || (child.parent && isLink(child.parent))
}
function hasModernMeta (child) {
if (!child) return false
const resolved = child.package._resolved && npa.resolve(moduleName(child), child.package._resolved)
const version = npa.resolve(moduleName(child), child.package.version)
return child.isTop ||
isLink(child) ||
child.fromBundle || child.package._inBundle ||
child.package._integrity || child.package._shasum ||
(resolved && resolved.type === 'git') || (version && version.type === 'git')
}