mui / material-ui

Material UI: Comprehensive React component library that implements Google's Material Design. Free forever.
https://mui.com/material-ui/
MIT License
93.51k stars 32.18k forks source link

[material-ui] Deprecate composed CSS classes #41282

Open DiegoAndai opened 7 months ago

DiegoAndai commented 7 months ago

Part of #40417

Description

Deprecate composed CSS classes, which are planned for removal in v7.

Example PR

Contributing

Feel free to take any components that still need to be done or in progress. Please mention this issue in your PR so we can link it in the description and keep it up to date.

Components to migrate

Search keywords: deprecation composed classes material-ui

Search keywords:

harry-whorlow commented 3 months ago

Hi @DiegoAndai,

I would like to help out with this task, I'm thinking of starting with tooltip, but I'm having a little difficulty discerning the composed classes from the atomic ones. I'm looking at the docs docs, would I be correct in assuming that the merge request should look something along the lines of:

.MuiTooltip-arrow .MuiTooltip-popper .MuiTooltip-popperArrow [deprecated] .MuiTooltip-popperClose [deprecated] .MuiTooltip-popperInteractive [deprecated] .MuiTooltip-tooltip .MuiTooltip-tooltipArrow .MuiTooltip-tooltipPlacementBottom [deprecated] .MuiTooltip-tooltipPlacementLeft [deprecated] .MuiTooltip-tooltipPlacementRight [deprecated] .MuiTooltip-tooltipPlacementTop [deprecated] .MuiTooltip-touch

Where the composed classes are the the joins of what would be individual css classes applied to the children.

DiegoAndai commented 3 months ago

Hi @harry-whorlow! The Tooltip components is a complex component, I'm not sure what the best class structure would be best 🤔

I would suggest starting with the SpeedDial component.

harry-whorlow commented 3 months ago

Copy that, I'll start with the old friend SpeedDial 🫡

[edit]: I've had a lot of things come up, if someone wants to take over go ahead. I'll update this comment if something changes in the future. Sorry