From afbc3e245cc33eb3153381efb9d381e4f7211893 Mon Sep 17 00:00:00 2001 From: "runway-github[bot]" <73448015+runway-github[bot]@users.noreply.github.com> Date: Mon, 19 Aug 2024 20:34:18 +0000 Subject: [PATCH] temp+chore: updated in-app review to comply with SDK 14 on Android (#10647) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** This PR bumps the in-app review package to comply with the updates to ## **Related issues** Fixes: #10198 ## **Manual testing steps** 1. Build for Android and see successful submission 2. 3. ## **Screenshots/Recordings** NA ### **Before** Screenshot 2024-08-14 at 3 20 41 PM ### **After** Screenshot 2024-08-14 at 3 43 46 PM ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Contributor Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **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. --------- Co-authored-by: metamaskbot --- .github/workflows/cla.yml | 2 +- CHANGELOG.md | 69 + android/app/build.gradle | 4 +- .../ContractBoxBase/ContractBoxBase.tsx | 2 +- .../CustomSpendCap/CustomSpendCap.tsx | 2 +- .../CustomSpendCap.test.tsx.snap | 2 +- .../ListItemMultiSelectButton.types.ts | 4 +- .../AggregatedPercentage.stories.tsx | 76 +- .../AggregatedPercentage.tsx | 7 - .../PercentageChange.stories.tsx | 56 +- .../components/Avatars/Avatar/Avatar.types.ts | 18 +- .../components/Badges/Badge/Badge.test.tsx | 3 +- .../components/Badges/Badge/Badge.tsx | 27 +- .../components/Badges/Badge/Badge.types.ts | 17 +- .../Badge/__snapshots__/Badge.test.tsx.snap | 2 +- .../BadgeNotifications.stories.tsx | 16 +- .../BadgeWrapper/BadgeWrapper.styles.ts | 8 +- .../components/Buttons/Button/README.md | 14 +- .../foundation/ButtonBase/ButtonBase.tsx | 3 +- .../foundation/ButtonBase/ButtonBase.types.ts | 5 - .../Button/variants/ButtonLink/README.md | 16 +- .../components/Cells/Cell/Cell.tsx | 2 +- .../components/Form/TextField/README.md | 24 +- .../components/Icons/Icon/Icon.assets.ts | 4 +- .../components/Icons/Icon/Icon.types.ts | 2 +- .../components/Icons/Icon/assets/add.svg | 2 +- .../Icons/Icon/assets/arrow-2-right.svg | 2 +- .../components/Icons/Icon/assets/bridge.svg | 2 +- .../components/Icons/Icon/assets/export.svg | 2 +- .../components/Icons/Icon/assets/minus.svg | 2 +- .../components/Icons/Icon/assets/received.svg | 4 +- .../Icons/Icon/assets/swap-horizontal.svg | 2 +- .../Icons/Icon/assets/swap-vertical.svg | 1 - .../Icons/Icon/assets/swap-vertival.svg | 1 + .../components/List/ListItem/ListItem.tsx | 4 +- .../ListItemSelect/ListItemSelect.types.ts | 2 +- .../Navigation/TabBar/TabBar.constants.ts | 2 +- .../TabBar/__snapshots__/TabBar.test.tsx.snap | 2 +- .../components/RadioButton/index.ts | 2 +- .../foundation/SelectButtonBase.types.ts | 2 +- .../Select/SelectOption/SelectOption.tsx | 1 - .../Select/SelectValue/foundation/index.ts | 2 +- .../components/Toast/Toast.tsx | 2 +- .../components/Toast/Toast.types.ts | 3 +- app/components/Base/Alert.stories.tsx | 3 +- app/components/Base/Alert.tsx | 1 + app/components/Nav/App/index.js | 9 - app/components/Nav/Main/MainNavigator.js | 6 - app/components/UI/AccountApproval/index.js | 75 +- .../AccountFromToInfoCard.test.tsx | 50 +- .../__snapshots__/index.test.tsx.snap | 240 +- .../UI/AccountRightButton/index.test.tsx | 19 +- .../AddToAddressBookWrapper.test.tsx | 45 +- .../AddToAddressBookWrapper.tsx | 3 +- app/components/UI/AssetIcon/index.tsx | 13 +- .../AssetOverview/AboutAsset/AboutAsset.tsx | 5 +- .../UI/AssetOverview/AssetOverview.tsx | 13 +- .../UI/AssetOverview/Price/Price.tsx | 24 +- .../BasicFunctionalityModal.styles.ts | 2 +- .../UI/Bridge/utils/isBridgeAllowed.ts | 3 +- app/components/UI/ButtonReveal/index.tsx | 25 +- .../UI/CollectibleDetectionModal/index.tsx | 1 - .../CollectibleMedia.styles.ts | 36 +- .../CollectibleMedia.test.tsx | 8 +- .../UI/CollectibleMedia/CollectibleMedia.tsx | 13 +- .../CollectibleMedia.types.ts | 2 +- .../UI/CollectibleModal/CollectibleModal.tsx | 11 +- .../CollectibleModal.types.ts | 8 +- .../CollectibleModal.test.tsx.snap | 2 +- app/components/UI/DeleteWalletModal/index.tsx | 14 +- .../HardwareWallet/AccountDetails/index.tsx | 16 +- .../HardwareWallet/AccountSelector/index.tsx | 10 +- .../HardwareWallet/AccountSelector/styles.tsx | 11 + .../LedgerConfirmationModal.test.tsx | 30 +- .../LedgerModals/LedgerTransactionModal.tsx | 1 - .../Steps/SearchingForDeviceStep.test.tsx | 18 +- .../Steps/SearchingForDeviceStep.tsx | 3 +- .../SearchingForDeviceStep.test.tsx.snap | 12 +- .../LedgerConfirmationModal.test.tsx.snap | 6 +- .../LedgerMessageSignModal.test.tsx.snap | 6 +- app/components/UI/Name/Name.test.tsx | 1 - .../NetworkVerificationInfo.test.tsx | 30 +- .../NetworkVerificationInfo.tsx | 148 +- .../NetworkVerificationInfo.test.tsx.snap | 2 - .../UI/OnboardingWizard/index.test.tsx | 6 +- app/components/UI/OnboardingWizard/index.tsx | 22 +- app/components/UI/OptinMetrics/index.js | 24 +- .../UI/ProfileSyncing/ProfileSyncing.test.tsx | 3 - .../ProfileSyncingModal.test.tsx | 3 - .../UI/QRHardware/AnimatedQRScanner.tsx | 2 +- .../UI/QRHardware/QRSigningDetails.tsx | 32 +- app/components/Views/BrowserTab/index.js | 5 + app/components/Views/ChoosePassword/index.js | 3 +- .../ConnectQRHardware/Instruction/index.tsx | 49 +- .../__snapshots__/index.test.tsx.snap | 85 +- .../ImportFromSecretRecoveryPhrase/index.js | 4 - .../__snapshots__/index.test.tsx.snap | 6 +- .../Views/LedgerConnect/index.test.tsx | 6 +- app/components/Views/LedgerConnect/index.tsx | 4 +- .../__snapshots__/index.test.tsx.snap | 8 +- .../Views/LedgerSelectAccount/index.tsx | 4 +- .../NetworkSearchTextInput.tsx | 23 +- .../NetworkSelector/NetworkSelector.styles.ts | 6 +- .../Views/NetworkSelector/NetworkSelector.tsx | 39 +- .../__snapshots__/NftDetails.test.ts.snap | 2 +- app/components/Views/Notifications/index.tsx | 2 - app/components/Views/Notifications/styles.ts | 8 +- .../__snapshots__/index.test.js.snap | 340 +- .../Views/OnboardingSuccess/index.styles.ts | 8 +- .../Views/OnboardingSuccess/index.tsx | 5 +- .../Views/Settings/GeneralSettings/index.js | 10 - .../CustomNetworkView/CustomNetwork.tsx | 4 +- .../__snapshots__/index.test.tsx.snap | 64 +- .../NetworksSettings/NetworkSettings/index.js | 370 +- .../NetworkSettings/index.test.tsx | 505 +- .../NetworkSettings/styles.ts | 4 +- .../NotificationOptionToggle/index.tsx | 93 +- .../NotificationsSettings.styles.ts | 18 +- .../NotificationsSettings.types.ts | 14 +- .../__snapshots__/index.test.tsx.snap | 48 +- .../NotificationsSettings/index.test.tsx | 11 +- .../Settings/NotificationsSettings/index.tsx | 253 +- .../notificationsRows.ts | 20 +- .../NotificationsSettings/sectionHeader.tsx | 30 - .../SecuritySettings/SecuritySettings.tsx | 39 - .../SecuritySettings.test.tsx.snap | 297 - .../Views/WalletActions/WalletActions.tsx | 2 +- .../Amount/__snapshots__/index.test.tsx.snap | 2 +- .../hooks/useAccounts/useAccounts.types.ts | 3 +- app/components/hooks/useBlockExplorer.test.ts | 4 +- app/components/hooks/useBlockExplorer.ts | 4 +- .../hooks/useMetrics/useMetrics.types.ts | 13 +- app/constants/navigation/Routes.ts | 1 - app/constants/urls.ts | 4 - app/core/Analytics/MetaMetrics.events.ts | 2 - app/core/BackgroundBridge/BackgroundBridge.js | 7 +- .../BackgroundBridge/WalletConnectPort.ts | 2 +- app/core/Engine.ts | 198 +- app/core/EngineService/EngineService.ts | 12 - app/core/Performance/Performance.test.ts | 104 - app/core/Performance/Performance.ts | 59 - app/core/Performance/index.ts | 4 - app/declarations.d.ts | 91 +- app/images/static-logos.js | 606 ++ app/util/address/index.ts | 2 +- app/util/favicon/index.test.ts | 18 - app/util/favicon/index.ts | 2 +- .../UserProfileAnalyticsMetaData.types.ts | 2 - app/util/networks/index.js | 3 + .../networks/isNetworkUiRedesignEnabled.ts | 4 - .../swap-completed/swap-completed.tsx | 11 +- app/util/test/testSetup.js | 2 + attribution.txt | 8840 +++++++++++------ bitrise.yml | 97 +- e2e/specs/browser/browser-tests.spec.js | 2 +- index.js | 4 +- ios/MetaMask.xcodeproj/project.pbxproj | 24 +- ios/Podfile.lock | 16 +- locales/languages/de.json | 14 +- locales/languages/el.json | 14 +- locales/languages/en.json | 47 +- locales/languages/es.json | 14 +- locales/languages/fr.json | 14 +- locales/languages/hi.json | 14 +- locales/languages/id.json | 14 +- locales/languages/ja.json | 14 +- locales/languages/ko.json | 14 +- locales/languages/pt.json | 14 +- locales/languages/ru.json | 14 +- locales/languages/tl.json | 14 +- locales/languages/tr.json | 14 +- locales/languages/vi.json | 14 +- locales/languages/zh.json | 12 +- metro.transform.js | 2 +- package.json | 25 +- scripts/build.sh | 6 +- scripts/detox-setup.sh | 12 - ...tamask-bot-build-generate-static-assets.js | 69 + scripts/setup.mjs | 32 +- sonar-project.properties | 4 +- wdio/config/android.config.browserstack.js | 52 +- .../Performance/ColdStartLaunchTimes.feature | 2 +- .../Performance/WarmStartPerformance.feature | 4 +- yarn.lock | 539 +- 184 files changed, 8324 insertions(+), 6638 deletions(-) delete mode 100644 app/component-library/components/Icons/Icon/assets/swap-vertical.svg create mode 100644 app/component-library/components/Icons/Icon/assets/swap-vertival.svg delete mode 100644 app/components/Views/Settings/NotificationsSettings/sectionHeader.tsx delete mode 100644 app/core/Performance/Performance.test.ts delete mode 100644 app/core/Performance/Performance.ts delete mode 100644 app/core/Performance/index.ts create mode 100644 app/images/static-logos.js delete mode 100644 app/util/networks/isNetworkUiRedesignEnabled.ts delete mode 100755 scripts/detox-setup.sh create mode 100644 scripts/metamask-bot-build-generate-static-assets.js diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml index 66bb206bd2f..0f7977000c6 100644 --- a/.github/workflows/cla.yml +++ b/.github/workflows/cla.yml @@ -22,6 +22,6 @@ jobs: url-to-cladocument: 'https://metamask.io/cla.html' # This branch can't have protections, commits are made directly to the specified branch. branch: 'cla-signatures' - allowlist: 'dependabot[bot],metamaskbot,crowdin-bot,runway-github[bot]' + allowlist: 'dependabot[bot],metamaskbot,crowdin-bot' allow-organization-members: true blockchain-storage-flag: false diff --git a/CHANGELOG.md b/CHANGELOG.md index e4f0ce126ea..878cb496bb6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,75 @@ ## Current Main Branch +## 7.29.0 - Aug 2, 2024 +### Added +- [#9578](https://github.com/MetaMask/metamask-mobile/pull/9578): feat: type `renderHookWithProvider` (#9578) +- [#10277](https://github.com/MetaMask/metamask-mobile/pull/10277): feat: New nft details page (#10277) +- [#9469](https://github.com/MetaMask/metamask-mobile/pull/9469): feat: nft + swap metrics (#9469) +- [#10267](https://github.com/MetaMask/metamask-mobile/pull/10267): feat: add utility function to get supported chains from the Security Alerts API (#10267) +- [#10082](https://github.com/MetaMask/metamask-mobile/pull/10082): feat: add origin spam modal (#10082) +- [#9947](https://github.com/MetaMask/metamask-mobile/pull/9947): feat: bump `react-native-aes-crypto` (#9947) +- [#10474](https://github.com/MetaMask/metamask-mobile/pull/10474): feat: add the multchain v1 feature flag (#10474) +- [#10378](https://github.com/MetaMask/metamask-mobile/pull/10378): feat: add copy for new receive flow (#10378) +- [#10350](https://github.com/MetaMask/metamask-mobile/pull/10350): feat: make add-team-label use the reusable workflow (#10350) +- [#9390](https://github.com/MetaMask/metamask-mobile/pull/9390): feat(ramp): add ramp intent (#9390) +- [#10451](https://github.com/MetaMask/metamask-mobile/pull/10451): feat: add notifications' details screen (#10451) +- [#10456](https://github.com/MetaMask/metamask-mobile/pull/10456): feat: add notifications list screen (#10456) +- [#10363](https://github.com/MetaMask/metamask-mobile/pull/10363): feat: add notifications UI components to be used by Views (#10363) + +### Changed +- [#10531](https://github.com/MetaMask/metamask-mobile/pull/10531): chore: fix release action (#10531) +- [#10471](https://github.com/MetaMask/metamask-mobile/pull/10471): chore: Typescript type coverage util lib folders (#10471) +- [#10507](https://github.com/MetaMask/metamask-mobile/pull/10507): chore: core related files selectors refactor (#10507) +- [#10508](https://github.com/MetaMask/metamask-mobile/pull/10508): chore: abort on fail smoke e2e pipeline (#10508) +- [#10417](https://github.com/MetaMask/metamask-mobile/pull/10417): chore: Dapp protocol qr code scanning (#10417) +- [#10452](https://github.com/MetaMask/metamask-mobile/pull/10452): chore: fix pod install on linux (#10452) +- [#10408](https://github.com/MetaMask/metamask-mobile/pull/10408): chore: create and use selectors of swaps and ramp directories (#10408) +- [#10397](https://github.com/MetaMask/metamask-mobile/pull/10397): chore: selectors confirmations dir (#10397) +- [#10487](https://github.com/MetaMask/metamask-mobile/pull/10487): test: Disable flakey portfolio test (#10487) +- [#10372](https://github.com/MetaMask/metamask-mobile/pull/10372): chore: refactor async-storage-wrapper to MMKV-wrapper (#10372) +- [#10373](https://github.com/MetaMask/metamask-mobile/pull/10373): chore: Migrate default preference to mmkv (#10373) +- [#10416](https://github.com/MetaMask/metamask-mobile/pull/10416): chore: Cherry-picking commits from main to release/7.28.0 for PR #10387 (#10416) +- [#10389](https://github.com/MetaMask/metamask-mobile/pull/10389): chore: Cherry-picking commits from main to release/7.28.0 for PR #10376 (#10389) +- [#10387](https://github.com/MetaMask/metamask-mobile/pull/10387): test: Add step to close onboarding modals (#10387) +- [#10376](https://github.com/MetaMask/metamask-mobile/pull/10376): test: Update env variables for appium upgrading on bitrise.yml (#10376) +- [#10412](https://github.com/MetaMask/metamask-mobile/pull/10412): chore: Update BNB logos (#10412) +- [#10263](https://github.com/MetaMask/metamask-mobile/pull/10263): chore: upgrade transaction controller to 35.0.0 (#10263) +- [#10450](https://github.com/MetaMask/metamask-mobile/pull/10450): test: add e2e to edit account name (#10450) +- [#10251](https://github.com/MetaMask/metamask-mobile/pull/10251): chore: remove remaining use of Preferences Controller for account information (#10251) +- [#10380](https://github.com/MetaMask/metamask-mobile/pull/10380): test: add e2e for imported account being removed and then reimported (#10380) +- [#10346](https://github.com/MetaMask/metamask-mobile/pull/10346): chore: update SRP copy to remove mention of cloud (#10346) +- [#10491](https://github.com/MetaMask/metamask-mobile/pull/10491): chore(ci): pin action versions for external docker/ actions (#10491) +- [#10462](https://github.com/MetaMask/metamask-mobile/pull/10462): refactor: updated children in bottomsheetheader to be optional (#10462) +- [#9580](https://github.com/MetaMask/metamask-mobile/pull/9580): test(ramp): add `useCryptoCurrencies` tests (#9580) +- [#9582](https://github.com/MetaMask/metamask-mobile/pull/9582): test(ramp): add `useFiatCurrencies` tests (#9582) +- [#9579](https://github.com/MetaMask/metamask-mobile/pull/9579): test(ramp): add `useAnalytics` tests (#9579) +- [#9626](https://github.com/MetaMask/metamask-mobile/pull/9626): test(ramp): add `useInAppBrowser` tests (#9626) +- [#9581](https://github.com/MetaMask/metamask-mobile/pull/9581): test(ramp): add `useFetchRampNetworks` tests (#9581) +- [#9589](https://github.com/MetaMask/metamask-mobile/pull/9589): test(ramp): add `useApplePay` tests (#9589) + +### Fixed +- [#9744](https://github.com/MetaMask/metamask-mobile/pull/9744): fix: fix/9350 Use consistent commit hash on Bitrise e2e smoke tests (#9744) +- [#10511](https://github.com/MetaMask/metamask-mobile/pull/10511): fix: crash on reload fix by patch (#10511) +- [#10481](https://github.com/MetaMask/metamask-mobile/pull/10481): fix: Added parse errors to be caught on vault corruption flow (#10481) +- [#10467](https://github.com/MetaMask/metamask-mobile/pull/10467): fix: Audit issue xml parser (#10467) +- [#10463](https://github.com/MetaMask/metamask-mobile/pull/10463): fix: useAddressBalance hook selectors warning (#10463) +- [#10436](https://github.com/MetaMask/metamask-mobile/pull/10436): fix: Fix long press login on samsung devices (#10436) +- [#10477](https://github.com/MetaMask/metamask-mobile/pull/10477): fix: fix error when clicking on asset (#10477) +- [#10458](https://github.com/MetaMask/metamask-mobile/pull/10458): fix: adding new locales for nft-details new page (#10458) +- [#10409](https://github.com/MetaMask/metamask-mobile/pull/10409): fix: add events for nft detection (#10409) +- [#10435](https://github.com/MetaMask/metamask-mobile/pull/10435): fix: update @blockaid/ppom_release package to version 1.5.1 (#10435) +- [#10362](https://github.com/MetaMask/metamask-mobile/pull/10362): fix: transaction cancel speed up modal should disappear after transaction is confirmed (#10362) +- [#10488](https://github.com/MetaMask/metamask-mobile/pull/10488): fix: security and privacy toggle paddings (#10488) +- [#10381](https://github.com/MetaMask/metamask-mobile/pull/10381): fix: check navigator availability before initializing the 'DeeplinkManager' (#10381) +- [#10383](https://github.com/MetaMask/metamask-mobile/pull/10383): fix: race condition issues when doing batch-rpc calls in the DeeplinkProtocolService (#10383) +- [#10365](https://github.com/MetaMask/metamask-mobile/pull/10365): fix: attribution link (#10365) +- [#10303](https://github.com/MetaMask/metamask-mobile/pull/10303): fix: page navigation during QR accounts selection (#10303) +## 7.28.1 - Aug 15, 2024 +### Fixed +- [#10637](https://github.com/MetaMask/metamask-mobile/pull/10637): fix: swap button blocked by SwapsController polling issue (#10637) +- [#10654](https://github.com/MetaMask/metamask-mobile/pull/10654): fix: hot fix for ledger account select screen to provide disclaimer copy information. (#10654) + ## 7.28.0 - Jul 19, 2024 ### Added - [#10252](https://github.com/MetaMask/metamask-mobile/pull/10252): feat: regression label (#10252) diff --git a/android/app/build.gradle b/android/app/build.gradle index 729ad41693a..027d09a42ac 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -173,8 +173,8 @@ android { applicationId "io.metamask" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 1375 - versionName "7.28.0" + versionCode 1392 + versionName "7.29.0" testBuildType System.getProperty('testBuildType', 'debug') missingDimensionStrategy 'react-native-camera', 'general' testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/component-library/components-temp/Contracts/ContractBoxBase/ContractBoxBase.tsx b/app/component-library/components-temp/Contracts/ContractBoxBase/ContractBoxBase.tsx index d92a8bbb5d7..728d824fbfa 100644 --- a/app/component-library/components-temp/Contracts/ContractBoxBase/ContractBoxBase.tsx +++ b/app/component-library/components-temp/Contracts/ContractBoxBase/ContractBoxBase.tsx @@ -70,7 +70,7 @@ const ContractBoxBase = ({