From a11a4d897b035f9c29f0c793a535b946adb3eb8a Mon Sep 17 00:00:00 2001 From: Guillaume Roux Date: Mon, 30 Sep 2024 12:01:35 +0200 Subject: [PATCH 1/2] bind `getCurrencyRate` to `multichainRateController` --- app/scripts/metamask-controller.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 8ad88c088b46..35a58d7b1b9d 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -5853,6 +5853,19 @@ export default class MetamaskController extends EventEmitter { this.controllerMessenger, 'SnapController:getAll', ), + getCurrencyRate: (currency) => { + const rate = this.multichainRatesController.state.rates[currency]; + const { fiatCurrency } = this.multichainRatesController.state; + + if (!rate) { + return undefined; + } + + return { + currency: fiatCurrency, + ...rate, + }; + }, ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps) hasPermission: this.permissionController.hasPermission.bind( this.permissionController, From c56453eb7dab51869cfa78ba49f6c65719efc3d5 Mon Sep 17 00:00:00 2001 From: Guillaume Roux Date: Mon, 30 Sep 2024 16:32:06 +0200 Subject: [PATCH 2/2] prevent `currency` from being overwritten --- app/scripts/metamask-controller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 35a58d7b1b9d..f027482c1e05 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -5862,8 +5862,8 @@ export default class MetamaskController extends EventEmitter { } return { - currency: fiatCurrency, ...rate, + currency: fiatCurrency, }; }, ///: BEGIN:ONLY_INCLUDE_IF(keyring-snaps)