1 | const { existsSync } = require('fs-extra')
|
2 | const { join, resolve } = require('path')
|
3 |
|
4 | function 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 |
|
20 | module.exports = find()
|