getLocales method

  1. @protected
Future<List<XmlLocale>> getLocales(
  1. L10nConfig config, {
  2. bool includeBase = false,
})

Implementation

@protected
Future<List<XmlLocale>> getLocales(
  L10nConfig config, {
  bool includeBase = false,
}) async {
  final baseDirPath = config.xmlOutputDir;
  final baseDir = Directory(baseDirPath);
  final baseLocale = config.baseLocaleForXml;

  final locales = <XmlLocale>[];
  await for (final item in baseDir.list()) {
    if (item is Directory) {
      final name = path.basename(item.path);
      if ((includeBase || name != baseLocale.value) && _isLocaleName(name)) {
        locales.add(name.asXmlLocale());
      }
    }
  }

  locales.sort();

  return locales;
}