Instance swap properties are somewhat limiting

Scenario:

I’ve got a button component with an icon. I apply an instance swap property to the icon so I can control it from the side panel while the button component is selected. :metal:t2:

The issue:

The instance swap property is preventing me from swapping the instance when I have the icon selected directly. To swap the instance, I must first move back up the layer stack to select the parent button component, use the instance swap property, then re-select the icon directly to change variant options like style and size.

Solution:

If a component has an instance property attached, don’t prevent users from swapping its instance when it’s directly selected. Instead, sync its state with the instance swap property.