Skip to content

fix: Polish Settings Buy/Sell section for consistency#30229

Open
amandaye0h wants to merge 3 commits into
mainfrom
settings/buy-sell-dqa
Open

fix: Polish Settings Buy/Sell section for consistency#30229
amandaye0h wants to merge 3 commits into
mainfrom
settings/buy-sell-dqa

Conversation

@amandaye0h
Copy link
Copy Markdown
Contributor

@amandaye0h amandaye0h commented May 15, 2026

Description

This PR polishes the typography, button styles and spacing for the Buy / Sell section in Settings so the styling is aligned with the rest of the product. This is part of a wider initiative to refine our pattern sections in the product.

See other Settings PRs for context.

Changelog

CHANGELOG entry: N/A

Related issues

Fixes:
#30228
#30171
#30230

Manual testing steps

Feature: Buy & sell crypto settings
  Scenario: Developer views Ramp settings with region and activation keys
    Given the app is an internal build with Ramp buy/sell settings available
    When user opens Settings and navigates to Buy & sell crypto
    Then the Current region section shows consistent typography and the Change region action is visible
    And the SDK activation keys section shows title, description, and list styling consistent with the design system
    When keys are loading
    Then a loading indicator appears beside the SDK activation keys title without breaking layout

Screenshots/Recordings

Before

After

Before After
simulator_screenshot_D8C22046-F582-4C3F-A46F-E5D1B8D3BD33 simulator_screenshot_91066C53-94BC-46BD-98D8-40F4A890A06A

Pre-merge author checklist

Performance checks (if applicable)

  • I've tested on Android
    • Ideally on a mid-range device; emulator is acceptable
  • I've tested with a power user scenario
    • Use these power-user SRPs to import wallets with many accounts and tokens
  • I've instrumented key operations with Sentry traces for production performance metrics

For performance guidelines and tooling, see the Performance Guide.

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
UI-only polish to Ramp settings (typography, button variant, spacing, loader layout) with no changes to business logic or data handling; low risk aside from minor layout regressions.

Overview
Polishes the Buy/Sell (Ramp) Settings screen to better match the design system by switching text usage to @metamask/design-system-react-native with updated TextVariant/FontWeight/TextColor.

Adjusts the Current region section styling (including changing the action button to Secondary) and adds spacing for the internal-only Activation Keys section. The Activation Keys header now uses a styled row with an inline loading indicator to avoid layout issues while keys are loading.

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

amandaye0h and others added 3 commits May 15, 2026 12:05
Include after screenshot and completed PR template text for paste into GitHub.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions
Copy link
Copy Markdown
Contributor

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.

@metamaskbotv2 metamaskbotv2 Bot added team-design-system All issues relating to design system in Mobile INVALID-PR-TEMPLATE PR's body doesn't match template labels May 15, 2026
@amandaye0h amandaye0h changed the title Settings/buy sell dqa fix: Polish Settings Buy/Sell section for consistency May 15, 2026
@github-actions
Copy link
Copy Markdown
Contributor

🔍 Smart E2E Test Selection

  • Selected E2E tags: SmokeMoney
  • Selected Performance tags: None (no tests recommended)
  • Risk Level: low
  • AI Confidence: 88%
click to see 🤖 AI reasoning details

E2E Test Selection:
The changes are confined to the Ramp/Aggregator Settings UI components:

  1. ActivationKeys.tsx: Migrates Text component from internal component library to @metamask/design-system-react-native. Updates text variants, color tokens, and restructures the title row layout. This is a visual/styling change only, affecting the internal-build-only activation keys section.

  2. Settings.tsx: Same design system migration for Text components. Notable functional change: the "Change Region" button variant changes from ButtonVariants.Primary to ButtonVariants.Secondary (visual change - button color/style). Also applies the new activationKeysRow style.

  3. Settings.styles.tsx: Adds activationKeysRow style with spacing adjustments.

These changes are scoped entirely to the Ramp/Aggregator Settings screen, which is part of the fiat on/off-ramp (ramps) feature. The SmokeMoney tag covers ramps flows including buy, sell, region-aware flows, and related settings. No other feature areas are impacted - no controllers, no navigation changes, no shared components, no Engine changes. The changes are low-risk UI refactoring with a minor button variant change that should be validated through the ramps smoke tests.

Performance Test Selection:
These are purely UI/styling changes (design system component migration, text variant updates, button variant change, spacing adjustments) within the Ramp Settings screen. No performance-sensitive code paths are affected - no list rendering changes, no state management changes, no data loading changes, no app startup changes. Performance tests are not warranted.

View GitHub Actions results

@sonarqubecloud
Copy link
Copy Markdown

@amandaye0h amandaye0h marked this pull request as ready for review May 15, 2026 05:11
@amandaye0h amandaye0h requested a review from a team as a code owner May 15, 2026 05:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size-M team-design-system All issues relating to design system in Mobile

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant