getLeafNodes static method

List<ElectricalNode> getLeafNodes(
  1. ElectricalNode? root
)

Get all leaf nodes (loads without children)

Implementation

static List<ElectricalNode> getLeafNodes(ElectricalNode? root) {
  if (root == null) return [];

  final allNodes = flattenElectricalNodes(root);
  return allNodes.where((node) {
    return node.map(
      load: (_) => true,
      source: (n) => n.children.isEmpty,
      protection: (n) => n.children.isEmpty,
      panel: (n) => n.children.isEmpty,
    );
  }).toList();
}