Instance Swap property is breaking variant overrides when those variants use a master (base) component

Maintaining icon color overrides in button variants has been discussed at length and “solved” with work arounds (even when using a master component).
But this issue has come back now with instance swap component property (for icon swaps), in button variants that use a master (base) button component.

Taking into account all previous fixes… vector merging, consistent layer naming and unique color for icons component library… is there a solution?
Or is instance swap property just not worth creating if you want a master component for all your buttons?

1 Like

Hey Dominic, apologies if you’ve already seen this other thread in the forum, but in case you hadn’t there’s folks discussing using @Rogie_King’s color override preservation technique that uses a union to manage color (link to Rogie’s community file).

I’d be curious to see the button component you’re having color override preservation issues with. If you’re able to share a link, or maybe take a quick screen recording or GIF of what’s happening I’d be really interested!

Thanks for the links Alice! I was aware of union hack, but hadn’t touched it in a long time due to added maintenance with scaling icons.

My issue is with the new(ish) component properties feature, where updating masters with those property functions stopped previously working variant states. The union hack does actually remedy the issue, while maintain the new component property functions… so I’ll roll with that for now, even though it’s not an ideal fix :beers: