Migration Guide for Material UI v6 and X Data Grid v7
Material UI has released major updates for the following packages:
- @mui/material@6
 - @mui/icons-material@6
 - @mui/system@6
 - @mui/lab@6
 - @mui/material-nextjs@6
 - @mui/styled-engine-sc@6
 - @mui/utils@6
 - @mui/x-data-grid@7
 
This guide focuses on migrating Refine-related parts to the latest version.
Package Version Alignment
Note that @mui/x-* packages do not follow the same versioning strategy as other @mui/* packages. However, @refinedev/mui package versions has peer dependencies on @mui/x-* and other @mui/* packages. Please ensure following version alignment to avoid issues:
| @refinedev/mui | @mui/x-data-grid | @mui/material | @mui/system | @mui/lab | @mui/icons-material | @refinedev/inferencer | 
|---|---|---|---|---|---|---|
| 5.x.x | 6.x.x | 5.x.x | 5.x.x | 5.x.x | 5.x.x | 4.x.x | 
| 6.x.x | 7.x.x | 6.x.x | 6.x.x | 6.x.x | 6.x.x | 5.x.x | 
Material UI Changes
For detailed information about Material UI changes, please refer to the official Material UI v6 migration guide.
Removed components
The following components has been deprecated since @refinedev/mui@6 and removed in @refinedev/mui@7:
| Deprecated Component | Replacement | Documentation | 
|---|---|---|
useSiderVisible | useThemedLayoutContext | View Docs | 
notificationProvider | useNotificationProvider | View Docs | 
notificationProvider | useNotificationProvider | View Docs | 
<Layout /> | <ThemedLayoutV2 /> | View Docs | 
<ThemedLayout /> | <ThemedLayoutV2 /> | View Docs | 
<Title /> | <ThemedTitleV2 /> | View Docs | 
<ThemedTitle /> | <ThemedTitleV2 /> | View Docs | 
<Sider /> | <ThemedSiderV2 /> | View Docs | 
<ThemedSider /> | <ThemedSiderV2 /> | View Docs | 
<Header /> | <ThemedHeaderV2 /> | View Docs | 
<ThemedHeader /> | <ThemedHeaderV2 /> | View Docs | 
<LoginPage /> | <ThemedLoginPage /> | View Docs | 
<WelcomePage /> | @refinedev/core | |
<ReadyPage /> | no replacement | 
Following deprecated types have been replaced with new types:
- RefineLayoutLayoutProps
- RefineThemedLayoutProps
+ RefineThemedLayoutV2Props
- RefineLayoutSiderProps
- RefineThemedLayoutSiderProps
+ RefineThemedLayoutV2SiderProps
- RefineLayoutHeaderProps
- RefineThemedLayoutHeaderProps
+ RefineThemedLayoutV2HeaderProps
X Data Grid Changes
The @refinedev/mui@6 package has no breaking changes except for updating to @mui/x-data-grid@7. However, @mui/x-data-grid@7 includes some important changes you need to check.
For detailed information about Data Grid changes, please refer to the official MUI X Migration Guide for Data Grid.
Stying
In @refinedev/mui@6, the useDataGrid hook was returning the following sx object for styling the Data Grid but in @mui/x-data-grid@7, the sx object has been removed to use default styles from @mui/x-data-grid@7.
import { darken, useTheme } from "@mui/material/styles";
const theme = useTheme();
const sx = {
  border: "none",
  "& .MuiDataGrid-columnHeaders": {
    background: darken(theme.palette.background.paper, 0.05),
    borderBottom: `1px solid ${darken(theme.palette.background.paper, 0.1)}`,
  },
  "& .MuiDataGrid-cell": {
    borderBottom: `1px solid ${darken(theme.palette.background.paper, 0.05)}`,
  },
};