findNode function
Traverses ALL node types, including Root, FluentList, FluentTable and ListItem with sublists.
Implementation
FNode? findNode(FNode root, bool Function(FNode) test) {
if (test(root)) return root;
for (final child in childrenOf(root)) {
final found = findNode(child, test);
if (found != null) return found;
}
return null;
}