feat(argocd): migrate ArgoCD plugin from Material UI v4 to v5#9708
Open
its-mitesh-kumar wants to merge 3 commits into
Open
feat(argocd): migrate ArgoCD plugin from Material UI v4 to v5#9708its-mitesh-kumar wants to merge 3 commits into
its-mitesh-kumar wants to merge 3 commits into
Conversation
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Contributor
Changed Packages
|
Contributor
There was a problem hiding this comment.
Pull request overview
Migrates the @backstage-community/plugin-argocd frontend plugin from Material UI v4 (@material-ui/*) to MUI v5 (@mui/material, @mui/icons-material) by updating component imports and replacing makeStyles/createStyles usage with styled()/sx.
Changes:
- Removed legacy
@material-ui/*dependencies and updated lockfile accordingly. - Replaced style hooks with
sx/styled()patterns across ArgoCD UI components. - Updated affected unit tests to align with the new component structure/styling approach.
Reviewed changes
Copilot reviewed 42 out of 43 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| workspaces/argocd/yarn.lock | Removes legacy @material-ui/* entries. |
| workspaces/argocd/plugins/argocd/src/hooks/useIconStyles.ts | Replaces makeStyles icon styles with styled()/inline style exports. |
| workspaces/argocd/plugins/argocd/src/hooks/useDarkTheme.ts | Switches theme access to MUI v5 palette.mode. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentSummary/DeploymentSummary.tsx | Updates MUI imports to v5 component paths. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/RolloutStatusIcon.tsx | Replaces class-based icon styling/spin with wrapper + inline styles. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/RolloutStatus.tsx | Updates Chip import to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/Rollouts.tsx | Replaces makeStyles with sx layout styles. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/Rollout.tsx | Replaces makeStyles container styles with sx. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/RevisionType.tsx | Updates Chip import/props for MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/RevisionStatus.tsx | Replaces class-based icon styling/spin with wrapper + inline styles. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/RevisionImage.tsx | Updates Typography import to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/CanaryRevision.tsx | Replaces makeStyles with sx on Card. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/BlueGreenRevision.tsx | Updates MUI imports to v5 component paths. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/AnalysisRuns/AnalysisRunStatus.tsx | Replaces class-based icon styling/spin with wrapper + inline styles. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/revisions/AnalysisRuns/AnalysisRuns.tsx | Updates MUI imports and Chip usage for MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/rollouts/tests/RolloutStatusIcon.test.tsx | Updates test expectations for SpinWrapper structure. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/ResourcesTableRow.tsx | Replaces makeStyles with sx/inline styles for table rows. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/ResourcesTableHeader.tsx | Replaces makeStyles with sx on header cells. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/ResourcesTable.tsx | Replaces makeStyles with sx/inline styles and updates MUI imports. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/ResourcesSearchBar.tsx | Replaces makeStyles and v4 icons with MUI v5 sx + icons. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/ResourcesKebabMenuOptions.tsx | Updates Menu/IconButton imports and styling approach for MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/resource/DeploymentMetadata.tsx | Replaces makeStyles with a shared style object used via sx. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/resource/DeploymentHistoryCommit.tsx | Converts className usage to sx and updates imports. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/resource/DeploymentHistory.tsx | Converts container styling to sx and updates imports. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/tests/ResourcesTable.test.tsx | Updates pagination label assertion for MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/DeploymentLifecycleHeader.tsx | Updates IconButton import to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/DeploymentLifecycleDrawer.tsx | Replaces Drawer classes styling with PaperProps.sx and updates imports. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/DeploymentLifecycleCard.tsx | Replaces makeStyles with sx on Card. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/DeploymentLifecycle.tsx | Replaces makeStyles with a styled() container and updates theme mode usage. |
| workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/tests/DeploymentLifecycle.test.tsx | Updates ThemeProvider/createTheme usage for MUI v5 and palette.mode. |
| workspaces/argocd/plugins/argocd/src/components/Common/PermissionAlert.tsx | Replaces @material-ui/lab Alert imports with MUI v5 equivalents. |
| workspaces/argocd/plugins/argocd/src/components/Common/MetadataItemWithTooltip.tsx | Updates Typography/Tooltip imports to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/Common/MetadataItem.tsx | Updates Typography import to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/Common/Metadata.tsx | Updates Typography import to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/Common/AppServerLink.tsx | Updates Tooltip/Typography imports to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/Common/AppNamespace.tsx | Updates Chip/Typography imports and Chip variant for MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/Common/AppCommitLink.tsx | Replaces makeStyles and v4 Skeleton import with MUI v5 patterns. |
| workspaces/argocd/plugins/argocd/src/components/AppStatus/StatusIcons.tsx | Replaces class-based icon styling/spin with wrapper + inline styles. |
| workspaces/argocd/plugins/argocd/src/components/AppStatus/AppSyncStatus.tsx | Updates Chip import to MUI v5. |
| workspaces/argocd/plugins/argocd/src/components/AppStatus/AppHealthStatus.tsx | Updates Chip import to MUI v5. |
| workspaces/argocd/plugins/argocd/package.json | Removes legacy @material-ui/* dependencies and adds/keeps MUI v5 deps. |
| workspaces/argocd/plugins/argocd/dev/index.tsx | Updates Box import to MUI v5. |
| workspaces/argocd/.changeset/migrate-argocd-mui-v5.md | Adds a changeset documenting the MUI v4→v5 migration. |
Comments suppressed due to low confidence (1)
workspaces/argocd/plugins/argocd/src/components/DeploymentLifeCycle/sidebar/resources/resource/DeploymentHistoryCommit.tsx:69
aria-disabledis currently set totruewhencommitUrlexists (!!commitUrl), which is inverted. Also, whencommitUrlis null this rendershref="", creating a focusable link to the current page. Setaria-disabledwhen there is no URL and omithrefwhen absent.
<Link
aria-disabled={!!commitUrl}
href={commitUrl ?? ''}
target="_blank"
rel="noopener"
>
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
Comment on lines
+45
to
+49
| sx={theme => ({ | ||
| border: `1px solid ${theme.palette.grey.A100}`, | ||
| ml: 1.875, | ||
| borderRadius: 0.5, | ||
| })} |
Comment on lines
59
to
60
| "@mui/icons-material": "^6.0.0", | ||
| "@mui/material": "^5.15.16", |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Migrate the ArgoCD plugin from Material UI v4 (
@material-ui/*) to Material UI v5 (@mui/material,@mui/icons-material). This replaces allmakeStyles/createStylespatterns with MUI v5styled()components andsxprop, updates all component imports to per-path MUI v5 imports, handles API breaking changes (e.g.palette.type→palette.mode, Chip/Drawer/Menu prop updates), and removes the legacy@material-ui/*dependencies frompackage.json.Fixed
UI before Changes
S_.2026-06-28.at.7.mp4
UI after changes
S_.2026-06-28.at.3.58.57.PM.mov
S_.2026-06-28.at.4.01.43.PM.mov
✔️ Checklist