From a3b063f8de83a0be0e936d27aa9768b2eeaf5e4f Mon Sep 17 00:00:00 2001 From: Amanda Yeoh Date: Fri, 3 Oct 2025 21:22:32 +0800 Subject: [PATCH 01/10] fix: polish login modal --- .../onboarding-flow/welcome/login-options.tsx | 91 +++++++++++-------- 1 file changed, 52 insertions(+), 39 deletions(-) diff --git a/ui/pages/onboarding-flow/welcome/login-options.tsx b/ui/pages/onboarding-flow/welcome/login-options.tsx index 7af1dc47865..e9ca2e4bab3 100644 --- a/ui/pages/onboarding-flow/welcome/login-options.tsx +++ b/ui/pages/onboarding-flow/welcome/login-options.tsx @@ -19,6 +19,7 @@ import { AlignItems, BackgroundColor, BlockSize, + BorderRadius, Display, FontWeight, IconColor, @@ -87,11 +88,24 @@ export default function LoginOptions({ isClosedOnOutsideClick={false} data-theme={ThemeType.dark} > - + - {t('onboardingOptionTitle')} + + {t('onboardingOptionTitle')} + - + @@ -143,7 +158,7 @@ export default function LoginOptions({ width={BlockSize.Min} variant={TextVariant.bodyMd} fontWeight={FontWeight.Medium} - color={TextColor.textMuted} + color={TextColor.textAlternative} backgroundColor={BackgroundColor.backgroundDefault} paddingInline={2} marginInline="auto" @@ -172,42 +187,40 @@ export default function LoginOptions({ ? t('onboardingSrpImport') : t('onboardingSrpCreate')} - - {t('onboardingLoginFooter', [ - - {t('onboardingLoginFooterTermsOfUse')} - , - - {t('onboardingLoginFooterPrivacyNotice')} - , - ])} - + + {t('onboardingLoginFooter', [ + + {t('onboardingLoginFooterTermsOfUse')} + , + + {t('onboardingLoginFooterPrivacyNotice')} + , + ])} + ); From 34bf26b75b2f78908938bf00f9f9e42772e02f77 Mon Sep 17 00:00:00 2001 From: Amanda Yeoh Date: Fri, 3 Oct 2025 21:23:03 +0800 Subject: [PATCH 02/10] fix: modify container width to improve balance --- ui/pages/onboarding-flow/index.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/pages/onboarding-flow/index.scss b/ui/pages/onboarding-flow/index.scss index 948afcb307d..bcc6adee9f2 100644 --- a/ui/pages/onboarding-flow/index.scss +++ b/ui/pages/onboarding-flow/index.scss @@ -24,7 +24,7 @@ padding-inline: 24px; padding-top: 32px; padding-bottom: 32px; - max-width: 446px; + max-width: 504px; min-height: 627px; height: auto; From 50b63bdde80284012ae4646790ac9238840386cc Mon Sep 17 00:00:00 2001 From: Amanda Yeoh Date: Fri, 3 Oct 2025 21:23:53 +0800 Subject: [PATCH 03/10] fix: add margin bottom to improve spacing on scroll --- ui/pages/onboarding-flow/onboarding-flow.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ui/pages/onboarding-flow/onboarding-flow.js b/ui/pages/onboarding-flow/onboarding-flow.js index 80abcb76f03..2c2c02f7191 100644 --- a/ui/pages/onboarding-flow/onboarding-flow.js +++ b/ui/pages/onboarding-flow/onboarding-flow.js @@ -259,11 +259,9 @@ export default function OnboardingFlow() { borderStyle={ isFullPage || isPopup ? BorderStyle.none : BorderStyle.solid } - borderRadius={BorderRadius.LG} + borderRadius={BorderRadius.XL} marginTop={pathname === ONBOARDING_WELCOME_ROUTE || isPopup ? 0 : 3} - ///: BEGIN:ONLY_INCLUDE_IF(build-flask) - marginBottom={pathname === ONBOARDING_EXPERIMENTAL_AREA ? 6 : 0} - ///: END:ONLY_INCLUDE_IF + marginBottom={10} marginInline="auto" borderColor={BorderColor.borderMuted} > From d8155173d226e5744f6b0f8ac571e72e91fded92 Mon Sep 17 00:00:00 2001 From: Amanda Yeoh Date: Fri, 3 Oct 2025 21:25:09 +0800 Subject: [PATCH 04/10] fix: polish srp spacing, text and colors to improve balance --- .../srp-details-modal/srp-details-modal.tsx | 3 +- .../app/srp-input-import/srp-input-import.tsx | 3 +- .../onboarding-flow/import-srp/import-srp.js | 83 ++++++++++--------- .../onboarding-app-header/index.scss | 6 +- 4 files changed, 53 insertions(+), 42 deletions(-) diff --git a/ui/components/app/srp-details-modal/srp-details-modal.tsx b/ui/components/app/srp-details-modal/srp-details-modal.tsx index 1161c7b83ac..62c046814af 100644 --- a/ui/components/app/srp-details-modal/srp-details-modal.tsx +++ b/ui/components/app/srp-details-modal/srp-details-modal.tsx @@ -4,6 +4,7 @@ import { AlignItems, Display, TextAlign, + TextColor, TextVariant, } from '../../../helpers/constants/design-system'; import { useI18nContext } from '../../../hooks/useI18nContext'; @@ -33,7 +34,7 @@ export default function SRPDetailsModal({ onClose }: { onClose: () => void }) { - + {t('srpDetailsTitle')} diff --git a/ui/components/app/srp-input-import/srp-input-import.tsx b/ui/components/app/srp-input-import/srp-input-import.tsx index 982c61e4ad1..5f2072a899c 100644 --- a/ui/components/app/srp-input-import/srp-input-import.tsx +++ b/ui/components/app/srp-input-import/srp-input-import.tsx @@ -278,11 +278,12 @@ export default function SrpInputImport({ onChange }: SrpInputImportProps) { {draftSrp.map((word, index) => { return ( { if (el) { diff --git a/ui/pages/onboarding-flow/import-srp/import-srp.js b/ui/pages/onboarding-flow/import-srp/import-srp.js index 995e3c09f27..8ba1f7143a7 100644 --- a/ui/pages/onboarding-flow/import-srp/import-srp.js +++ b/ui/pages/onboarding-flow/import-srp/import-srp.js @@ -133,53 +133,62 @@ export default function ImportSRP({ submitSecretRecoveryPhrase }) { setShowSrpDetailsModal(false)} /> )} - + {/* Back Button - Isolated */} + - - {t('importAWallet')} - - - - {t('typeYourSRP')} - - - - -
e.preventDefault()}> - - {srpError && ( - - - {srpError} - - - )} - + + {/* All Content with Consistent Padding */} + + + {t('importAWallet')} + + + + {t('typeYourSRP')} + + + + + +
e.preventDefault()}> + + {srpError && ( + + + {srpError} + + + )} + +
- Date: Fri, 3 Oct 2025 21:26:18 +0800 Subject: [PATCH 05/10] fix: polish password styling to match srp, refine copy --- app/_locales/en/messages.json | 10 +-- app/_locales/en_GB/messages.json | 10 +-- .../app/password-form/password-form.tsx | 4 +- .../create-password/create-password.js | 79 +++++++++++-------- .../change-password/change-password.tsx | 5 +- 5 files changed, 60 insertions(+), 48 deletions(-) diff --git a/app/_locales/en/messages.json b/app/_locales/en/messages.json index 5fd9282994d..a096e5299ba 100644 --- a/app/_locales/en/messages.json +++ b/app/_locales/en/messages.json @@ -1618,7 +1618,7 @@ "message": "Create password" }, "createPasswordDetails": { - "message": "Unlocks MetaMask on this device only." + "message": "Unlocks MetaMask on this device only" }, "createPasswordDetailsSocial": { "message": "Losing this password means losing wallet access on all devices, " @@ -1878,7 +1878,7 @@ "message": "Default RPC URL" }, "defaultSettingsSubTitle": { - "message": "MetaMask uses default settings to best balance safety and ease of use. Change these settings to further increase your privacy." + "message": "Configure the default settings to enhance your privacy" }, "defaultSettingsTitle": { "message": "Default privacy settings" @@ -4287,7 +4287,7 @@ "message": "We’ll use this data to learn how you interact with our marketing communications. We may share relevant news (like product features)." }, "onboardingMetametricCheckboxTitleOne": { - "message": "Gather basic usage data" + "message": "Basic usage data" }, "onboardingMetametricCheckboxTitleTwo": { "message": "Product updates" @@ -4344,7 +4344,7 @@ "message": "Clear all" }, "onboardingSrpInputPlaceholder": { - "message": "Add a space between each word and make sure no one is watching." + "message": "Add a space between each word. Make sure no one sees your SRP." }, "onekey": { "message": "OneKey" @@ -7622,7 +7622,7 @@ "message": "Wallet not found" }, "walletReadyLearn": { - "message": "$1 you can keep this phrase safe so you never lose access to your money.", + "message": "$1 to keep your Secret Recovery Phrase safe so you don't lose your money. Without it, you can't use MetaMask.", "description": "$1 is the link to Learn how" }, "walletReadyLearnRemind": { diff --git a/app/_locales/en_GB/messages.json b/app/_locales/en_GB/messages.json index 5fd9282994d..9c7dc3460e8 100644 --- a/app/_locales/en_GB/messages.json +++ b/app/_locales/en_GB/messages.json @@ -1618,7 +1618,7 @@ "message": "Create password" }, "createPasswordDetails": { - "message": "Unlocks MetaMask on this device only." + "message": "Unlocks MetaMask on this device only" }, "createPasswordDetailsSocial": { "message": "Losing this password means losing wallet access on all devices, " @@ -1878,7 +1878,7 @@ "message": "Default RPC URL" }, "defaultSettingsSubTitle": { - "message": "MetaMask uses default settings to best balance safety and ease of use. Change these settings to further increase your privacy." + "message": "Configure the default settings to enhance your privacy" }, "defaultSettingsTitle": { "message": "Default privacy settings" @@ -4287,7 +4287,7 @@ "message": "We’ll use this data to learn how you interact with our marketing communications. We may share relevant news (like product features)." }, "onboardingMetametricCheckboxTitleOne": { - "message": "Gather basic usage data" + "message": "Basic usage data" }, "onboardingMetametricCheckboxTitleTwo": { "message": "Product updates" @@ -4344,7 +4344,7 @@ "message": "Clear all" }, "onboardingSrpInputPlaceholder": { - "message": "Add a space between each word and make sure no one is watching." + "message": "Add a space between each word. Make sure no one sees your SRP." }, "onekey": { "message": "OneKey" @@ -7622,7 +7622,7 @@ "message": "Wallet not found" }, "walletReadyLearn": { - "message": "$1 you can keep this phrase safe so you never lose access to your money.", + "message": "$1 to keep your Secret Recovery Phrase safe so you don't lose your money. Without it, you can't use MetaMask.", "description": "$1 is the link to Learn how" }, "walletReadyLearnRemind": { diff --git a/ui/components/app/password-form/password-form.tsx b/ui/components/app/password-form/password-form.tsx index 384f78ef336..79f54ff2e64 100644 --- a/ui/components/app/password-form/password-form.tsx +++ b/ui/components/app/password-form/password-form.tsx @@ -83,7 +83,7 @@ export default function PasswordForm({ }, [password.length]); return ( - + - {t('learnMoreUpperCaseWithDot')} + {t('learnMoreUpperCase')} ); @@ -363,13 +364,14 @@ export default function CreatePassword({ - + {t('createPassword')} - {isSocialLoginFlow ? ( - - {t('createPasswordDetailsSocial')} + + {isSocialLoginFlow ? ( + + {t('createPasswordDetailsSocial')} + + {t('createPasswordDetailsSocialReset')} + + + ) : ( - {t('createPasswordDetailsSocialReset')} + {t('createPasswordDetails')} - - ) : ( - - {t('createPasswordDetails')} - - )} + )} + setPassword(newPassword)} /> + + {/* Terms Container - 24px from password form */} { setTermsChecked(!termsChecked); }} label={ - + {checkboxLabel} - {!isSocialLoginFlow && ( - <> -
- {createPasswordLink} - - )} + {!isSocialLoginFlow && <>{createPasswordLink}}
} />
- + + {/* Button pinned to bottom */} +