listTemplates method

  1. @override
List<String> listTemplates()
override

Iterates over all templates.

Implementation

@override
List<String> listTemplates() {
  var found = <String>{};

  for (var path in paths) {
    var directory = Directory(path);

    if (directory.existsSync()) {
      var entities =
          directory.listSync(recursive: true, followLinks: followLinks);

      for (var entity in entities) {
        if (isTemplate(entity.path, path)) {
          var template = relative(entity.path, from: path)
              .replaceAll(Platform.pathSeparator, '/');
          found.add(template);
        }
      }
    }
  }

  var list = found.toList();
  list.sort();
  return list;
}