diff --git a/package.json b/package.json index a0155f5d..ff4345ee 100644 --- a/package.json +++ b/package.json @@ -70,6 +70,8 @@ "typescript": "^5.1.0" }, "dependencies": { + "@ethersproject/contracts": "^5.7.0", + "@ethersproject/providers": "^5.7.0", "@metamask/base-controller": "^4.1.1", "@metamask/controller-utils": "^8.0.2", "@metamask/eth-query": "^4.0.0", @@ -79,8 +81,7 @@ "async-mutex": "^0.4.1", "bignumber.js": "^9.0.1", "bn.js": "^5.2.1", - "human-standard-token-abi": "^2.0.0", - "web3": "^4.2.2" + "human-standard-token-abi": "^2.0.0" }, "lavamoat": { "allowScripts": { diff --git a/src/SwapsController.test.ts b/src/SwapsController.test.ts index b3a5d665..75ca563e 100644 --- a/src/SwapsController.test.ts +++ b/src/SwapsController.test.ts @@ -138,19 +138,12 @@ jest.mock('@metamask/eth-query', () => }), ); -// Mock implementation of web3 -jest.mock('web3', () => { +jest.mock('@ethersproject/contracts', () => { return { - Web3: jest.fn(() => ({ - eth: { - Contract: jest.fn(() => ({ - methods: { - allowance: jest.fn(() => ({ - call: jest.fn().mockResolvedValue('1000000000000000000'), // Mocked allowance value - })), - }, - })), - }, + Contract: jest.fn(() => ({ + allowance: jest.fn(() => ({ + call: jest.fn().mockResolvedValue('1000000000000000000'), // Mocked allowance value + })), })), }; }); @@ -317,17 +310,16 @@ describe('SwapsController', () => { describe('provider', () => { it('should set provider', () => { + // Shape of provider object from Mobile@7.29.0 and network-controller@^19.0.0 const provider = { - name: 'test', - type: 'test', - chainId: '0x1', - rpcUrl: 'test', + __UNINITIALIZED__: undefined, + sendAsync: jest.fn() }; expect(swapsController.defaultConfig.provider).toBeUndefined(); swapsController.configure({ provider, }); - expect(swapsController.defaultConfig.provider.name).toBe(provider.name); + expect(swapsController.defaultConfig.provider.sendAsync).not.toBeUndefined(); }); }); diff --git a/src/SwapsController.ts b/src/SwapsController.ts index 92c0f783..72e010c0 100644 --- a/src/SwapsController.ts +++ b/src/SwapsController.ts @@ -1,3 +1,5 @@ +import { Contract } from '@ethersproject/contracts'; +import { Web3Provider } from '@ethersproject/providers'; import type { BaseConfig, BaseState } from '@metamask/base-controller'; import { BaseControllerV1 } from '@metamask/base-controller'; import { @@ -21,8 +23,6 @@ import type { Hex } from '@metamask/utils'; import { Mutex } from 'async-mutex'; import { BigNumber } from 'bignumber.js'; import abiERC20 from 'human-standard-token-abi'; -import * as web3 from 'web3'; -import type { Web3 as Web3Type } from 'web3'; import type { APIAggregatorMetadata, @@ -59,9 +59,6 @@ import { shouldEnableDirectWrapping, } from './swapsUtil'; -// Hack to fix the issue with the web3 import that works different in app vs tests -const Web3 = web3.Web3 === undefined ? web3.default : web3.Web3; - // Functions to determine type of the return value from GasFeeController /** @@ -225,7 +222,7 @@ export default class SwapsController extends BaseControllerV1< > { private handle?: NodeJS.Timeout; - private web3: Web3Type; + private web3Provider: Web3Provider; private ethQuery: any; @@ -549,7 +546,7 @@ export default class SwapsController extends BaseControllerV1< contractAddress: string, walletAddress: string, ): Promise { - const contract = new this.web3.eth.Contract(abiERC20, contractAddress); + const contract = new Contract(contractAddress, abiERC20, this.web3Provider); const allowanceTimeout = new Promise((_, reject) => { setTimeout(() => { reject(new Error(SwapsError.SWAPS_ALLOWANCE_TIMEOUT)); @@ -557,9 +554,10 @@ export default class SwapsController extends BaseControllerV1< }); const allowancePromise = async () => { - const result: bigint = await contract.methods - .allowance(walletAddress, getSwapsContractAddress(this.config.chainId)) - .call(); + const result = await contract.allowance( + walletAddress, + getSwapsContractAddress(this.config.chainId), + ); return new BigNumber(result.toString()); }; @@ -906,7 +904,7 @@ export default class SwapsController extends BaseControllerV1< set provider(provider: any) { if (provider) { this.ethQuery = new EthQuery(provider); - this.web3 = new Web3(provider); + this.web3Provider = new Web3Provider(provider); } } diff --git a/yarn.lock b/yarn.lock index 4448efe4..7b430315 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12,13 +12,6 @@ __metadata: languageName: node linkType: hard -"@adraffy/ens-normalize@npm:^1.8.8": - version: 1.10.1 - resolution: "@adraffy/ens-normalize@npm:1.10.1" - checksum: 10/4cb938c4abb88a346d50cb0ea44243ab3574330c81d4f5aaaf9dfee584b96189d0faa404de0fcbef5a1b73909ea4ebc3e63d84bd23f9949e5c8d4085207a5091 - languageName: node - linkType: hard - "@ampproject/remapping@npm:^2.2.0": version: 2.3.0 resolution: "@ampproject/remapping@npm:2.3.0" @@ -667,6 +660,24 @@ __metadata: languageName: node linkType: hard +"@ethersproject/contracts@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/contracts@npm:5.7.0" + dependencies: + "@ethersproject/abi": "npm:^5.7.0" + "@ethersproject/abstract-provider": "npm:^5.7.0" + "@ethersproject/abstract-signer": "npm:^5.7.0" + "@ethersproject/address": "npm:^5.7.0" + "@ethersproject/bignumber": "npm:^5.7.0" + "@ethersproject/bytes": "npm:^5.7.0" + "@ethersproject/constants": "npm:^5.7.0" + "@ethersproject/logger": "npm:^5.7.0" + "@ethersproject/properties": "npm:^5.7.0" + "@ethersproject/transactions": "npm:^5.7.0" + checksum: 10/5df66179af242faabea287a83fd2f8f303a4244dc87a6ff802e1e3b643f091451295c8e3d088c7739970b7915a16a581c192d4e007d848f1fdf3cc9e49010053 + languageName: node + linkType: hard + "@ethersproject/hash@npm:^5.7.0": version: 5.7.0 resolution: "@ethersproject/hash@npm:5.7.0" @@ -719,7 +730,7 @@ __metadata: languageName: node linkType: hard -"@ethersproject/providers@npm:^5.7.2": +"@ethersproject/providers@npm:^5.7.0, @ethersproject/providers@npm:^5.7.2": version: 5.7.2 resolution: "@ethersproject/providers@npm:5.7.2" dependencies: @@ -1630,6 +1641,8 @@ __metadata: resolution: "@metamask/swaps-controller@workspace:." dependencies: "@babel/runtime": "npm:^7.0.0" + "@ethersproject/contracts": "npm:^5.7.0" + "@ethersproject/providers": "npm:^5.7.0" "@lavamoat/allow-scripts": "npm:^3.0.0" "@metamask/approval-controller": "npm:^5.1.1" "@metamask/auto-changelog": "npm:^3.4.4" @@ -1671,7 +1684,6 @@ __metadata: ts-jest: "npm:^29.1.1" ts-node: "npm:^10.9.1" typescript: "npm:^5.1.0" - web3: "npm:^4.2.2" peerDependencies: "@metamask/composable-controller": ^4.0.0 "@metamask/network-controller": ^3.0.0 @@ -2153,15 +2165,6 @@ __metadata: languageName: node linkType: hard -"@types/ws@npm:8.5.3": - version: 8.5.3 - resolution: "@types/ws@npm:8.5.3" - dependencies: - "@types/node": "npm:*" - checksum: 10/08aac698ce6480b532d8311f790a8744ae489ccdd98f374cfe4b8245855439825c64b031abcbba4f30fb280da6cc2b02a4e261e16341d058ffaeecaa24ba2bd3 - languageName: node - linkType: hard - "@types/yargs-parser@npm:*": version: 21.0.3 resolution: "@types/yargs-parser@npm:21.0.3" @@ -2329,19 +2332,6 @@ __metadata: languageName: node linkType: hard -"abitype@npm:0.7.1": - version: 0.7.1 - resolution: "abitype@npm:0.7.1" - peerDependencies: - typescript: ">=4.9.4" - zod: ^3 >=3.19.1 - peerDependenciesMeta: - zod: - optional: true - checksum: 10/deee4a18c9c7218ab2e5e57e07e4cb3e2f3e785657be364d098ab0587cd552c4fbb41e1bdddbc6fa52387f51ebd181461fe70a13127cc77091655775fdfb18fe - languageName: node - linkType: hard - "abort-controller@npm:^3.0.0": version: 3.0.0 resolution: "abort-controller@npm:3.0.0" @@ -3138,7 +3128,7 @@ __metadata: languageName: node linkType: hard -"crc-32@npm:^1.2.0, crc-32@npm:^1.2.2": +"crc-32@npm:^1.2.0": version: 1.2.2 resolution: "crc-32@npm:1.2.2" bin: @@ -3198,15 +3188,6 @@ __metadata: languageName: node linkType: hard -"cross-fetch@npm:^4.0.0": - version: 4.0.0 - resolution: "cross-fetch@npm:4.0.0" - dependencies: - node-fetch: "npm:^2.6.12" - checksum: 10/e231a71926644ef122d334a3a4e73d9ba3ba4b480a8a277fb9badc434c1ba905b3d60c8034e18b348361a09afbec40ba9371036801ba2b675a7b84588f9f55d8 - languageName: node - linkType: hard - "cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" @@ -4157,13 +4138,6 @@ __metadata: languageName: node linkType: hard -"eventemitter3@npm:^5.0.1": - version: 5.0.1 - resolution: "eventemitter3@npm:5.0.1" - checksum: 10/ac6423ec31124629c84c7077eed1e6987f6d66c31cf43c6fcbf6c87791d56317ce808d9ead483652436df171b526fc7220eccdc9f3225df334e81582c3cf7dd5 - languageName: node - linkType: hard - "evp_bytestokey@npm:^1.0.3": version: 1.0.3 resolution: "evp_bytestokey@npm:1.0.3" @@ -4903,16 +4877,6 @@ __metadata: languageName: node linkType: hard -"is-arguments@npm:^1.0.4": - version: 1.1.1 - resolution: "is-arguments@npm:1.1.1" - dependencies: - call-bind: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.0" - checksum: 10/a170c7e26082e10de9be6e96d32ae3db4d5906194051b792e85fae3393b53cf2cb5b3557863e5c8ccbab55e2fd8f2f75aa643d437613f72052cf0356615c34be - languageName: node - linkType: hard - "is-array-buffer@npm:^3.0.4": version: 3.0.4 resolution: "is-array-buffer@npm:3.0.4" @@ -5011,15 +4975,6 @@ __metadata: languageName: node linkType: hard -"is-generator-function@npm:^1.0.7": - version: 1.0.10 - resolution: "is-generator-function@npm:1.0.10" - dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10/499a3ce6361064c3bd27fbff5c8000212d48506ebe1977842bbd7b3e708832d0deb1f4cc69186ece3640770e8c4f1287b24d99588a0b8058b2dbdd344bc1f47f - languageName: node - linkType: hard - "is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3": version: 4.0.3 resolution: "is-glob@npm:4.0.3" @@ -5124,7 +5079,7 @@ __metadata: languageName: node linkType: hard -"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.3": +"is-typed-array@npm:^1.1.13": version: 1.1.13 resolution: "is-typed-array@npm:1.1.13" dependencies: @@ -5163,15 +5118,6 @@ __metadata: languageName: node linkType: hard -"isomorphic-ws@npm:^5.0.0": - version: 5.0.0 - resolution: "isomorphic-ws@npm:5.0.0" - peerDependencies: - ws: "*" - checksum: 10/e20eb2aee09ba96247465fda40c6d22c1153394c0144fa34fe6609f341af4c8c564f60ea3ba762335a7a9c306809349f9b863c8beedf2beea09b299834ad5398 - languageName: node - linkType: hard - "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": version: 3.2.2 resolution: "istanbul-lib-coverage@npm:3.2.2" @@ -6335,7 +6281,7 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:^2.6.12, node-fetch@npm:^2.7.0": +"node-fetch@npm:^2.7.0": version: 2.7.0 resolution: "node-fetch@npm:2.7.0" dependencies: @@ -8000,19 +7946,6 @@ __metadata: languageName: node linkType: hard -"util@npm:^0.12.5": - version: 0.12.5 - resolution: "util@npm:0.12.5" - dependencies: - inherits: "npm:^2.0.3" - is-arguments: "npm:^1.0.4" - is-generator-function: "npm:^1.0.7" - is-typed-array: "npm:^1.1.3" - which-typed-array: "npm:^1.1.2" - checksum: 10/61a10de7753353dd4d744c917f74cdd7d21b8b46379c1e48e1c4fd8e83f8190e6bd9978fc4e5102ab6a10ebda6019d1b36572fa4a325e175ec8b789a121f6147 - languageName: node - linkType: hard - "uuid@npm:^8.3.2": version: 8.3.2 resolution: "uuid@npm:8.3.2" @@ -8086,257 +8019,6 @@ __metadata: languageName: node linkType: hard -"web3-core@npm:^4.3.0, web3-core@npm:^4.3.2": - version: 4.3.2 - resolution: "web3-core@npm:4.3.2" - dependencies: - web3-errors: "npm:^1.1.4" - web3-eth-accounts: "npm:^4.1.0" - web3-eth-iban: "npm:^4.0.7" - web3-providers-http: "npm:^4.1.0" - web3-providers-ipc: "npm:^4.0.7" - web3-providers-ws: "npm:^4.0.7" - web3-types: "npm:^1.3.1" - web3-utils: "npm:^4.1.0" - web3-validator: "npm:^2.0.3" - dependenciesMeta: - web3-providers-ipc: - optional: true - checksum: 10/270351475dcb1438022be1edaee8efe59a9eb976ab61ca10c0b9512b4abab6d5976fe720daab6924a495179702f2008856f19788de272e6a039cb96e0a6184e7 - languageName: node - linkType: hard - -"web3-errors@npm:^1.1.3, web3-errors@npm:^1.1.4": - version: 1.1.4 - resolution: "web3-errors@npm:1.1.4" - dependencies: - web3-types: "npm:^1.3.1" - checksum: 10/b0773a7df2338efc624963e55719894386303703ce393e5ce677fef0c7b4a5293556530386577010f1086a9fa7534346b83c4fc014e79c1107950e20a047b2f2 - languageName: node - linkType: hard - -"web3-eth-abi@npm:^4.2.0": - version: 4.2.0 - resolution: "web3-eth-abi@npm:4.2.0" - dependencies: - abitype: "npm:0.7.1" - web3-errors: "npm:^1.1.4" - web3-types: "npm:^1.3.1" - web3-utils: "npm:^4.1.1" - web3-validator: "npm:^2.0.4" - checksum: 10/df903dad3b41932a60504d7c532c515b47bb44bd2d338118633ecc69ffe74122fe0346fc6047cdd623eae3c9382b2fabe41156115cfafa4701616bba6577a6dd - languageName: node - linkType: hard - -"web3-eth-accounts@npm:^4.1.0, web3-eth-accounts@npm:^4.1.1": - version: 4.1.1 - resolution: "web3-eth-accounts@npm:4.1.1" - dependencies: - "@ethereumjs/rlp": "npm:^4.0.1" - crc-32: "npm:^1.2.2" - ethereum-cryptography: "npm:^2.0.0" - web3-errors: "npm:^1.1.4" - web3-types: "npm:^1.3.1" - web3-utils: "npm:^4.1.1" - web3-validator: "npm:^2.0.4" - checksum: 10/059f0d030908c239ca15a45ecb0c6620ece6b636da42236104f133be15612660cdb1d5d9286cb0a8ba3a36bf57a9d98047ed21f5d6c1d093edee180e62e45230 - languageName: node - linkType: hard - -"web3-eth-contract@npm:^4.3.0": - version: 4.3.0 - resolution: "web3-eth-contract@npm:4.3.0" - dependencies: - web3-core: "npm:^4.3.2" - web3-errors: "npm:^1.1.4" - web3-eth: "npm:^4.5.0" - web3-eth-abi: "npm:^4.2.0" - web3-types: "npm:^1.5.0" - web3-utils: "npm:^4.2.2" - web3-validator: "npm:^2.0.5" - checksum: 10/6e59f692ce2014c0051a20a2eff54db23f87b8a363ccd2e51398b5973b18573b040412473831fa352522f4036bdcae3b12aa609ad41f0c2cd6db3b40edce72b2 - languageName: node - linkType: hard - -"web3-eth-ens@npm:^4.2.0": - version: 4.2.0 - resolution: "web3-eth-ens@npm:4.2.0" - dependencies: - "@adraffy/ens-normalize": "npm:^1.8.8" - web3-core: "npm:^4.3.2" - web3-errors: "npm:^1.1.4" - web3-eth: "npm:^4.5.0" - web3-eth-contract: "npm:^4.3.0" - web3-net: "npm:^4.0.7" - web3-types: "npm:^1.5.0" - web3-utils: "npm:^4.2.2" - web3-validator: "npm:^2.0.5" - checksum: 10/11ef66b0442139acdb888767890e6d1d202d4c93feaec28d1d37cc63229ba91c90a26bf0322f8a68fac0aeeef2fe4a98d97df3d2b6b9b7cff6d29ef18a9eed98 - languageName: node - linkType: hard - -"web3-eth-iban@npm:^4.0.7": - version: 4.0.7 - resolution: "web3-eth-iban@npm:4.0.7" - dependencies: - web3-errors: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - web3-validator: "npm:^2.0.3" - checksum: 10/9d7521b4d4aef3a0d697905c7859d8e4d7ce82234320beecba9b24d254592a7ccf0354f329289b4e11a816fcbe3eceb842c4c87678f5e8ec622c8351bc1b9170 - languageName: node - linkType: hard - -"web3-eth-personal@npm:^4.0.8": - version: 4.0.8 - resolution: "web3-eth-personal@npm:4.0.8" - dependencies: - web3-core: "npm:^4.3.0" - web3-eth: "npm:^4.3.1" - web3-rpc-methods: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - web3-validator: "npm:^2.0.3" - checksum: 10/6e9ab6298a3469e37bcf8930136673b3eff3ac95a763b5b924cda0861326508a12902c9b53d443057ea9c64b12b0b1ed9b66f3a0031b74746605010880d0fc7c - languageName: node - linkType: hard - -"web3-eth@npm:^4.3.1, web3-eth@npm:^4.5.0": - version: 4.5.0 - resolution: "web3-eth@npm:4.5.0" - dependencies: - setimmediate: "npm:^1.0.5" - web3-core: "npm:^4.3.2" - web3-errors: "npm:^1.1.4" - web3-eth-abi: "npm:^4.2.0" - web3-eth-accounts: "npm:^4.1.1" - web3-net: "npm:^4.0.7" - web3-providers-ws: "npm:^4.0.7" - web3-rpc-methods: "npm:^1.2.0" - web3-types: "npm:^1.5.0" - web3-utils: "npm:^4.2.1" - web3-validator: "npm:^2.0.4" - checksum: 10/9ebd0da1c8ebb08868536bbedefb280af62b0512fc98a9a5115f86b6b4da7a4d97f4ad82e0b2683c1a61dfbc1fafba70a589bc790e05de857a951445d9a83509 - languageName: node - linkType: hard - -"web3-net@npm:^4.0.7": - version: 4.0.7 - resolution: "web3-net@npm:4.0.7" - dependencies: - web3-core: "npm:^4.3.0" - web3-rpc-methods: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - checksum: 10/b013fbbddfb53b872b74443ca3098ec63831f7d65455aadb73c4fc6953c38714b8c84918228229e81a2a3e4bdaf1583f745d2e4937f7f2cc2a97fa60a5f27202 - languageName: node - linkType: hard - -"web3-providers-http@npm:^4.1.0": - version: 4.1.0 - resolution: "web3-providers-http@npm:4.1.0" - dependencies: - cross-fetch: "npm:^4.0.0" - web3-errors: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - checksum: 10/d98d3cedd8caadb7f6f8ab6faa74d6f42be5808e729a93d815771fb7287f9fffa9ecdc047dceaac783a329c63947f006bca758f2241dc57070aefb62cdb0f2dc - languageName: node - linkType: hard - -"web3-providers-ipc@npm:^4.0.7": - version: 4.0.7 - resolution: "web3-providers-ipc@npm:4.0.7" - dependencies: - web3-errors: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - checksum: 10/b953818479f5d9c7b748e10977430fd7e377696f9160ae19b1917c0317e89671c4be824c06723b6fda190258927160fcec0e8e7c1aa87a5f0344008ef7649cda - languageName: node - linkType: hard - -"web3-providers-ws@npm:^4.0.7": - version: 4.0.7 - resolution: "web3-providers-ws@npm:4.0.7" - dependencies: - "@types/ws": "npm:8.5.3" - isomorphic-ws: "npm:^5.0.0" - web3-errors: "npm:^1.1.3" - web3-types: "npm:^1.3.0" - web3-utils: "npm:^4.0.7" - ws: "npm:^8.8.1" - checksum: 10/ceb2da6a1534bd2f6d60533777b0b1e35de9947d07a856be64499aedbe3ba48f744ab6196dcaf60f252e2a1a7939680dcc15db656f10afe39a17282a89f9d575 - languageName: node - linkType: hard - -"web3-rpc-methods@npm:^1.1.3, web3-rpc-methods@npm:^1.2.0": - version: 1.2.0 - resolution: "web3-rpc-methods@npm:1.2.0" - dependencies: - web3-core: "npm:^4.3.2" - web3-types: "npm:^1.5.0" - web3-validator: "npm:^2.0.4" - checksum: 10/4d4ac1e0327a0767fd72fa38bbb32e3eb0321136e6348800ee3fd507e1034ebb3a7223d49cb79d9bd13e91792ba91549f5cc701bd095840785e6e6a4ca359092 - languageName: node - linkType: hard - -"web3-types@npm:^1.3.0, web3-types@npm:^1.3.1, web3-types@npm:^1.5.0": - version: 1.5.0 - resolution: "web3-types@npm:1.5.0" - checksum: 10/e0146bb69db33303d2e20113b4ccb59696a0f47e4dffb8c49ad96b19e9712a30a881def3771bad8de1fa3ea864b0ebb661cb4907edfaeb5af81abac97ed89d6b - languageName: node - linkType: hard - -"web3-utils@npm:^4.0.7, web3-utils@npm:^4.1.0, web3-utils@npm:^4.1.1, web3-utils@npm:^4.2.1, web3-utils@npm:^4.2.2": - version: 4.2.2 - resolution: "web3-utils@npm:4.2.2" - dependencies: - ethereum-cryptography: "npm:^2.0.0" - eventemitter3: "npm:^5.0.1" - web3-errors: "npm:^1.1.4" - web3-types: "npm:^1.5.0" - web3-validator: "npm:^2.0.5" - checksum: 10/fefd4ca450aeff60729da7c39a1949d33080991ffbadcf0cc91ed9104c333d40f7b63ab4a3375d14a29c0c700ba74df0fead8a903f7e3804af3844729e989e05 - languageName: node - linkType: hard - -"web3-validator@npm:^2.0.3, web3-validator@npm:^2.0.4, web3-validator@npm:^2.0.5": - version: 2.0.5 - resolution: "web3-validator@npm:2.0.5" - dependencies: - ethereum-cryptography: "npm:^2.0.0" - util: "npm:^0.12.5" - web3-errors: "npm:^1.1.4" - web3-types: "npm:^1.5.0" - zod: "npm:^3.21.4" - checksum: 10/d6aa3366d6fc7227f9451de300ea5a1370570ae52c1bb32dfe827e37a6acbb4b66fc9d6fd106c348f9041968a3824700174ef0a4c250e122e1b448f570c320bf - languageName: node - linkType: hard - -"web3@npm:^4.2.2": - version: 4.7.0 - resolution: "web3@npm:4.7.0" - dependencies: - web3-core: "npm:^4.3.2" - web3-errors: "npm:^1.1.4" - web3-eth: "npm:^4.5.0" - web3-eth-abi: "npm:^4.2.0" - web3-eth-accounts: "npm:^4.1.1" - web3-eth-contract: "npm:^4.3.0" - web3-eth-ens: "npm:^4.2.0" - web3-eth-iban: "npm:^4.0.7" - web3-eth-personal: "npm:^4.0.8" - web3-net: "npm:^4.0.7" - web3-providers-http: "npm:^4.1.0" - web3-providers-ws: "npm:^4.0.7" - web3-rpc-methods: "npm:^1.2.0" - web3-types: "npm:^1.5.0" - web3-utils: "npm:^4.2.2" - web3-validator: "npm:^2.0.5" - checksum: 10/c3f802030bd804fbdaa425e12f81b48f8185b862e0a58f6f2971a3f6d06713e5a919692777810aac413730ff6103160207f3de0b60cc260c852a4562709df393 - languageName: node - linkType: hard - "webidl-conversions@npm:^3.0.0": version: 3.0.1 resolution: "webidl-conversions@npm:3.0.1" @@ -8400,7 +8082,7 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.14, which-typed-array@npm:^1.1.15, which-typed-array@npm:^1.1.2": +"which-typed-array@npm:^1.1.14, which-typed-array@npm:^1.1.15": version: 1.1.15 resolution: "which-typed-array@npm:1.1.15" dependencies: @@ -8499,7 +8181,7 @@ __metadata: languageName: node linkType: hard -"ws@npm:^8.11.0, ws@npm:^8.8.1": +"ws@npm:^8.11.0": version: 8.16.0 resolution: "ws@npm:8.16.0" peerDependencies: @@ -8598,10 +8280,3 @@ __metadata: checksum: 10/f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 languageName: node linkType: hard - -"zod@npm:^3.21.4": - version: 3.22.4 - resolution: "zod@npm:3.22.4" - checksum: 10/73622ca36a916f785cf528fe612a884b3e0f183dbe6b33365a7d0fc92abdbedf7804c5e2bd8df0a278e1472106d46674281397a3dd800fa9031dc3429758c6ac - languageName: node - linkType: hard