Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR shows that we can implement Shadow DOM inside our web elements. 🎉 We are able to load CSS files in isolation and assign them to the Shadow Element. This unblock us on using
Slot
, and newly added Declarative Shadow Dom .But the main limitation is not related to Shadow Dom, but most design systems render some context inside the
document.body
which is not in shadow root CSS scope. This means that if a Web component renders some content outside of the Shadow Root, they will not get the Shadow Root CSS, and instead, they get the main document CSS which is a conflict.So, to avoid complexity around it. we decided to not move forward with Shadow Elements unless we can address it and we see a huge advantage in other functionalities.
Here are some examples of Design System issues that stops them to adopt Shadow Elements:
ShadowDOM issues:
adobe/react-spectrum#1472
adobe/react-spectrum#2540 (comment)