filterByName method

List<ManifestNode> filterByName(
  1. String name, {
  2. String? parentName,
})

Implementation

List<ManifestNode> filterByName(String name, {String? parentName}) {
  if (_parent != null && name == _parent?.title) {
    return [_parent!];
  }
  var lst = _children
      .where((element) =>
          element.title == name &&
          ((parentName == null || element._parent == null) ||
              (parentName == element._parent?.title)))
      .toList();
  for (var item in _children) {
    lst.addAll(item.filterByName(name, parentName: parentName));
  }
  return lst;
}