Skip to content

[Emotion] Global styles aren't overridden by color mode changes #6353

@chandlerprall

Description

@chandlerprall

https://codesandbox.io/s/sweet-einstein-05j8k0

Given the setup,

<EuiProvider colorMode="light">
  <EuiThemeProvider colorMode="inverse">
    <EuiSelectableTemplateSitewide />
  </EuiThemeProvider>
</EuiProvider>

we get

Screen Shot 2022-11-09 at 8 20 21 AM

where the results' title text inherits its color from the global styles instead of the inverted color mode.

Proposed solution

portals, modals, any custom DOM
when document.createElement is used, the component creating it must get a class name with the current color mode values and apply it to the created element

theme provider
when setting colorMode and there is an existing theme context (not top level), it needs to insert a div and use that to set the color values for its children

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions