detectTranslationLanguages function
Implementation
List<String> detectTranslationLanguages(Directory projectDirectory) {
final manifestLanguages = readFlkitManifestLanguages(projectDirectory);
if (manifestLanguages.isNotEmpty) return manifestLanguages;
final libDirectory = Directory(p.join(projectDirectory.path, 'lib'));
if (!libDirectory.existsSync()) return const [];
final languages = <String>{};
for (final file in libDirectory.listSync(recursive: true)) {
if (file is! File) continue;
final match = translationLocalePattern.firstMatch(p.basename(file.path));
if (match != null) {
languages.add(match.group(1)!);
}
}
return languages.toList()..sort();
}