mirror of
https://github.com/titanscouting/tra-analysis.git
synced 2025-09-07 23:37:21 +00:00
push all website files
This commit is contained in:
19
website/node_modules/npm/lib/install/is-only-optional.js
generated
vendored
Normal file
19
website/node_modules/npm/lib/install/is-only-optional.js
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
'use strict'
|
||||
module.exports = isOptional
|
||||
|
||||
const isOptDep = require('./is-opt-dep.js')
|
||||
|
||||
function isOptional (node, seen) {
|
||||
if (!seen) seen = new Set()
|
||||
// If a node is not required by anything, then we've reached
|
||||
// the top level package.
|
||||
if (seen.has(node) || node.requiredBy.length === 0) {
|
||||
return false
|
||||
}
|
||||
seen.add(node)
|
||||
const swOptional = node.fromShrinkwrap && node.package._optional
|
||||
return node.requiredBy.every(function (req) {
|
||||
if (req.fakeChild && swOptional) return true
|
||||
return isOptDep(req, node.package.name) || isOptional(req, seen)
|
||||
})
|
||||
}
|
Reference in New Issue
Block a user