Skip to content

chore: upgrade @metamask/design-system-react to v0.14.0#41525

Merged
georgewrmarshall merged 1 commit intomainfrom
upgrade-design-system-react-v0.14.0
Apr 9, 2026
Merged

chore: upgrade @metamask/design-system-react to v0.14.0#41525
georgewrmarshall merged 1 commit intomainfrom
upgrade-design-system-react-v0.14.0

Conversation

@georgewrmarshall
Copy link
Copy Markdown
Contributor

@georgewrmarshall georgewrmarshall commented Apr 7, 2026

Description

Upgrades `@metamask/design-system-react` from `^0.12.0` to `^0.14.0` based on the v29.0.0 monorepo release.

Depends on: #41467

Breaking changes reviewed — no migration steps required for this repo:

Change Impact
`AvatarBase` enum → const-object + string-union types (v0.14.0) Extension uses its own deprecated local `AvatarBaseSize` enum; not affected
`BadgeWrapper` enum → string-union types (v0.13.0) Extension uses its own deprecated local `BadgeWrapperPosition`/`BadgeWrapperAnchorElementShape`; not affected
`FontWeight.Bold` changed from `700` to `600` (v0.13.0) Only 2 files import `FontWeight` from the package; neither uses `.Bold`
`BottomSheet` / React Native breaking changes Not applicable (extension is web-only)

Changelog

CHANGELOG entry: null

Related issues

Fixes:

Manual testing steps

  1. Build the extension and verify no TypeScript errors
  2. Spot-check components that import from `@metamask/design-system-react` still render correctly

Screenshots/Recordings

Before

After

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Note

Low Risk
Low risk dependency/lockfile update, but could surface build/TypeScript or subtle UI/styling regressions if the design system’s updated types or token defaults differ.

Overview
Upgrades @metamask/design-system-react from ^0.13.0 to ^0.14.0.

Updates the lockfile to pull in @metamask/design-system-shared@^0.7.0 and the newer @metamask/utils@^11.11.0 peer requirement associated with the design-system bump.

Reviewed by Cursor Bugbot for commit 0b3cf62. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 7, 2026

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@metamaskbot metamaskbot added the team-design-system All issues relating to design system in Extension label Apr 7, 2026
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix prepared a fix for the issue found in the latest run.

  • ✅ Fixed: FontWeight.Bold visual change missed in breaking changes review
    • Updated balance-empty-state heading to explicitly set fontWeight: 700 to preserve bold after FontWeight.Bold change to 600.

Create PR

Or push these changes by commenting:

@cursor push ac8d50423e
Preview (ac8d50423e)
diff --git a/ui/components/app/balance-empty-state/balance-empty-state.tsx b/ui/components/app/balance-empty-state/balance-empty-state.tsx
--- a/ui/components/app/balance-empty-state/balance-empty-state.tsx
+++ b/ui/components/app/balance-empty-state/balance-empty-state.tsx
@@ -11,7 +11,6 @@
   TextVariant,
   TextColor,
   TextAlign,
-  FontWeight,
   ButtonVariant,
   ButtonSize,
   twMerge,
@@ -126,8 +125,8 @@
         <Text
           variant={TextVariant.HeadingLg}
           color={TextColor.TextDefault}
-          fontWeight={FontWeight.Bold}
           textAlign={TextAlign.Center}
+          style={{ fontWeight: 700 }}
         >
           {t('fundYourWallet')}
         </Text>

You can send follow-ups to the cloud agent here.

Reviewed by Cursor Bugbot for commit b371ae5. Configure here.

@georgewrmarshall georgewrmarshall requested a review from a team April 7, 2026 20:37
@socket-security
Copy link
Copy Markdown

socket-security bot commented Apr 7, 2026

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​metamask/​design-system-react@​0.13.0 ⏵ 0.14.0981008097 +1100

View full report

@metamaskbotv2
Copy link
Copy Markdown
Contributor

metamaskbotv2 bot commented Apr 7, 2026

Builds ready [b371ae5]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 0 warn · 🔴 0 fail)

Baseline (latest main): f34f804 | Date: 9/10/58222 | Pipeline: 24103102640 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-browserify
loadNewAccount🟢 [Show logs]
confirmTx🟢 [Show logs]
bridgeUserActions🟢 [Show logs]
User Journey Benchmarks · Samples: 5 · mock API

⚠️ Missing data: chrome/browserify/userJourneyAssets, chrome/browserify/userJourneyTransactions

Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
importSrpHome🟢 [Show logs]
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-browserify
dappPageLoad🟢 [Show logs]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 62 Bytes (0%)
  • ui: 7 Bytes (0%)
  • common: 47.17 KiB (0.37%)

@metamaskbotv2
Copy link
Copy Markdown
Contributor

metamaskbotv2 bot commented Apr 8, 2026

Builds ready [70f0583]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 12 warn · 🔴 0 fail)

Baseline (latest main): f34f804 | Date: 9/10/58222 | Pipeline: 24154987453 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-browserify
loadNewAccount
🟡 load_new_account
[Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: +10%
  • loadNewAccount/total: +10%
  • bridgeUserActions/bridge_load_asset_picker: -25%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 2.7s
  • 🟡 loadNewAccount/LCP: p75 2.6s
  • 🟡 confirmTx/FCP: p75 2.6s
  • 🟡 bridgeUserActions/FCP: p75 2.5s
Startup Benchmarks · Samples: 100
Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]
startupPowerUserHome🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/domInteractive: +17%
  • startupStandardHome/backgroundConnect: +18%
  • startupStandardHome/firstReactRender: -13%
  • startupStandardHome/initialActions: -38%
  • startupStandardHome/loadScripts: -11%
  • startupStandardHome/setupStore: +14%
  • startupPowerUserHome/backgroundConnect: +117%
  • startupPowerUserHome/setupStore: +11%
  • startupPowerUserHome/numNetworkReqs: -55%
  • startupStandardHome/uiStartup: -14%
  • startupStandardHome/load: -14%
  • startupStandardHome/domContentLoaded: -14%
  • startupStandardHome/backgroundConnect: -34%
  • startupStandardHome/firstReactRender: -24%
  • startupStandardHome/loadScripts: -13%
  • startupStandardHome/numNetworkReqs: -29%
  • startupPowerUserHome/domInteractive: -20%
  • startupPowerUserHome/firstPaint: -11%
  • startupStandardHome/domInteractive: -58%
  • startupStandardHome/initialActions: -38%
  • startupStandardHome/numNetworkReqs: -18%
  • startupPowerUserHome/backgroundConnect: -28%
  • startupPowerUserHome/setupStore: -15%
  • startupStandardHome/initialActions: +11%
  • startupStandardHome/setupStore: -48%
  • startupPowerUserHome/uiStartup: -10%
  • startupPowerUserHome/load: -11%
  • startupPowerUserHome/domContentLoaded: -11%
  • startupPowerUserHome/domInteractive: -19%
  • startupPowerUserHome/backgroundConnect: -33%
  • startupPowerUserHome/firstReactRender: -11%
  • startupPowerUserHome/loadScripts: -12%
  • startupPowerUserHome/setupStore: +11%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 744ms
  • 🔴 startupPowerUserHome/INP: p75 640ms
  • 🟡 startupPowerUserHome/LCP: p75 3.6s
  • 🟡 startupPowerUserHome/LCP: p75 3.5s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -84%
  • onboardingImportWallet/metricsToWalletReadyScreen: -33%
  • onboardingImportWallet/doneButtonToHomeScreen: -74%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +33%
  • onboardingImportWallet/total: -41%
  • onboardingNewWallet/srpButtonToPwForm: -78%
  • onboardingNewWallet/skipBackupToMetricsScreen: -62%
  • onboardingNewWallet/agreeButtonToOnboardingSuccess: -24%
  • onboardingNewWallet/doneButtonToAssetList: -28%
  • onboardingNewWallet/total: -28%
  • assetDetails/assetClickToPriceChart: -37%
  • assetDetails/total: -37%
  • solanaAssetDetails/assetClickToPriceChart: -71%
  • solanaAssetDetails/total: -71%
  • importSrpHome/openAccountMenuAfterLogin: -75%
  • importSrpHome/homeAfterImportWithNewWallet: -70%
  • importSrpHome/total: -62%
  • sendTransactions/openSendPageFromHome: -23%
  • sendTransactions/selectTokenToSendFormLoaded: -22%
  • sendTransactions/reviewTransactionToConfirmationPage: +37%
  • sendTransactions/total: +34%
  • swap/openSwapPageFromHome: -97%
  • swap/fetchAndDisplaySwapQuotes: +31%
  • swap/total: +12%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/FCP: p75 2.5s
  • 🟡 solanaAssetDetails/FCP: p75 2.5s
  • 🟡 importSrpHome/INP: p75 216ms
  • 🟡 importSrpHome/FCP: p75 2.5s
  • 🟡 sendTransactions/INP: p75 208ms
  • 🟡 sendTransactions/FCP: p75 2.4s
  • 🟡 swap/FCP: p75 2.5s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-browserify
dappPageLoad🟢 [Show logs]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 55 Bytes (0%)
  • ui: -63 Bytes (0%)
  • common: 4.57 KiB (0.04%)

Bumps @metamask/design-system-react from ^0.12.0 to ^0.14.0 per the
v29.0.0 monorepo release.

No migration steps required for this repo:
- AvatarBase/BadgeWrapper enum → string-union type changes are internal
  to the design system package; the extension uses its own deprecated
  local copies and is unaffected.
- FontWeight.Bold visual change (700 → 600) does not affect the two
  files that import FontWeight from the package (neither uses .Bold).
- BottomSheet/React Native breaking changes are not applicable.
@georgewrmarshall georgewrmarshall force-pushed the upgrade-design-system-react-v0.14.0 branch from 70f0583 to 0b3cf62 Compare April 8, 2026 21:41
@georgewrmarshall georgewrmarshall self-assigned this Apr 8, 2026
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Apr 8, 2026

@georgewrmarshall georgewrmarshall marked this pull request as ready for review April 8, 2026 22:08
@metamaskbotv2
Copy link
Copy Markdown
Contributor

metamaskbotv2 bot commented Apr 8, 2026

Builds ready [0b3cf62]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 12 warn · 🔴 0 fail)

Baseline (latest main): f34f804 | Date: 9/10/58222 | Pipeline: 24160196927 | Baseline logs

Interaction Benchmarks · Samples: 5
Benchmarkchrome-browserify
loadNewAccount🟡 [Show logs]
confirmTx🟡 [Show logs]
bridgeUserActions🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • loadNewAccount/load_new_account: -17%
  • loadNewAccount/total: -17%
  • bridgeUserActions/bridge_load_asset_picker: -29%
  • bridgeUserActions/bridge_search_token: -18%
  • bridgeUserActions/total: -20%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 loadNewAccount/FCP: p75 2.5s
  • 🟡 confirmTx/FCP: p75 2.5s
  • 🟡 bridgeUserActions/FCP: p75 2.5s
Startup Benchmarks · Samples: 100
Benchmarkchrome-browserifychrome-webpackfirefox-browserifyfirefox-webpack
startupStandardHome🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]🟢 [Show logs]
startupPowerUserHome🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • startupStandardHome/uiStartup: -11%
  • startupStandardHome/load: -12%
  • startupStandardHome/domContentLoaded: -14%
  • startupStandardHome/backgroundConnect: +11%
  • startupStandardHome/firstReactRender: -17%
  • startupStandardHome/initialActions: -38%
  • startupStandardHome/loadScripts: -17%
  • startupPowerUserHome/domInteractive: -17%
  • startupPowerUserHome/backgroundConnect: +102%
  • startupStandardHome/uiStartup: -15%
  • startupStandardHome/load: -15%
  • startupStandardHome/domContentLoaded: -14%
  • startupStandardHome/backgroundConnect: -36%
  • startupStandardHome/firstReactRender: -24%
  • startupStandardHome/loadScripts: -14%
  • startupStandardHome/setupStore: -14%
  • startupStandardHome/numNetworkReqs: -29%
  • startupPowerUserHome/domInteractive: -25%
  • startupPowerUserHome/numNetworkReqs: -20%
  • startupStandardHome/domInteractive: -60%
  • startupStandardHome/initialActions: +25%
  • startupStandardHome/setupStore: +14%
  • startupStandardHome/numNetworkReqs: -16%
  • startupPowerUserHome/uiStartup: -17%
  • startupPowerUserHome/domInteractive: -12%
  • startupPowerUserHome/backgroundConnect: -42%
  • startupStandardHome/domInteractive: -32%
  • startupStandardHome/backgroundConnect: -13%
  • startupStandardHome/initialActions: +11%
  • startupStandardHome/setupStore: -45%
  • startupPowerUserHome/domInteractive: -13%
  • startupPowerUserHome/backgroundConnect: -37%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🔴 startupPowerUserHome/INP: p75 728ms
  • 🔴 startupPowerUserHome/INP: p75 720ms
  • 🟡 startupPowerUserHome/LCP: p75 3.2s
  • 🟡 startupPowerUserHome/LCP: p75 3.6s
User Journey Benchmarks · Samples: 5 · mock API
Benchmarkchrome-browserify
onboardingImportWallet🟢 [Show logs]
onboardingNewWallet🟢 [Show logs]
assetDetails🟡 [Show logs]
solanaAssetDetails🟡 [Show logs]
importSrpHome🟡 [Show logs]
sendTransactions🟡 [Show logs]
swap🟡 [Show logs]

📈 Results compared to the previous 5 runs on main

  • onboardingImportWallet/srpButtonToSrpForm: -85%
  • onboardingImportWallet/metricsToWalletReadyScreen: -22%
  • onboardingImportWallet/doneButtonToHomeScreen: -73%
  • onboardingImportWallet/openAccountMenuToAccountListLoaded: +32%
  • onboardingImportWallet/total: -39%
  • onboardingNewWallet/srpButtonToPwForm: -77%
  • onboardingNewWallet/skipBackupToMetricsScreen: -66%
  • onboardingNewWallet/agreeButtonToOnboardingSuccess: -20%
  • onboardingNewWallet/doneButtonToAssetList: -27%
  • onboardingNewWallet/total: -28%
  • assetDetails/assetClickToPriceChart: -36%
  • assetDetails/total: -36%
  • solanaAssetDetails/assetClickToPriceChart: -63%
  • solanaAssetDetails/total: -63%
  • importSrpHome/loginToHomeScreen: +12%
  • importSrpHome/openAccountMenuAfterLogin: -75%
  • importSrpHome/homeAfterImportWithNewWallet: -70%
  • importSrpHome/total: -60%
  • sendTransactions/openSendPageFromHome: -27%
  • sendTransactions/selectTokenToSendFormLoaded: -23%
  • sendTransactions/reviewTransactionToConfirmationPage: +34%
  • sendTransactions/total: +30%
  • swap/openSwapPageFromHome: -96%
  • swap/fetchAndDisplaySwapQuotes: +31%
  • swap/total: +11%

🌐 Core Web Vitals — 🟢 good · 🟡 needs improvement · 🔴 poor (web.dev thresholds)

  • 🟡 assetDetails/INP: p75 208ms
  • 🟡 assetDetails/FCP: p75 2.4s
  • 🟡 solanaAssetDetails/FCP: p75 2.5s
  • 🟡 importSrpHome/INP: p75 208ms
  • 🟡 importSrpHome/FCP: p75 2.4s
  • 🟡 sendTransactions/INP: p75 224ms
  • 🟡 sendTransactions/FCP: p75 2.4s
  • 🟡 swap/FCP: p75 2.5s
Dapp Page Load Benchmarks · Samples: 100
Benchmarkchrome-browserify
dappPageLoad🟢 [Show logs]
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 49 Bytes (0%)
  • ui: 3 Bytes (0%)
  • common: 3.07 KiB (0.02%)

@georgewrmarshall georgewrmarshall added this pull request to the merge queue Apr 9, 2026
@HowardBraham HowardBraham added the retry-ci Tells GitHub Actions to retry failed jobs, label removed automatically before the retry label Apr 9, 2026
@github-actions github-actions bot removed the retry-ci Tells GitHub Actions to retry failed jobs, label removed automatically before the retry label Apr 9, 2026
@HowardBraham HowardBraham added the retry-ci Tells GitHub Actions to retry failed jobs, label removed automatically before the retry label Apr 9, 2026
Merged via the queue into main with commit 171552a Apr 9, 2026
214 checks passed
@georgewrmarshall georgewrmarshall deleted the upgrade-design-system-react-v0.14.0 branch April 9, 2026 18:32
@github-actions github-actions bot locked and limited conversation to collaborators Apr 9, 2026
@github-actions github-actions bot removed the retry-ci Tells GitHub Actions to retry failed jobs, label removed automatically before the retry label Apr 9, 2026
@metamaskbot metamaskbot added the release-13.27.0 Issue or pull request that will be included in release 13.27.0 label Apr 9, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

release-13.27.0 Issue or pull request that will be included in release 13.27.0 size-XS team-design-system All issues relating to design system in Extension

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants