feat: Button migration (no codeowners, p2)#31576
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. |
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection: Affected flows and corresponding tags:
The SmokeSwap and SmokeStake tags were considered for SuccessErrorSheet but since the sheet is a generic component and the core swap/stake logic is unchanged, SmokeConfirmations covers the confirmation-related aspects adequately. SmokeBrowser is selected for MaxBrowserTabsModal and OriginSpamModal changes. Performance Test Selection: |
Description
Use
Buttoncomponent from DSRN (no codeowners scope).Changelog
CHANGELOG entry: null
Related issues
Fixes: https://consensyssoftware.atlassian.net/browse/DSYS-445
Manual testing steps
Screenshots/Recordings
Before
Simulator.Screen.Recording.-.iPhone.17.Pro.-.2026-06-12.at.15.13.12.mov
After
Simulator.Screen.Recording.-.iPhone.17.Pro.-.2026-06-12.at.15.11.47.mov
Pre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Low Risk
Mechanical import and prop renames only; handlers and test IDs are unchanged, with manual testing aimed at visual parity.
Overview
This PR continues the DSRN
Buttonmigration (DSYS-445) in screens that are outside codeowner-heavy areas. Every touched file dropscomponent-libraryButtonin favor of@metamask/design-system-react-native.The updates are API-only:
ButtonVariants→ButtonVariant,label→ children,width={ButtonWidthTypes.Full}→isFullWidth, and legacy flags likeloading/disabled→isLoading/isDisabled. ExistingtestIDs,onPresshandlers, and variants (includingisDangeron disconnect) are preserved.Coverage spans bottom sheets and modals (What’s New, browser tab limit, simulation change, origin spam, multi-RPC, success/error), account permissions flows, add-account and network management footers, hardware wallet awaiting-app/confirmation steps, dev AES crypto test form, and sample-feature demos. No new user-facing behavior is introduced—intent is visual parity with the old buttons.
Reviewed by Cursor Bugbot for commit bd7c260. Bugbot is set up for automated code reviews on this repo. Configure here.