(cwd: string)
| 277 | } |
| 278 | |
| 279 | async function resolveProjectRoot(cwd: string): Promise<string> { |
| 280 | try { |
| 281 | const result = await execa('git', ['rev-parse', '--show-toplevel'], { cwd }) |
| 282 | return result.stdout.trim() || cwd |
| 283 | } catch { |
| 284 | return cwd |
| 285 | } |
| 286 | } |
| 287 | |
| 288 | async function findNearestPackageJson(startDir: string): Promise<string | null> { |
| 289 | let current = resolve(startDir) |