parsePubspec function
Implementation
ProjectInfo? parsePubspec(Directory dir) {
final pubspecFile = File('${dir.path}/pubspec.yaml');
if (!pubspecFile.existsSync()) return null;
final content = pubspecFile.readAsStringSync();
// Ensure it's a Nitro project (has dependency or generator)
if (!content.contains('nitro:') && !content.contains('nitro_generator:')) {
return null;
}
String name = 'unknown';
String version = 'unknown';
for (final line in content.split('\n')) {
if (line.trim().startsWith('name: ')) {
name = line.replaceFirst('name: ', '').trim();
}
if (line.trim().startsWith('version: ')) {
version = line.replaceFirst('version: ', '').trim();
}
}
return ProjectInfo(name, version, dir);
}