resolvePortId method

(String, int)? resolvePortId(
  1. String portId
)

Resolve a string port ID to (ownerNodeId, portIndex) by searching this node's ports first, then all children and hidden children.

Implementation

(String nodeId, int portIndex)? resolvePortId(String portId) {
  final selfIdx = portIndexById(portId);
  if (selfIdx >= 0) {
    return (id, selfIdx);
  }
  for (final child in children) {
    final idx = child.portIndexById(portId);
    if (idx >= 0) {
      return (child.id, idx);
    }
  }
  if (hiddenChildren != null) {
    for (final child in hiddenChildren!) {
      final idx = child.portIndexById(portId);
      if (idx >= 0) {
        return (child.id, idx);
      }
    }
  }
  return null;
}