Skip to content

[Backstage - Utviklerportal] Migrate mui v4 -> v7#750

Open
aleksanderobrestad wants to merge 13 commits intomainfrom
migrate-mui
Open

[Backstage - Utviklerportal] Migrate mui v4 -> v7#750
aleksanderobrestad wants to merge 13 commits intomainfrom
migrate-mui

Conversation

@aleksanderobrestad
Copy link
Collaborator

@aleksanderobrestad aleksanderobrestad commented Mar 12, 2026

⚠️Avhengig av at denne PR'en blir merget først først⚠️

🔒 Bakgrunn

@material-ui/core (MUI v4) bruker ReactDOM.findDOMNode() internt, som er deprecated i React 18 og fjernet i React 19. Dette ga advarsler i development-console og ville ført til runtime-feil ved en fremtidig React-oppgradering.

🔑 Løsning

Migrert alle direkte MUI v4-importer i prosjektkoden til MUI v7:

packages/app

  • makeStyles migrert til tss-react/mui
  • Grid item / xs/md-props migrert til Grid v2 size-prop (alle katalog-, hjem- og søkesider)
  • TreeView/TreeItem fra @material-ui/lab erstattet med SimpleTreeView/TreeItem fra @mui/x-tree-view v8
  • Diverse ikoner og komponent-importer oppdatert til @mui/material og @mui/icons-material

plugins/frontend-custom-components (19 filer)

  • makeStyles → tss-react/mui
  • Grid v1 → Grid v2 (size-prop)
  • MUI v4-pakker fjernet

plugins/catalog-creator

  • Tooltip, useTheme, Link migrert til @mui/material
  • MUI v4-pakker fjernet

Avhengighetsendringer:

  • Fjernet: @material-ui/core, @material-ui/icons, @material-ui/lab
  • Lagt til: @mui/material ^7, @mui/icons-material ^7, @mui/x-tree-view ^8, tss-react ^4
  • Peer deps oppdatert i catalog-creator, security-champion, security-metrics og frontend-custom-components
  • Root resolutions oppdatert til @mui/material ^7.3.7

Bugfikser underveis:

  • plugins/security-metrics: TablePaginationActions-import rettet fra fjernet subpath @mui/material/TablePagination/TablePaginationActions til
    @mui/material/TablePaginationActions

Tekniske notater:

  • makeStyles migrert til tss-react/mui — anbefalt drop-in replacement i MUI v5/v7 sin migrasjonsguide
  • MUI v4→v7 breaking changes fikset: Grid v1 item/xs/md → Grid v2 size, palette.type → palette.mode, theme.spacing() returnerer nå streng med px

Merk: Noen findDOMNode-advarsler fra Backstage sine egne pakker vil fortsatt vises. Disse er utenfor prosjektets kontroll og avhenger av Backstage sin pågående
MUI-migrering.

📸 Bilder

Kommer

aleksanderobrestad and others added 5 commits March 12, 2026 10:38
… pages

Replace Grid and Button imports in all catalog entity page files
with path-based @mui/material imports as required by Backstage ESLint rules.
Add @mui/material as explicit dependency in packages/app.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace Tooltip, useTheme and Link imports with @mui/material equivalents.
Fix palette.type -> palette.mode (MUI v4 -> v5 API change).
Remove @material-ui/core, @material-ui/icons, @material-ui/lab dependencies.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace all @material-ui/core and @material-ui/icons imports in
Root.tsx, HomePage.tsx, SearchPage.tsx, SidebarSearchModal.tsx and apis.ts.

- Icons migrated to @mui/icons-material
- makeStyles migrated to tss-react/mui (double-call syntax, destructured classes)
- Grid and Paper migrated to @mui/material path imports
- useTheme migrated to @mui/material/styles
- Fix palette.type -> palette.mode (MUI v4 -> v5 API change)
- Add @mui/icons-material and tss-react as dependencies

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…aterial and tss-react

Replace all @material-ui/core, @material-ui/icons and @material-ui/lab
imports across 19 files with @mui/material, @mui/icons-material and tss-react.

- makeStyles migrated to tss-react/mui
- Icons migrated to @mui/icons-material
- Components migrated to @mui/material path imports
- Fix palette.type -> palette.mode (MUI v4 -> v5 API change)
- Fix theme.spacing() usage (no longer needs 'px' suffix in v5)
- Remove @material-ui/core, @material-ui/icons, @material-ui/lab dependencies
- Add tss-react and @mui/icons-material as dependencies

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Migrate FunctionTree.tsx from @material-ui/lab to @mui/x-tree-view v8:
- TreeView -> SimpleTreeView from @mui/x-tree-view/SimpleTreeView
- TreeItem -> TreeItem from @mui/x-tree-view/TreeItem
- nodeId -> itemId prop
- defaultExpanded -> defaultExpandedItems prop
- defaultCollapseIcon/defaultExpandIcon -> slots={{ collapseIcon, expandIcon }}
- makeStyles migrated to tss-react/mui
- Chip and Paper migrated to @mui/material path imports
- Icons migrated to @mui/icons-material

Remove @material-ui/core, @material-ui/icons, @material-ui/lab from packages/app
as all MUI v4 usage has now been fully replaced.
Add @mui/x-tree-view as dependency.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions
Copy link

github-actions bot commented Mar 12, 2026

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 9 package(s) with unknown licenses.
  • ⚠️ 1 packages with OpenSSF Scorecard issues.
See the Details below.

License Issues

package.json

PackageVersionLicenseIssue Type
@mui/material^7.3.9NullUnknown License

packages/app/package.json

PackageVersionLicenseIssue Type
@mui/icons-material^7.3.9NullUnknown License
@mui/material^7.3.9NullUnknown License
@mui/x-tree-view^8.27.2NullUnknown License
tss-react^4.9.20NullUnknown License

plugins/frontend-custom-components/package.json

PackageVersionLicenseIssue Type
@mui/icons-material^7.3.9NullUnknown License
@mui/material^7.3.9NullUnknown License
tss-react^4.9.20NullUnknown License

plugins/security-metrics/package.json

PackageVersionLicenseIssue Type
@mui/material^7.3.9NullUnknown License
Excluded from license check: pkg:github/kartverket/backstage-techdocs-action

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
npm/@mui/material ^7.3.9 UnknownUnknown
npm/@mui/icons-material ^7.3.9 UnknownUnknown
npm/@mui/material ^7.3.9 UnknownUnknown
npm/@mui/x-tree-view ^8.27.2 UnknownUnknown
npm/tss-react ^4.9.20 UnknownUnknown
npm/@mui/icons-material ^7.3.9 UnknownUnknown
npm/@mui/material ^7.3.9 UnknownUnknown
npm/tss-react ^4.9.20 UnknownUnknown
npm/@mui/material ^7.3.9 UnknownUnknown
npm/@backstage/module-federation-common 0.1.1 🟢 6.5
Details
CheckScoreReason
Code-Review🟢 10all changesets reviewed
Maintained🟢 1030 commit(s) and 10 issue activity found in the last 90 days -- score normalized to 10
Security-Policy🟢 10security policy file detected
Dependency-Update-Tool🟢 10update tool detected
Dangerous-Workflow⚠️ 0dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
CII-Best-Practices⚠️ 2badge detected: InProgress
License🟢 10license file detected
Binary-Artifacts🟢 10no binaries found in the repo
Packaging🟢 10packaging workflow detected
Pinned-Dependencies🟢 8dependency not pinned by hash detected -- score normalized to 8
SAST🟢 10SAST tool detected
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 8branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 081 existing vulnerabilities detected
CI-Tests🟢 1011 out of 11 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 17 contributing companies or organizations
npm/@base-ui/utils 0.2.5 🟢 7.4
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 7 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 4Found 13/27 approved changesets -- score normalized to 4
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
Dependency-Update-Tool🟢 10update tool detected
Pinned-Dependencies🟢 10all dependencies are pinned
Binary-Artifacts🟢 10no binaries found in the repo
License🟢 10license file detected
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
SAST🟢 7SAST tool detected but not run on all commits
Vulnerabilities⚠️ 028 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 20 contributing companies or organizations
npm/@mui/core-downloads-tracker 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/icons-material 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/material 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/private-theming 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/styled-engine 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/system 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/types 7.4.12 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/utils 7.3.9 🟢 7.8
Details
CheckScoreReason
Maintained🟢 1030 commit(s) and 15 issue activity found in the last 90 days -- score normalized to 10
Code-Review🟢 9Found 25/27 approved changesets -- score normalized to 9
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Security-Policy🟢 10security policy file detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices🟢 5badge detected: Passing
Signed-Releases⚠️ -1no releases found
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
License🟢 10license file detected
SAST🟢 7SAST tool detected but not run on all commits
Fuzzing⚠️ 0project is not fuzzed
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Vulnerabilities⚠️ 017 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 35 contributing companies or organizations
npm/@mui/x-internals 8.26.0 🟢 7.5
Details
CheckScoreReason
Code-Review🟢 9Found 23/25 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Security-Policy🟢 10security policy file detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
License⚠️ 0license file not detected
CII-Best-Practices🟢 5badge detected: Passing
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
SAST🟢 7SAST tool detected but not run on all commits
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Fuzzing⚠️ 0project is not fuzzed
Vulnerabilities⚠️ 025 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 11 contributing companies or organizations
npm/@mui/x-tree-view 8.27.2 🟢 7.5
Details
CheckScoreReason
Code-Review🟢 9Found 23/25 approved changesets -- score normalized to 9
Maintained🟢 1030 commit(s) and 18 issue activity found in the last 90 days -- score normalized to 10
Dependency-Update-Tool🟢 10update tool detected
Packaging⚠️ -1packaging workflow not detected
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Security-Policy🟢 10security policy file detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
License⚠️ 0license file not detected
CII-Best-Practices🟢 5badge detected: Passing
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies🟢 10all dependencies are pinned
SAST🟢 7SAST tool detected but not run on all commits
Signed-Releases⚠️ -1no releases found
Branch-Protection🟢 4branch protection is not maximal on development and all release branches
Fuzzing⚠️ 0project is not fuzzed
Vulnerabilities⚠️ 025 existing vulnerabilities detected
CI-Tests🟢 1029 out of 29 merged PRs checked by a CI test -- score normalized to 10
Contributors🟢 10project has 11 contributing companies or organizations
npm/tss-react 4.9.20 ⚠️ 2.8
Details
CheckScoreReason
Code-Review⚠️ 0Found 1/22 approved changesets -- score normalized to 0
Packaging⚠️ -1packaging workflow not detected
Maintained⚠️ 00 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 0
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Token-Permissions⚠️ 0detected GitHub workflow tokens with excessive permissions
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
Fuzzing⚠️ 0project is not fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
SAST⚠️ 0SAST tool is not run on all commits -- score normalized to 0
Branch-Protection⚠️ 0branch protection not enabled on development/release branches

Scanned Files

  • package.json
  • packages/app/package.json
  • plugins/frontend-custom-components/package.json
  • plugins/security-metrics/package.json
  • yarn.lock

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates the portal codebase away from legacy MUI v4 (@material-ui/*) imports toward the MUI v5+ package namespace (@mui/*), addressing findDOMNode deprecation warnings and unblocking future React upgrades.

Changes:

  • Replaced @material-ui/* component/icon imports with @mui/material, @mui/icons-material, and @mui/x-tree-view equivalents.
  • Migrated makeStyles usage to tss-react/mui and updated theme API changes (palette.typepalette.mode, spacing return type changes).
  • Updated package dependencies/lockfile to remove MUI v4 packages and add MUI v5+ replacements.

Reviewed changes

Copilot reviewed 41 out of 42 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
yarn.lock Removes @material-ui/* packages and adds MUI v5+ ecosystem deps (including tss-react and @mui/x-tree-view).
plugins/frontend-custom-components/src/components/GroupSecurityFormsCard/useDynamicColumns.tsx Switches useMediaQuery/Theme imports from MUI v4 to MUI v5+.
plugins/frontend-custom-components/src/components/GroupSecurityFormsCard/TeamFormsTabContent.tsx Migrates styles to tss-react/mui, updates icon import paths, and theme API changes.
plugins/frontend-custom-components/src/components/GroupSecurityFormsCard/LinksGridList.tsx Migrates ImageList imports to @mui/material.
plugins/frontend-custom-components/src/components/GroupSecurityFormsCard/IconLink.tsx Migrates Box/Typography imports and makeStyles to tss-react/mui.
plugins/frontend-custom-components/src/components/GroupSecurityFormsCard/GroupSecurityFormsCard.tsx Migrates icons and styles to MUI v5+ packages and tss-react/mui.
plugins/frontend-custom-components/src/components/GroupSecurityFormsCard/FunctionFormsTabContent.tsx Migrates icons/styles and theme API changes for function tab.
plugins/frontend-custom-components/src/components/FunctionSecurityFormsCard/useDynamicColumns.tsx Switches useMediaQuery/Theme imports from MUI v4 to MUI v5+.
plugins/frontend-custom-components/src/components/FunctionSecurityFormsCard/LinksGridList.tsx Migrates ImageList imports to @mui/material.
plugins/frontend-custom-components/src/components/FunctionSecurityFormsCard/IconLink.tsx Migrates Box/Typography/icons and makeStyles to MUI v5+ packages.
plugins/frontend-custom-components/src/components/FunctionSecurityFormsCard/FunctionSecurityFormsCard.tsx Migrates styles/icons/Typography imports to MUI v5+ and tss-react/mui.
plugins/frontend-custom-components/src/components/FunctionGroupPageCard/FunctionGroupPageCard.tsx Migrates Typography import to @mui/material.
plugins/frontend-custom-components/src/components/FunctionDependenciesCard/FunctionDependenciesCard.tsx Migrates Typography import to @mui/material.
plugins/frontend-custom-components/src/components/EntityFunctionsCard/EntityFunctionsCard.tsx Migrates Typography import to @mui/material.
plugins/frontend-custom-components/src/components/AboutCard/useDynamicColumns.tsx Switches useMediaQuery/Theme imports from MUI v4 to MUI v5+.
plugins/frontend-custom-components/src/components/AboutCard/LinksGridList.tsx Migrates ImageList imports to @mui/material.
plugins/frontend-custom-components/src/components/AboutCard/IconLink.tsx Migrates Box/Typography/icons and makeStyles to MUI v5+ packages.
plugins/frontend-custom-components/src/components/AboutCard/FunctionAboutContent.tsx Migrates Chip/Grid imports and makeStyles to MUI v5+ packages.
plugins/frontend-custom-components/src/components/AboutCard/FunctionAboutCard.tsx Migrates Card subcomponents/icons and makeStyles to MUI v5+ packages.
plugins/frontend-custom-components/src/components/AboutCard/AboutField.tsx Migrates Grid/Typography and makeStyles to MUI v5+ packages.
plugins/frontend-custom-components/package.json Removes MUI v4 dependencies and adds tss-react / MUI v5+ deps.
plugins/catalog-creator/src/components/CatalogForm/FieldHeader.tsx Migrates Tooltip import to @mui/material.
plugins/catalog-creator/src/components/CatalogCreatorPage/RepositoryForm.tsx Migrates Link import to @mui/material.
plugins/catalog-creator/src/components/CatalogCreatorPage/CatalogCreatorPage.tsx Migrates useTheme import and palette mode API usage.
plugins/catalog-creator/package.json Removes MUI v4 peer deps from the plugin manifest.
packages/app/src/components/search/SidebarSearchModal.tsx Migrates Search icon import to @mui/icons-material.
packages/app/src/components/search/SearchPage.tsx Migrates Grid/Paper/makeStyles to MUI v5+ packages and tss-react/mui.
packages/app/src/components/home/HomePage.tsx Migrates Grid/useTheme/makeStyles to MUI v5+ packages and tss-react/mui.
packages/app/src/components/functions/FunctionTree.tsx Replaces TreeView/TreeItem from MUI v4 lab with @mui/x-tree-view equivalents and updates props.
packages/app/src/components/catalog/entityPages/shared.tsx Migrates Button/Grid imports to @mui/material.
packages/app/src/components/catalog/entityPages/UserPage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/SystemPage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/ResourcePage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/GroupPage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/FunctionEntityPage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/DomainPage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/ComponentPages.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/entityPages/ApiPage.tsx Migrates Grid import to @mui/material.
packages/app/src/components/catalog/EntityPage.tsx Migrates Grid import and updates Grid documentation link to MUI site.
packages/app/src/components/Root/Root.tsx Migrates icons and makeStyles usage to MUI v5+ packages and tss-react/mui.
packages/app/src/apis.ts Migrates Assignment icon import to @mui/icons-material.
packages/app/package.json Removes MUI v4 deps and adds MUI v5+ deps (@mui/*, tss-react, @mui/x-tree-view).

You can also share your feedback on Copilot code review. Take the survey.

@aleksanderobrestad aleksanderobrestad force-pushed the migrate-mui branch 2 times, most recently from 51516d0 to 88095c9 Compare March 13, 2026 12:30
@aleksanderobrestad aleksanderobrestad changed the title [Backstage - Utviklerportal] Migrate mui v4 -> v5 [Backstage - Utviklerportal] Migrate mui v4 -> v7 Mar 16, 2026
Copy link
Collaborator

@kariesta kariesta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ser bra ut dette

@aleksanderobrestad aleksanderobrestad marked this pull request as ready for review March 17, 2026 14:05
@aleksanderobrestad aleksanderobrestad requested a review from a team as a code owner March 17, 2026 14:05
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 45 out of 46 changed files in this pull request and generated 1 comment.


You can also share your feedback on Copilot code review. Take the survey.

@synnestokkevaag
Copy link
Contributor

Screenshot 2026-03-19 at 11 56 03

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants