Urara-Blog/node_modules/.pnpm-store/v3/files/ef/efd27a46570d657696d02e47a714ce96d5a3fe3a66fc5530148dc06a174a543eea149601bab58abfe922fab4e3e95c8643b165cd5b4699c02b7bb0dd2c006f
2022-08-14 01:14:53 +08:00

18 lines
416 B
Text

const { dirname, resolve } = require('path');
const { readdirSync, statSync } = require('fs');
module.exports = function (start, callback) {
let dir = resolve('.', start);
let tmp, stats = statSync(dir);
if (!stats.isDirectory()) {
dir = dirname(dir);
}
while (true) {
tmp = callback(dir, readdirSync(dir));
if (tmp) return resolve(dir, tmp);
dir = dirname(tmp = dir);
if (tmp === dir) break;
}
}