From f3baa0eadb04f5405289a5b6831f6984bf8b3ca3 Mon Sep 17 00:00:00 2001 From: Brage <5640782+2xic@users.noreply.github.com> Date: Thu, 14 Mar 2024 14:32:46 +0100 Subject: [PATCH] Bump ethereumjs libraries --- .gitignore | 1 + .yarnrc.yml | 1 + components/Editor/SolidityAdvanceModeTab.tsx | 10 +- components/Editor/index.tsx | 9 +- context/ethereumContext.tsx | 89 +- next.config.js | 19 + package.json | 18 +- util/gas.ts | 9 +- webpack/importAssertTransformer.js | 49 + webpack/nodeModuleReplacement.js | 26 + yarn.lock | 915 +++++-------------- 11 files changed, 393 insertions(+), 753 deletions(-) create mode 100644 .yarnrc.yml create mode 100644 webpack/importAssertTransformer.js create mode 100644 webpack/nodeModuleReplacement.js diff --git a/.gitignore b/.gitignore index 5caea8fa..5be31760 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ /node_modules /.pnp .pnp.js +.yarn # testing /coverage diff --git a/.yarnrc.yml b/.yarnrc.yml new file mode 100644 index 00000000..3186f3f0 --- /dev/null +++ b/.yarnrc.yml @@ -0,0 +1 @@ +nodeLinker: node-modules diff --git a/components/Editor/SolidityAdvanceModeTab.tsx b/components/Editor/SolidityAdvanceModeTab.tsx index 9028ba3d..3cc3c1d5 100644 --- a/components/Editor/SolidityAdvanceModeTab.tsx +++ b/components/Editor/SolidityAdvanceModeTab.tsx @@ -9,8 +9,9 @@ import React, { } from 'react' import { EvmError } from '@ethereumjs/evm/src/exceptions' +import { Address } from '@ethereumjs/util' import abi from 'ethereumjs-abi' -import { Address, BN, bufferToHex } from 'ethereumjs-util' +import { BN, bufferToHex } from 'ethereumjs-util' import Select, { OnChangeValue } from 'react-select' import { isEmpty } from 'util/string' @@ -32,7 +33,7 @@ interface Props { ) => Promise< | { error?: EvmError | undefined - returnValue: Buffer + returnValue: Uint8Array createdAddress: Address | undefined } | undefined @@ -207,6 +208,9 @@ const SolidityAdvanceModeTab: FC = ({ getCallValue(), Address.fromString(deployedContractAddress), ) + if (!transaction) { + return + } const result = await startTransaction(transaction) if ( @@ -217,7 +221,7 @@ const SolidityAdvanceModeTab: FC = ({ log( `run method complete, the response is ${abi.rawDecode( selectedMethod.outputs.map((mi) => mi.type), - result.returnValue, + Buffer.from(result.returnValue), )}`, ) } else if (!result.error) { diff --git a/components/Editor/index.tsx b/components/Editor/index.tsx index 94753726..966aed2f 100644 --- a/components/Editor/index.tsx +++ b/components/Editor/index.tsx @@ -10,10 +10,10 @@ import React, { Fragment, } from 'react' -import { bufferToHex } from '@ethereumjs/util' import { encode, decode } from '@kunigi/string-compression' import cn from 'classnames' import copy from 'copy-to-clipboard' +import { bufferToHex } from 'ethereumjs-util' import { useRouter } from 'next/router' import Select, { OnChangeValue } from 'react-select' import SCEditor from 'react-simple-code-editor' @@ -144,18 +144,23 @@ const Editor = ({ readOnly = false }: Props) => { loadInstructions(bc) setIsCompiling(false) + if (!transaction) { + return + } + const result = await startTransaction(transaction) if ( codeType === CodeType.Solidity && !result.error && result.returnValue ) { - setMethodByteCode(bufferToHex(result.returnValue)) + setMethodByteCode(bufferToHex(Buffer.from(result.returnValue))) } return result } catch (error) { log((error as Error).message, 'error') setIsCompiling(false) + return undefined } }, [ diff --git a/context/ethereumContext.tsx b/context/ethereumContext.tsx index 4e54081d..4046262e 100644 --- a/context/ethereumContext.tsx +++ b/context/ethereumContext.tsx @@ -3,16 +3,18 @@ import { Buffer } from 'buffer' import React, { createContext, useEffect, useState, useRef } from 'react' import { Block } from '@ethereumjs/block' -import { Common, Chain } from '@ethereumjs/common' -import { HardforkConfig } from '@ethereumjs/common/src/types' -import { RunState, InterpreterStep } from '@ethereumjs/evm/dist/interpreter' -import { EvmError } from '@ethereumjs/evm/src/exceptions' -import { Opcode } from '@ethereumjs/evm/src/opcodes' -import { getActivePrecompiles } from '@ethereumjs/evm/src/precompiles' -import { TypedTransaction, TxData, Transaction } from '@ethereumjs/tx' +import { Common, Chain, HardforkTransitionConfig } from '@ethereumjs/common' +import { + EVM, + EvmError, + EVMResult, + getActivePrecompiles, + InterpreterStep, +} from '@ethereumjs/evm' +import { Opcode, OpcodeList } from '@ethereumjs/evm/src/opcodes' +import { TypedTransaction, TxData, TransactionFactory } from '@ethereumjs/tx' import { Address, Account } from '@ethereumjs/util' import { VM } from '@ethereumjs/vm' -// import OpcodesMeta from 'opcodes.json' import PrecompiledMeta from 'precompiled.json' import { @@ -31,8 +33,12 @@ import { } from 'util/gas' import { toHex, fromBuffer } from 'util/string' +// NOTE: Importing the type directly caused issues +type RunState = EVMResult['execResult']['runState'] + let vm: VM let common: Common +let currentOpcodes: OpcodeList | undefined const storageMemory = new Map() const privateKey = Buffer.from( @@ -49,9 +55,9 @@ export const prevrandaoDocName = '44_merge' type ContextProps = { common: Common | undefined chains: IChain[] - forks: HardforkConfig[] + forks: HardforkTransitionConfig[] selectedChain: IChain | undefined - selectedFork: HardforkConfig | undefined + selectedFork: HardforkTransitionConfig | undefined opcodes: IReferenceItem[] precompiled: IReferenceItem[] instructions: IInstruction[] @@ -66,12 +72,12 @@ type ContextProps = { byteCode: string, value: bigint, to?: Address, - ) => Promise + ) => Promise loadInstructions: (byteCode: string) => void startExecution: (byteCode: string, value: bigint, data: string) => void startTransaction: (tx: TypedTransaction | TxData) => Promise<{ error?: EvmError - returnValue: Buffer + returnValue: Uint8Array createdAddress: Address | undefined }> continueExecution: () => void @@ -109,7 +115,7 @@ export const EthereumContext = createContext({ onForkChange: () => undefined, transactionData: () => new Promise((resolve) => { - resolve({}) + resolve(undefined) }), loadInstructions: () => undefined, startExecution: () => undefined, @@ -130,9 +136,9 @@ export const CheckIfAfterMergeHardfork = (forkName?: string) => { export const EthereumProvider: React.FC<{}> = ({ children }) => { const [chains, setChains] = useState([]) - const [forks, setForks] = useState([]) + const [forks, setForks] = useState([]) const [selectedChain, setSelectedChain] = useState() - const [selectedFork, setSelectedFork] = useState() + const [selectedFork, setSelectedFork] = useState() const [opcodes, setOpcodes] = useState([]) const [precompiled, setPrecompiled] = useState([]) const [instructions, setInstructions] = useState([]) @@ -169,6 +175,11 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { vm = await VM.create({ common }) + const evm = new EVM({ + common, + }) + currentOpcodes = evm.getActiveOpcodes() + if (!skipChainsLoading) { _loadChainAndForks(common) } @@ -178,7 +189,7 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { _setupStateManager() _setupAccount() - vm.evm.events!.on( + vm.evm.events?.on( 'step', (e: InterpreterStep, contFunc: ((result?: any) => void) | undefined) => { _stepInto(e, contFunc) @@ -226,10 +237,10 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { gasLimit, gasPrice: 10, data: '0x' + data, - nonce: account.nonce, + nonce: account?.nonce, } - return Transaction.fromTxData(txData).sign(privateKey) + return TransactionFactory.fromTxData(txData).sign(privateKey) } /** @@ -237,9 +248,13 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { * @param byteCode The contract bytecode. */ const loadInstructions = (byteCode: string) => { - const opcodes = vm.evm.getActiveOpcodes!() + const opcodes = currentOpcodes const instructions: IInstruction[] = [] + if (!opcodes) { + return + } + for (let i = 0; i < byteCode.length; i += 2) { const instruction = parseInt(byteCode.slice(i, i + 2), 16) // The id to reference back with breakpoints @@ -292,7 +307,7 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { * Starts EVM execution of the instructions. * @param tx The transaction data to run from. */ - const startTransaction = (tx: TypedTransaction | TxData) => { + const startTransaction = (tx: TypedTransaction | TxData | undefined) => { // always start paused isExecutionPaused.current = true setIsExecuting(true) @@ -409,7 +424,7 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { const _loadChainAndForks = (common: Common) => { const chainIds: number[] = [] const chainNames: string[] = [] - const forks: HardforkConfig[] = [] + const forks: HardforkTransitionConfig[] = [] // iterate over TS enum to pick key,val for (const chain in Chain) { @@ -488,7 +503,7 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { const _loadOpcodes = () => { const opcodes: IReferenceItem[] = [] - vm.evm.getActiveOpcodes!().forEach((op: Opcode) => { + currentOpcodes?.forEach((op: Opcode) => { const opcode = extractDocFromOpcode(op) opcode.minimumFee = parseInt( @@ -552,9 +567,14 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { // respectively AFTER applying the original methods. // This is necessary in order to handle storage operations easily. const _setupStateManager = () => { - const proxyStateManager = traceMethodCalls(vm.evm.eei) - vm.evm.eei.putContractStorage = proxyStateManager.putContractStorage - vm.evm.eei.clearContractStorage = proxyStateManager.clearContractStorage + const evm = vm.evm + if (evm instanceof EVM) { + const proxyStateManager = traceMethodCalls(evm.stateManager) + vm.evm.stateManager.putContractStorage = + proxyStateManager.putContractStorage + vm.evm.stateManager.clearContractStorage = + proxyStateManager.clearContractStorage + } storageMemory.clear() } @@ -587,9 +607,9 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { exceptionError, }: { totalGasSpent: bigint - runState?: RunState + runState: RunState | undefined newContractAddress?: Address - returnValue?: Buffer + returnValue?: Uint8Array exceptionError?: EvmError }) => { if (runState) { @@ -597,7 +617,7 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { _setExecutionState({ pc, totalGasSpent, - stack: stack._store, + stack: stack.getStack(), memory: memory._store, memoryWordCount, returnValue, @@ -681,10 +701,10 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { pc: number totalGasSpent: bigint stack: bigint[] - memory: Buffer + memory: Uint8Array memoryWordCount: bigint currentGas?: bigint | number - returnValue?: Buffer + returnValue?: Uint8Array }) => { const storage: IStorage[] = [] @@ -698,10 +718,15 @@ export const EthereumProvider: React.FC<{}> = ({ children }) => { programCounter: pc, stack: stack.map((value) => value.toString(16)).reverse(), totalGas: totalGasSpent.toString(), - memory: fromBuffer(memory).substring(0, Number(memoryWordCount) * 64), + memory: fromBuffer(Buffer.from(memory)).substring( + 0, + Number(memoryWordCount) * 64, + ), storage, currentGas: currentGas ? currentGas.toString() : undefined, - returnValue: returnValue ? returnValue.toString('hex') : undefined, + returnValue: returnValue + ? Buffer.from(returnValue).toString('hex') + : undefined, }) } diff --git a/next.config.js b/next.config.js index 9d9c8df6..27eeaefa 100644 --- a/next.config.js +++ b/next.config.js @@ -3,6 +3,9 @@ // eslint-disable-next-line @typescript-eslint/no-var-requires const { withPlausibleProxy } = require('next-plausible') +// eslint-disable-next-line @typescript-eslint/no-var-requires +const nodeModuleReplacement = require('./webpack/nodeModuleReplacement') + module.exports = withPlausibleProxy()({ reactStrictMode: true, serverRuntimeConfig: { @@ -21,6 +24,19 @@ module.exports = withPlausibleProxy()({ ], }) + // NOTE: Needed to clear the import assert from rustbn used by ethereumjs + config.module.rules.push({ + test: /\.js$/, + include: [dir], + use: [ + { + loader: './webpack/importAssertTransformer.js', + }, + ], + }) + // NOTE: Needed to transform various node imports from ethereumjs + config.plugins.push(nodeModuleReplacement.default) + config.resolve.fallback = { fs: false, stream: false, @@ -29,7 +45,10 @@ module.exports = withPlausibleProxy()({ process: require.resolve('process/browser'), assert: require.resolve('assert/'), events: require.resolve('events/'), + buffer: require.resolve('buffer/'), } + // NOTE: Needed because rustbn used by ethereumjs is having a top level await + config.experiments.topLevelAwait = true return config }, diff --git a/package.json b/package.json index 4fce3a29..976af732 100644 --- a/package.json +++ b/package.json @@ -16,19 +16,20 @@ "@types/react-dom": "17.0.2" }, "dependencies": { - "@ethereumjs/block": "^4.2.0", - "@ethereumjs/common": "^3.1.0", - "@ethereumjs/evm": "^1.3.0", - "@ethereumjs/statemanager": "^1.0.3", - "@ethereumjs/tx": "^4.1.0", - "@ethereumjs/util": "^8.0.4", - "@ethereumjs/vm": "^6.4.0", + "@ethereumjs/block": "^5.1.1", + "@ethereumjs/common": "^4.2.0", + "@ethereumjs/evm": "^2.2.1", + "@ethereumjs/statemanager": "^2.2.2", + "@ethereumjs/tx": "^5.2.1", + "@ethereumjs/util": "^9.0.2", + "@ethereumjs/vm": "^7.2.1", "@kunigi/string-compression": "1.0.2", "@mdx-js/loader": "^2.3.0", "@mdx-js/react": "^2.3.0", "@types/ethereumjs-abi": "^0.6.3", "assert": "^2.0.0", "babel-preset-es2020": "^1.0.2", + "buffer": "^6.0.3", "classnames": "^2.3.1", "copy-to-clipboard": "^3.3.1", "ethereumjs-abi": "^0.6.8", @@ -49,7 +50,8 @@ "react-select": "^5.1.0", "react-simple-code-editor": "^0.11.2", "react-table": "^7.7.0", - "react-tooltip": "^4.2.21" + "react-tooltip": "^4.2.21", + "readable-stream": "^4.5.2" }, "devDependencies": { "@babel/core": "^7.19.1", diff --git a/util/gas.ts b/util/gas.ts index 49c7fe32..0046fc34 100644 --- a/util/gas.ts +++ b/util/gas.ts @@ -1,5 +1,4 @@ -import { Common } from '@ethereumjs/common' -import { HardforkConfig } from '@ethereumjs/common/src/types' +import { Common, HardforkTransitionConfig } from '@ethereumjs/common' import { setLengthRight, BN } from 'ethereumjs-util' import { IReferenceItem } from 'types' @@ -673,13 +672,13 @@ export const parseGasPrices = (common: Common, contents: string) => { * @param selectedFork The Hardfork selected by the user */ export const findMatchingForkName = ( - forks: HardforkConfig[], + forks: HardforkTransitionConfig[], forkNames: string[], - selectedFork: HardforkConfig | undefined, + selectedFork: HardforkTransitionConfig | undefined, ) => { // get all known forks mapped to a block number const knownForksWithBlocks = forks.reduce( - (res: { [forkName: string]: number }, fork: HardforkConfig) => { + (res: { [forkName: string]: number }, fork: HardforkTransitionConfig) => { if (fork.block) { res[fork.name] = fork.block } diff --git a/webpack/importAssertTransformer.js b/webpack/importAssertTransformer.js new file mode 100644 index 00000000..e0197814 --- /dev/null +++ b/webpack/importAssertTransformer.js @@ -0,0 +1,49 @@ +// Helper function to remove the import asserts from files + +/* eslint-disable import/order */ +/* eslint-disable @typescript-eslint/no-var-requires */ +/* eslint-disable prettier/prettier */ +const parse = require('@babel/parser').parse +const traverse = require('@babel/traverse').default +const generate = require('@babel/generator').default + +const parserOptions = { + plugins: ['importAssertions'], + sourceType: 'unambiguous', +} + +function getTypeAttribute(assertions) { + for (const assertion of assertions) { + if (assertion.key.value === 'type') { + return assertion.value.value.toLowerCase() + } + } +} + +module.exports = function (source) { + const emitError = this.emitError + const ast = parse(source, parserOptions) + + traverse( + ast, + { + noScope: true, + + ImportDeclaration(path) { + const node = path.node + if (node.assertions.length > 0) { + const type = getTypeAttribute(node.assertions) + node.assertions = [] + + if (type !== 'json') { + emitError(new Error(`Unexpected module type ${type}`)) + } + } + }, + }, + null, + { source }, + ) + + return generate(ast).code +} diff --git a/webpack/nodeModuleReplacement.js b/webpack/nodeModuleReplacement.js new file mode 100644 index 00000000..d76ed40e --- /dev/null +++ b/webpack/nodeModuleReplacement.js @@ -0,0 +1,26 @@ +// Helper function to transform from node packages to browser compatible packages + +// eslint-disable-next-line @typescript-eslint/no-var-requires +const { NormalModuleReplacementPlugin } = require('webpack') + +module.exports.default = new NormalModuleReplacementPlugin( + /node:/, + (resource) => { + const mod = resource.request.replace(/^node:/, '') + switch (mod) { + case 'buffer': + resource.request = 'buffer' + break + case 'stream': + resource.request = 'readable-stream' + break + case 'stream/web': + resource.request = 'readable-stream' + break + default: + throw new Error( + `NormalModuleReplacementPlugin: Node package not found ${mod}`, + ) + } + }, +) diff --git a/yarn.lock b/yarn.lock index 2022af1e..c04402eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -996,27 +996,6 @@ through2 "^4.0.2" xtend "^4.0.1" -"@chainsafe/as-sha256@^0.3.1": - version "0.3.1" - resolved "https://registry.npmjs.org/@chainsafe/as-sha256/-/as-sha256-0.3.1.tgz" - integrity sha512-hldFFYuf49ed7DAakWVXSJODuq3pzJEguD8tQ7h+sGkM18vja+OFoJI9krnGmgzyuZC2ETX0NOIcCTy31v2Mtg== - -"@chainsafe/persistent-merkle-tree@^0.4.2": - version "0.4.2" - resolved "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.4.2.tgz" - integrity sha512-lLO3ihKPngXLTus/L7WHKaw9PnNJWizlOF1H9NNzHP6Xvh82vzg9F2bzkXhYIFshMZ2gTCEz8tq6STe7r5NDfQ== - dependencies: - "@chainsafe/as-sha256" "^0.3.1" - -"@chainsafe/ssz@0.9.4": - version "0.9.4" - resolved "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.9.4.tgz" - integrity sha512-77Qtg2N1ayqs4Bg/wvnWfg5Bta7iy7IRh8XqXh7oNMeP2HBbBwx8m6yTpA8p0EHItWPEBkgZd5S5/LSlp3GXuQ== - dependencies: - "@chainsafe/as-sha256" "^0.3.1" - "@chainsafe/persistent-merkle-tree" "^0.4.2" - case "^1.6.3" - "@emotion/cache@^11.4.0", "@emotion/cache@^11.5.0": version "11.5.0" resolved "https://package-cluster.production.groovehq.com/@emotion%2fcache/-/cache-11.5.0.tgz" @@ -1097,481 +1076,143 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" -"@ethereumjs/block@^4.2.0", "@ethereumjs/block@^4.2.1": - version "4.2.1" - resolved "https://registry.npmjs.org/@ethereumjs/block/-/block-4.2.1.tgz" - integrity sha512-Z/Ty8EkD8o5tvEX5JPrr0pvf60JkSxmwV231aBZ744N75SLvq54dTu/Gk7azC/2xaWhSu1dOp5D5+bryqgG5Cg== - dependencies: - "@ethereumjs/common" "^3.1.1" - "@ethereumjs/rlp" "^4.0.1" - "@ethereumjs/trie" "^5.0.4" - "@ethereumjs/tx" "^4.1.1" - "@ethereumjs/util" "^8.0.5" - ethereum-cryptography "^1.1.2" - ethers "^5.7.1" - -"@ethereumjs/blockchain@^6.2.1": - version "6.2.1" - resolved "https://registry.npmjs.org/@ethereumjs/blockchain/-/blockchain-6.2.1.tgz" - integrity sha512-gP7EtXAPMDna/e28ZMDErfatF/2FRYi4HA2qleIKuEC33RbizGmTK34BoEuSXVeWHTIyNBLO5m9fwQhsF2LNyA== - dependencies: - "@ethereumjs/block" "^4.2.1" - "@ethereumjs/common" "^3.1.1" - "@ethereumjs/ethash" "^2.0.4" - "@ethereumjs/rlp" "^4.0.1" - "@ethereumjs/trie" "^5.0.4" - "@ethereumjs/tx" "^4.1.1" - "@ethereumjs/util" "^8.0.5" - abstract-level "^1.0.3" +"@ethereumjs/block@^5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/block/-/block-5.1.1.tgz#9ce0df8abee1cd597e294e10c63e658ac3ac0076" + integrity sha512-YRu5vzL+cCqr/0anGkgrMB/wLGmIbFrwLRFazAIXijb0VkxPqjWI2fMLhB4B8pOV6Xlp07jfjr25fLOAIzYYqA== + dependencies: + "@ethereumjs/common" "^4.2.0" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/trie" "^6.1.1" + "@ethereumjs/tx" "^5.2.1" + "@ethereumjs/util" "^9.0.2" + ethereum-cryptography "^2.1.3" + +"@ethereumjs/blockchain@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/blockchain/-/blockchain-7.1.0.tgz#84806e86db787c6edd2acb21909c305aba1d0db5" + integrity sha512-wqHZdlnjAwwH+AH6IBjSs7uQ/2UhEfFRs79OfPN8XHBoCGxCikSgjvN6v7XWl8nHUdfZFQk6LpEVkruNx5wF3A== + dependencies: + "@ethereumjs/block" "^5.1.1" + "@ethereumjs/common" "^4.2.0" + "@ethereumjs/ethash" "^3.0.2" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/trie" "^6.1.1" + "@ethereumjs/tx" "^5.2.1" + "@ethereumjs/util" "^9.0.2" debug "^4.3.3" - ethereum-cryptography "^1.1.2" - level "^8.0.0" - lru-cache "^5.1.1" - memory-level "^1.0.0" + ethereum-cryptography "^2.1.3" + lru-cache "^10.0.0" -"@ethereumjs/common@^3.1.0", "@ethereumjs/common@^3.1.1": - version "3.1.1" - resolved "https://registry.npmjs.org/@ethereumjs/common/-/common-3.1.1.tgz" - integrity sha512-iEl4gQtcrj2udNhEizs04z7WA15ez1QoXL0XzaCyaNgwRyXezIg1DnfNeZUUpJnkrOF/0rYXyq2UFSLxt1NPQg== +"@ethereumjs/common@^4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-4.2.0.tgz#c5ccaeb71f5a9833c66ab35c22f9f965ce462ace" + integrity sha512-UWqovZQksxEY9cU+s1cF3JwFyJdKrJsURM+ORHpZZLQfsqQf+1uGbD3N0AvQ7M+Jz/LxkiVY98+Cd3OMzsrOcA== dependencies: - "@ethereumjs/util" "^8.0.5" - crc-32 "^1.2.0" + "@ethereumjs/util" "^9.0.2" -"@ethereumjs/ethash@^2.0.4": - version "2.0.4" - resolved "https://registry.npmjs.org/@ethereumjs/ethash/-/ethash-2.0.4.tgz" - integrity sha512-WREZZEZKh8baGbG4IwLXvjA+ItFWzD/myUnefKALuAcB9+um93e1YBaeSQzeyY6m5jiDmpxu55SxF0mB8e+xdQ== +"@ethereumjs/ethash@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-3.0.2.tgz#2828ec7959a0b64e474c7d7c325e7074a85ae3a2" + integrity sha512-iJEH63xudwzSYxYb81RX2Mf2+Wkuu6P7ism29wpM7fxQE+pcI9S6V65CaITprH98SAZjuMrZU6ZGHDGbqolSkg== dependencies: - "@ethereumjs/block" "^4.2.1" - "@ethereumjs/rlp" "^4.0.1" - "@ethereumjs/util" "^8.0.5" - abstract-level "^1.0.3" - bigint-crypto-utils "^3.0.23" - ethereum-cryptography "^1.1.2" + "@ethereumjs/block" "^5.1.1" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/util" "^9.0.2" + bigint-crypto-utils "^3.2.2" + ethereum-cryptography "^2.1.3" -"@ethereumjs/evm@^1.3.0", "@ethereumjs/evm@^1.3.1": - version "1.3.1" - resolved "https://registry.npmjs.org/@ethereumjs/evm/-/evm-1.3.1.tgz" - integrity sha512-FDrM5aX1gGfkvh3L84wVL/67Rw8HCO3ErqSrmOdeFU0XY7+hX1/Kh2TnmCVkKvlyEhzax82ySoiAWgO/eMdTAA== - dependencies: - "@ethereumjs/common" "^3.1.1" - "@ethereumjs/tx" "^4.1.1" - "@ethereumjs/util" "^8.0.5" - "@ethersproject/providers" "^5.7.1" +"@ethereumjs/evm@^2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/evm/-/evm-2.2.1.tgz#07dd48152bb19277980b295a149b0936d2ff67b3" + integrity sha512-equF3QqssDgfZyVDEoMqJUsMCjO9SwgFdpUTc7yHFOU74X43l/MHM+Cqdey+wcBhdU2yOwD9S2AbW6wh7tDYfQ== + dependencies: + "@ethereumjs/common" "^4.2.0" + "@ethereumjs/statemanager" "^2.2.2" + "@ethereumjs/tx" "^5.2.1" + "@ethereumjs/util" "^9.0.2" + "@types/debug" "^4.1.9" debug "^4.3.3" - ethereum-cryptography "^1.1.2" - mcl-wasm "^0.7.1" - rustbn.js "~0.2.0" + ethereum-cryptography "^2.1.3" + rustbn-wasm "^0.2.0" -"@ethereumjs/rlp@^4.0.1": - version "4.0.1" - resolved "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz" - integrity sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw== +"@ethereumjs/rlp@5.0.2", "@ethereumjs/rlp@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-5.0.2.tgz#c89bd82f2f3bec248ab2d517ae25f5bbc4aac842" + integrity sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA== -"@ethereumjs/statemanager@^1.0.3", "@ethereumjs/statemanager@^1.0.4": - version "1.0.4" - resolved "https://registry.npmjs.org/@ethereumjs/statemanager/-/statemanager-1.0.4.tgz" - integrity sha512-+dNZGqOUXlA+ifkSlz6AvEF/PCRZD7vqKcruoyGtaxOQ0gdfvL/lDiuzV07fECjrqPAEDnQwcO4CTGv+On/0wA== - dependencies: - "@ethereumjs/common" "^3.1.1" - "@ethereumjs/rlp" "^4.0.1" +"@ethereumjs/statemanager@^2.2.2": + version "2.2.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/statemanager/-/statemanager-2.2.2.tgz#be98443380d6b4c91a71d197beafc9ceb9228cf6" + integrity sha512-4CxZgsL0M3hePXEQjrvXasGrGxGNMhURWb6i0UPCynPogR9PT7AD1pq80IYJ5vSd5PvIqvw7BtqSOgJGdQrBHw== + dependencies: + "@ethereumjs/common" "^4.2.0" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/trie" "^6.1.1" + "@ethereumjs/util" "^9.0.2" + "@ethereumjs/verkle" "^0.0.1" debug "^4.3.3" - ethereum-cryptography "^1.1.2" - ethers "^5.7.1" + ethereum-cryptography "^2.1.3" js-sdsl "^4.1.4" + lru-cache "^10.0.0" -"@ethereumjs/trie@^5.0.4": - version "5.0.4" - resolved "https://registry.npmjs.org/@ethereumjs/trie/-/trie-5.0.4.tgz" - integrity sha512-ycYtAF7BJAu9eaCtrEX+efE5xEQEfItRXXHBcTSMHsF7NfLHcniI0S7KUVYXbJ6imczBmnMHeggCqv8PYQbbOw== +"@ethereumjs/trie@^6.1.1": + version "6.1.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/trie/-/trie-6.1.1.tgz#c37f61e44c6b38bb59acfa002609e05ba10e18e8" + integrity sha512-FwHnyUok4cDTueOfIarE4n0QJs3mFjSnSENMgsd07HzL5oEuxal3aN51MBP392czj5mordNCim1YVP4oE14I3A== dependencies: - "@ethereumjs/rlp" "^4.0.1" - "@ethereumjs/util" "^8.0.5" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/util" "^9.0.2" "@types/readable-stream" "^2.3.13" - ethereum-cryptography "^1.1.2" + debug "^4.3.4" + ethereum-cryptography "^2.1.3" + lru-cache "^10.0.0" readable-stream "^3.6.0" -"@ethereumjs/tx@^4.1.0", "@ethereumjs/tx@^4.1.1": - version "4.1.1" - resolved "https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.1.1.tgz" - integrity sha512-QDj7nuROfoeyK83RObMA0XCZ+LUDdneNkSCIekO498uEKTY25FxI4Whduc/6j0wdd4IqpQvkq+/7vxSULjGIBQ== - dependencies: - "@chainsafe/ssz" "0.9.4" - "@ethereumjs/common" "^3.1.1" - "@ethereumjs/rlp" "^4.0.1" - "@ethereumjs/util" "^8.0.5" - "@ethersproject/providers" "^5.7.2" - ethereum-cryptography "^1.1.2" - -"@ethereumjs/util@^8.0.4", "@ethereumjs/util@^8.0.5": - version "8.0.5" - resolved "https://registry.npmjs.org/@ethereumjs/util/-/util-8.0.5.tgz" - integrity sha512-259rXKK3b3D8HRVdRmlOEi6QFvwxdt304hhrEAmpZhsj7ufXEOTIc9JRZPMnXatKjECokdLNBcDOFBeBSzAIaw== - dependencies: - "@chainsafe/ssz" "0.9.4" - "@ethereumjs/rlp" "^4.0.1" - ethereum-cryptography "^1.1.2" - -"@ethereumjs/vm@^6.4.0": - version "6.4.1" - resolved "https://registry.npmjs.org/@ethereumjs/vm/-/vm-6.4.1.tgz" - integrity sha512-obImG7Bcoxr8DAneqOprqLH4A0eMkMPuzdioSP7wK31YD+gI6q4Xm/2f4RUr1iBx8o2OpljfXNDJrdYvS/tc9g== - dependencies: - "@ethereumjs/block" "^4.2.1" - "@ethereumjs/blockchain" "^6.2.1" - "@ethereumjs/common" "^3.1.1" - "@ethereumjs/evm" "^1.3.1" - "@ethereumjs/rlp" "^4.0.1" - "@ethereumjs/statemanager" "^1.0.4" - "@ethereumjs/trie" "^5.0.4" - "@ethereumjs/tx" "^4.1.1" - "@ethereumjs/util" "^8.0.5" +"@ethereumjs/tx@^5.2.1": + version "5.2.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-5.2.1.tgz#c9965374eafebd3421bdd23b4f23f402e9a41037" + integrity sha512-BzdtUaa7KtP8T5NxJWRxo/RBoJzxYeCdx2n2C4zZLuWJBYVccfcyMiyDgr6W78Utmu/jIfGXknfh2t06+rTkiw== + dependencies: + "@ethereumjs/common" "^4.2.0" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/util" "^9.0.2" + ethereum-cryptography "^2.1.3" + +"@ethereumjs/util@9.0.2", "@ethereumjs/util@^9.0.2": + version "9.0.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-9.0.2.tgz#2719337cd43d70941491c41e3367d7b87078f847" + integrity sha512-dasKCj6Vb5spVPnNmRDFHmbfBySvokE440F0RDroPLzO4Mb4hyDqeoOMUxlbLz/BscK2pOpWUendGA+AOvGpNQ== + dependencies: + "@ethereumjs/rlp" "^5.0.2" + ethereum-cryptography "^2.1.3" + +"@ethereumjs/verkle@^0.0.1": + version "0.0.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/verkle/-/verkle-0.0.1.tgz#72bb67ee3c3f2587be04ed3960cc9838d22dcaf7" + integrity sha512-w1FXJV8t+1yAbSR5n9kpuS6tN4+XXyptWYdSKFdHNQAt9Ie2H5leaEL2ufClA6B6KxaF8FMyMe/VhHn8xdw+uQ== + dependencies: + "@ethereumjs/rlp" "5.0.2" + "@ethereumjs/util" "9.0.2" + lru-cache "^10.0.0" + rust-verkle-wasm "^0.0.1" + +"@ethereumjs/vm@^7.2.1": + version "7.2.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-7.2.1.tgz#c53610a8c327aabfdd0a5dedfe32eb3aebb17665" + integrity sha512-exmyhDPlfiBtV/nIPY7gE5iu3QC62F7hf/fALLgQaUS8ezxmJQG2MRaFI1eqYwvsAhfNBfst7K6KcCE4jbGbhw== + dependencies: + "@ethereumjs/block" "^5.1.1" + "@ethereumjs/blockchain" "^7.1.0" + "@ethereumjs/common" "^4.2.0" + "@ethereumjs/evm" "^2.2.1" + "@ethereumjs/rlp" "^5.0.2" + "@ethereumjs/statemanager" "^2.2.2" + "@ethereumjs/trie" "^6.1.1" + "@ethereumjs/tx" "^5.2.1" + "@ethereumjs/util" "^9.0.2" debug "^4.3.3" - ethereum-cryptography "^1.1.2" - mcl-wasm "^0.7.1" - rustbn.js "~0.2.0" - -"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz" - integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== - dependencies: - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz" - integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/networks" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/web" "^5.7.0" - -"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz" - integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== - dependencies: - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - -"@ethersproject/address@5.7.0", "@ethersproject/address@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz" - integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/rlp" "^5.7.0" - -"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz" - integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== - dependencies: - "@ethersproject/bytes" "^5.7.0" - -"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz" - integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - -"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz" - integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - bn.js "^5.2.1" - -"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz" - integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== - dependencies: - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz" - integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - -"@ethersproject/contracts@5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz" - integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== - dependencies: - "@ethersproject/abi" "^5.7.0" - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - -"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz" - integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== - dependencies: - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/base64" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz" - integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== - dependencies: - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/basex" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/pbkdf2" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - "@ethersproject/signing-key" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/wordlists" "^5.7.0" - -"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz" - integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== - dependencies: - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/hdnode" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/pbkdf2" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/random" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - aes-js "3.0.0" - scrypt-js "3.0.1" - -"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz" - integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== - dependencies: - "@ethersproject/bytes" "^5.7.0" - js-sha3 "0.8.0" - -"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz" - integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== - -"@ethersproject/networks@5.7.1", "@ethersproject/networks@^5.7.0": - version "5.7.1" - resolved "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz" - integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== - dependencies: - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz" - integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - -"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz" - integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== - dependencies: - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/providers@5.7.2", "@ethersproject/providers@^5.7.1", "@ethersproject/providers@^5.7.2": - version "5.7.2" - resolved "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz" - integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== - dependencies: - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/base64" "^5.7.0" - "@ethersproject/basex" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/networks" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/random" "^5.7.0" - "@ethersproject/rlp" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/web" "^5.7.0" - bech32 "1.1.4" - ws "7.4.6" - -"@ethersproject/random@5.7.0", "@ethersproject/random@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz" - integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz" - integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz" - integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - hash.js "1.1.7" - -"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz" - integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - bn.js "^5.2.1" - elliptic "6.5.4" - hash.js "1.1.7" - -"@ethersproject/solidity@5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz" - integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz" - integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz" - integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== - dependencies: - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/rlp" "^5.7.0" - "@ethersproject/signing-key" "^5.7.0" - -"@ethersproject/units@5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz" - integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/wallet@5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz" - integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== - dependencies: - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/hdnode" "^5.7.0" - "@ethersproject/json-wallets" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/random" "^5.7.0" - "@ethersproject/signing-key" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/wordlists" "^5.7.0" - -"@ethersproject/web@5.7.1", "@ethersproject/web@^5.7.0": - version "5.7.1" - resolved "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz" - integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== - dependencies: - "@ethersproject/base64" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.7.0": - version "5.7.0" - resolved "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz" - integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" + ethereum-cryptography "^2.1.3" "@goto-bus-stop/common-shake@^2.3.0": version "2.4.0" @@ -1805,15 +1446,17 @@ resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.0.tgz#d27e7e76c87a460a4da99c5bfdb1618dcd6cd064" integrity sha512-aBvcbMwuanDH4EMrL2TthNJy+4nP59Bimn8egqv6GHMVj0a44cU6Au4PjOhLNqEh9l+IpRGBqMTzec94UdC5xg== -"@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz" - integrity sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ== +"@noble/curves@1.3.0", "@noble/curves@~1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.3.0.tgz#01be46da4fd195822dab821e72f71bf4aeec635e" + integrity sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA== + dependencies: + "@noble/hashes" "1.3.3" -"@noble/secp256k1@1.7.1", "@noble/secp256k1@~1.7.0": - version "1.7.1" - resolved "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz" - integrity sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw== +"@noble/hashes@1.3.3", "@noble/hashes@~1.3.2": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.3.tgz#39908da56a4adc270147bb07968bf3b16cfe1699" + integrity sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -1863,27 +1506,27 @@ resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz#8be36a1f66f3265389e90b5f9c9962146758f728" integrity sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg== -"@scure/base@~1.1.0": - version "1.1.1" - resolved "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz" - integrity sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA== - -"@scure/bip32@1.1.5": +"@scure/base@^1.1.1", "@scure/base@~1.1.4": version "1.1.5" - resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz" - integrity sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw== + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.5.tgz#1d85d17269fe97694b9c592552dd9e5e33552157" + integrity sha512-Brj9FiG2W1MRQSTB212YVPRrcbjkv48FoZi/u4l/zds/ieRrqsh7aUf6CLwkAq61oKXr/ZlTzlY66gLIj3TFTQ== + +"@scure/bip32@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.3.3.tgz#a9624991dc8767087c57999a5d79488f48eae6c8" + integrity sha512-LJaN3HwRbfQK0X1xFSi0Q9amqOgzQnnDngIt+ZlsBC3Bm7/nE7K0kwshZHyaru79yIVRv/e1mQAjZyuZG6jOFQ== dependencies: - "@noble/hashes" "~1.2.0" - "@noble/secp256k1" "~1.7.0" - "@scure/base" "~1.1.0" + "@noble/curves" "~1.3.0" + "@noble/hashes" "~1.3.2" + "@scure/base" "~1.1.4" -"@scure/bip39@1.1.1": - version "1.1.1" - resolved "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz" - integrity sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg== +"@scure/bip39@1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.2.2.tgz#f3426813f4ced11a47489cbcf7294aa963966527" + integrity sha512-HYf9TUXG80beW+hGAt3TRM8wU6pQoYur9iNypTROm42dorCGmLnFe3eWjz3gOq6G62H2WRh0FCzAR1PI+29zIA== dependencies: - "@noble/hashes" "~1.2.0" - "@scure/base" "~1.1.0" + "@noble/hashes" "~1.3.2" + "@scure/base" "~1.1.4" "@swc/core-android-arm-eabi@1.3.1": version "1.3.1" @@ -2019,6 +1662,13 @@ dependencies: "@types/ms" "*" +"@types/debug@^4.1.9": + version "4.1.12" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" + integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== + dependencies: + "@types/ms" "*" + "@types/eslint-scope@^3.7.3": version "3.7.4" resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz" @@ -2468,18 +2118,12 @@ JSONStream@^1.0.3, JSONStream@^1.3.2: jsonparse "^1.2.0" through ">=2.2.7 <3" -abstract-level@^1.0.0, abstract-level@^1.0.2, abstract-level@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/abstract-level/-/abstract-level-1.0.3.tgz" - integrity sha512-t6jv+xHy+VYwc4xqZMn2Pa9DjcdzvzZmQGRjTFc8spIbRGHgBrEKbPq+rYXc7CCo0lxgYvSgKVg9qZAhpVQSjA== +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== dependencies: - buffer "^6.0.3" - catering "^2.1.0" - is-buffer "^2.0.5" - level-supports "^4.0.0" - level-transcoder "^1.0.1" - module-error "^1.0.1" - queue-microtask "^1.2.3" + event-target-shim "^5.0.0" acorn-import-assertions@^1.7.6: version "1.8.0" @@ -2529,11 +2173,6 @@ acorn@^8.5.0, acorn@^8.7.1: resolved "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz" integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== -aes-js@3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz" - integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== - ajv-formats@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" @@ -2975,27 +2614,15 @@ base64-js@^1.3.1: resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -bech32@1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz" - integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== - big.js@^5.2.2: version "5.2.2" resolved "https://package-cluster.production.groovehq.com/big.js/-/big.js-5.2.2.tgz" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== -bigint-crypto-utils@^3.0.23: - version "3.1.6" - resolved "https://registry.npmjs.org/bigint-crypto-utils/-/bigint-crypto-utils-3.1.6.tgz" - integrity sha512-k5ljSLHx94jQTW3+18KEfxLJR8/XFBHqhfhEGF48qT8p/jL6EdiG7oNOiiIRGMFh2wEP8kaCXZbVd+5dYkngUg== - dependencies: - bigint-mod-arith "^3.1.0" - -bigint-mod-arith@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/bigint-mod-arith/-/bigint-mod-arith-3.1.1.tgz" - integrity sha512-SzFqdncZKXq5uh3oLFZXmzaZEMDsA7ml9l53xKaVGO6/+y26xNwAaTQEg2R+D+d07YduLbKi0dni3YPsR51UDQ== +bigint-crypto-utils@^3.2.2: + version "3.3.0" + resolved "https://registry.yarnpkg.com/bigint-crypto-utils/-/bigint-crypto-utils-3.3.0.tgz#72ad00ae91062cf07f2b1def9594006c279c1d77" + integrity sha512-jOTSb+drvEDxEq6OuUybOAv/xxoh3cuYRUIPyu8sSHQNKM303UQ2R1DAo45o1AkcIXw6fzbaFI1+xGGdaXs2lg== binary-extensions@^2.0.0: version "2.2.0" @@ -3017,7 +2644,7 @@ bn.js@^5.1.2: resolved "https://package-cluster.production.groovehq.com/bn.js/-/bn.js-5.2.0.tgz" integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== -bn.js@^5.2.0, bn.js@^5.2.1: +bn.js@^5.2.0: version "5.2.1" resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== @@ -3042,16 +2669,6 @@ brorand@^1.1.0: resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz" integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== -browser-level@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/browser-level/-/browser-level-1.0.1.tgz" - integrity sha512-XECYKJ+Dbzw0lbydyQuJzwNXtOpbMSq737qxJN11sIRTErOMShvDpbzTlgju7orJKvx4epULolZAuJGLzCmWRQ== - dependencies: - abstract-level "^1.0.2" - catering "^2.1.1" - module-error "^1.0.2" - run-parallel-limit "^1.1.0" - browser-pack-flat@^3.0.9: version "3.5.0" resolved "https://registry.npmjs.org/browser-pack-flat/-/browser-pack-flat-3.5.0.tgz" @@ -3186,19 +2803,9 @@ camelcase-css@2.0.1, camelcase-css@^2.0.1: integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== caniuse-lite@^1.0.30001283, caniuse-lite@^1.0.30001335, caniuse-lite@^1.0.30001400: - version "1.0.30001478" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001478.tgz" - integrity sha512-gMhDyXGItTHipJj2ApIvR+iVB5hd0KP3svMWWXDvZOmjzJJassGLMfxRkQCSYgGd2gtdL/ReeiyvMSFD1Ss6Mw== - -case@^1.6.3: - version "1.6.3" - resolved "https://registry.npmjs.org/case/-/case-1.6.3.tgz" - integrity sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ== - -catering@^2.1.0, catering@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz" - integrity sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w== + version "1.0.30001597" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz" + integrity sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w== ccount@^1.0.0: version "1.1.0" @@ -3301,17 +2908,6 @@ cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: inherits "^2.0.1" safe-buffer "^5.0.1" -classic-level@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/classic-level/-/classic-level-1.2.0.tgz" - integrity sha512-qw5B31ANxSluWz9xBzklRWTUAJ1SXIdaVKTVS7HcTGKOAmExx65Wo5BUICW+YGORe2FOUaDghoI9ZDxj82QcFg== - dependencies: - abstract-level "^1.0.2" - catering "^2.1.0" - module-error "^1.0.1" - napi-macros "~2.0.0" - node-gyp-build "^4.3.0" - classnames@^2.3.1: version "2.3.1" resolved "https://package-cluster.production.groovehq.com/classnames/-/classnames-2.3.1.tgz" @@ -3468,11 +3064,6 @@ count-lines@^0.1.2: resolved "https://registry.npmjs.org/count-lines/-/count-lines-0.1.2.tgz" integrity sha512-YS8P4UYXX/hrDyLU3r/A5OcCNwdNbJFJckbe8j+x2Jhxsr2J4/rYl0sDwOljLZL7Uxc4s7mRSNcQD8dSjobz+g== -crc-32@^1.2.0: - version "1.2.2" - resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz" - integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== - create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz" @@ -3691,7 +3282,7 @@ electron-to-chromium@^1.4.251: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.253.tgz" integrity sha512-1pezJ2E1UyBTGbA7fUlHdPSXQw1k+82VhTFLG5G0AUqLGvsZqFzleOblceqegZzxYX4kC7hGEEdzIQI9RZ1Cuw== -elliptic@6.5.4, elliptic@^6.5.2, elliptic@^6.5.4: +elliptic@^6.5.2, elliptic@^6.5.4: version "6.5.4" resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz" integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== @@ -4345,15 +3936,15 @@ ethereum-cryptography@^0.1.3: secp256k1 "^4.0.1" setimmediate "^1.0.5" -ethereum-cryptography@^1.1.2: - version "1.2.0" - resolved "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz" - integrity sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw== +ethereum-cryptography@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.1.3.tgz#1352270ed3b339fe25af5ceeadcf1b9c8e30768a" + integrity sha512-BlwbIL7/P45W8FGW2r7LGuvoEZ+7PWsniMvQ4p5s2xCyw9tmaDlpfsN9HjAucbF+t/qpVHwZUisgfK24TCW8aA== dependencies: - "@noble/hashes" "1.2.0" - "@noble/secp256k1" "1.7.1" - "@scure/bip32" "1.1.5" - "@scure/bip39" "1.1.1" + "@noble/curves" "1.3.0" + "@noble/hashes" "1.3.3" + "@scure/bip32" "1.3.3" + "@scure/bip39" "1.2.2" ethereumjs-abi@^0.6.8: version "0.6.8" @@ -4387,42 +3978,6 @@ ethereumjs-util@^7.1.5: ethereum-cryptography "^0.1.3" rlp "^2.2.4" -ethers@^5.7.1: - version "5.7.2" - resolved "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz" - integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== - dependencies: - "@ethersproject/abi" "5.7.0" - "@ethersproject/abstract-provider" "5.7.0" - "@ethersproject/abstract-signer" "5.7.0" - "@ethersproject/address" "5.7.0" - "@ethersproject/base64" "5.7.0" - "@ethersproject/basex" "5.7.0" - "@ethersproject/bignumber" "5.7.0" - "@ethersproject/bytes" "5.7.0" - "@ethersproject/constants" "5.7.0" - "@ethersproject/contracts" "5.7.0" - "@ethersproject/hash" "5.7.0" - "@ethersproject/hdnode" "5.7.0" - "@ethersproject/json-wallets" "5.7.0" - "@ethersproject/keccak256" "5.7.0" - "@ethersproject/logger" "5.7.0" - "@ethersproject/networks" "5.7.1" - "@ethersproject/pbkdf2" "5.7.0" - "@ethersproject/properties" "5.7.0" - "@ethersproject/providers" "5.7.2" - "@ethersproject/random" "5.7.0" - "@ethersproject/rlp" "5.7.0" - "@ethersproject/sha2" "5.7.0" - "@ethersproject/signing-key" "5.7.0" - "@ethersproject/solidity" "5.7.0" - "@ethersproject/strings" "5.7.0" - "@ethersproject/transactions" "5.7.0" - "@ethersproject/units" "5.7.0" - "@ethersproject/wallet" "5.7.0" - "@ethersproject/web" "5.7.1" - "@ethersproject/wordlists" "5.7.0" - ethjs-util@0.1.6: version "0.1.6" resolved "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz" @@ -4439,6 +3994,11 @@ event-emitter@^0.3.5, event-emitter@~0.3.5: d "1" es5-ext "~0.10.14" +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + events@^3.2.0, events@^3.3.0: version "3.3.0" resolved "https://registry.npmjs.org/events/-/events-3.3.0.tgz" @@ -4918,7 +4478,7 @@ hash-base@^3.0.0: readable-stream "^3.6.0" safe-buffer "^5.2.0" -hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: +hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: version "1.1.7" resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz" integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== @@ -5204,7 +4764,7 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-buffer@^2.0.0, is-buffer@^2.0.5: +is-buffer@^2.0.0: version "2.0.5" resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== @@ -5457,11 +5017,6 @@ js-sdsl@^4.1.4: resolved "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz" integrity sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q== -js-sha3@0.8.0: - version "0.8.0" - resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz" - integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://package-cluster.production.groovehq.com/js-tokens/-/js-tokens-4.0.0.tgz" @@ -5576,27 +5131,6 @@ language-tags@^1.0.5: dependencies: language-subtag-registry "~0.3.2" -level-supports@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/level-supports/-/level-supports-4.0.1.tgz" - integrity sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA== - -level-transcoder@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/level-transcoder/-/level-transcoder-1.0.1.tgz" - integrity sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w== - dependencies: - buffer "^6.0.3" - module-error "^1.0.1" - -level@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/level/-/level-8.0.0.tgz" - integrity sha512-ypf0jjAk2BWI33yzEaaotpq7fkOPALKAgDBxggO6Q9HGX2MRXn0wbP1Jn/tJv1gtL867+YOjOB49WaUF3UoJNQ== - dependencies: - browser-level "^1.0.1" - classic-level "^1.2.0" - levn@^0.4.1: version "0.4.1" resolved "https://package-cluster.production.groovehq.com/levn/-/levn-0.4.1.tgz" @@ -5693,12 +5227,10 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" +lru-cache@^10.0.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" + integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== lru-cache@^6.0.0: version "6.0.0" @@ -5739,11 +5271,6 @@ match-sorter@^6.3.0: "@babel/runtime" "^7.12.5" remove-accents "0.4.2" -mcl-wasm@^0.7.1: - version "0.7.9" - resolved "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz" - integrity sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ== - md5.js@^1.3.4: version "1.3.5" resolved "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz" @@ -5912,15 +5439,6 @@ memoize-one@^5.0.0: resolved "https://package-cluster.production.groovehq.com/memoize-one/-/memoize-one-5.2.1.tgz" integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q== -memory-level@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/memory-level/-/memory-level-1.0.0.tgz" - integrity sha512-UXzwewuWeHBz5krr7EvehKcmLFNoXxGcvuYhC41tRnkrTbJohtS7kVn9akmgirtRygg+f7Yjsfi8Uu5SGSQ4Og== - dependencies: - abstract-level "^1.0.0" - functional-red-black-tree "^1.0.1" - module-error "^1.0.1" - merge-source-map@1.0.4: version "1.0.4" resolved "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.0.4.tgz" @@ -6290,11 +5808,6 @@ minimist@^1.2.0, minimist@^1.2.6: resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== -module-error@^1.0.1, module-error@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/module-error/-/module-error-1.0.2.tgz" - integrity sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA== - mri@^1.1.0: version "1.2.0" resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz" @@ -6354,11 +5867,6 @@ nanoid@^3.3.4: resolved "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== -napi-macros@~2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz" - integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== - natural-compare@^1.4.0: version "1.4.0" resolved "https://package-cluster.production.groovehq.com/natural-compare/-/natural-compare-1.4.0.tgz" @@ -6430,7 +5938,7 @@ node-addon-api@^2.0.0: resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz" integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== -node-gyp-build@^4.2.0, node-gyp-build@^4.3.0: +node-gyp-build@^4.2.0: version "4.5.0" resolved "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz" integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg== @@ -6906,7 +6414,7 @@ punycode@^2.1.0: resolved "https://package-cluster.production.groovehq.com/punycode/-/punycode-2.1.1.tgz" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -queue-microtask@^1.2.2, queue-microtask@^1.2.3: +queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== @@ -7027,6 +6535,17 @@ readable-stream@^2.0.0, readable-stream@^2.2.2, readable-stream@~2.3.6: string_decoder "~1.1.1" util-deprecate "~1.0.1" +readable-stream@^4.5.2: + version "4.5.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.5.2.tgz#9e7fc4c45099baeed934bff6eb97ba6cf2729e09" + integrity sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g== + dependencies: + abort-controller "^3.0.0" + buffer "^6.0.3" + events "^3.3.0" + process "^0.11.10" + string_decoder "^1.3.0" + readdirp@~3.6.0: version "3.6.0" resolved "https://package-cluster.production.groovehq.com/readdirp/-/readdirp-3.6.0.tgz" @@ -7274,13 +6793,6 @@ rlp@^2.2.3, rlp@^2.2.4: dependencies: bn.js "^5.2.0" -run-parallel-limit@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/run-parallel-limit/-/run-parallel-limit-1.1.0.tgz" - integrity sha512-jJA7irRNM91jaKc3Hcl1npHsFLOXOoTkPCUL1JEa1R82O2miplXXRaGdjW/KM/98YQWDhJLiSs793CnXfblJUw== - dependencies: - queue-microtask "^1.2.2" - run-parallel@^1.1.9: version "1.2.0" resolved "https://package-cluster.production.groovehq.com/run-parallel/-/run-parallel-1.2.0.tgz" @@ -7288,10 +6800,17 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rustbn.js@~0.2.0: +rust-verkle-wasm@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/rust-verkle-wasm/-/rust-verkle-wasm-0.0.1.tgz#fd8396a7060d8ee8ea10da50ab6e862948095a74" + integrity sha512-BN6fiTsxcd2dCECz/cHtGTt9cdLJR925nh7iAuRcj8ymKw7OOaPmCneQZ7JePOJ/ia27TjEL91VdOi88Yf+mcA== + +rustbn-wasm@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz" - integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== + resolved "https://registry.yarnpkg.com/rustbn-wasm/-/rustbn-wasm-0.2.0.tgz#0407521fb55ae69eeb4968d01885d63efd1c4ff9" + integrity sha512-FThvYFNTqrEKGqXuseeg0zR7yROh/6U1617mCHF68OVqrN1tNKRN7Tdwy4WayPVsCmmK+eMxtIZX1qL6JxTkMg== + dependencies: + "@scure/base" "^1.1.1" sade@^1.7.3: version "1.8.1" @@ -7368,7 +6887,7 @@ scope-analyzer@^2.0.0: estree-is-function "^1.0.0" get-assigned-identifiers "^1.1.0" -scrypt-js@3.0.1, scrypt-js@^3.0.0: +scrypt-js@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz" integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== @@ -7654,7 +7173,7 @@ string.prototype.trimstart@^1.0.6: define-properties "^1.1.4" es-abstract "^1.20.4" -string_decoder@^1.1.1: +string_decoder@^1.1.1, string_decoder@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -8503,21 +8022,11 @@ wrappy@1: resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -ws@7.4.6: - version "7.4.6" - resolved "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz" - integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== - xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.1: version "4.0.2" resolved "https://package-cluster.production.groovehq.com/xtend/-/xtend-4.0.2.tgz" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - yallist@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"