diff --git a/.yarn/patches/@ethereumjs-tx-npm-5.4.0-0c4a0f973e.patch b/.yarn/patches/@ethereumjs-tx-npm-5.4.0-0c4a0f973e.patch new file mode 100644 index 000000000000..0593450d055d --- /dev/null +++ b/.yarn/patches/@ethereumjs-tx-npm-5.4.0-0c4a0f973e.patch @@ -0,0 +1,42 @@ +diff --git a/dist/cjs/util.js b/dist/cjs/util.js +index d60cf924ee8144ee49dd07e8e910d87a2c4bfb6a..5651d71e272db4c507956d162b89da7a70b9c97f 100644 +--- a/dist/cjs/util.js ++++ b/dist/cjs/util.js +@@ -119,10 +119,7 @@ class AuthorizationLists { + } + const chainId = (0, util_1.hexToBytes)(item.chainId); + const addressBytes = (0, util_1.hexToBytes)(item.address); +- const nonceList = []; +- for (let j = 0; j < item.nonce.length; j++) { +- nonceList.push((0, util_1.hexToBytes)(item.nonce[j])); +- } ++ const nonceList = (0, util_1.hexToBytes)(item.nonce); + const yParity = (0, util_1.hexToBytes)(item.yParity); + const r = (0, util_1.hexToBytes)(item.r); + const s = (0, util_1.hexToBytes)(item.s); +@@ -138,11 +135,7 @@ class AuthorizationLists { + const data = bufferAuthorizationList[i]; + const chainId = (0, util_1.bytesToHex)(data[0]); + const address = (0, util_1.bytesToHex)(data[1]); +- const nonces = data[2]; +- const nonceList = []; +- for (let j = 0; j < nonces.length; j++) { +- nonceList.push((0, util_1.bytesToHex)(nonces[j])); +- } ++ const nonceList = (0, util_1.bytesToHex)(data[2]); + const yParity = (0, util_1.bytesToHex)(data[3]); + const r = (0, util_1.bytesToHex)(data[4]); + const s = (0, util_1.bytesToHex)(data[5]); +@@ -175,12 +168,6 @@ class AuthorizationLists { + if (address.length !== 20) { + throw new Error('Invalid EIP-7702 transaction: address length should be 20 bytes'); + } +- if (nonceList.length > 1) { +- throw new Error('Invalid EIP-7702 transaction: nonce list should consist of at most 1 item'); +- } +- else if (nonceList.length === 1) { +- (0, util_1.validateNoLeadingZeroes)({ nonce: nonceList[0] }); +- } + } + } + static getDataFeeEIP7702(authorityList, common) { \ No newline at end of file diff --git a/.yarn/patches/@metamask-transaction-controller-npm-45.0.0-010fef9da6.patch b/.yarn/patches/@metamask-transaction-controller-npm-45.0.0-010fef9da6.patch deleted file mode 100644 index 2e4df34a64f1..000000000000 --- a/.yarn/patches/@metamask-transaction-controller-npm-45.0.0-010fef9da6.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/dist/TransactionController.cjs b/dist/TransactionController.cjs -index c96d2962d81c4c63c7b626bc1ca18b196b20a154..236b451e5f94584d4ce42b6bfaf6b7225b8ae7f9 100644 ---- a/dist/TransactionController.cjs -+++ b/dist/TransactionController.cjs -@@ -1152,7 +1152,11 @@ class TransactionController extends base_controller_1.BaseController { - if (!isTxCompleted) { - if (error?.code === rpc_errors_1.errorCodes.provider.userRejectedRequest) { - this.cancelTransaction(transactionId, actionId); -- throw rpc_errors_1.providerErrors.userRejectedRequest('MetaMask Tx Signature: User denied transaction signature.'); -+ throw rpc_errors_1.providerErrors.userRejectedRequest({ -+ message: -+ 'MetaMask Tx Signature: User denied transaction signature.', -+ data: error?.data, -+ }); - } - else { - this.failTransaction(meta, error, actionId); diff --git a/app/scripts/controller-init/messengers/transaction-controller-messenger.ts b/app/scripts/controller-init/messengers/transaction-controller-messenger.ts index e9cef872c80d..afdeb9527fd1 100644 --- a/app/scripts/controller-init/messengers/transaction-controller-messenger.ts +++ b/app/scripts/controller-init/messengers/transaction-controller-messenger.ts @@ -1,4 +1,7 @@ -import { AccountsControllerGetSelectedAccountAction } from '@metamask/accounts-controller'; +import { + AccountsControllerGetSelectedAccountAction, + AccountsControllerGetStateAction, +} from '@metamask/accounts-controller'; import { ApprovalControllerActions } from '@metamask/approval-controller'; import { Messenger } from '@metamask/base-controller'; import { @@ -21,6 +24,8 @@ import { TransactionControllerUnapprovedTransactionAddedEvent, } from '@metamask/transaction-controller'; import { SmartTransactionsControllerSmartTransactionEvent } from '@metamask/smart-transactions-controller'; +import { RemoteFeatureFlagControllerGetStateAction } from '@metamask/remote-feature-flag-controller'; +import { KeyringControllerSignEip7702AuthorizationAction } from '@metamask/keyring-controller'; import { SwapsControllerSetApproveTxIdAction, SwapsControllerSetTradeTxIdAction, @@ -29,9 +34,12 @@ import { type MessengerActions = | ApprovalControllerActions | AccountsControllerGetSelectedAccountAction + | AccountsControllerGetStateAction + | KeyringControllerSignEip7702AuthorizationAction | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerGetEIP1559CompatibilityAction | NetworkControllerGetNetworkClientByIdAction + | RemoteFeatureFlagControllerGetStateAction | SwapsControllerSetApproveTxIdAction | SwapsControllerSetTradeTxIdAction; @@ -60,9 +68,12 @@ export function getTransactionControllerMessenger( name: 'TransactionController', allowedActions: [ 'AccountsController:getSelectedAccount', + 'AccountsController:getState', `ApprovalController:addRequest`, + 'KeyringController:signEip7702Authorization', 'NetworkController:findNetworkClientIdByChainId', 'NetworkController:getNetworkClientById', + 'RemoteFeatureFlagController:getState', ], allowedEvents: [`NetworkController:stateChange`], }); @@ -92,6 +103,7 @@ export function getTransactionControllerInitMessenger( 'ApprovalController:startFlow', 'ApprovalController:updateRequestState', 'NetworkController:getEIP1559Compatibility', + 'RemoteFeatureFlagController:getState', 'SwapsController:setApproveTxId', 'SwapsController:setTradeTxId', ], diff --git a/app/scripts/controllers/permissions/specifications.js b/app/scripts/controllers/permissions/specifications.js index 005bd6527d0a..9f921cf9e5ea 100644 --- a/app/scripts/controllers/permissions/specifications.js +++ b/app/scripts/controllers/permissions/specifications.js @@ -153,10 +153,13 @@ export const unrestrictedMethods = Object.freeze([ 'personal_ecRecover', 'personal_sign', 'wallet_addEthereumChain', + 'wallet_getCallsStatus', + 'wallet_getCapabilities', 'wallet_getPermissions', 'wallet_requestPermissions', 'wallet_revokePermissions', 'wallet_registerOnboarding', + 'wallet_sendCalls', 'wallet_switchEthereumChain', 'wallet_watchAsset', 'web3_clientVersion', diff --git a/app/scripts/lib/createMetamaskMiddleware.js b/app/scripts/lib/createMetamaskMiddleware.js index 9ea07b0d28e5..31629ca4defe 100644 --- a/app/scripts/lib/createMetamaskMiddleware.js +++ b/app/scripts/lib/createMetamaskMiddleware.js @@ -11,6 +11,8 @@ import { export default function createMetamaskMiddleware({ version, getAccounts, + getCapabilities, + getTransactionReceiptsByBatchId, processTransaction, processTypedMessage, processTypedMessageV3, @@ -18,6 +20,7 @@ export default function createMetamaskMiddleware({ processPersonalMessage, processDecryptMessage, processEncryptionPublicKey, + processSendCalls, getPendingNonce, getPendingTransactionByHash, }) { @@ -28,6 +31,8 @@ export default function createMetamaskMiddleware({ }), createWalletMiddleware({ getAccounts, + getCapabilities, + getTransactionReceiptsByBatchId, processTransaction, processTypedMessage, processTypedMessageV3, @@ -35,6 +40,7 @@ export default function createMetamaskMiddleware({ processPersonalMessage, processDecryptMessage, processEncryptionPublicKey, + processSendCalls, }), createPendingNonceMiddleware({ getPendingNonce }), createPendingTxMiddleware({ getPendingTransactionByHash }), diff --git a/app/scripts/lib/transaction/eip5792.test.ts b/app/scripts/lib/transaction/eip5792.test.ts new file mode 100644 index 000000000000..04a9c6fa03db --- /dev/null +++ b/app/scripts/lib/transaction/eip5792.test.ts @@ -0,0 +1,185 @@ +import { + TransactionController, + TransactionControllerGetStateAction, + TransactionControllerState, +} from '@metamask/transaction-controller'; +import { + AutoManagedNetworkClient, + CustomNetworkClientConfiguration, + NetworkControllerGetNetworkClientByIdAction, +} from '@metamask/network-controller'; +import { SendCalls, SendCallsParams } from '@metamask/eth-json-rpc-middleware'; +import { JsonRpcRequest } from '@metamask/utils'; +import { Messenger } from '@metamask/base-controller'; +import { + EIP5792Messenger, + getCapabilities, + getTransactionReceiptsByBatchId, + processSendCalls, +} from './eip5792'; + +const CHAIN_ID_MOCK = '0x123'; +const CHAIN_ID_2_MOCK = '0xabc'; +const BATCH_ID_MOCK = '123-456'; +const NETWORK_CLIENT_ID_MOCK = 'test-client'; +const ORIGIN_MOCK = 'test.com'; + +const RECEIPT_MOCK = { + status: '0x1', + transactionHash: '0x123', +}; + +const RECEIPT_2_MOCK = { + status: '0x0', + transactionHash: '0x123456', +}; + +const SEND_CALLS_MOCK: SendCalls = { + version: '1.0', + calls: [{ to: '0x123' }], + chainId: CHAIN_ID_MOCK, + from: '0x123', +}; + +const REQUEST_MOCK = { + id: 1, + jsonrpc: '2.0', + method: 'wallet_sendCalls', + networkClientId: NETWORK_CLIENT_ID_MOCK, + origin: ORIGIN_MOCK, + params: [SEND_CALLS_MOCK], +} as JsonRpcRequest & { networkClientId: string }; + +describe('EIP-5792', () => { + let addTransactionBatchMock: jest.MockedFn< + TransactionController['addTransactionBatch'] + >; + + let isAtomicBatchSupportedMock: jest.MockedFn< + TransactionController['isAtomicBatchSupported'] + >; + + let getNetworkClientByIdMock: jest.MockedFn< + NetworkControllerGetNetworkClientByIdAction['handler'] + >; + + let getTransactionControllerStateMock: jest.MockedFn< + TransactionControllerGetStateAction['handler'] + >; + + let messenger: EIP5792Messenger; + + beforeEach(() => { + jest.resetAllMocks(); + + addTransactionBatchMock = jest.fn(); + isAtomicBatchSupportedMock = jest.fn(); + getTransactionControllerStateMock = jest.fn(); + getNetworkClientByIdMock = jest.fn(); + + messenger = new Messenger(); + + messenger.registerActionHandler( + 'NetworkController:getNetworkClientById', + getNetworkClientByIdMock, + ); + + messenger.registerActionHandler( + 'TransactionController:getState', + getTransactionControllerStateMock, + ); + + getNetworkClientByIdMock.mockReturnValue({ + configuration: { + chainId: CHAIN_ID_MOCK, + }, + } as unknown as AutoManagedNetworkClient); + + addTransactionBatchMock.mockResolvedValue({ batchId: BATCH_ID_MOCK }); + }); + + describe('processSendCalls', () => { + it('calls adds transaction batch hook', async () => { + await processSendCalls( + { addTransactionBatch: addTransactionBatchMock }, + messenger, + SEND_CALLS_MOCK, + REQUEST_MOCK, + ); + + expect(addTransactionBatchMock).toHaveBeenCalledWith({ + from: SEND_CALLS_MOCK.from, + networkClientId: NETWORK_CLIENT_ID_MOCK, + origin: ORIGIN_MOCK, + transactions: [{ params: SEND_CALLS_MOCK.calls[0] }], + }); + }); + + it('returns batch ID from hook', async () => { + expect( + await processSendCalls( + { addTransactionBatch: addTransactionBatchMock }, + messenger, + SEND_CALLS_MOCK, + REQUEST_MOCK, + ), + ).toBe(BATCH_ID_MOCK); + }); + + it('throws if chain ID does not match network client', async () => { + await expect( + processSendCalls( + { addTransactionBatch: addTransactionBatchMock }, + messenger, + { ...SEND_CALLS_MOCK, chainId: CHAIN_ID_2_MOCK }, + REQUEST_MOCK, + ), + ).rejects.toThrow( + `Chain ID must match the dApp selected network: Got ${CHAIN_ID_2_MOCK}, expected ${CHAIN_ID_MOCK}`, + ); + }); + }); + + describe('getTransactionReceiptsByBatchId', () => { + it('returns transaction receipts from transaction controller with matching ID', () => { + getTransactionControllerStateMock.mockReturnValueOnce({ + transactions: [ + { id: BATCH_ID_MOCK, txReceipt: RECEIPT_MOCK }, + { id: '456-789', txReceipt: {} }, + { id: BATCH_ID_MOCK, txReceipt: RECEIPT_2_MOCK }, + ], + } as TransactionControllerState); + + expect( + getTransactionReceiptsByBatchId(messenger, BATCH_ID_MOCK), + ).toStrictEqual([RECEIPT_MOCK, RECEIPT_2_MOCK]); + }); + }); + + describe('getCapabilities', () => { + it('returns atomic batch capabilities using hook', async () => { + isAtomicBatchSupportedMock.mockResolvedValueOnce([ + CHAIN_ID_MOCK, + CHAIN_ID_2_MOCK, + ]); + + expect( + await getCapabilities( + { isAtomicBatchSupported: isAtomicBatchSupportedMock }, + '0x123', + ), + ).toStrictEqual({ + [CHAIN_ID_MOCK]: { + atomicBatch: { + supported: true, + }, + }, + [CHAIN_ID_2_MOCK]: { + atomicBatch: { + supported: true, + }, + }, + }); + }); + }); +}); diff --git a/app/scripts/lib/transaction/eip5792.ts b/app/scripts/lib/transaction/eip5792.ts new file mode 100644 index 000000000000..48052b73e063 --- /dev/null +++ b/app/scripts/lib/transaction/eip5792.ts @@ -0,0 +1,84 @@ +import { SendCalls } from '@metamask/eth-json-rpc-middleware/dist/methods/wallet-send-calls'; +import { NetworkControllerGetNetworkClientByIdAction } from '@metamask/network-controller'; +import { rpcErrors } from '@metamask/rpc-errors'; +import { + TransactionController, + TransactionControllerGetStateAction, +} from '@metamask/transaction-controller'; +import { Hex, JsonRpcRequest } from '@metamask/utils'; +import { Messenger } from '@metamask/base-controller'; + +type Actions = + | NetworkControllerGetNetworkClientByIdAction + | TransactionControllerGetStateAction; + +export type EIP5792Messenger = Messenger; + +export async function processSendCalls( + hooks: { + addTransactionBatch: TransactionController['addTransactionBatch']; + }, + messenger: EIP5792Messenger, + params: SendCalls, + req: JsonRpcRequest & { networkClientId: string; origin?: string }, +) { + const { addTransactionBatch } = hooks; + const { calls, chainId: requestChainId, from } = params; + const { networkClientId, origin } = req; + const transactions = calls.map((call) => ({ params: call })); + + const dappChainId = messenger.call( + 'NetworkController:getNetworkClientById', + networkClientId, + ).configuration.chainId; + + if ( + requestChainId && + requestChainId.toLowerCase() !== dappChainId.toLowerCase() + ) { + throw rpcErrors.invalidInput( + `Chain ID must match the dApp selected network: Got ${requestChainId}, expected ${dappChainId}`, + ); + } + + const result = await addTransactionBatch({ + from, + networkClientId, + origin, + transactions, + }); + + return result.batchId; +} + +export function getTransactionReceiptsByBatchId( + messenger: EIP5792Messenger, + batchId: string, +) { + return messenger + .call('TransactionController:getState') + .transactions.filter((tx) => tx.id === batchId) + .map((tx) => tx.txReceipt); +} + +export async function getCapabilities( + hooks: { + isAtomicBatchSupported: (address: Hex) => Promise; + }, + address: Hex, +) { + const { isAtomicBatchSupported } = hooks; + const atomicBatchChains = await isAtomicBatchSupported(address); + + return atomicBatchChains.reduce( + (acc, chainId) => ({ + ...acc, + [chainId]: { + atomicBatch: { + supported: true, + }, + }, + }), + {}, + ); +} diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 2864ba800f8b..22606fb0aeee 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -379,6 +379,11 @@ import { } from './controller-init/snaps'; import { AuthenticationControllerInit } from './controller-init/identity/authentication-controller-init'; import { UserStorageControllerInit } from './controller-init/identity/user-storage-controller-init'; +import { + getCapabilities, + getTransactionReceiptsByBatchId, + processSendCalls, +} from './lib/transaction/eip5792'; export const METAMASK_CONTROLLER_EVENTS = { // Fired after state changes that impact the extension badge (unapproved msg count) @@ -1935,7 +1940,7 @@ export default class MetamaskController extends EventEmitter { allowedActions: [], allowedEvents: [], }), - fetchInterval: 15 * 60 * 1000, // 15 minutes in milliseconds + fetchInterval: 0, disabled: !this.preferencesController.state.useExternalServices, getMetaMetricsId: () => this.metaMetricsController.getMetaMetricsId(), clientConfigApiService: new ClientConfigApiService({ @@ -2116,6 +2121,26 @@ export default class MetamaskController extends EventEmitter { (meta) => meta.hash === hash && meta.status === TransactionStatus.submitted, ), + + // EIP-5792 + processSendCalls: processSendCalls.bind( + null, + { + addTransactionBatch: this.txController.addTransactionBatch.bind( + this.txController, + ), + }, + this.controllerMessenger, + ), + getTransactionReceiptsByBatchId: getTransactionReceiptsByBatchId.bind( + null, + this.controllerMessenger, + ), + getCapabilities: getCapabilities.bind(null, { + isAtomicBatchSupported: this.txController.isAtomicBatchSupported.bind( + this.txController, + ), + }), }); // ensure isClientOpenAndUnlocked is updated when memState updates diff --git a/lavamoat/browserify/beta/policy.json b/lavamoat/browserify/beta/policy.json index 9fdff5d7b884..bdd78b478cf0 100644 --- a/lavamoat/browserify/beta/policy.json +++ b/lavamoat/browserify/beta/policy.json @@ -89,52 +89,67 @@ "TextEncoder": true } }, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } @@ -150,7 +165,7 @@ "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, @@ -160,18 +175,26 @@ "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "browserify>insert-module-globals>is-buffer": true } }, + "@metamask/smart-transactions-controller>@ethereumjs/tx": { + "packages": { + "@ethereumjs/tx>@ethereumjs/common": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/smart-transactions-controller>@ethereumjs/util": true, + "@ethereumjs/tx>ethereum-cryptography": true + } + }, "eth-lattice-keyring>@ethereumjs/tx": { "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -183,7 +206,7 @@ "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -197,7 +220,7 @@ "fetch": true }, "packages": { - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -219,7 +242,7 @@ "fetch": true }, "packages": { - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -230,7 +253,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -241,7 +264,7 @@ "fetch": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -251,7 +274,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -277,7 +300,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -290,7 +313,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -303,7 +326,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -317,7 +340,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -328,7 +351,7 @@ "fetch": true }, "packages": { - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -339,7 +362,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -350,7 +373,7 @@ "fetch": true }, "packages": { - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -360,7 +383,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -1324,6 +1347,7 @@ "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": true, "@metamask/json-rpc-engine": true, "@metamask/rpc-errors": true, + "@metamask/utils>@metamask/superstruct": true, "@metamask/utils": true, "@metamask/eth-json-rpc-middleware>klona": true, "@metamask/eth-json-rpc-middleware>safe-stable-stringify": true @@ -1347,7 +1371,7 @@ "removeEventListener": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx": true, "@metamask/eth-ledger-bridge-keyring>@ethereumjs/util": true, "@metamask/eth-ledger-bridge-keyring>@ledgerhq/hw-app-eth": true, @@ -1376,7 +1400,7 @@ }, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1388,7 +1412,7 @@ }, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1412,7 +1436,7 @@ }, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1424,7 +1448,7 @@ }, "@metamask/eth-snap-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1436,7 +1460,7 @@ }, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1448,7 +1472,7 @@ }, "@metamask/keyring-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1460,7 +1484,7 @@ }, "@metamask/signature-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/utils": true, @@ -2085,7 +2109,7 @@ "setInterval": true }, "packages": { - "@ethereumjs/tx": true, + "@metamask/smart-transactions-controller>@ethereumjs/tx": true, "@metamask/smart-transactions-controller>@ethereumjs/util": true, "@ethersproject/bytes": true, "@metamask/controller-utils": true, diff --git a/lavamoat/browserify/flask/policy.json b/lavamoat/browserify/flask/policy.json index 9fdff5d7b884..bdd78b478cf0 100644 --- a/lavamoat/browserify/flask/policy.json +++ b/lavamoat/browserify/flask/policy.json @@ -89,52 +89,67 @@ "TextEncoder": true } }, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } @@ -150,7 +165,7 @@ "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, @@ -160,18 +175,26 @@ "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "browserify>insert-module-globals>is-buffer": true } }, + "@metamask/smart-transactions-controller>@ethereumjs/tx": { + "packages": { + "@ethereumjs/tx>@ethereumjs/common": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/smart-transactions-controller>@ethereumjs/util": true, + "@ethereumjs/tx>ethereum-cryptography": true + } + }, "eth-lattice-keyring>@ethereumjs/tx": { "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -183,7 +206,7 @@ "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -197,7 +220,7 @@ "fetch": true }, "packages": { - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -219,7 +242,7 @@ "fetch": true }, "packages": { - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -230,7 +253,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -241,7 +264,7 @@ "fetch": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -251,7 +274,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -277,7 +300,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -290,7 +313,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -303,7 +326,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -317,7 +340,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -328,7 +351,7 @@ "fetch": true }, "packages": { - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -339,7 +362,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -350,7 +373,7 @@ "fetch": true }, "packages": { - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -360,7 +383,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -1324,6 +1347,7 @@ "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": true, "@metamask/json-rpc-engine": true, "@metamask/rpc-errors": true, + "@metamask/utils>@metamask/superstruct": true, "@metamask/utils": true, "@metamask/eth-json-rpc-middleware>klona": true, "@metamask/eth-json-rpc-middleware>safe-stable-stringify": true @@ -1347,7 +1371,7 @@ "removeEventListener": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx": true, "@metamask/eth-ledger-bridge-keyring>@ethereumjs/util": true, "@metamask/eth-ledger-bridge-keyring>@ledgerhq/hw-app-eth": true, @@ -1376,7 +1400,7 @@ }, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1388,7 +1412,7 @@ }, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1412,7 +1436,7 @@ }, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1424,7 +1448,7 @@ }, "@metamask/eth-snap-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1436,7 +1460,7 @@ }, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1448,7 +1472,7 @@ }, "@metamask/keyring-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1460,7 +1484,7 @@ }, "@metamask/signature-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/utils": true, @@ -2085,7 +2109,7 @@ "setInterval": true }, "packages": { - "@ethereumjs/tx": true, + "@metamask/smart-transactions-controller>@ethereumjs/tx": true, "@metamask/smart-transactions-controller>@ethereumjs/util": true, "@ethersproject/bytes": true, "@metamask/controller-utils": true, diff --git a/lavamoat/browserify/main/policy.json b/lavamoat/browserify/main/policy.json index 9fdff5d7b884..bdd78b478cf0 100644 --- a/lavamoat/browserify/main/policy.json +++ b/lavamoat/browserify/main/policy.json @@ -89,52 +89,67 @@ "TextEncoder": true } }, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } @@ -150,7 +165,7 @@ "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, @@ -160,18 +175,26 @@ "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "browserify>insert-module-globals>is-buffer": true } }, + "@metamask/smart-transactions-controller>@ethereumjs/tx": { + "packages": { + "@ethereumjs/tx>@ethereumjs/common": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/smart-transactions-controller>@ethereumjs/util": true, + "@ethereumjs/tx>ethereum-cryptography": true + } + }, "eth-lattice-keyring>@ethereumjs/tx": { "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -183,7 +206,7 @@ "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -197,7 +220,7 @@ "fetch": true }, "packages": { - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -219,7 +242,7 @@ "fetch": true }, "packages": { - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -230,7 +253,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -241,7 +264,7 @@ "fetch": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -251,7 +274,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -277,7 +300,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -290,7 +313,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -303,7 +326,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -317,7 +340,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -328,7 +351,7 @@ "fetch": true }, "packages": { - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -339,7 +362,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -350,7 +373,7 @@ "fetch": true }, "packages": { - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -360,7 +383,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -1324,6 +1347,7 @@ "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": true, "@metamask/json-rpc-engine": true, "@metamask/rpc-errors": true, + "@metamask/utils>@metamask/superstruct": true, "@metamask/utils": true, "@metamask/eth-json-rpc-middleware>klona": true, "@metamask/eth-json-rpc-middleware>safe-stable-stringify": true @@ -1347,7 +1371,7 @@ "removeEventListener": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx": true, "@metamask/eth-ledger-bridge-keyring>@ethereumjs/util": true, "@metamask/eth-ledger-bridge-keyring>@ledgerhq/hw-app-eth": true, @@ -1376,7 +1400,7 @@ }, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1388,7 +1412,7 @@ }, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1412,7 +1436,7 @@ }, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1424,7 +1448,7 @@ }, "@metamask/eth-snap-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1436,7 +1460,7 @@ }, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1448,7 +1472,7 @@ }, "@metamask/keyring-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1460,7 +1484,7 @@ }, "@metamask/signature-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/utils": true, @@ -2085,7 +2109,7 @@ "setInterval": true }, "packages": { - "@ethereumjs/tx": true, + "@metamask/smart-transactions-controller>@ethereumjs/tx": true, "@metamask/smart-transactions-controller>@ethereumjs/util": true, "@ethersproject/bytes": true, "@metamask/controller-utils": true, diff --git a/lavamoat/browserify/mmi/policy.json b/lavamoat/browserify/mmi/policy.json index b8d0b1e62ac8..0e105382cbf6 100644 --- a/lavamoat/browserify/mmi/policy.json +++ b/lavamoat/browserify/mmi/policy.json @@ -89,52 +89,67 @@ "TextEncoder": true } }, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": { + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": { + "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": { + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } }, - "@metamask/eth-ledger-bridge-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { + "globals": { + "TextEncoder": true + } + }, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": { "globals": { "TextEncoder": true } @@ -150,7 +165,7 @@ "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@keystonehq/base-eth-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, @@ -160,18 +175,26 @@ "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx": { "packages": { "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@keystonehq/metamask-airgapped-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "browserify>insert-module-globals>is-buffer": true } }, + "@metamask/smart-transactions-controller>@ethereumjs/tx": { + "packages": { + "@ethereumjs/tx>@ethereumjs/common": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/smart-transactions-controller>@ethereumjs/util": true, + "@ethereumjs/tx>ethereum-cryptography": true + } + }, "eth-lattice-keyring>@ethereumjs/tx": { "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -183,7 +206,7 @@ "packages": { "eth-lattice-keyring>@ethereumjs/tx>@chainsafe/ssz": true, "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/common": true, - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>gridplus-sdk>@ethereumjs/tx>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@ethersproject/providers": true, "browserify>buffer": true, @@ -197,7 +220,7 @@ "fetch": true }, "packages": { - "@ethereumjs/tx>@ethereumjs/common>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -219,7 +242,7 @@ "fetch": true }, "packages": { - "@metamask/controller-utils>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -230,7 +253,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-hd-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -241,7 +264,7 @@ "fetch": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -251,7 +274,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -277,7 +300,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -290,7 +313,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -303,7 +326,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -317,7 +340,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@metamask/eth-simple-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -328,7 +351,7 @@ "fetch": true }, "packages": { - "@metamask/eth-trezor-keyring>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -339,7 +362,7 @@ "fetch": true }, "packages": { - "@metamask/keyring-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -350,7 +373,7 @@ "fetch": true }, "packages": { - "@metamask/smart-transactions-controller>@ethereumjs/util>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true } @@ -360,7 +383,7 @@ "console.warn": true }, "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "eth-lattice-keyring>@ethereumjs/util>@ethereumjs/rlp": true, "browserify>buffer": true, "@ethereumjs/tx>ethereum-cryptography": true, "webpack>events": true, @@ -1416,6 +1439,7 @@ "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": true, "@metamask/json-rpc-engine": true, "@metamask/rpc-errors": true, + "@metamask/utils>@metamask/superstruct": true, "@metamask/utils": true, "@metamask/eth-json-rpc-middleware>klona": true, "@metamask/eth-json-rpc-middleware>safe-stable-stringify": true @@ -1439,7 +1463,7 @@ "removeEventListener": true }, "packages": { - "@metamask/eth-ledger-bridge-keyring>@ethereumjs/rlp": true, + "@ethereumjs/tx>@ethereumjs/rlp": true, "@ethereumjs/tx": true, "@metamask/eth-ledger-bridge-keyring>@ethereumjs/util": true, "@metamask/eth-ledger-bridge-keyring>@ledgerhq/hw-app-eth": true, @@ -1468,7 +1492,7 @@ }, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-hd-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1480,7 +1504,7 @@ }, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-json-rpc-middleware>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1504,7 +1528,7 @@ }, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-simple-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1516,7 +1540,7 @@ }, "@metamask/eth-snap-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/eth-snap-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1528,7 +1552,7 @@ }, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/eth-trezor-keyring>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1540,7 +1564,7 @@ }, "@metamask/keyring-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@ethereumjs/util": true, "@metamask/keyring-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/utils": true, @@ -1552,7 +1576,7 @@ }, "@metamask/signature-controller>@metamask/eth-sig-util": { "packages": { - "@metamask/utils>@ethereumjs/tx>@ethereumjs/rlp": true, + "@metamask/signature-controller>@metamask/eth-sig-util>@ethereumjs/rlp": true, "eth-lattice-keyring>@ethereumjs/util": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/abi-utils": true, "@metamask/signature-controller>@metamask/eth-sig-util>@metamask/utils": true, @@ -2177,7 +2201,7 @@ "setInterval": true }, "packages": { - "@ethereumjs/tx": true, + "@metamask/smart-transactions-controller>@ethereumjs/tx": true, "@metamask/smart-transactions-controller>@ethereumjs/util": true, "@ethersproject/bytes": true, "@metamask/controller-utils": true, diff --git a/package.json b/package.json index 8810a942c25c..a295449cd6fb 100644 --- a/package.json +++ b/package.json @@ -224,7 +224,8 @@ "tslib@npm:^2.4.0": "~2.6.0", "tslib@npm:^2.6.2": "~2.6.0", "@ethersproject/signing-key/elliptic": "^6.6.1", - "gridplus-sdk/elliptic": "^6.6.1" + "gridplus-sdk/elliptic": "^6.6.1", + "@ethereumjs/tx@npm:^5.4.0": "patch:@ethereumjs/tx@npm%3A5.4.0#~/.yarn/patches/@ethereumjs-tx-npm-5.4.0-0c4a0f973e.patch" }, "dependencies": { "@babel/runtime": "patch:@babel/runtime@npm%3A7.25.9#~/.yarn/patches/@babel-runtime-npm-7.25.9-fe8c62510a.patch", @@ -270,7 +271,7 @@ "@metamask/ens-controller": "^15.0.2", "@metamask/ens-resolver-snap": "^0.1.2", "@metamask/eth-json-rpc-filters": "^9.0.0", - "@metamask/eth-json-rpc-middleware": "^15.1.2", + "@metamask/eth-json-rpc-middleware": "^15.3.0", "@metamask/eth-ledger-bridge-keyring": "^10.0.0", "@metamask/eth-sig-util": "^7.0.1", "@metamask/eth-snap-keyring": "^12.0.0", @@ -322,7 +323,7 @@ "@metamask/snaps-sdk": "^6.19.0", "@metamask/snaps-utils": "^9.0.1", "@metamask/solana-wallet-snap": "^1.11.0", - "@metamask/transaction-controller": "^46.0.0", + "@metamask/transaction-controller": "npm:@metamask-previews/transaction-controller@48.0.0-preview-22387993", "@metamask/user-operation-controller": "^24.0.1", "@metamask/utils": "^11.1.0", "@ngraveio/bc-ur": "^1.1.12", @@ -741,7 +742,9 @@ "level>classic-level": false, "jest-preview": false, "@metamask/solana-wallet-snap>@solana/web3.js>bigint-buffer": false, - "@lavamoat/allow-scripts>@lavamoat/preinstall-always-fail": false + "@lavamoat/allow-scripts>@lavamoat/preinstall-always-fail": false, + "@metamask/eth-trezor-keyring>@trezor/connect-web>@trezor/connect>@trezor/blockchain-link>@solana/web3.js>bigint-buffer": false, + "@metamask/eth-trezor-keyring>@trezor/connect-web>@trezor/connect>@trezor/transport>usb": false } }, "packageManager": "yarn@4.5.1", diff --git a/shared/lib/confirmation.utils.ts b/shared/lib/confirmation.utils.ts index 64f2c2d6f111..80ba5ca6a585 100644 --- a/shared/lib/confirmation.utils.ts +++ b/shared/lib/confirmation.utils.ts @@ -11,6 +11,7 @@ const REDESIGN_SIGNATURE_APPROVAL_TYPES = [ /** List of transaction types that support the redesigned confirmation flow for users */ const REDESIGN_USER_TRANSACTION_TYPES = [ + TransactionType.batch, TransactionType.contractInteraction, TransactionType.deployContract, TransactionType.tokenMethodApprove, diff --git a/test/e2e/snaps/test-snap-txinsights.spec.js b/test/e2e/snaps/test-snap-txinsights.spec.js index e1759d0a5c49..1da140609677 100644 --- a/test/e2e/snaps/test-snap-txinsights.spec.js +++ b/test/e2e/snaps/test-snap-txinsights.spec.js @@ -3,7 +3,9 @@ const FixtureBuilder = require('../fixture-builder'); const { TEST_SNAPS_WEBSITE_URL } = require('./enums'); describe('Test Snap TxInsights', function () { - it('tests tx insights functionality', async function () { + // External transactions cannot target internal accounts with data. + // eslint-disable-next-line mocha/no-skipped-tests + it.skip('tests tx insights functionality', async function () { await withFixtures( { fixtures: new FixtureBuilder().build(), diff --git a/ui/helpers/utils/transactions.util.js b/ui/helpers/utils/transactions.util.js index eb53c7ed41f0..79cc1c4395b7 100644 --- a/ui/helpers/utils/transactions.util.js +++ b/ui/helpers/utils/transactions.util.js @@ -134,7 +134,8 @@ export function getTransactionTypeTitle(t, type, nativeCurrency = 'ETH') { case TransactionType.simpleSend: { return t('sendingNativeAsset', [nativeCurrency]); } - case TransactionType.contractInteraction: { + case TransactionType.contractInteraction: + case TransactionType.batch: { return t('contractInteraction'); } case TransactionType.deployContract: { diff --git a/ui/hooks/useTransactionDisplayData.js b/ui/hooks/useTransactionDisplayData.js index 28a1c913b938..4eff10b40374 100644 --- a/ui/hooks/useTransactionDisplayData.js +++ b/ui/hooks/useTransactionDisplayData.js @@ -343,7 +343,10 @@ export function useTransactionDisplayData(transactionGroup) { title = t('approveIncreaseAllowance', [token?.symbol || t('token')]); subtitle = origin; subtitleContainsOrigin = true; - } else if (type === TransactionType.contractInteraction) { + } else if ( + type === TransactionType.contractInteraction || + type === TransactionType.batch + ) { category = TransactionGroupCategory.interaction; const transactionTypeTitle = getTransactionTypeTitle(t, type); title = diff --git a/ui/pages/confirmations/components/confirm/info/info.tsx b/ui/pages/confirmations/components/confirm/info/info.tsx index 642d1d70c017..e329ec7a8f76 100644 --- a/ui/pages/confirmations/components/confirm/info/info.tsx +++ b/ui/pages/confirmations/components/confirm/info/info.tsx @@ -21,6 +21,7 @@ const Info = () => { const ConfirmationInfoComponentMap = useMemo( () => ({ + [TransactionType.batch]: () => BaseTransactionInfo, [TransactionType.contractInteraction]: () => BaseTransactionInfo, [TransactionType.deployContract]: () => BaseTransactionInfo, [TransactionType.personalSign]: () => PersonalSignInfo, diff --git a/ui/pages/confirmations/components/confirm/title/title.tsx b/ui/pages/confirmations/components/confirm/title/title.tsx index 82eff3ec7e5b..a544e6580437 100644 --- a/ui/pages/confirmations/components/confirm/title/title.tsx +++ b/ui/pages/confirmations/components/confirm/title/title.tsx @@ -86,6 +86,7 @@ const getTitle = ( switch (confirmation?.type) { case TransactionType.contractInteraction: + case TransactionType.batch: return t('confirmTitleTransaction'); case TransactionType.deployContract: return t('confirmTitleDeployContract'); @@ -146,6 +147,7 @@ const getDescription = ( switch (confirmation?.type) { case TransactionType.contractInteraction: + case TransactionType.batch: return ''; case TransactionType.deployContract: return t('confirmTitleDescDeployContract'); diff --git a/yarn.lock b/yarn.lock index 0f49473b6eb3..b91620e28967 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2302,6 +2302,18 @@ __metadata: languageName: node linkType: hard +"@ethereumjs/tx@npm:5.4.0, @ethereumjs/tx@npm:^5.2.1": + version: 5.4.0 + resolution: "@ethereumjs/tx@npm:5.4.0" + dependencies: + "@ethereumjs/common": "npm:^4.4.0" + "@ethereumjs/rlp": "npm:^5.0.2" + "@ethereumjs/util": "npm:^9.1.0" + ethereum-cryptography: "npm:^2.2.1" + checksum: 10/8d2c0a69ab37015f945f9de065cfb9f05e8e79179efeed725ea0a14760c3eb8ff900bcf915bb71ec29fe2f753db35d1b78a15ac4ddec489e87c995dec1ba6e85 + languageName: node + linkType: hard + "@ethereumjs/tx@npm:^4.0.2, @ethereumjs/tx@npm:^4.1.1, @ethereumjs/tx@npm:^4.2.0": version: 4.2.0 resolution: "@ethereumjs/tx@npm:4.2.0" @@ -2314,15 +2326,15 @@ __metadata: languageName: node linkType: hard -"@ethereumjs/tx@npm:^5.2.1, @ethereumjs/tx@npm:^5.4.0": +"@ethereumjs/tx@patch:@ethereumjs/tx@npm%3A5.4.0#~/.yarn/patches/@ethereumjs-tx-npm-5.4.0-0c4a0f973e.patch": version: 5.4.0 - resolution: "@ethereumjs/tx@npm:5.4.0" + resolution: "@ethereumjs/tx@patch:@ethereumjs/tx@npm%3A5.4.0#~/.yarn/patches/@ethereumjs-tx-npm-5.4.0-0c4a0f973e.patch::version=5.4.0&hash=944b6a" dependencies: "@ethereumjs/common": "npm:^4.4.0" "@ethereumjs/rlp": "npm:^5.0.2" "@ethereumjs/util": "npm:^9.1.0" ethereum-cryptography: "npm:^2.2.1" - checksum: 10/8d2c0a69ab37015f945f9de065cfb9f05e8e79179efeed725ea0a14760c3eb8ff900bcf915bb71ec29fe2f753db35d1b78a15ac4ddec489e87c995dec1ba6e85 + checksum: 10/2737c3cee0db839535733ef777efc86a568ff8c101ccda61ca62319e9c45547fdb2770c34dab6e4eab10d24f07341b1aff47072fe75f6bee33df1aae0fa61a5a languageName: node linkType: hard @@ -5053,7 +5065,7 @@ __metadata: languageName: node linkType: hard -"@metamask/controller-utils@npm:^11.0.0, @metamask/controller-utils@npm:^11.3.0, @metamask/controller-utils@npm:^11.4.0, @metamask/controller-utils@npm:^11.4.2, @metamask/controller-utils@npm:^11.4.4, @metamask/controller-utils@npm:^11.5.0": +"@metamask/controller-utils@npm:^11.0.0, @metamask/controller-utils@npm:^11.3.0, @metamask/controller-utils@npm:^11.4.0, @metamask/controller-utils@npm:^11.4.2, @metamask/controller-utils@npm:^11.4.4, @metamask/controller-utils@npm:^11.5.0, @metamask/controller-utils@npm:^11.6.0": version: 11.6.0 resolution: "@metamask/controller-utils@npm:11.6.0" dependencies: @@ -5246,22 +5258,23 @@ __metadata: languageName: node linkType: hard -"@metamask/eth-json-rpc-middleware@npm:^15.0.1, @metamask/eth-json-rpc-middleware@npm:^15.1.2": - version: 15.1.2 - resolution: "@metamask/eth-json-rpc-middleware@npm:15.1.2" +"@metamask/eth-json-rpc-middleware@npm:^15.0.1, @metamask/eth-json-rpc-middleware@npm:^15.3.0": + version: 15.3.0 + resolution: "@metamask/eth-json-rpc-middleware@npm:15.3.0" dependencies: "@metamask/eth-block-tracker": "npm:^11.0.4" "@metamask/eth-json-rpc-provider": "npm:^4.1.7" "@metamask/eth-sig-util": "npm:^8.1.2" "@metamask/json-rpc-engine": "npm:^10.0.2" "@metamask/rpc-errors": "npm:^7.0.2" - "@metamask/utils": "npm:^11.0.1" + "@metamask/superstruct": "npm:^3.1.0" + "@metamask/utils": "npm:^11.1.0" "@types/bn.js": "npm:^5.1.5" bn.js: "npm:^5.2.1" klona: "npm:^2.0.6" pify: "npm:^5.0.0" safe-stable-stringify: "npm:^2.4.3" - checksum: 10/71e7d61cc58df250bfef73438a9e30cc2f78e0e979feb8a9c0be72bbad470a2fe068fa790194cb88ef56865e36156e525272bc3e1a2a7135d07f7bd81a752239 + checksum: 10/09e595a064b5f45bf0597dad38d04aaa4f2eb09700c70c85ec06ec22a6f642adffdbd1120380fd4b1d485c0d39bfc4b354c39c2b75d7ffa96210a2003189c0db languageName: node linkType: hard @@ -6557,23 +6570,23 @@ __metadata: languageName: node linkType: hard -"@metamask/transaction-controller@npm:^46.0.0": - version: 46.0.0 - resolution: "@metamask/transaction-controller@npm:46.0.0" +"@metamask/transaction-controller@npm:@metamask-previews/transaction-controller@48.0.0-preview-22387993": + version: 48.0.0-preview-22387993 + resolution: "@metamask-previews/transaction-controller@npm:48.0.0-preview-22387993" dependencies: "@ethereumjs/common": "npm:^4.4.0" "@ethereumjs/tx": "npm:^5.4.0" - "@ethereumjs/util": "npm:^8.1.0" + "@ethereumjs/util": "npm:^9.1.0" "@ethersproject/abi": "npm:^5.7.0" "@ethersproject/contracts": "npm:^5.7.0" "@ethersproject/providers": "npm:^5.7.0" "@metamask/base-controller": "npm:^8.0.0" - "@metamask/controller-utils": "npm:^11.5.0" + "@metamask/controller-utils": "npm:^11.6.0" "@metamask/eth-query": "npm:^4.0.0" "@metamask/metamask-eth-abis": "npm:^3.1.1" "@metamask/nonce-tracker": "npm:^6.0.0" "@metamask/rpc-errors": "npm:^7.0.2" - "@metamask/utils": "npm:^11.1.0" + "@metamask/utils": "npm:^11.2.0" async-mutex: "npm:^0.5.0" bn.js: "npm:^5.2.1" eth-method-registry: "npm:^4.0.0" @@ -6582,12 +6595,13 @@ __metadata: uuid: "npm:^8.3.2" peerDependencies: "@babel/runtime": ^7.0.0 - "@metamask/accounts-controller": ^24.0.0 + "@metamask/accounts-controller": ^26.0.0 "@metamask/approval-controller": ^7.0.0 "@metamask/eth-block-tracker": ">=9" "@metamask/gas-fee-controller": ^22.0.0 "@metamask/network-controller": ^22.0.0 - checksum: 10/d74a6ab0c08527f56741d89b6e0b7b0ceca9b5d8cc6ebbb36ea4f084b1cabbd146608015adbf69412ecbd378aec4028105938a91415b57b872f580669cb977a6 + "@metamask/remote-feature-flag-controller": ^1.5.0 + checksum: 10/c47e904a502ef1261dccb6aea07a1a425920db1e71ed8d207c23925321d4cb3723453138921e3eea5b10529a6f3c8a86f92be0f0df59f4b1f48dcc4260f18b0f languageName: node linkType: hard @@ -6768,10 +6782,10 @@ __metadata: languageName: node linkType: hard -"@noble/hashes@npm:1.1.2": - version: 1.1.2 - resolution: "@noble/hashes@npm:1.1.2" - checksum: 10/2826c94ea30b8d2447fda549f4ffa97a637a480eeef5c96702a2f932c305038465f7436caf5b2bad41eb43c08c270b921e101488b18165feebe3854091b56d91 +"@noble/hashes@npm:1.2.0, @noble/hashes@npm:~1.2.0": + version: 1.2.0 + resolution: "@noble/hashes@npm:1.2.0" + checksum: 10/c295684a2799f4ddad10a855efd9b82c70c27ac5f7437642df9700e120087c796851dd95b12d2e7596802303fe6afbfdf0f8733b5c7453f70c4c080746dde6ff languageName: node linkType: hard @@ -6796,13 +6810,6 @@ __metadata: languageName: node linkType: hard -"@noble/hashes@npm:~1.1.1": - version: 1.1.3 - resolution: "@noble/hashes@npm:1.1.3" - checksum: 10/42e9883649abd85e6a65cfa528e72b2a81ebb601b44db1d71b6ba927cede0627d7d8c649df159a7f84a949dfe17fe268d4b664c5a36c7e0b2a3d4198bc19f5e4 - languageName: node - linkType: hard - "@noble/hashes@npm:~1.3.2": version: 1.3.3 resolution: "@noble/hashes@npm:1.3.3" @@ -6810,14 +6817,7 @@ __metadata: languageName: node linkType: hard -"@noble/secp256k1@npm:1.6.3, @noble/secp256k1@npm:~1.6.0": - version: 1.6.3 - resolution: "@noble/secp256k1@npm:1.6.3" - checksum: 10/e4f4b0cfa1c5d23fb1b9938fa3cce1a1160a76a89eb91f6dde98075bbdf328709d51771c85b6b4b118f8ce5a6c6554da6c9af7de7716aba56cef30f61a715bd7 - languageName: node - linkType: hard - -"@noble/secp256k1@npm:^1.7.0": +"@noble/secp256k1@npm:1.7.1, @noble/secp256k1@npm:^1.7.0, @noble/secp256k1@npm:~1.7.0": version: 1.7.1 resolution: "@noble/secp256k1@npm:1.7.1" checksum: 10/214d4756c20ed20809d948d0cc161e95664198cb127266faf747fd7deffe5444901f05fe9f833787738f2c6e60b09e544c2f737f42f73b3699e3999ba15b1b63 @@ -7967,14 +7967,14 @@ __metadata: languageName: node linkType: hard -"@scure/bip32@npm:1.1.0": - version: 1.1.0 - resolution: "@scure/bip32@npm:1.1.0" +"@scure/bip32@npm:1.1.5": + version: 1.1.5 + resolution: "@scure/bip32@npm:1.1.5" dependencies: - "@noble/hashes": "npm:~1.1.1" - "@noble/secp256k1": "npm:~1.6.0" + "@noble/hashes": "npm:~1.2.0" + "@noble/secp256k1": "npm:~1.7.0" "@scure/base": "npm:~1.1.0" - checksum: 10/e58660fc96dc5c87d0047bf41150fa3b424617e6289ba522cc81bdeecaf1a26e34f01dcd9d76f3e5c2c570ced608a527733cc375abfce4dc9b8e2365719ea5d3 + checksum: 10/4c83e943a66e7b212d18f47b4650ed9b1dfeb69d8bdd8b491b12ba70ca8635cda67fb1ac920d642d66c8a3c2c03303b623c1faceafe7141a6f20a7cd7f66191e languageName: node linkType: hard @@ -7989,13 +7989,13 @@ __metadata: languageName: node linkType: hard -"@scure/bip39@npm:1.1.0": - version: 1.1.0 - resolution: "@scure/bip39@npm:1.1.0" +"@scure/bip39@npm:1.1.1": + version: 1.1.1 + resolution: "@scure/bip39@npm:1.1.1" dependencies: - "@noble/hashes": "npm:~1.1.1" + "@noble/hashes": "npm:~1.2.0" "@scure/base": "npm:~1.1.0" - checksum: 10/d843be225dda4b6b2c0f90e52e00eef708df3cecbc944902298d487c669a6d219bd41877b20adaf72ba84aec2f0cb1e4567dafc6ce7295d9f132bdb0dcb375b3 + checksum: 10/08908145e0890e481e3398191424961d9ebfb8913fed6e6cdfc63eb1281bd1895244d46c0e8762b0e30d8dc6f498ed296311382fecbf034253838e3a50f60ca1 languageName: node linkType: hard @@ -19560,14 +19560,14 @@ __metadata: linkType: hard "ethereum-cryptography@npm:^1.1.2": - version: 1.1.2 - resolution: "ethereum-cryptography@npm:1.1.2" + version: 1.2.0 + resolution: "ethereum-cryptography@npm:1.2.0" dependencies: - "@noble/hashes": "npm:1.1.2" - "@noble/secp256k1": "npm:1.6.3" - "@scure/bip32": "npm:1.1.0" - "@scure/bip39": "npm:1.1.0" - checksum: 10/abf9288086002a697e0ee0077d77d001c8e1306fa53ea8d7901f9744786f47d073caa6c266bd5b25a283a5c0fbc8beed9fa9cd90d842dc51339e6748aa1ab46a + "@noble/hashes": "npm:1.2.0" + "@noble/secp256k1": "npm:1.7.1" + "@scure/bip32": "npm:1.1.5" + "@scure/bip39": "npm:1.1.1" + checksum: 10/e8b2ab91e0237ed83a6e6ab1aa2a61ee081dea137ac994c7daa935b0b620e866f70e2ac7eb2fb8db2dec044fe22283d2bf940598417e4dccd15a2b704a817a1b languageName: node linkType: hard @@ -27318,7 +27318,7 @@ __metadata: "@metamask/eslint-config-typescript": "npm:^9.0.1" "@metamask/eslint-plugin-design-tokens": "npm:^1.1.0" "@metamask/eth-json-rpc-filters": "npm:^9.0.0" - "@metamask/eth-json-rpc-middleware": "npm:^15.1.2" + "@metamask/eth-json-rpc-middleware": "npm:^15.3.0" "@metamask/eth-json-rpc-provider": "npm:^4.1.6" "@metamask/eth-ledger-bridge-keyring": "npm:^10.0.0" "@metamask/eth-sig-util": "npm:^7.0.1" @@ -27376,7 +27376,7 @@ __metadata: "@metamask/solana-wallet-snap": "npm:^1.11.0" "@metamask/test-bundler": "npm:^1.0.0" "@metamask/test-dapp": "npm:9.0.0" - "@metamask/transaction-controller": "npm:^46.0.0" + "@metamask/transaction-controller": "npm:@metamask-previews/transaction-controller@48.0.0-preview-22387993" "@metamask/user-operation-controller": "npm:^24.0.1" "@metamask/utils": "npm:^11.1.0" "@ngraveio/bc-ur": "npm:^1.1.12"