UNPKG

423 BJavaScriptView Raw
1const { existsSync } = require('fs-extra')
2const { join, resolve } = require('path')
3
4function find() {
5 let root = process.cwd()
6 const IS_DIR_END = /^(\w:\\|\/)$/
7
8 while (IS_DIR_END.test(root) === false) {
9 let file = join(root, 'package.json')
10 if (existsSync(file)) {
11 break
12 } else {
13 root = resolve(root, '..')
14 }
15 }
16
17 return IS_DIR_END.test(root) ? null : root
18}
19
20module.exports = find()