chore: upgrade design system to 0.18.0#42132
Conversation
|
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. |
✨ Files requiring CODEOWNER review ✨🔑 @MetaMask/accounts-engineers (2 files, +2 -2)
🎨 @MetaMask/design-system-engineers (1 files, +1 -1)
🔐 @MetaMask/web3auth (1 files, +2 -1)
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: LavaMoat policy uses wrong platform-specific native binding
- Updated lavamoat/build-system/policy.json to allow all @unrs/resolver platform-specific bindings so Linux CI can load the correct native module.
Or push these changes by commenting:
@cursor push 46204b5812
Preview (46204b5812)
diff --git a/lavamoat/build-system/policy.json b/lavamoat/build-system/policy.json
--- a/lavamoat/build-system/policy.json
+++ b/lavamoat/build-system/policy.json
@@ -7761,7 +7761,25 @@
"process.versions.pnp": true
},
"packages": {
- "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-darwin-arm64": true
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-android-arm-eabi": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-android-arm64": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-darwin-arm64": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-darwin-x64": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-freebsd-x64": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-arm-gnueabihf": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-arm-musleabihf": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-arm64-gnu": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-arm64-musl": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-ppc64-gnu": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-riscv64-gnu": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-riscv64-musl": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-s390x-gnu": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-x64-gnu": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-linux-x64-musl": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-wasm32-wasi": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-win32-arm64-msvc": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-win32-ia32-msvc": true,
+ "eslint-import-resolver-typescript>unrs-resolver>@unrs/resolver-binding-win32-x64-msvc": true
}
},
"gulp>gulp-cli>matchdep>micromatch>snapdragon>base>cache-base>unset-value": {You can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit fc447ce. Configure here.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Builds ready [9f944c1]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 8 warn · 🔴 0 fail)
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|
|
Builds ready [2d23699]
⚡ Performance Benchmarks (Total: 🟢 7 pass · 🟡 8 warn · 🔴 0 fail)
Bundle size diffs [🚨 Warning! Bundle size has increased!]
|







Description
This PR upgrades the extension to the latest stable MetaMask design system release from
v35.0.0, moving@metamask/design-system-reactto0.18.0and@metamask/design-system-sharedto0.13.0.The release includes breaking type changes for
Icon*andBox*exports, which now use const-object/string-union typing instead of enum-style assumptions. To keep the extension compiling cleanly against the new release, this PR applies the migration patterns already identified in #41733 and updates the additional callsite that surfaced duringtsc.Specifically:
IconNamestate in the multichain copy-button flows soCopyandCopySuccessboth type-check.NetworkListItemon the component-libraryIconSizetype instead of the new design-system-react export, matching the compatibility pattern from PR#41733.as constassumption inHeaderSearchthat broke onceBoxFlexDirectionmoved to the new string-union model.Changelog
CHANGELOG entry: null
Related issues
Fixes: N/A
References:
Manual testing steps
yarn install.yarn tsc --noEmitand confirm TypeScript passes.yarn lavamoat:autoand confirm policy generation succeeds.yarn lint:changed:fixand confirm the changed files lint cleanly.Screenshots/Recordings
Before
Button tertiary was using primary/default
before720.mov
After
Button tertiary now uses text/default
after720.mov
Pre-merge author checklist
Pre-merge reviewer checklist
Note
Medium Risk
Moderate risk due to a design-system dependency upgrade that can subtly change styling/behavior across the UI, plus small TypeScript type migrations in shared components.
Overview
Upgrades
@metamask/design-system-reactto0.18.0and@metamask/design-system-sharedto0.13.0(with correspondingyarn.lockupdates).Applies compatibility/type fixes required by the new design-system typings: removes an invalid
as constonBoxFlexDirection, explicitly typesIconNamestate for multichain copy icons, and uses the component-libraryIconSizeforNetworkListItem.Updates SRP import-related Jest snapshots to reflect the new design-system button text color class (
text-defaultvstext-primary-default).Reviewed by Cursor Bugbot for commit 2d23699. Bugbot is set up for automated code reviews on this repo. Configure here.