Populates targetStates from targets.
void resolveStates(State<T> parent, Map<String, State<T>> stateMap) { source = parent; targetStates = [for (var s in targets) stateMap[s]!]; }