Skip to content

Releases: MetaMask/core

953.0.0

01 May 21:38
077ca1e

Choose a tag to compare

@metamask/perps-controller 5.0.0

Added

  • BREAKING: HyperLiquidClientService now forces the dexAbstraction → unifiedAccount migration via a new internal flow, deferred until first withdraw, placeOrder, or other action entry point so users see unified collateral on their first trade/withdrawal (#8658)
  • BREAKING: addSpotBalanceToAccountState and HyperLiquidSubscriptionService are now mode-aware: spot USDC is only folded into tradeable collateral for unifiedAccount / portfolioMargin modes, and userAbstraction is propagated through subscriptions (#8658)

Changed

  • Bump @nktkas/hyperliquid from ^0.30.2 to ^0.32.2 for userAbstraction / userSetAbstraction / agentSetAbstraction API surface (#8658)
  • Replace agentSetAbstraction wire-code magic string with a typed constant (#8658)
  • Bump @metamask/keyring-controller from ^25.3.0 to ^25.4.0 (#8665)
  • Bump @metamask/account-tree-controller from ^7.1.0 to ^7.2.0 (#8665)
  • Bump @metamask/transaction-controller from ^64.4.0 to ^65.0.0 (#8613)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)

Fixed

  • Keep users on portfolioMargin mode and recover the resolved abstraction mode after migration instead of evicting it (#8658)
  • Retry abstraction mode after transient userAbstraction failures and reset the memoized readiness promise after silent migration failures (#8658)
  • Close WebSocket-vs-REST race that could fold spot for Standard users and preserve abstraction REST results across active subscribers (#8658)
  • Drop the pre-fetch generation guard so userAbstraction always resolves; treat cached balances as an unambiguous spot owner (#8658)
  • Restore HyperLiquid withdrawal for Unified Account Mode users and support arb USDC withdraw balance in unified mode (#8658)
  • Harden unified-account migration handling and close MM Pay $0 + analytics gaps (#8658)

952.0.0

01 May 14:15
45cf765

Choose a tag to compare

@metamask/account-tree-controller 7.2.0

Changed

  • Bump @metamask/accounts-controller from ^37.2.0 to ^38.0.0 (#8665)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Add Stellar sort-order support (#8464)
  • Now use SnapController:getSnap when applying Snap rule (instead of using account.metadata.snap.enabled. (#8584)
    • As a result of this, Snap accounts that reference unavailable Snap (read, not available on the SnapController) will now be grouped under the Keyring rule instead (e.g being put in the "Snap Wallet" section).
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^25.4.0 (#8634, #8665)

@metamask/accounts-controller 38.0.0

Added

  • Add support for SnapKeyring v2 accounts (#8513)

Changed

  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/eth-snap-keyring from ^19.0.0 to ^22.0.1 (#8464, #8584, #8647)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Bump @metamask/keyring-internal-api from ^10.0.0 to ^11.0.1 (#8464, #8584, #8647)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^25.4.0 (#8634, #8665)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

Removed

  • BREAKING: InternalAccount.metadata.snap.{enabled,name} properties have been removed (#8584)
    • You now need to use metadata.snap.id and the SnapController:<actions> to get those information.
  • No longer depend on SnapController:stateChange event (#8584)

@metamask/earn-controller 12.1.0

Changed

  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/account-tree-controller from ^7.0.0 to ^7.2.0 (#8472, #8665)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Bump @metamask/transaction-controller from ^64.4.0 to ^65.0.0 (#8613)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

@metamask/keyring-controller 25.4.0

Changed

  • Bump @metamask/eth-hd-keyring from ^14.1.0 to ^14.1.1 (#8647)
  • Bump @metamask/eth-simple-keyring from ^12.0.1 to ^12.0.2 (#8647)
  • Bump @metamask/keyring-api from ^23.0.1 to ^23.1.0 (#8647)
  • Bump @metamask/keyring-internal-api from ^11.0.0 to ^11.0.1 (#8647)

@metamask/money-account-controller 0.2.0

Changed

  • Bump @metamask/accounts-controller from ^37.2.0 to ^38.0.0 (#8665)
  • Bump @metamask/messenger from ^1.1.0 to ^1.2.0 (#8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/eth-money-keyring from ^2.0.0 to ^2.0.4 (#8464, #8584, #8647)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^25.4.0 (#8634, #8665)

@metamask/multichain-network-controller 3.1.0

Added

  • Export MultichainNetworkControllerGetNetworksWithTransactionActivityByAccountsAction (#8391)

Changed

  • Bump @metamask/keyring-controller from ^25.3.0 to ^25.4.0 (#8665)
  • Bump @metamask/accounts-controller from ^37.1.0 to ^38.0.0 (#8325, #8363, #8665)
  • Bump @metamask/controller-utils from ^11.19.0 to ^11.20.0 (#8344)
  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Bump @metamask/keyring-internal-api from ^10.0.0 to ^11.0.1 (#8464, #8584, #8647)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

@metamask/multichain-transactions-controller 7.1.0

Added

  • Expose updateTransactionsForAccount as a messenger action (MultichainTransactionsController:updateTransactionsForAccount) (#8391)
    • The new MultichainTransactionsControllerUpdateTransactionsForAccountAction type is now exported.
    • MultichainTransactionsControllerActions union now includes this action.
  • Export MultichainTransactionsControllerActions, MultichainTransactionsControllerEvents, MultichainTransactionsControllerMessenger (#8391)

Changed

  • Bump @metamask/keyring-controller from ^25.3.0 to ^25.4.0 (#8665)
  • Bump @metamask/accounts-controller from ^37.1.1 to ^38.0.0 (#8363, #8665)
  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Bump @metamask/keyring-internal-api from ^10.0.0 to ^11.0.1 (#8464, #8584, #8647)
  • Bump @metamask/keyring-snap-client from ^8.2.0 to ^9.0.2 (#8464, #8647)

@metamask/network-enablement-controller 5.1.0

Changed

  • Bump @metamask/multichain-network-controller from ^3.0.6 to ^3.1.0 (#8665)
  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/transaction-controller from ^64.0.0 to ^65.0.0 (#8432, #8447, #8482, #8585, #8613)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.1.0 (#8464, #8647)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

951.0.0

01 May 12:54
f7456cf

Choose a tag to compare

@metamask/assets-controller 6.3.0

Added

  • Seed mUSD (0xaca92e438df0b2401ff60da7e4337b687a2435da) as a default tracked asset on Ethereum mainnet (eip155:1), Linea (eip155:59144), and Monad testnet (eip155:143) (#8616)
    • assetsInfo is pre-populated in default controller state so mUSD metadata is available before any on-chain fetch completes.
    • Zero-balance entries are written into assetsBalance at startup, on account/network changes, and immediately when the user adds a chain that has default tracked assets.
    • New exports: DEFAULT_TRACKED_ASSETS_BY_CHAIN, CHAINS_WITH_DEFAULT_TRACKED_ASSETS, DEFAULT_ASSET_METADATA, buildDefaultAssetsInfo, getDefaultTrackedAssetsForChain, getDefaultAssetMetadata.

Changed

  • Bump @metamask/permission-controller from ^12.3.0 to ^13.0.0 (#8661)
  • Bump @metamask/assets-controllers from ^105.0.0 to ^105.1.0 (#8661)
  • Bump @metamask/keyring-api from ^23.0.1 to ^23.1.0 (#8647)
  • Bump @metamask/keyring-internal-api from ^10.1.1 to ^11.0.1 (#8584, #8647)
  • Bump @metamask/keyring-snap-client from ^9.0.1 to ^9.0.2 (#8647)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^25.3.0 (#8634)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

Fixed

  • Correct mUSD default tracked metadata decimals from 18 to 6 so seeded balances and formatting align with token contract precision (#8664)

@metamask/assets-controllers 105.1.0

Added

  • Seed mUSD (0xaca92e438df0b2401ff60da7e4337b687a2435da) into allTokens state as a default tracked asset on Ethereum mainnet (0x1), Linea (0xe708), Monad mainnet (0x8f), and Monad testnet (0x279f) (#8620)
    • TokenDetectionController.start() now calls TokensController:addTokens for mUSD on every supported chain that is configured in NetworkController — this is the primary trigger and uses the proven addTokens API. Re-runs on AccountsController:selectedEvmAccountChange (since addTokens only seeds for the currently selected account).
    • TokensController also seeds mUSD directly into state as a defense-in-depth measure: at startup for existing EVM accounts, on accounts already in persisted allTokens state, on AccountsController:accountAdded, on AccountsController:selectedEvmAccountChange, on KeyringController:unlock, on NetworkController:networkAdded, and on NetworkController:stateChange add patches.
    • TokensControllerMessenger now requires NetworkControllerNetworkAddedEvent, AccountsControllerAccountAddedEvent, and KeyringControllerUnlockEvent as allowed events.
  • Add ZetaChain network support (7000/0x1b58) (#8627)

Changed

  • Bump @metamask/permission-controller from ^12.3.0 to ^13.0.0 (#8661)
  • Bump @metamask/keyring-api from ^23.0.1 to ^23.1.0 (#8647)
  • Bump @metamask/keyring-internal-api from ^10.1.1 to ^11.0.1 (#8584, #8647)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^25.3.0 (#8634)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

Fixed

  • Correct the seeded mUSD token decimals from 18 to 6 in TokensController and TokenDetectionController defaults so tracked token metadata matches contract precision (#8664)

@metamask/eip1193-permission-middleware 2.0.0

Changed

  • BREAKING: Consolidate method handlers into a single methodHandlers export (#8583)
    • The individual handler exports have been removed. They can still be accessed as properties on the methodHandlers export.
    • The new handlers follow the format expected by createMethodMiddleware from @metamask/json-rpc-engine@10.3.0.
    • The hook types have been updated to cohere with the corresponding @metamask/permission-controller methods.
  • Bump @metamask/json-rpc-engine from ^10.2.0 to ^10.3.0 (#7642, #7856, #8078, #8317, #8661)
  • Upgrade @metamask/utils from ^11.8.1 to ^11.9.0 (#7511)
  • Bump @metamask/controller-utils from ^11.16.0 to ^11.20.0 (#7534, #7583, #7995, #8344)
  • Bump @metamask/permission-controller from ^12.1.1 to ^13.0.0 (#7559, #8225, #8317, #8661)
  • Bump @metamask/chain-agnostic-permission from ^1.3.0 to ^1.5.0 (#7567, #8290)

@metamask/json-rpc-engine 10.3.0

Added

  • Add createOriginMiddleware utility to v2 (#8522)
  • Add createMethodMiddleware utility to v2 (#8506, #8583)
    • This utility allows JSON-RPC method implementations to use both the hooks pattern and the messenger.
  • Add legacy createMethodMiddleware (#8583)
    • Consolidates bespoke makeMethodMiddlewareMaker implementations from the MetaMask extension and mobile clients.
    • Handlers may now declare actionNames and receive a delegated messenger as the sixth argument to implementation, mirroring the v2 createMethodMiddleware.
    • Deprecated in favor of the v2 createMethodMiddleware.

Changed

  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)

@metamask/multichain-api-middleware 3.0.0

Added

  • Add MethodHandlerHooks type, the intersection of all method handler hook types (#8583)
    • Consumers can use this to type the hooks object passed to createMethodMiddleware without restating each handler's hooks individually.

Changed

  • BREAKING: Consolidate method handlers into a single methodHandlers export (#8583)
    • The individual handler exports have been removed. They can still be accessed as properties on the methodHandlers export.
    • The new handlers follow the format expected by createMethodMiddleware from @metamask/json-rpc-engine@10.3.0.
    • The hook types have been updated to cohere with their corresponding MetaMask controller methods.
  • BREAKING: Make trackSessionCreatedEvent hook required in wallet_createSession handler (#8583)
    • If the hook is not required, null can be passed instead.
  • Bump @metamask/json-rpc-engine from ^10.2.3 to ^10.3.0 (#8317, #8661)
  • Bump @metamask/network-controller from ^30.0.0 to ^30.1.0 (#8317, #8636)
  • Bump @metamask/permission-controller from ^12.2.1 to ^13.0.0 (#8317, #8661)
  • Bump @metamask/multichain-transactions-controller from ^7.0.3 to ^7.0.4 (#8325)
  • Bump @metamask/controller-utils from ^11.19.0 to ^11.20.0 (#8344)

Fixed

  • wallet_invokeMethod fails early with an invalidParams error when the params object is not an object (#8583)
    • Previously it would fail with a less specific error.
  • wallet_revokeSession now returns true when no active session exists and specific scopes are requested, consistent with its full-revoke behavior (#8583)
    • Previously it would return an internal error.

@metamask/permission-controller 13.0.0

Added

  • Add createPermissionMiddlewareV2, a JsonRpcEngineV2 variant of the standalone permission middleware factory (#8532)
  • Add messenger option to permission specification builders, allowing restricted-method specs to receive a scoped messenger in place of methodHooks (#8551)
    • Use the actionNames field on the specification builder and createRestrictedMethodMessenger to construct the scoped messenger.

Changed

  • BREAKING: Decouple the permission middleware from PermissionController and expos...
Read more

950.0.0

30 Apr 10:48
762ad47

Choose a tag to compare

@metamask/transaction-pay-controller 20.1.0

Added

  • Export TransactionData type from public API (#8630)

Changed

  • Abort in-flight quote requests when a newer request is made for the same transaction, preventing stale responses from overwriting newer ones (#8612)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

949.0.0

30 Apr 10:10
64a37e5

Choose a tag to compare

@metamask/chomp-api-service 3.0.0

Changed

  • BREAKING: update types and methods of chomp-api-service to properly reflect the API (#8635)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)

@metamask/money-account-upgrade-controller 1.3.0

Changed

  • Bump @metamask/chomp-api-service from ^2.0.0 to ^3.0.0 (#8651)
  • Bump @metamask/messenger from ^1.1.1 to ^1.2.0 (#8632)
  • Bump @metamask/keyring-controller from ^25.2.0 to ^25.3.0 (#8634)
  • Bump @metamask/network-controller from ^30.0.1 to ^30.1.0 (#8636)

Fixed

  • Fix the associate-address step to detect the already-associated case via status: 'active'. (#8635)

948.0.0

29 Apr 19:52
5a9127d

Choose a tag to compare

@metamask/config-registry-controller 0.3.0

Changed

  • Bump @metamask/keyring-controller from ^25.1.1 to ^25.3.0 (#8363, #8634)
  • Bump @metamask/profile-sync-controller from ^28.0.1 to ^28.0.2 (#8325)
  • Bump @metamask/controller-utils from ^11.19.0 to ^11.20.0 (#8344)
  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)

Fixed

  • ConfigRegistryApiService now accepts chains with no assets.listUrl property (#8624)

947.0.0

29 Apr 16:26
067643d

Choose a tag to compare

@metamask/network-controller 30.1.0

Added

  • Expose missing public NetworkController methods through its messenger (#8350)
    • The following actions are now available:
      • NetworkController:enableRpcFailover
      • NetworkController:disableRpcFailover
      • NetworkController:getProviderAndBlockTracker
      • NetworkController:getNetworkClientRegistry
      • NetworkController:initializeProvider
      • NetworkController:lookupNetwork
      • NetworkController:lookupNetworkByClientId
      • NetworkController:get1559CompatibilityWithNetworkClientId
      • NetworkController:resetConnection
      • NetworkController:rollbackToPreviousProvider
      • NetworkController:loadBackup
    • Corresponding action types are available as well.
  • Add getEthQuery method to NetworkController (#8350)

Changed

  • Bump @metamask/controller-utils from ^11.19.0 to ^11.20.0 (#8344)
  • Bump @metamask/eth-json-rpc-middleware from ^23.1.1 to ^23.1.3 (#8550, #8611)
  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)

Deprecated

  • NetworkControllerGetNetworkConfigurationByNetworkClientId type is deprecated in favor of NetworkControllerGetNetworkConfigurationByNetworkClientIdAction (#8350)
  • Deprecate AbstractRpcService and RpcServiceRequestable (#8475)
    • There are no equivalents to these interfaces. If you need to take an "RPC-service-like" argument, it's best to declare which properties you're interested in rather than accepting the entire RPC service interface.

946.0.0

29 Apr 13:42
2edce34

Choose a tag to compare

@metamask/keyring-controller 25.3.0

Added

  • Expose KeyringController:exportSeedPhrase method through KeyringController messenger (#8587)
  • Expose KeyringController:isUnlocked method through KeyringController messenger (#8573)
    • Returns true when the vault is unlocked, false otherwise. Mirrors state.isUnlocked and the isUnlocked() instance method, allowing consumers to check lock status via the messenger without holding a controller reference.
  • Add withController action to run atomic operations on multiple keyrings (within a single transaction) (#8416)
    • This action uses a RestrictedController object that exposes addNewKeyring and removeKeyring methods to add and remove keyring during the transaction (atomic) call.
  • Expose KeyringController:signTransaction method through KeyringController messenger (#8408)
  • Persist vault when keyring state changes during unlock (#8415)
    • If a keyring's serialized state differs after deserialization (e.g. a migration ran, or metadata was missing), the vault is now re-persisted so the change is not lost on the next unlock.
  • Added KeyringV2 support (#8390)
    • The controller now maintains a list of KeyringV2 instance in memory alongside previous Keyring instance.
    • This new keyring interface is more generic and will become the new standard to interact with keyring (creating accounts, executing logic that involves accounts like signing, etc...).
    • For now, most KeyringV2 are wrappers (read adapters) around existing Keyring instance.
  • Added withKeyringV2Unsafe method and KeyringController:withKeyringV2Unsafe messenger action for lock-free read-only access to KeyringV2 adapters (#8390)
    • Mirrors withKeyringUnsafe semantics: no mutex acquired, no persistence or rollback.
    • Caller is responsible for ensuring the operation is read-only and accesses only immutable keyring data.
  • Added withKeyringV2 method and KeyringController:withKeyringV2 messenger action for atomic operations using the KeyringV2 API (#8390)
    • Accepts a KeyringSelectorV2 to select keyrings by type, address, id, or filter.
    • Ships with default V2 builders for HD (HdKeyringV2) and Simple (SimpleKeyringV2) keyrings; additional builders can be registered via the keyringV2Builders constructor option.

Changed

  • Bump @metamask/messenger from ^1.0.0 to ^1.2.0 (#8364, #8373, #8632)
  • Bump @metamask/base-controller from ^9.0.1 to ^9.1.0 (#8457)
  • Bump @metamask/eth-hd-keyring from ^13.1.1 to ^14.0.1 (#8464)
  • Bump @metamask/eth-simple-keyring from ^11.1.2 to ^12.0.1 (#8464)
  • Bump @metamask/keyring-api from ^21.6.0 to ^23.0.1 (#8464)
  • Bump @metamask/keyring-internal-api from ^10.0.0 to ^11.0.0 (#8464, #8584)

945.0.0

29 Apr 11:35
5152b2a

Choose a tag to compare

@metamask/messenger 1.2.0

Added

  • Allow overriding action handler in subclass (#8617)
    • The Messenger class now has a protected getAction method which returns the action handler for a given action name.
  • Add subscribeOnce and waitUntil utility methods to Messenger (#8575)

Deprecated

  • Deprecate generate-action-types CLI tool and messenger-generate-action-types binary (#8378)
    • The CLI has been extracted to @metamask/messenger-cli. Use messenger-action-types from this package instead.

Fixed

  • Throw different error for missing delegated actions (#8557)

944.0.0

28 Apr 19:11
a1e5f1f

Choose a tag to compare

@metamask/assets-controller 6.2.1

Changed

  • Bump @metamask/transaction-controller from ^64.4.0 to ^65.0.0 (#8613)
  • Bump @metamask/assets-controllers from ^104.3.0 to ^105.0.0 (#8622)

@metamask/assets-controllers 105.0.0

Added

  • Expose missing public CurrencyRateController methods through its messenger (#8561)
    • The following actions are now available:
      • CurrencyRateController:setCurrentCurrency
      • CurrencyRateController:updateExchangeRate
    • Corresponding action types (e.g. CurrencyRateControllerSetCurrentCurrencyAction) are available as well.

Changed

  • BREAKING: Standardize names of CurrencyRateController messenger action types (#8561)
    • The GetCurrencyRateState messenger action has been renamed to CurrencyRateControllerGetStateAction to follow the convention. You will need to update imports appropriately.
    • These changes only affect the types. The action type strings themselves have not changed, so you do not need to update the list of actions you pass when initializing CurrencyRateController messenger.
  • MultichainAssetsController: Restore fail-open behavior for Blockaid spam token filter (#8580)
    • Uses blacklist approach: only rejects tokens explicitly marked as malicious by Blockaid
    • When Blockaid bulk token scan API calls fail or return no results, tokens are allowed through
    • This prevents legitimate tokens from being blocked due to API outages, network issues, or missing token data
    • Malicious tokens that slip through are caught by the periodic rescan (runs daily by default)
  • Bump @metamask/transaction-controller from ^64.3.0 to ^65.0.0 (#8585, #8613)

Fixed

  • Fix selectAssetsBySelectedAccountGroup crashing when an account referenced in the account tree is missing from internal accounts (#8604)

@metamask/bridge-controller 71.0.0

Added

  • BREAKING: Add quickBuy and dappSwap FeatureIds for external swap quote consumers (#8598)
  • BREAKING: Add market_closed and quote_expired QuoteWarning (#8598)
  • Add tokenSecurityTypeDestination: string | null to BridgeControllerState (default null), set via updateBridgeQuoteRequestParams and reset by resetState (#8595)

Changed

  • BREAKING: Add required token_security_type_destination: string \| null to RequestParams, RequiredEventContextFromClient[InputSourceDestinationSwitched], and the context arg of updateBridgeQuoteRequestParams; emitted on every analytics event that includes token_address_destination (#8595)
  • BREAKING: getRequestParams now takes a second positional argument tokenSecurityTypeDestination: string \| null (#8595)
  • Bump @metamask/transaction-controller from ^64.3.0 to ^65.0.0 (#8585, #8613)
  • Bump @metamask/assets-controller from ^6.1.0 to ^6.2.1 (#8590, #8622)
  • Bump @metamask/assets-controllers from ^104.3.0 to ^105.0.0 (#8622)

@metamask/bridge-status-controller 71.1.0

Added

  • Add optional tokenSecurityTypeDestination?: string \| null to BridgeHistoryItem, StartPollingForBridgeTxStatusArgs[Serialized], and the submitTx / submitIntent arguments; when provided, it's persisted on the history item and emitted as token_security_type_destination on post-submit analytics events (#8595)

Changed

  • Bump @metamask/transaction-controller from ^64.3.0 to ^65.0.0 (#8585, #8613)
  • Bump @metamask/bridge-controller from ^70.2.0 to ^71.0.0 (#8622)

@metamask/transaction-pay-controller 20.0.1

Changed

  • Bump @metamask/assets-controller from ^6.2.0 to ^6.2.1 (#8622)
  • Bump @metamask/assets-controllers from ^104.3.0 to ^105.0.0 (#8622)
  • Bump @metamask/bridge-controller from ^70.2.0 to ^71.0.0 (#8622)
  • Bump @metamask/bridge-status-controller from ^71.0.0 to ^71.1.0 (#8622)