����JFIF��x�x����'
| Server IP : 78.140.185.180 / Your IP : 216.73.216.170 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/alt/alt-nodejs8/root/lib/node_modules/npm/lib/install/ |
Upload File : |
'use strict'
var validate = require('aproba')
var moduleName = require('../utils/module-name.js')
module.exports = flattenTree
module.exports.flatName = flatName
module.exports.flatNameFromTree = flatNameFromTree
function flattenTree (tree) {
validate('O', arguments)
var seen = new Set()
var flat = {}
var todo = [[tree, '/']]
while (todo.length) {
var next = todo.shift()
var pkg = next[0]
seen.add(pkg)
var path = next[1]
flat[path] = pkg
if (path !== '/') path += '/'
for (var ii = 0; ii < pkg.children.length; ++ii) {
var child = pkg.children[ii]
if (!seen.has(child)) {
todo.push([child, flatName(path, child)])
}
}
}
return flat
}
function flatName (path, child) {
validate('SO', arguments)
return path + (moduleName(child) || 'TOP')
}
function flatNameFromTree (tree) {
validate('O', arguments)
if (tree.isTop) return '/'
var path = flatNameFromTree(tree.parent)
if (path !== '/') path += '/'
return flatName(path, tree)
}