From 3f5b7fcd97e245162f40803b17bec3476dba7006 Mon Sep 17 00:00:00 2001 From: Antonio Regadas Date: Fri, 7 Feb 2025 09:55:11 +0000 Subject: [PATCH] chore: rely in MultichainAssetsController for the accountAdded event --- .../MultichainBalancesController.test.ts | 20 ------------------- .../MultichainBalancesController.ts | 20 +++---------------- 2 files changed, 3 insertions(+), 37 deletions(-) diff --git a/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts b/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts index 1f47326f543..9c67f6fface 100644 --- a/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts +++ b/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts @@ -219,26 +219,6 @@ describe('BalancesController', () => { ); }); - it('updates balances when "AccountsController:accountAdded" is fired', async () => { - const { controller, messenger, mockListMultichainAccounts } = - setupController({ - mocks: { - listMultichainAccounts: [], - }, - }); - - mockListMultichainAccounts.mockReturnValue([mockBtcAccount]); - messenger.publish('AccountsController:accountAdded', mockBtcAccount); - - await waitForAllPromises(); - - expect(controller.state).toStrictEqual({ - balances: { - [mockBtcAccount.id]: mockBalanceResult, - }, - }); - }); - it('updates balances when "AccountsController:accountRemoved" is fired', async () => { const { controller, messenger } = setupController(); diff --git a/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.ts b/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.ts index 586d2683f90..eeded482a9a 100644 --- a/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.ts +++ b/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.ts @@ -166,10 +166,6 @@ export class MultichainBalancesController extends BaseController< }); } - this.messagingSystem.subscribe( - 'AccountsController:accountAdded', - (account: InternalAccount) => this.#handleOnAccountAdded(account), - ); this.messagingSystem.subscribe( 'AccountsController:accountRemoved', (account: string) => this.#handleOnAccountRemoved(account), @@ -179,6 +175,9 @@ export class MultichainBalancesController extends BaseController< (balanceUpdate: AccountBalancesUpdatedEventPayload) => this.#handleOnAccountBalancesUpdated(balanceUpdate), ); + // TODO: Maybe add a MultichainAssetsController:accountAssetListUpdated event instead of using the entire state. + // Since MultichainAssetsController already listens for the AccountsController:accountAdded, we can rely in it for that event + // and not listen for it also here, in this controller, since it would be redundant this.messagingSystem.subscribe( 'MultichainAssetsController:stateChange', async (assetsState: MultichainAssetsControllerState) => { @@ -285,19 +284,6 @@ export class MultichainBalancesController extends BaseController< ); } - /** - * Handles changes when a new account has been added. - * - * @param account - The new account being added. - */ - async #handleOnAccountAdded(account: InternalAccount): Promise { - if (!this.#isNonEvmAccount(account)) { - return; - } - - await this.updateBalance(account.id); - } - /** * Handles balance updates received from the AccountsController. *