Need a way to duplicate master component
It would be great to have a way to duplicate a master component - create a copy within assets panel. If I have a component that has several states and I need to make a dark mode version of that component, I would like to just duplicate that component and make my changes instead of having to recreate it from scratch as a master component.
Anyone could explain it in simple words?
Let’s assume a scenario where the Main Component needs a variation that still retains the “one-to-many” quality of children inheriting properties but doesn’t affect any existing child components. To create a new parent component hierarchy, an instanced component must be ungrouped and rebuilt from scratch. Ungrouping components will also lose all the states and transition properties set up in Prototype mode. Here’s a workaround:
Clone an instance of the component for each state in the component.
Set each instance’s state to a different state.
Go through and ungroup each component instance.
Start making desired tweaks and changes to each component instance.
Recreate the new Main Component.
What does it mean by " making a component local to the file and rename ".
It's confusing as to why this isn't a feature. In fact it's frustrating. I need to create a component with multiple states, that behaves the exact same way as another component, except the state images are different. Rather than Right Click > Duplicate, and letting me swap out the image. I have to recreate the entire component.
If you're reading this you're saying "no you don't, just copy it to a new file, make local, make edits, copy back to original file." @Ini Nya-Etok
Well that no longer works, as they've switched to published libraries. When you copy a component you get the red link icon, and there's no option to make it local anymore.
I know as professionals, we try to keep things cordial here, but this is ridiculous, the amount of time wasted, because they can't add a simple feature we've been complaining about for ages. I mean come on!
Thank you @Ini Nya-Etok
This helped a lot.
I tried Ini Nya-Etok's workaround and it works. Thanks!
Ini Nya-Etok commented
Tried Vlad's workaround and I think you may have missed a step? Try this:
1. Copy main
2. Paste in new file
3. Make local in new file
4. Right click component in new file and select "Edit main component"
5. Rename Main in new file
6. Copy Main component from new file
7. Paste the copied component in original file (appears as an instance)
8. Right click the pasted instance and select "Edit main component"
9. Make Main component local in original file
Hope this helps in the meantime. But PLEASE guys create a simple duplicate component function, this is such an avoidable workaround.
Desperately need this.
Tried Vlad's workaround but I am skeptical, because the component still says "Instance." Shouldn't it be a main component now since it's unlinked from the previous? Where is this one's "Main?" -- If I paste it in a new document, it is then linked to this instance which I had made Local. So this Instance is acting like a Main for its future instances. The actual MAIN is my original.
This is SO confusing. I'm still concerned that something will get overridden at some point.
Nándor János Danyi commented
+10000 votes for this feature.
Everything on the asset panel should be duplicatable and mergeable.
Chris K. commented
This is sorely needed. I think it would be super easy to implement too. Just add a new menu item when you right-click on an instance that converts it to a new main component.
I can’t tell you how many times I’ve had to create new components from scratch that were very similar to other components I had already created. I did not know about the work-around, so that helps a ton, but this is an easy, much-needed feature.
René Kostka commented
Thanks Vlad, this is a great workaround! Especially for complex components with many states.
For others who'll try Vlad's way: After pasting back and making local you need to also click Edit main component (because the pasted one is an Instance).
A quick workaround for duplicating components with a lot of similarities:
Copy/paste component in another file, then make local to that file and rename.
Then copy/paste back the new renamed component to your file and make it local again.
This seems to me, to be faster than rebuilding the component from scratch.
This is very much needed for building any complex design.
Vincent Young commented
It's been way too long without this...
Mee K commented
Make it please. It's too annoying to copy it now.
1. Create a new file
2. Copy Components
3. Rename, re-copy and paste into the original file.
4. Delete and close saved files in the cloud
This process must be completed with only one button.
When someone asks me about that, I say, "Well, it's a little annoying, but try like this! blabla... ", What a hassle!
Please, desperately need.
Noel Holmes commented
Would be especially useful for creating variations of masters that have different states defined!
it's a really basic and useful feature, possibility to create a new "master" component instead of unlink and recreate all state from scratch
Andrew Hart commented
I presume you will implement this with a right click option in the component panel. However if you choose to also implement this as a right click option of a component on the artboard, which adds the duplicate component to the artboard (A feature that I would like), I would request that the duplicated component be tagged as a main component, not just an instance.
Celeste Herrera commented