deepContains static method

bool deepContains(
  1. Iterable<FieldBloc<FieldBlocStateBase>> fieldBlocs,
  2. FieldBloc<FieldBlocStateBase> target
)

Implementation

static bool deepContains(Iterable<FieldBloc> fieldBlocs, FieldBloc target) {
  if (fieldBlocs.isEmpty) return false;

  for (final fieldBloc in fieldBlocs) {
    if (fieldBloc is MultiFieldBloc) {
      final contains =
          MultiFieldBloc.deepContains(fieldBloc.state.flatFieldBlocs, target);
      if (contains) {
        return true;
      }
    } else if (fieldBloc.state.name == target.state.name) {
      return true;
    }
  }
  return false;
}