PHP WebShell
Текущая директория: /opt/BitGoJS/node_modules/@lerna/npm-conf/lib
Просмотр файла: find-prefix.js
"use strict";
const fs = require("fs");
const path = require("path");
module.exports = findPrefix;
// https://github.com/npm/npm/blob/876f0c8/lib/config/find-prefix.js
function findPrefix(start) {
let dir = path.resolve(start);
let walkedUp = false;
while (path.basename(dir) === "node_modules") {
dir = path.dirname(dir);
walkedUp = true;
}
if (walkedUp) {
return dir;
}
return find(dir, dir);
}
function find(name, original) {
if (name === "/" || (process.platform === "win32" && /^[a-zA-Z]:(\\|\/)?$/.test(name))) {
return original;
}
try {
const files = fs.readdirSync(name);
if (files.indexOf("node_modules") !== -1 || files.indexOf("package.json") !== -1) {
return name;
}
const dirname = path.dirname(name);
if (dirname === name) {
return original;
}
return find(dirname, original);
} catch (err) {
if (name === original) {
if (err.code === "ENOENT") {
return original;
}
throw err;
}
return original;
}
}
Выполнить команду
Для локальной разработки. Не используйте в интернете!