Repeating group check if all elements have a property

I am trying to build - without doing a search for (I don’t want to give this page another search), a condition that checks if all elements of the group contain one option (the same).

My goal is syntax - repeating group list of elements contains only Option X.
I don’t want to do it with doesn’t contain as there is longer list of options (or maybe I can get a list minus item trigger, that would do as well).

Case use - if all of the repeating group elements status is not-modified - block a button from being clicked.

What syntax should I use?

Hi there, I feel there’s lots of ways to approach this, and they each require some experimenting, but my initial thought was to do something like:

Create a state with the type of these options, as a list. Each time an option is chosen (or changed), add to, remove, change this state’s list of options. Have the condition on the final button look at this state’s list of options: unique elements: count. And if count =1, this button is clickable.

I will do a search. I think there is too many problems with this solutions as:

  1. I need options from a repeating group that already exists, so by default the button should be blocked.
  2. I want to force the user to change something in this set of elements in order as this is the only way, the other system can handle this.
  3. I need to know the user changed the element, not some other system or other interface on the backend or any other place, as these can happen as well.

So very complicated set of requirements, where probably there are even more I cant think of now :slight_smile: Thanks!

Creating a state might work but is definitely not optimal. Instead do this:

  1. Create a Hidden Group with data yes/no → Default no
  2. Add a condition to the group: When all items of the repeating group:filtered(by the option X):count is repeating group:count → Group Data Source “Yes”
  3. Make the button only clickable when the hidden group has data source “Yes”