getMappedElement method

T? getMappedElement(
  1. DOMNode? domNode, {
  2. bool checkParents = false,
})

Returns the mapped element T associated with domNode.

checkParents If true, also checks for mapped domNode.parent.

Implementation

T? getMappedElement(DOMNode? domNode, {bool checkParents = false}) {
  if (domNode == null) return null;

  final elementToDOMNodeMap = _elementToDOMNodeMap;
  if (elementToDOMNodeMap == null) return null;

  if (!checkParents) {
    return elementToDOMNodeMap.getKeyFromValue(domNode);
  }

  DOMNode? current = domNode;

  while (current != null) {
    final element = elementToDOMNodeMap.getKeyFromValue(current);
    if (element != null) return element;

    current = current.parent;
  }

  return null;
}