Relink components to a different master
It would be helpful to relink all instances of a linked component in a given document to a different component, in similar fashion to relinking an image in InDesign to a different external image source.
-
Christoph Leitner commented
This would be very helpful. We have a lot of trouble with broken links to components that are hard to resolve without a way to replace components.
-
Joseph Walls commented
This is terrible, I have 100-200 links in one file I need to update.. ALL to the same file, but I have to select each individual one and update each component. IT TAKES 30 seconds + of load time on each object, then half the time while doing this for an hour XD crashes. THEN when you reopen it all those relinks are gone. honestly this is HORRIBLE. I don't get how adobe expects people to try to use XD in a design system. Time to switch to figma. This has been an outstanding feature for over 2 years.
-
Will commented
WORKAROUND [Dec 2020]:
I figured out a way to do this using two plugins from sttk3:
SelectMenu:
https://adobe.com/go/xd_plugins_discover_plugin?pluginId=e46fe5a4ReplaceItems:
https://adobe.com/go/xd_plugins_discover_plugin?pluginId=09c942ddNow here is the workaround:
1. Go to your file containing the broken links.2. Add the replacement component for the one that is broken to the work area.
3. Find any place in the work area where the broken component is used and select it.
4. In the 'SelectMenu' plugin, click the 'Same Components' option.
5. WITHOUT DESELECTING the broken components you have just selected, hold Shift + Click the replacement component you added in step 2. (The replacement component must be the last one you select)
6. In the "ReplaceItems" plugin, click the "Replace" option.
Repeat the above for each broken component and there you go, no more broken links.
Unfortunately you will need to re-apply different states and any overrides, but if that is a common enough issue you may need to revisit your component anyway :)
PS - Cobbling together this workaround makes me even more disappointed in the Xd team for failing to implement a solution for this. It's clearly not an issue with cost or feasibility - just pure ineptitude.
-
Will commented
Extremely disappointed this is still not implemented. I have files with thousands of broken links following the library feature's release and there is no way to fix the broken links.
I would literally be content if it were the most rudimentary "select a component to replace the broken one" option but even that is not implemented.
In Premiere, when your media goes offline, does the app just say "welp, that's gone for good - best of luck"? NO! It lets the user open the finder to replace the missing footage... Linking 101 level stuff.
Good applications fail infrequently.
Professional applications fail infrequently and allow their users to recover when they do.Xd is a failure in that regard.
-
Aaron commented
Our links have been broken since the new update to how libraries function on Xd. Our library is now a shared library, but all our files are now linking to a file instead of the library. We want to relink the document assets to use the shared library now, but there's no way to do this.
-
Kelly commented
Did you find a solution for this?
I have a master cloud document that I've been invited to edit but I'm not the owner. I would like to have all components in a new cloud file owned by me and have all instances of those components be linked to that new master file.
I tried different approaches but so far all I get is the "No matching assets from <Document name> were found" went trying to relink components :(
-
Anol Das Gupta commented
How come this feature is missed.... its a linking basics - photoshop / illustrator / Indesign every software has this feature...why XD is not able to figure this out yet
-
alec commented
@jason quiz, did you try this plug-in :
https://www.toolabs.com/xdplugin/
If so, does it manage to do the trick ? -
alec commented
@jason Quiz
Totally agree with you. That's exactly the case i front : a brand design system that works with several sub-brands. To get an idea of what is needed, here's a link to a Sketch plug-in that does the job :
https://github.com/Pausansol/Camilo -
Frankie Loscavio commented
I believe Adobe XD has designed themselves into a corner with the way their components "work" or lack thereof. Managing components within and across documents has gotten to be a full-time chore right now and if they don't improve it will be losing users to Figma.
-
Jens Klang commented
How can this not be a more important feature and upvoted by more people? If you are working on large projects and doing global changes, you have to edit the content of the master component. In the old MAX demo you could replace a symbol by just dragging a symbol on top of another. And that also worked with colors and styles.
-
Jason Quiz commented
This would be super helpful. Much like how inDesign lets you relink to an assets folder, sees all the matching file names and auto updates the links, it would be helpful to have a way to point the components to a new "master cloud doc".
There is currently no way to move a "master" component to a new doc so you have to be super careful with how you make components which is frustrating.
For my specific case, we have a product that gets reskinned for different clients. Its super frustrating that I cant duplicate the Master Component file and layout file to make the needed adjustments. Instead I have to rebuild it all (unless I am missing something).
-
Christoph Mauerhofer commented
This can be helpful if you have a component with a lot of instances and then decide you want to split them into two different components (in cases where using the new component states dont make sense).
-
Omar M. Mismar commented
It would be helpful to have two ways to link components.
The first way, as it is now, by creating master components in file A and then link file A to the assets of file B.
The other way, is to design a new component in file B and then link it to a specific component in file A. In other words, "Relink" functionality.
Here is the case: I was using a linked components from file A then I mistakenly convert a linked component with too many instances to a local component! Now, I want to relink it again.