discoverFiles method

List<String> discoverFiles()

Discovers all Dart files in the project.

Implementation

List<String> discoverFiles() {
  final absolutePath = path.absolute(projectPath);

  if (FileSystemEntity.isFileSync(absolutePath)) {
    if (absolutePath.endsWith('.dart')) {
      return [absolutePath];
    }
    return [];
  }

  final files = <String>[];
  final dir = Directory(absolutePath);

  if (!dir.existsSync()) {
    return [];
  }

  for (final entity in dir.listSync(recursive: true)) {
    if (entity is File && entity.path.endsWith('.dart')) {
      if (!entity.path.contains('.g.dart') &&
          !entity.path.contains('.freezed.dart')) {
        files.add(entity.path);
      }
    }
  }

  return files;
}