From 8d9f4c21865023749050593afc6e1655e41fc945 Mon Sep 17 00:00:00 2001 From: Amanda Yeoh Date: Fri, 3 Oct 2025 16:26:23 +0800 Subject: [PATCH 1/3] fix: refine button styles to match trade patterns --- .../bridge-transaction-settings-modal.tsx | 192 ++++++++---------- ui/pages/bridge/prepare/index.scss | 4 - 2 files changed, 88 insertions(+), 108 deletions(-) diff --git a/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx b/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx index 83339950528d..e3ffbfd04a02 100644 --- a/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx +++ b/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx @@ -2,11 +2,10 @@ import React, { useState, useEffect } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { BRIDGE_DEFAULT_SLIPPAGE } from '@metamask/bridge-controller'; import { - Button, ButtonPrimary, ButtonPrimarySize, - ButtonSize, - ButtonVariant, + ButtonSecondary, + ButtonSecondarySize, Modal, ModalContent, ModalFooter, @@ -19,17 +18,16 @@ import { BannerAlert, BannerAlertSeverity, Box, + TextFieldSize, } from '../../../components/component-library'; import { useI18nContext } from '../../../hooks/useI18nContext'; import { - BackgroundColor, BlockSize, BorderColor, - BorderRadius, JustifyContent, - TextColor, TextVariant, SEVERITIES, + BorderRadius, } from '../../../helpers/constants/design-system'; import { getIsSolanaSwap, getSlippage } from '../../../ducks/bridge/selectors'; import { setSlippage } from '../../../ducks/bridge/actions'; @@ -109,55 +107,54 @@ export const BridgeTransactionSettingsModal = ({ {t('transactionSettings')} - + - {t('swapsMaxSlippage')} + + {t('swapsMaxSlippage')} + {t('swapSlippageTooltip')} {shouldShowAutoOption && ( - + <> + {isAutoSelected ? ( + ) => { + e.preventDefault(); + e.stopPropagation(); + setLocalSlippage(undefined); + setCustomSlippage(undefined); + setIsAutoSelected(true); + }} + > + {t('swapSlippageAutoDescription')} + + ) : ( + ) => { + e.preventDefault(); + e.stopPropagation(); + setLocalSlippage(undefined); + setCustomSlippage(undefined); + setIsAutoSelected(true); + }} + > + {t('swapSlippageAutoDescription')} + + )} + )} {HARDCODED_SLIPPAGE_OPTIONS.map((hardcodedSlippage) => { const isSelected = - !isAutoSelected && localSlippage === hardcodedSlippage; - return ( - + {hardcodedSlippage}% + + ) : ( + ) => { + e.preventDefault(); + e.stopPropagation(); + setLocalSlippage(hardcodedSlippage); + setCustomSlippage(undefined); + setIsAutoSelected(false); + }} + > + {hardcodedSlippage}% + ); })} {showCustomButton && ( - + <> + {customSlippage === undefined ? ( + ) => { + e.preventDefault(); + e.stopPropagation(); + setShowCustomButton(false); + setIsAutoSelected(false); + }} + > + {t('customSlippage')} + + ) : ( + ) => { + e.preventDefault(); + e.stopPropagation(); + setShowCustomButton(false); + setIsAutoSelected(false); + }} + > + {`${customSlippage}%`} + + )} + )} {!showCustomButton && ( { @@ -266,8 +251,7 @@ export const BridgeTransactionSettingsModal = ({ { // Calculate what the new slippage would be const newSlippage = isAutoSelected diff --git a/ui/pages/bridge/prepare/index.scss b/ui/pages/bridge/prepare/index.scss index 103fecad9999..bfb29912999e 100644 --- a/ui/pages/bridge/prepare/index.scss +++ b/ui/pages/bridge/prepare/index.scss @@ -102,7 +102,6 @@ } .mm-text-field { - height: 32px; width: 94px; &--focused, @@ -111,10 +110,7 @@ } input { - font-size: var(--font-size-2); - padding-top: 1px; width: 100%; - height: 32px; } } } From 075e1233b8fadc7abf3b7dc343d7fc7192d734bb Mon Sep 17 00:00:00 2001 From: Amanda Yeoh Date: Thu, 23 Oct 2025 01:55:05 +0800 Subject: [PATCH 2/3] fix: revert button logic to treat undefined isAutoSelected as false --- ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx b/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx index e3ffbfd04a02..6d6ec7399576 100644 --- a/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx +++ b/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx @@ -150,7 +150,7 @@ export const BridgeTransactionSettingsModal = ({ )} {HARDCODED_SLIPPAGE_OPTIONS.map((hardcodedSlippage) => { const isSelected = - isAutoSelected === false && localSlippage === hardcodedSlippage; + !isAutoSelected && localSlippage === hardcodedSlippage; return isSelected ? ( Date: Thu, 23 Oct 2025 02:13:35 +0800 Subject: [PATCH 3/3] fix: refactor buttons to render conditionally --- .../bridge-transaction-settings-modal.tsx | 130 +++++++----------- 1 file changed, 49 insertions(+), 81 deletions(-) diff --git a/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx b/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx index 6d6ec7399576..d4519f28043d 100644 --- a/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx +++ b/ui/pages/bridge/prepare/bridge-transaction-settings-modal.tsx @@ -2,10 +2,9 @@ import React, { useState, useEffect } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { BRIDGE_DEFAULT_SLIPPAGE } from '@metamask/bridge-controller'; import { - ButtonPrimary, - ButtonPrimarySize, - ButtonSecondary, - ButtonSecondarySize, + Button, + ButtonSize, + ButtonVariant, Modal, ModalContent, ModalFooter, @@ -118,57 +117,34 @@ export const BridgeTransactionSettingsModal = ({ {shouldShowAutoOption && ( - <> - {isAutoSelected ? ( - ) => { - e.preventDefault(); - e.stopPropagation(); - setLocalSlippage(undefined); - setCustomSlippage(undefined); - setIsAutoSelected(true); - }} - > - {t('swapSlippageAutoDescription')} - - ) : ( - ) => { - e.preventDefault(); - e.stopPropagation(); - setLocalSlippage(undefined); - setCustomSlippage(undefined); - setIsAutoSelected(true); - }} - > - {t('swapSlippageAutoDescription')} - - )} - + )} {HARDCODED_SLIPPAGE_OPTIONS.map((hardcodedSlippage) => { const isSelected = !isAutoSelected && localSlippage === hardcodedSlippage; - return isSelected ? ( - ) => { - e.preventDefault(); - e.stopPropagation(); - setLocalSlippage(hardcodedSlippage); - setCustomSlippage(undefined); - setIsAutoSelected(false); - }} - > - {hardcodedSlippage}% - - ) : ( - ) => { e.preventDefault(); e.stopPropagation(); @@ -178,37 +154,28 @@ export const BridgeTransactionSettingsModal = ({ }} > {hardcodedSlippage}% - + ); })} {showCustomButton && ( - <> - {customSlippage === undefined ? ( - ) => { - e.preventDefault(); - e.stopPropagation(); - setShowCustomButton(false); - setIsAutoSelected(false); - }} - > - {t('customSlippage')} - - ) : ( - ) => { - e.preventDefault(); - e.stopPropagation(); - setShowCustomButton(false); - setIsAutoSelected(false); - }} - > - {`${customSlippage}%`} - - )} - + )} {!showCustomButton && ( - { // Calculate what the new slippage would be const newSlippage = isAutoSelected @@ -276,7 +244,7 @@ export const BridgeTransactionSettingsModal = ({ }} > {t('submit')} - +