findCliRoot function
Implementation
String findCliRoot() {
final currentDir = _getCurrentDir();
var searchDir = currentDir;
while (searchDir != path.dirname(searchDir)) {
final pubspecPath = path.join(searchDir, 'pubspec.yaml');
if (File(pubspecPath).existsSync()) {
try {
final content = File(pubspecPath).readAsStringSync();
if (content.contains('name: fluttercn')) {
return searchDir;
}
} catch (_) {
// Continue searching if read fails
}
}
searchDir = path.dirname(searchDir);
}
if (currentDir.contains('lib') || currentDir.contains('bin')) {
return path.normalize(path.join(currentDir, '..', '..'));
}
return path.normalize(path.join(currentDir, '..'));
}