Skip to main content

Non-published components don't receive updates


Raphael_Loder

We’re working on a larger Component library that includes non-published components (components with the prefix _ or .) as base components in order to simplify large, complex components. We intended – in some specific cases – to offer regular components as templates, that a designer would then have to detach and work with a bunch of base components to build the desired design.

What we have come to realize with this approach, however, is that these non-published components don’t receive updates from the library when they are updated in the main library.

Is this intended behaviour?

We basically have the option to simply publish these base components as regular components, but that of course would mean cluttering up the assets overview with a bunch of modular components.

19 replies

Eugene_Ross1

I just finished replying to another thread you started where you mentioned this topic. Thanks for saving me from making a thread on this topic entirely!

The problem you described is exactly what my team and I are facing. We have a lot of complex components that use the private component feature within a larger single component that is published. We too want to the ability to change those private components and have the published component accept the updates without exposing them in the assets panel.

@Josh is this expected behavior?


Swathi_Krishna

+1 Having the same issue with my Figma library — would love to have Figma address this feature! Additionally, I also find it annoying that in order to use the instance swap property, I can’t use hidden components, only published components — would be nice to allow hidden components to be used in instance swaps so they don’t clutter the assets library.


arnasgold
  • 2 replies
  • January 10, 2023

Having a very similar issue here. The only difference is that I don’t detach the instance as mentioned in the OP’s comment, and yet in my case the updates are not always applied.

I have three components: A, B and C. C is the base component and is nested within B, B holds some variants and is nested within A. A is the final and published component while B and C are both hidden.

The scenario when it works:

  1. I take component A in my design file and use it in its default state without changing variants
  2. I make changes to component C and publish the changes. Libraries panel shows that only component A is Modified, which makes sense because changes made to C are instant on the A.
  3. I accept the update in my design file, the change is applied to the instance successfully

The scenario when it doesn’t work:

  1. I take component A and modify it by changing variants coming from component B (not applying any overrides!).
  2. I make changes to component C and publish the changes. As before, libraries panel shows that only component A is Modified.
  3. I accept the update in my design file but my instance stays unchanged as if it didn’t update.

I suspect that it is because Figma doesn’t see that changes from component C are applied to the variants in component B, because the latter is also hidden. While in the first scenario the changes from C are detected because they get instantly applied to A.

Resetting instances can solve it but definitely not an option when you have 100s of them used in various places.

My workaround for now is to temporarily unhide and publish all components that are in the chain (so B and C, not only C) and accept the updates in the design file. This should update all instances (unless there are overrides of course!) and components can be hidden again. This is far from ideal and I’d expect some kind of native fix, but works for now.


Zhenmin.Li

still having the issues that private components in some instances component don’t receive the update automatically, some of them get updated. we have to reset all changes in order to gets the update, but you lose all presets. Figma please look into this issue. thanks


Zhenmin.Li

hi, Raphael. our team is also facing the same issue for a while. Have you or your team figured out the workaround for this issue? I wish Figma can solve this issue fundamentally. @Josh thank you


Slava_Bronevitskiy

In the past year I’ve been wasting days and weeks fighting this issue in our corporate design system.

Debugging the issues that are a consequence of something so simple as just not receiving updates for the hidden components that are nested inside a published component.

The problem is actually worse, as I encountered countless cases where even published components did not receive updates when they are nested inside another components.

@figma I beg you to fix this obvious bug.


Veneruso_Annie

Still looking for a fix on this, too. I think the problem is that published = searchable in assets and in the case where we want to hide some of these “building block” components, we don’t want them searchable but we do want them to get updated when published. I hope Figma can make a clean solution for this


Slava_Bronevitskiy

I’ve found that even published components don’t receive the updates if layer visibility is set to hidden.

Could it get any worse?


Nouela
  • New Participant
  • 18 replies
  • December 14, 2023

Hey Figma! Help, please! Same issue!


Tim_Hartmann
  • New Member
  • 3 replies
  • December 15, 2023

Same problem here. Unpublished components don’t get any updates. It is hard, when you use it in published components, but don’t get any updates. Would be great if you can work on that, Figma 🙂


Gayani_S
Figmate
  • Community Support
  • 2078 replies
  • December 15, 2023

Hey everyone, I’ve changed the category to “Share an Idea”. I’ll check this with the team, this looks like a feature request because components need to be published to receive updates.


Gayani_S
Figmate
  • Community Support
  • 2078 replies
  • December 21, 2023

Apologies for the late response! This is indeed a feature request. If you maintain a library of styles, components, and variables, you may need to unpublish a library. This means anyone using this library will no longer be able to access the library or receive updates to its styles, components, and variables.


Nouela
  • New Participant
  • 18 replies
  • January 4, 2024

I’m not sure this addresses any of the previous comments tho? Are we just stuck with using neon emojis to differentiate between libraries in the assets panel? Their poor eyeballs.


Josh_Menken

We have run into this same issue as we are building out a Design System. We have wanted to have more nested components but hide some of the nested components. We do this to keep in more parity with engineering. It would be nice to see a fix from Figma on this. Please vote.


Adam_Kliegman

I also think this needs to be a prioritized feature! Wild that it doesn’t work as expected.


@Gayani_S I disagree that this is a feature request and not a bug. The feature being used is “Hide when publishing” not “Do not publish”. As everyone has noted the expectation is that the updates will publish, but the component will be hidden inside the assets panel. This expectation is in line with how variables work when they are hidden from publishing but are referenced in another published variable.

The team can say that Product/UX didn’t set that as a requirement so the eng. team didn’t code it that way, but missing requirements are still bugs. Ultimately it doesn’t really matter. This “bughancement” needs to be fixed/enhanced as it hampers complex design systems, and forces a workaround of having to publish every hidden component then re-hide them to get the update to happen, which is tedious and can cause side effects.

image
Example of how variables show what is updating and that the changes do update even though the root variable is set to “Hide for publishing”


Thomas_Reimer

Adding to the list, we are, of course, facing the same issue in our team. I also think, that we are not talking feature here, but bug, as the “Publish changes” workflow suggests, that changes to the base components are actually published.

(ACTUAL FEATURE REQUEST FOLLOWING)
Further, I would like to stress the need for being able to swap base components with others without having them visible in the main Assets pane. As soon as they are hidden, you are not able to swap to them, if they are fundamentally different. We use, for instance, custom made specification markers, which provide a visual representation of a color, a font, a shadow and spell out their token name next to them. The color, font and shadow blocks are different components as they have different properties but we allow for swapping between them on the main marker component. Now, I have to publish those to be able to swap between them, which I don’t want. I want them to be scoped to this parent component only and not retrievable from the Assets pane.


Slava_Bronevitskiy

How is this not fixed years later!!!


Dennis_N
  • Power Member
  • 188 replies
  • June 3, 2025

Clearly within my personal Top 3 of the most annoying figma issues as a design system maintainer.
Components should be “published” but not listed to not break nested components that rely on sub or .base_components you don’t want to see in the assets panel.


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings