Skip to content

[Meta][CSS-in-JS] Switching to emotion #3912

@cchaos

Description

@cchaos

This is a meta ticket to discuss the rollout plan of the CSS in JS solution (Emotion). It is for documenting the expected upgrade process both within EUI and by consuming applications, and being transparent about our timeline.

(Tentative) Timeline & tasks

Spring 2021:

Get the contexts built out and (partially) used in the EUI components and docs, as well as thoroughly tested in downstream applications like Kibana and Cloud. Figure out all the dependencies, hooks and possible state management that go with it.

Summer 2021:

Fall 2021:

Start shifting component styles from SASS to JS. This part will probably take a full year and probably means phasing out the old 'legacy' theme, making Amsterdam default.

### 2022-2024
- [ ] #5685

Beyond component conversions:

Needs discussion

  • Remove use of ghost and ink in favor of EuiThemeProvider + colorMode (see discussion)
    • I'm not sure if this still needs to be done or if this is something to instead be visited in the new theme/visual refresh work.
  • Deprecate using EUI's classnames
  • Remove class names (after a lengthy deprecation period)
    • For context, the deprecation of classNames was something Caroline and Greg were pushing for. I'm not convinced that it's even feasible considering Kibana however.

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    metaUsed to group similar requests or tracking. Not an Epic.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions