I just saw your example back then, having some issues while using that.
1. If i check a node using search input option then corresponding node was still unchecked once i clear the input.
2. "let query = new Query().where(new Predicate.or(predicats));" compile error, that it should be void.
3. If i check some nodes without using search option and then if i try to search 'em it shows as unchecked.