copyDirectory static method
Implementation
static Future<void> copyDirectory(
Directory source,
Directory destination,
) async {
if (!await destination.exists()) {
await destination.create(recursive: true);
}
await for (var entity in source.list(recursive: false)) {
if (entity is Directory) {
final newDir = Directory(
p.join(destination.path, p.basename(entity.path)),
);
await copyDirectory(entity, newDir);
} else if (entity is File) {
final newFile = File(p.join(destination.path, p.basename(entity.path)));
await newFile.parent.create(recursive: true);
await entity.copy(newFile.path);
}
}
}