elastic / eui

Elastic UI Framework 🙌
https://eui.elastic.co/
Other
6.06k stars 819 forks source link

[New docs] Fix `EuiProvider`'s `globalStyles` breaking docusaurus styles #7822

Open tkajtoch opened 3 weeks ago

tkajtoch commented 3 weeks ago

Summary

EuiProvider's default global styles are overriding and breaking some docusaurus styles, making its typography unusable. We need to find a way how to balance these two either by fixing EuiProvider to allow disabling some of its global styles or making docusaurus styles specificity higher

Acceptance criteria

mgadewoll commented 1 week ago

This PR updates the EUI EuiGlobalStyles to support using partial global styles. There will be an additional small PR to add the update to the EUI+ theme but any further EUI+ specific changes will be done in the design update tasks, e.g. for updating the typography in #7795

cee-chen commented 1 week ago

I'm generally not a huge fan of adding functionality to production components for the sake of non-production use-cases. Can I ask why we can't just disable EUI's global styles completely via <EuiProvider globalStyles={false} /> and then just manually import or copy/paste the styles we do want to Docusaurus? That would personally by my preference (putting logic/customization in the lower stakes repo).

mgadewoll commented 1 week ago

The idea was to be able to reuse some of the things where needed by making this more flexible. But I can agree that:

I think we could work also with globalStyles={false} for now and see later in the process how useful the granular update of EuiGlobalStyles will be and decide then if we want to move forward with this? cc @tkajtoch

cee-chen commented 1 week ago

The second bullet point is definitely my concern! I think I just also don't want to spend too much time reviewing/working on future-proof logic on source code when we don't have clear production usages in mind. Hope that makes sense!