duplicateTargetIds property

Set<String> get duplicateTargetIds

Duplicated step targetIds within one tour — a tour-authoring error (one tour at a time, a duplicated target is ambiguous). The check is cheap and lazy; used by the controller's start-validation.

Implementation

Set<String> get duplicateTargetIds {
  final seen = <String>{};
  final duplicates = <String>{};
  for (final step in steps) {
    if (!seen.add(step.targetId)) {
      duplicates.add(step.targetId);
    }
  }
  return duplicates;
}