generateFullProject method
Implementation
Future<bool> generateFullProject() async {
final foundPath = await findProjPath();
if (foundPath == null) {
print('❌ Could not locate Template folder in parent directories.');
return false;
}
final templateLib = path.join(foundPath, 'lib');
final targetLib = path.normalize(path.absolute('lib'));
// Check if target lib directory exists and remove it first
final libDir = Directory(targetLib);
if (libDir.existsSync()) {
try {
libDir.deleteSync(recursive: true);
print('🔄 Removed existing lib directory');
} catch (e) {
print('❌ Failed to remove existing lib directory: $e');
return false;
}
}
// Copy lib directory
final libResult =
copyDirectory(Directory(templateLib), Directory(targetLib));
// Copy pubspec.yaml file
final templatePubspec = File(path.join(foundPath, 'pubspec.yaml'));
final targetPubspec = File(path.normalize(path.absolute('pubspec.yaml')));
final pubspecResult = copyPubspecFile(templatePubspec, targetPubspec);
return libResult && pubspecResult;
}