removeDependencies method

void removeDependencies(
  1. List<String> unusedDependencies, {
  2. String? selectedName,
})

Implementation

void removeDependencies(
  List<String> unusedDependencies, {
  String? selectedName,
}) {
  MsgUtils.showInfo(
      "Removing ${selectedName != null ? selectedName : 'dependencies'} from pubspec.yaml...");
  var pubspecFile = File('pubspec.yaml');
  var lines = pubspecFile.readAsLinesSync();

  for (var dep in unusedDependencies) {
    lines.removeWhere((line) => line.contains(dep));
  }

  pubspecFile.writeAsStringSync(lines.join('\n'));
  if (selectedName != null) {
    MsgUtils.showSuccess("$selectedName removed from pubspec.yaml");
  } else {
    MsgUtils.showSuccess("All unused dependencies removed");
  }
}