Goal: To know which element is tapped without creating the whole tap logic for every single element and then use changes (move, opacity, reorder, etc.) on that element.
In Javascript this normally works like this: You have a click event and can send the whole object as a parameter to the function that is called by the event. This way you can create e.g. an animation in your logic that works for every element that uses this function. In ProtoPie we have to massively work with conditions and multiple logic builds.
Simple cases
#1: You want to let some elements move around when you tap on it. Try to realize it without creating the whole animation properties more than once. In the end, you need to create 10 tap triggers with move animations in them when there are 10 elements you want to move on a tap. If you are lucky it's visually the same element that needs to move around and you can create a component but what if not?
#2: You have a list of 10 elements (e.g. cards) and want to reorder them horizontally with a hold&drag trigger. To know which side cards have to switch their positions when the dragged card's position is changing you need to know the positions of the cards, especially the dragged one. You can pre-define the positions in variables with pos1, pos2, pos3 and take the card _id or similar in it to know which card is on which position. But when you start your drag, your trigger doesn't know anything about the element that is used and you start creating many conditions for the cases if it's card1, card2, ... card10. And in the position change you create many conditions again "if card1 goes to pos2 and card3 is on pos2", etc.
These cases and I'm sure there are many more, need to be simplified.