removeFeatureFromPubspec static method

void removeFeatureFromPubspec(
  1. String appsName,
  2. String featureName
)

Removes feature entries from pubspec.yaml.

Implementation

static void removeFeatureFromPubspec(String appsName, String featureName) {
  final workingDir =
      appsName.isEmpty ? current : join(current, 'apps', appsName);
  final pathPubspec = join(workingDir, 'pubspec.yaml');

  if (File(pathPubspec).existsSync()) {
    String pubspec = File(pathPubspec).readAsStringSync();

    pubspec = pubspec.replaceAll(
      RegExp("\\s+- features/${featureName.snakeCase}"),
      '',
    );
    pubspec = pubspec.replaceAll(
      RegExp(
          "\\s+${featureName.snakeCase}:\\s+path: ./features/${featureName.snakeCase}"),
      '',
    );

    File(pathPubspec).writeAsStringSync(pubspec);
  }
}