diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..888d42d --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/forge-std"] + path = lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/README.md b/README.md index e64335e..2586659 100644 --- a/README.md +++ b/README.md @@ -191,3 +191,26 @@ The PureSuperTokenDeployer is a _factory_ contract that deploys, upgrades, and initializes the PureSuperToken in a single transaction. This makes it easy to deploy super tokens from a UI. --- + +## alternative-logic + +This directory contains modified versions of the actual SuperToken logic. +Unlike the other contracts, here the added/changed functionality isn't applied to the proxy itself, but to an alternative version of the SuperToken logic contract. +This allows existing SuperTokens to be upgraded to non-canonical SuperToken logic. + +### BridgedSuperToken + +Gives mint and burn permisson to a single account `BRIDGE_ADDR`. +Hands upgradability permission to a hardcoded account `UPGRADE_ADMIN`. + +Fork testing using FRACTION on Optimism: + +``` + ADMIN_ADDR=0x388e96dfe68b30892af93f30f5035602d8d51487 yarn test:fork:fraction-on-op +``` + +Deploy (to Optimism Goerli, using the deployer account as UPGRADE_ADMIN): + +``` +npx truffle exec --network opgoerli scripts/deploy-bridgedsupertoken.js +``` diff --git a/contracts/alternative-logic/BridgedSuperToken.sol b/contracts/alternative-logic/BridgedSuperToken.sol new file mode 100644 index 0000000..c9a57ee --- /dev/null +++ b/contracts/alternative-logic/BridgedSuperToken.sol @@ -0,0 +1,79 @@ +// SPDX-License-Identifier: MIT OR Apache-2.0 +pragma solidity ^0.8.0; + +import { SuperToken } from "@superfluid-finance/ethereum-contracts/contracts/superfluid/SuperToken.sol"; +import { SuperfluidToken } from "@superfluid-finance/ethereum-contracts/contracts/superfluid/SuperfluidToken.sol"; +import { ISuperfluid } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol"; +import { IConstantOutflowNFT } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT.sol"; +import { IConstantInflowNFT } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT.sol"; + +interface IMintBurn { + function mint(address to, uint256 amount) external; + function burn(address from, uint256 amount) external; +} + +/** + * This is a variant of the SuperToken logic with the following changes: + * - simple mint/burn interface which can be called only by a hardcoded BRIDGE_ADDR + * - update admin changes from host to a hardcoded UPGRADE_ADMIN + * + * This allows Pure SuperToken representations (deployments on other than the home chain) like MIVA and FRACTION + * to be used with the Connext bridge. + */ +contract BridgedSuperToken is SuperToken, IMintBurn { + // the account with upgrade permission. In order to change, upgrade to a logic with different value. + address public immutable UPGRADE_ADMIN; + + // the account with mint/burn permission. In order to change, upgrade to a logic with different value. + address public immutable BRIDGE_ADDR; + + error NO_PERMISSION(); + + constructor( + ISuperfluid host, + IConstantOutflowNFT constantOutflowNFT, + IConstantInflowNFT constantInflowNFT, + address upgradeAdmin, + address bridgeAddr + ) + SuperToken(host, constantOutflowNFT, constantInflowNFT) + { + UPGRADE_ADMIN = upgradeAdmin; + BRIDGE_ADDR = bridgeAddr; + } + + // TODO: shall we use mint/burn with or without hooks? If without, add events + + function burn(address from, uint256 amount) external override { + if (msg.sender != BRIDGE_ADDR) revert NO_PERMISSION(); + this.selfBurn(from, amount, new bytes(0)); + //SuperfluidToken._mint(from, amount); + } + + function mint(address to, uint256 amount) external { + if (msg.sender != BRIDGE_ADDR) revert NO_PERMISSION(); + this.selfMint(to, amount, new bytes(0)); + //SuperfluidToken._mint(to, amount); + } + + // Make the token self-sovereign + + /// IMPORTANT: this function needs to stay in sync with the canonical version of SuperToken + function updateCode(address newAddress) external override { + if (msg.sender != UPGRADE_ADMIN) revert NO_PERMISSION(); + // implementation in UUPSProxiable + _updateCodeAddress(newAddress); + + // @note This is another check to ensure that when updating to a new SuperToken logic contract + // that we have passed the correct NFT proxy contracts in the construction of the new SuperToken + // logic contract + if ( + CONSTANT_OUTFLOW_NFT != + SuperToken(newAddress).CONSTANT_OUTFLOW_NFT() || + CONSTANT_INFLOW_NFT != + SuperToken(newAddress).CONSTANT_INFLOW_NFT() + ) { + revert SUPER_TOKEN_NFT_PROXY_ADDRESS_CHANGED(); + } + } +} \ No newline at end of file diff --git a/foundry.toml b/foundry.toml new file mode 100644 index 0000000..306a3be --- /dev/null +++ b/foundry.toml @@ -0,0 +1,6 @@ +[profile.default] +# seems to have no effect (?) +src = 'contracts' +test = 'test/foundry/' +solc_version = "0.8.19" +out = 'build/foundry' diff --git a/lib/forge-std b/lib/forge-std new file mode 160000 index 0000000..74cfb77 --- /dev/null +++ b/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 74cfb77e308dd188d2f58864aaf44963ae6b88b1 diff --git a/package.json b/package.json index b35b931..f4a20e8 100644 --- a/package.json +++ b/package.json @@ -6,12 +6,15 @@ "scripts": { "build": "truffle compile --all", "test": "truffle test", + "test:fork": "scripts/run-test-foundry.sh", + "test:fork:fraction-on-op": "TOKEN=0xbd80cfa9d93a87d1bb895f810ea348e496611cd4 scripts/run-fork-test.sh optimism-mainnet BridgedSuperTokenForkTest", "prepare": "husky install" }, "dependencies": { "@openzeppelin/contracts": "^4.7.3", - "@superfluid-finance/ethereum-contracts": "^1.4.3", - "truffle-plugin-verify": "^0.6.0" + "@superfluid-finance/ethereum-contracts": "^1.7.1", + "@superfluid-finance/metadata": "^1.1.10", + "truffle-plugin-verify": "0.6.1" }, "devDependencies": { "@decentral.ee/web3-helpers": "^0.5.3", diff --git a/scripts/deploy-bridgedsupertoken.js b/scripts/deploy-bridgedsupertoken.js new file mode 100644 index 0000000..86033d3 --- /dev/null +++ b/scripts/deploy-bridgedsupertoken.js @@ -0,0 +1,95 @@ +const sfMeta = require("@superfluid-finance/metadata") + +const BridgedSuperToken = artifacts.require("BridgedSuperToken") + +const ISuperTokenFactoryArtifact = require("@superfluid-finance/ethereum-contracts/artifacts/contracts/interfaces/superfluid/ISuperTokenFactory.sol/ISuperTokenFactory") +const SuperTokenArtifact = require("@superfluid-finance/ethereum-contracts/artifacts/contracts/superfluid/SuperToken.sol/SuperToken") + +// see https://docs.connext.network/resources/deployments +const CONNEXT_ADDRS = { + // testnets + 5: "0xFCa08024A6D4bCc87275b1E4A1E22B71fAD7f649", // goerli + 80001: "0x2334937846Ab2A3FCE747b32587e1A1A2f6EEC5a", // mumbai + 420: "0x5Ea1bb242326044699C3d81341c5f535d5Af1504", // OP goerli + 421613: "0x2075c9E31f973bb53CAE5BAC36a8eeB4B082ADC2", // Arb goerli + 1442: "0x20b4789065DE09c71848b9A4FcAABB2c10006FA2", // zkEVM + + // mainnets + 1: "0x8898B472C54c31894e3B9bb83cEA802a5d0e63C6", + 10: "0x8f7492DE823025b4CfaAB1D34c58963F2af5DEDA", // OP + 137: "0x11984dc4465481512eb5b777E44061C158CF2259", // Matic + 42161: "0xEE9deC2712cCE65174B561151701Bf54b99C24C8", // Arbitrum + 56: "0xCd401c10afa37d641d2F594852DA94C700e4F2CE", // BSC + 100: "0x5bB83e95f63217CDa6aE3D181BA580Ef377D2109" // Gnosis +} + +/* + * Truffle script for deploying BridgedSuperToken + * optional env vars: + * - UPGRADE_ADMIN (default: deployer) + * - BRIDGE_ADDR (default: CONNEXT_ADDRS[chainId]) + * - HOST (default: taken from metadata) + * - FACTORY (default: taken from metadata) + */ +module.exports = async function (callback) { + try { + const deployer = (await web3.eth.getAccounts())[0] + console.log("deployer: ", deployer) + + const chainId = await web3.eth.getChainId() + + const upgradeAdmin = process.env.UPGRADE_ADMIN || deployer + const bridgeAddr = process.env.BRIDGE_ADDR || CONNEXT_ADDRS[chainId] + + if (bridgeAddr === undefined) { + throw new Error("no bridge address defined for chainId " + chainId) + } + + console.log("chainId: ", chainId) + + const network = sfMeta.getNetworkByChainId(chainId) + console.log("network: ", network.name) + + const hostAddr = process.env.HOST || network.contractsV1.host + const factoryAddr = + process.env.FACTORY || network.contractsV1.superTokenFactory + + const factory = new web3.eth.Contract( + ISuperTokenFactoryArtifact.abi, + factoryAddr + ) + + const curLogicAddr = await factory.methods.getSuperTokenLogic().call() + console.log("current logic: ", curLogicAddr) + + // Get addresses of COF and CIF NFTs - note that this is NOT the same as the addresses in the factory contract + // This point to the proxies while those in the factory point to the logic contracts + const currentSTLogic = new web3.eth.Contract( + SuperTokenArtifact.abi, + curLogicAddr + ) + const curCofNFTAddr = await currentSTLogic.methods + .CONSTANT_OUTFLOW_NFT() + .call() + const curCifNFTAddr = await currentSTLogic.methods + .CONSTANT_INFLOW_NFT() + .call() + + console.log("COF NFT: ", curCofNFTAddr) + console.log("CIF NFT: ", curCifNFTAddr) + + const newSTLogic = await BridgedSuperToken.new( + hostAddr, + curCofNFTAddr, + curCifNFTAddr, + upgradeAdmin, + bridgeAddr + ) + + console.log("Deployed BridgedSuperToken:", newSTLogic.address) + + callback() + } catch (error) { + callback(error) + } +} diff --git a/scripts/deploy.js b/scripts/deploy.js index 302ca16..2e06614 100644 --- a/scripts/deploy.js +++ b/scripts/deploy.js @@ -1,6 +1,6 @@ const { web3tx } = require("@decentral.ee/web3-helpers") const { setWeb3Provider } = require("@decentral.ee/web3-helpers/src/config") -const { factory: factoryAddrs } = require("./utils/constants") +const sfMeta = require("@superfluid-finance/metadata") /* * Truffle script for deploying a custom Super Token @@ -45,7 +45,11 @@ module.exports = async function (callback) { setWeb3Provider(web3.currentProvider) const chainId = await web3.eth.net.getId() - const factoryAddr = process.env.FACTORY || factoryAddrs[chainId] + + const network = sfMeta.getNetworkByChainId(chainId) + + const factoryAddr = + process.env.FACTORY || network.contractsV1.superTokenFactory if (factoryAddr === undefined) { throw "ERR: No SuperTokenFactory address provided of found for the connected chain" } diff --git a/scripts/run-fork-test.sh b/scripts/run-fork-test.sh new file mode 100755 index 0000000..944aa1b --- /dev/null +++ b/scripts/run-fork-test.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +# usage: run-fork-test.sh [ ...] + +set -eu + +network=$1 +testContract=$2 +shift 2 +extraArgs=$@ + +metadata=$(curl -s "https://raw.githubusercontent.com/superfluid-finance/protocol-monorepo/dev/packages/metadata/networks.json") + +# takes the network name as argument +function test_network() { + rpc=${RPC:-"https://${network}.rpc.x.superfluid.dev"} + + echo "=============== Testing $network... ===================" + + # get current metadata + + host=$(echo "$metadata" | jq -r '.[] | select(.name == "'$network'").contractsV1.host') + + # Print the host address + echo "Host: $host" + + set -x + RPC=$rpc HOST_ADDR=$host forge test --match-contract $testContract $extraArgs +} + +test_network \ No newline at end of file diff --git a/test/foundry-fork/BridgedSuperToken.t.sol b/test/foundry-fork/BridgedSuperToken.t.sol new file mode 100644 index 0000000..9778695 --- /dev/null +++ b/test/foundry-fork/BridgedSuperToken.t.sol @@ -0,0 +1,139 @@ +// SPDX-License-Identifier: MIT OR Apache-2.0 +pragma solidity 0.8.19; + +import "forge-std/Test.sol"; +// TODO: fix this path +import { IMintBurn, BridgedSuperToken } from "../../contracts/alternative-logic/BridgedSuperToken.sol"; +import { + ISuperfluid, + ISuperfluidGovernance, + ISuperToken, + ISuperfluidToken +} from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol"; +import { IConstantOutflowNFT } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT.sol"; +import { IConstantInflowNFT } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT.sol"; +import { UUPSProxiable } from "@superfluid-finance/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol"; +import { CFAv1Forwarder } from "@superfluid-finance/ethereum-contracts/contracts/utils/CFAv1Forwarder.sol"; + +contract BridgedSuperTokenTest is Test { + + address HOST_ADDR = vm.envAddress("HOST_ADDR"); + ISuperfluid host = ISuperfluid(HOST_ADDR); + address GOV_ADDR; + ISuperfluidGovernance gov; + address TOKEN = vm.envAddress("TOKEN"); + ISuperToken token = ISuperToken(TOKEN); + CFAv1Forwarder cfaFwd = CFAv1Forwarder(0xcfA132E353cB4E398080B9700609bb008eceB125); + address constant upgradeAdmin = address(0x420); + address constant bridgeAddr = address(0x421); + address constant alice = address(0x690); + address constant bob = address(0x691); + + constructor() { + string memory rpc = vm.envString("RPC"); + vm.createSelectFork(rpc); + console.log("token symbol: %s", token.symbol()); + + GOV_ADDR = address(host.getGovernance()); + gov = ISuperfluidGovernance(host.getGovernance()); + } + + // HELPERS + + function deployNewLogic() public returns(address) { + IConstantOutflowNFT cof = token.CONSTANT_OUTFLOW_NFT(); + IConstantInflowNFT cif = token.CONSTANT_INFLOW_NFT(); + BridgedSuperToken newLogic = new BridgedSuperToken( + ISuperfluid(HOST_ADDR), + cof, + cif, + upgradeAdmin, + bridgeAddr + ); + console.log("new logic deployed to %s", address(newLogic)); + return address(newLogic); + } + + function smokeTestSuperToken(address superTokenAddr) public { + ISuperToken superToken = ISuperToken(superTokenAddr); + + vm.startPrank(alice); + deal(address(superTokenAddr), alice, uint256(100e18)); + + uint256 initBal = superToken.balanceOf(address(this)); + + // start a stream using the forwarder + cfaFwd.setFlowrate(superToken, address(this), 1e9); + skip(1000); + assertEq(superToken.balanceOf(address(this)), initBal + 1e9 * 1000); + + // stop the stream + cfaFwd.setFlowrate(superToken, address(this), 0); + skip(1000); + assertEq(superToken.balanceOf(address(this)), initBal + 1e9 * 1000); // no change + + vm.stopPrank(); + } + + // TESTS + + function testUpgrade() public { + address newLogic = deployNewLogic(); + + vm.startPrank(HOST_ADDR); + UUPSProxiable(address(token)).updateCode(newLogic); + vm.stopPrank(); + + smokeTestSuperToken(TOKEN); + + address newLogic2 = deployNewLogic(); + vm.startPrank(HOST_ADDR); + // the token is now self-sovereign + vm.expectRevert(BridgedSuperToken.NO_PERMISSION.selector); + UUPSProxiable(address(token)).updateCode(newLogic2); + vm.stopPrank(); + + vm.startPrank(upgradeAdmin); + UUPSProxiable(address(token)).updateCode(newLogic2); + vm.stopPrank(); + + smokeTestSuperToken(TOKEN); + } + + function testMintBurn() public { + // upgrade + address newLogic = deployNewLogic(); + vm.startPrank(HOST_ADDR); + UUPSProxiable(address(token)).updateCode(newLogic); + vm.stopPrank(); + + // only the bridge can mint/burn + vm.startPrank(alice); + vm.expectRevert(BridgedSuperToken.NO_PERMISSION.selector); + IMintBurn(TOKEN).mint(bob, 42e18); + vm.expectRevert(BridgedSuperToken.NO_PERMISSION.selector); + IMintBurn(TOKEN).burn(bob, 42e18); + vm.stopPrank(); + + // the bridge giveth + vm.startPrank(bridgeAddr); + IMintBurn(TOKEN).mint(bob, 42e18); + assertEq(token.balanceOf(bob), 42e18); + + vm.startPrank(bridgeAddr); + IMintBurn(TOKEN).mint(bob, 2e18); + assertEq(token.balanceOf(bob), 44e18); + + // ... and the bridge taketh away + IMintBurn(TOKEN).burn(bob, 43e18); + assertEq(token.balanceOf(bob), 1e18); + + IMintBurn(TOKEN).burn(bob, 1e18); + assertEq(token.balanceOf(bob), 0); + + // but nomore than there is to take + vm.expectRevert(ISuperfluidToken.SF_TOKEN_BURN_INSUFFICIENT_BALANCE.selector); + IMintBurn(TOKEN).burn(bob, 1e18); + vm.stopPrank(); + } +} \ No newline at end of file diff --git a/test/foundry/BridgedSuperToken.fork.t.sol b/test/foundry/BridgedSuperToken.fork.t.sol new file mode 100644 index 0000000..906488b --- /dev/null +++ b/test/foundry/BridgedSuperToken.fork.t.sol @@ -0,0 +1,141 @@ +// SPDX-License-Identifier: MIT OR Apache-2.0 +pragma solidity 0.8.19; + +import "forge-std/Test.sol"; +// TODO: fix this path +import { IMintBurn, BridgedSuperToken } from "../../contracts/alternative-logic/BridgedSuperToken.sol"; +import { + ISuperfluid, + ISuperfluidGovernance, + ISuperToken, + ISuperfluidToken +} from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/ISuperfluid.sol"; +import { IConstantOutflowNFT } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantOutflowNFT.sol"; +import { IConstantInflowNFT } from "@superfluid-finance/ethereum-contracts/contracts/interfaces/superfluid/IConstantInflowNFT.sol"; +import { UUPSProxiable } from "@superfluid-finance/ethereum-contracts/contracts/upgradability/UUPSProxiable.sol"; +import { CFAv1Forwarder } from "@superfluid-finance/ethereum-contracts/contracts/utils/CFAv1Forwarder.sol"; + +contract BridgedSuperTokenForkTest is Test { + + address HOST_ADDR = vm.envAddress("HOST_ADDR"); + address ADMIN_ADDR = vm.envAddress("ADMIN_ADDR"); // token admin (overrides host) + ISuperfluid host = ISuperfluid(HOST_ADDR); + address GOV_ADDR; + ISuperfluidGovernance gov; + address TOKEN = vm.envAddress("TOKEN"); + ISuperToken token = ISuperToken(TOKEN); + CFAv1Forwarder cfaFwd = CFAv1Forwarder(0xcfA132E353cB4E398080B9700609bb008eceB125); + address constant upgradeAdmin = address(0x420); + address constant bridgeAddr = address(0x421); + address constant alice = address(0x690); + address constant bob = address(0x691); + + constructor() { + string memory rpc = vm.envString("RPC"); + vm.createSelectFork(rpc); + console.log("token symbol: %s", token.symbol()); + + GOV_ADDR = address(host.getGovernance()); + gov = ISuperfluidGovernance(host.getGovernance()); + ADMIN_ADDR = ADMIN_ADDR == address(0) ? HOST_ADDR : ADMIN_ADDR; + } + + // HELPERS + + function deployNewLogic() public returns(address) { + IConstantOutflowNFT cof = token.CONSTANT_OUTFLOW_NFT(); + IConstantInflowNFT cif = token.CONSTANT_INFLOW_NFT(); + BridgedSuperToken newLogic = new BridgedSuperToken( + ISuperfluid(HOST_ADDR), + cof, + cif, + upgradeAdmin, + bridgeAddr + ); + console.log("new logic deployed to %s", address(newLogic)); + return address(newLogic); + } + + function smokeTestSuperToken(address superTokenAddr) public { + ISuperToken superToken = ISuperToken(superTokenAddr); + + vm.startPrank(alice); + deal(address(superTokenAddr), alice, uint256(100e18)); + + uint256 initBal = superToken.balanceOf(address(this)); + + // start a stream using the forwarder + cfaFwd.setFlowrate(superToken, address(this), 1e9); + skip(1000); + assertEq(superToken.balanceOf(address(this)), initBal + 1e9 * 1000); + + // stop the stream + cfaFwd.setFlowrate(superToken, address(this), 0); + skip(1000); + assertEq(superToken.balanceOf(address(this)), initBal + 1e9 * 1000); // no change + + vm.stopPrank(); + } + + // TESTS + + function testUpgrade() public { + address newLogic = deployNewLogic(); + + vm.startPrank(ADMIN_ADDR); + UUPSProxiable(address(token)).updateCode(newLogic); + vm.stopPrank(); + + smokeTestSuperToken(TOKEN); + + address newLogic2 = deployNewLogic(); + vm.startPrank(HOST_ADDR); + // the token is now self-sovereign + vm.expectRevert(BridgedSuperToken.NO_PERMISSION.selector); + UUPSProxiable(address(token)).updateCode(newLogic2); + vm.stopPrank(); + + vm.startPrank(upgradeAdmin); + UUPSProxiable(address(token)).updateCode(newLogic2); + vm.stopPrank(); + + smokeTestSuperToken(TOKEN); + } + + function testMintBurn() public { + // upgrade + address newLogic = deployNewLogic(); + vm.startPrank(ADMIN_ADDR); + UUPSProxiable(address(token)).updateCode(newLogic); + vm.stopPrank(); + + // only the bridge can mint/burn + vm.startPrank(alice); + vm.expectRevert(BridgedSuperToken.NO_PERMISSION.selector); + IMintBurn(TOKEN).mint(bob, 42e18); + vm.expectRevert(BridgedSuperToken.NO_PERMISSION.selector); + IMintBurn(TOKEN).burn(bob, 42e18); + vm.stopPrank(); + + // the bridge giveth + vm.startPrank(bridgeAddr); + IMintBurn(TOKEN).mint(bob, 42e18); + assertEq(token.balanceOf(bob), 42e18); + + vm.startPrank(bridgeAddr); + IMintBurn(TOKEN).mint(bob, 2e18); + assertEq(token.balanceOf(bob), 44e18); + + // ... and the bridge taketh away + IMintBurn(TOKEN).burn(bob, 43e18); + assertEq(token.balanceOf(bob), 1e18); + + IMintBurn(TOKEN).burn(bob, 1e18); + assertEq(token.balanceOf(bob), 0); + + // but nomore than there is to take + vm.expectRevert(ISuperfluidToken.SF_TOKEN_BURN_INSUFFICIENT_BALANCE.selector); + IMintBurn(TOKEN).burn(bob, 1e18); + vm.stopPrank(); + } +} \ No newline at end of file diff --git a/truffle-config.js b/truffle-config.js index 09d2841..b43a322 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -12,8 +12,18 @@ module.exports = { process.env.GOERLI_PROVIDER_URL ), network_id: 5, // Goerli's id - // gas: GAS_LIMIT, - gasPrice: 10e9, // 10 GWEI + timeoutBlocks: 50, // # of blocks before a deployment times out (minimum/default: 50) + skipDryRun: false // Skip dry run before migrations? (default: false for public nets ) + }, + + // Optimisim goerli testnet + opgoerli: { + provider: () => + new HDWalletProvider( + process.env.OPGOERLI_MNEMONIC, + process.env.OPGOERLI_PROVIDER_URL + ), + network_id: 420, // Goerli's id timeoutBlocks: 50, // # of blocks before a deployment times out (minimum/default: 50) skipDryRun: false // Skip dry run before migrations? (default: false for public nets ) }, @@ -26,7 +36,6 @@ module.exports = { url: process.env.MATIC_PROVIDER_URL }), network_id: 137, - gasPrice: 50e9, // 50 gwei skipDryRun: false }, @@ -38,7 +47,6 @@ module.exports = { url: process.env.MUMBAI_PROVIDER_URL }), network_id: 80001, - gasPrice: 50e9, // 50 gwei skipDryRun: false }, @@ -50,6 +58,13 @@ module.exports = { process.env.ANY_PROVIDER_URL ), network_id: "*", + // gas price settings: default is undefined -> auto-detected via RPC + // can be overridden with env vars + // legacy tx type + gasPrice: process.env.GAS_PRICE, + // EIP-1559 tx type + maxPriorityFeePerGas: process.env.MAX_PRIORITY_FEE, + maxFeePerGas: process.env.MAX_FEE, skipDryRun: false } }, @@ -59,7 +74,15 @@ module.exports = { // Configure your compilers compilers: { solc: { - version: "0.8.14" + version: "0.8.19", + settings: { + // See the solidity docs for advice about optimization and evmVersion + optimizer: { + enabled: true, + runs: 200 + } + // evmVersion: use default + } } }, api_keys: { diff --git a/yarn.lock b/yarn.lock index d2e188d..e3ee7ae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -742,10 +742,10 @@ find-up "^4.1.0" fs-extra "^8.1.0" -"@openzeppelin/contracts@4.7.3": - version "4.7.3" - resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.7.3.tgz#939534757a81f8d69cc854c7692805684ff3111e" - integrity sha512-dGRS0agJzu8ybo44pCIf3xBaPQN/65AIXNgK8+4gzKd5kbvlqyxryUYVLJv7fK98Seyd2hDZzVEHSWAh0Bt1Yw== +"@openzeppelin/contracts@4.8.2": + version "4.8.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-4.8.2.tgz#d815ade0027b50beb9bcca67143c6bcc3e3923d6" + integrity sha512-kEUOgPQszC0fSYWpbh2kT94ltOJwj1qfT2DWo+zVttmGmf97JZ99LspePNaeeaLhCImaHVeBbjaQFZQn7+Zc5g== "@openzeppelin/contracts@^4.7.3": version "4.8.0" @@ -897,15 +897,15 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== -"@superfluid-finance/ethereum-contracts@^1.4.3": - version "1.4.3" - resolved "https://registry.yarnpkg.com/@superfluid-finance/ethereum-contracts/-/ethereum-contracts-1.4.3.tgz#2c1377b674799208850b334779ed62411b85995e" - integrity sha512-QKycgANL6/+09+JbSLF7PaHFHbYKRWSKb4vpVWsXMSR44ozxWkS8ebld72+iG7qxzybw4XIxzKyzLce5h4PE+A== +"@superfluid-finance/ethereum-contracts@^1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@superfluid-finance/ethereum-contracts/-/ethereum-contracts-1.7.1.tgz#e2f08bed42694e94980199607ed9d3222faeb477" + integrity sha512-MPimKMSbvJOUkbMzGA2oNdGZrKpJnja3OGS4NdsRO+OxBya2XOTvoy55nb3H/u63IFagoKt6L7eSoJapKtjDrA== dependencies: "@decentral.ee/web3-helpers" "0.5.3" - "@openzeppelin/contracts" "4.7.3" + "@openzeppelin/contracts" "4.8.2" "@superfluid-finance/js-sdk" "0.6.3" - "@truffle/contract" "4.5.23" + "@truffle/contract" "4.6.18" ethereumjs-tx "2.1.2" ethereumjs-util "7.1.5" stack-trace "0.0.10" @@ -920,6 +920,11 @@ auto-bind "^4.0.0" node-fetch "^2.6.7" +"@superfluid-finance/metadata@^1.1.10": + version "1.1.10" + resolved "https://registry.yarnpkg.com/@superfluid-finance/metadata/-/metadata-1.1.10.tgz#980991d60066f21646d29eb01a9080c7fae1493d" + integrity sha512-IbcpfB/pOwjl/Vam0d1WXNJaeA0bUW/CkQEZlEhUpL+DQh01d6TnxneEjw3VsT9alqamtycKoi6+2uPHAzyvFA== + "@superfluid-finance/metadata@git+https://github.com/superfluid-finance/metadata.git": version "1.1.0" resolved "git+https://github.com/superfluid-finance/metadata.git#680a8020da870e28853182de5ae7f297992ac498" @@ -954,11 +959,25 @@ fast-check "3.1.1" web3-utils "1.7.4" +"@truffle/abi-utils@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@truffle/abi-utils/-/abi-utils-1.0.1.tgz#bf72d595f2eb03905429210b394f416fb774a61e" + integrity sha512-ZQUY3XUxEPdqxNaoXsOqF0spTtb6f5RNlnN4MUrVsJ64sOh0FJsY7rxZiUI3khfePmNh4i2qcJrQlKT36YcWUA== + dependencies: + change-case "3.0.2" + fast-check "3.1.1" + web3-utils "1.10.0" + "@truffle/blockchain-utils@^0.1.4", "@truffle/blockchain-utils@^0.1.5": version "0.1.5" resolved "https://registry.yarnpkg.com/@truffle/blockchain-utils/-/blockchain-utils-0.1.5.tgz#da6af046d9ecf73b4d0a460896274dbfb6e1d3bd" integrity sha512-WwvKafKYbU0H3ewk3Y3ZZrWxPEYDEtqNkn1BZFPP8GkbDLNLbgZSW6cA0fGhe8veqvkK3q+CmGufr1/tBDW+OQ== +"@truffle/blockchain-utils@^0.1.7": + version "0.1.8" + resolved "https://registry.yarnpkg.com/@truffle/blockchain-utils/-/blockchain-utils-0.1.8.tgz#0c1a369aa72f51df5af095678803242ea0a0d6ae" + integrity sha512-ZskpYDNHkXD3ota4iU3pZz6kLth87RC+wDn66Rp2Or+DqqJCKdnmS9GDctBi1EcMPDEi0BqpkdrfBuzA9uIkGg== + "@truffle/code-utils@^3.0.1": version "3.0.1" resolved "https://registry.yarnpkg.com/@truffle/code-utils/-/code-utils-3.0.1.tgz#1e5547378ba773d70f37bf33fd4af7fde5ccba77" @@ -982,6 +1001,22 @@ utf8 "^3.0.0" web3-utils "1.7.4" +"@truffle/codec@^0.17.1": + version "0.17.1" + resolved "https://registry.yarnpkg.com/@truffle/codec/-/codec-0.17.1.tgz#08673f3a5a89cf2835d7e816e63fee234d6ff56d" + integrity sha512-f45cuhg92vM2N+ah3Bvm+uxiw/wc6a9o5gKJNqb8oMPCLYRGV4sQXTnNaAlFP1BBxFriciH3kwYt5xPrL39SgA== + dependencies: + "@truffle/abi-utils" "^1.0.1" + "@truffle/compile-common" "^0.9.6" + big.js "^6.0.3" + bn.js "^5.1.3" + cbor "^5.2.0" + debug "^4.3.1" + lodash "^4.17.21" + semver "7.5.2" + utf8 "^3.0.0" + web3-utils "1.10.0" + "@truffle/compile-common@^0.9.1": version "0.9.1" resolved "https://registry.yarnpkg.com/@truffle/compile-common/-/compile-common-0.9.1.tgz#4b36ac57d3e7dfbde0697621c8e6dc613820ef1a" @@ -990,6 +1025,14 @@ "@truffle/error" "^0.1.1" colors "1.4.0" +"@truffle/compile-common@^0.9.6": + version "0.9.6" + resolved "https://registry.yarnpkg.com/@truffle/compile-common/-/compile-common-0.9.6.tgz#037d74bc00ded33b9212d886531c2cee998662da" + integrity sha512-TCcmr1E0GqMZJ2tOaCRNEllxTBJ/g7TuD6jDJpw5Gt9Bw0YO3Cmp6yPQRynRSO4xMJbHUgiEsSfRgIhswut5UA== + dependencies: + "@truffle/error" "^0.2.1" + colors "1.4.0" + "@truffle/config@^1.3.45": version "1.3.45" resolved "https://registry.yarnpkg.com/@truffle/config/-/config-1.3.45.tgz#279691e0393f1df70c29b65e74ed220dae9fe6de" @@ -1011,6 +1054,14 @@ ajv "^6.10.0" debug "^4.3.1" +"@truffle/contract-schema@^3.4.13": + version "3.4.14" + resolved "https://registry.yarnpkg.com/@truffle/contract-schema/-/contract-schema-3.4.14.tgz#ded13d54daa7621dc9894fa7bf813f557e025b58" + integrity sha512-IwVQZG9RVNwTdn321+jbFIcky3/kZLkCtq8tqil4jZwivvmZQg8rIVC8GJ7Lkrmixl9/yTyQNL6GtIUUvkZxyA== + dependencies: + ajv "^6.10.0" + debug "^4.3.1" + "@truffle/contract@4.5.23": version "4.5.23" resolved "https://registry.yarnpkg.com/@truffle/contract/-/contract-4.5.23.tgz#8540f0c2d4ebc4782f1d4647016213fa4cac0107" @@ -1031,6 +1082,26 @@ web3-eth-abi "1.7.4" web3-utils "1.7.4" +"@truffle/contract@4.6.18": + version "4.6.18" + resolved "https://registry.yarnpkg.com/@truffle/contract/-/contract-4.6.18.tgz#096f82dbc05060acc9ed0bd8bb5811f497b8e3ad" + integrity sha512-x49EWZI16VMdYV8pH2LYM1AMFM3xAZ6ZFT2dG9Y71nIDZHdh+HKdlPSL40CqFtzpeoEk9UQoSJL99D/DXtpaog== + dependencies: + "@ensdomains/ensjs" "^2.1.0" + "@truffle/blockchain-utils" "^0.1.7" + "@truffle/contract-schema" "^3.4.13" + "@truffle/debug-utils" "^6.0.47" + "@truffle/error" "^0.2.0" + "@truffle/interface-adapter" "^0.5.31" + bignumber.js "^7.2.1" + debug "^4.3.1" + ethers "^4.0.32" + web3 "1.8.2" + web3-core-helpers "1.8.2" + web3-core-promievent "1.8.2" + web3-eth-abi "1.8.2" + web3-utils "1.8.2" + "@truffle/contract@^4.0.35": version "4.6.8" resolved "https://registry.yarnpkg.com/@truffle/contract/-/contract-4.6.8.tgz#2616a16e58a417a29436b1b9f430df42b15377cf" @@ -1115,6 +1186,18 @@ debug "^4.3.1" highlightjs-solidity "^2.0.5" +"@truffle/debug-utils@^6.0.47": + version "6.0.55" + resolved "https://registry.yarnpkg.com/@truffle/debug-utils/-/debug-utils-6.0.55.tgz#fea70dc9dcdf8676cd6b343730f9852febb41b24" + integrity sha512-53zbPdPCMFx/M4dYWnpzIsY3ndFv3X7BhgB9QIquazmAupwaZpkUJXWmXOPqoB7u6bQXnXYjTuE1V1WmFi/ozw== + dependencies: + "@truffle/codec" "^0.17.1" + "@trufflesuite/chromafi" "^3.0.0" + bn.js "^5.1.3" + chalk "^2.4.2" + debug "^4.3.1" + highlightjs-solidity "^2.0.6" + "@truffle/debugger@^11.0.18": version "11.0.18" resolved "https://registry.yarnpkg.com/@truffle/debugger/-/debugger-11.0.18.tgz#207f2ce8f5045ed8c73ea26fa2a687793f727cd3" @@ -1140,6 +1223,11 @@ resolved "https://registry.yarnpkg.com/@truffle/error/-/error-0.1.1.tgz#e52026ac8ca7180d83443dca73c03e07ace2a301" integrity sha512-sE7c9IHIGdbK4YayH4BC8i8qMjoAOeg6nUXUDZZp8wlU21/EMpaG+CLx+KqcIPyR+GSWIW3Dm0PXkr2nlggFDA== +"@truffle/error@^0.2.0", "@truffle/error@^0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@truffle/error/-/error-0.2.1.tgz#71bb8e777a832e0cfe09a8638a70a5177aad8628" + integrity sha512-5Qy+z9dg9hP37WNdLnXH4b9MzemWrjTufRq7/DTKqimjyxCP/1zlL8gQEMdiSx1BBtAZz0xypkID/jb7AF/Osg== + "@truffle/events@^0.1.19": version "0.1.19" resolved "https://registry.yarnpkg.com/@truffle/events/-/events-0.1.19.tgz#53c9c541189627966ed5bb08e614ddd06fb70bdb" @@ -1185,6 +1273,15 @@ ethers "^4.0.32" web3 "1.7.4" +"@truffle/interface-adapter@^0.5.31": + version "0.5.35" + resolved "https://registry.yarnpkg.com/@truffle/interface-adapter/-/interface-adapter-0.5.35.tgz#f0eb1c4a2803190ca249143f545029a8b641fe96" + integrity sha512-B5gtJnvsum5j2do393n0UfCT8MklrlAZxuqvEFBeMM9UKnreYct0/D368FVMlZwWo1N50HgGeZ0hlpSJqR/nvg== + dependencies: + bn.js "^5.1.3" + ethers "^4.0.32" + web3 "1.10.0" + "@truffle/promise-tracker@^0.1.5": version "0.1.5" resolved "https://registry.yarnpkg.com/@truffle/promise-tracker/-/promise-tracker-0.1.5.tgz#df68df14d45a32bda6237ab85169d1808e4b3928" @@ -1263,7 +1360,7 @@ dependencies: "@types/node" "*" -"@types/bn.js@^5.1.0": +"@types/bn.js@^5.1.0", "@types/bn.js@^5.1.1": version "5.1.1" resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.1.1.tgz#b51e1b55920a4ca26e9285ff79936bbdec910682" integrity sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g== @@ -3998,6 +4095,11 @@ highlightjs-solidity@^2.0.5: resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-2.0.5.tgz#48b945f41886fa49af9f06023e6e87fffc243745" integrity sha512-ReXxQSGQkODMUgHcWzVSnfDCDrL2HshOYgw3OlIYmfHeRzUPkfJTUIp95pK4CmbiNG2eMTOmNLpfCz9Zq7Cwmg== +highlightjs-solidity@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/highlightjs-solidity/-/highlightjs-solidity-2.0.6.tgz#e7a702a2b05e0a97f185e6ba39fd4846ad23a990" + integrity sha512-DySXWfQghjm2l6a/flF+cteroJqD4gI8GSdL4PtvxZSsAHie8m3yVe2JFoRg03ROKT6hp2Lc/BxXkqerNmtQYg== + hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -6169,6 +6271,13 @@ semver@7.3.7: dependencies: lru-cache "^6.0.0" +semver@7.5.2: + version "7.5.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.2.tgz#5b851e66d1be07c1cdaf37dfc856f543325a2beb" + integrity sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ== + dependencies: + lru-cache "^6.0.0" + semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -6647,10 +6756,10 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -truffle-plugin-verify@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/truffle-plugin-verify/-/truffle-plugin-verify-0.6.0.tgz#7dccdc64837deb3538c01d7c6e0f133b4cf0a125" - integrity sha512-nu0qDbbgAOTmqbJPZzBpEC9gaNDnTmm9cxuvyAfrO9d5g0dC+VAdDSqVP8+MNnjhQ6ZXri88s6F+IiffhpYfaA== +truffle-plugin-verify@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/truffle-plugin-verify/-/truffle-plugin-verify-0.6.1.tgz#b8d45b6c62ff00a4416c04796ac8b8f09b2e72b2" + integrity sha512-9Wxscxtmv1njVJKmG9nywx19QZrQqXrdcgHQs/8SeGNts8VjP6K9/CWO0uCMnBcmuew42LjlgxYB7cajSWR0CA== dependencies: axios "^0.26.1" cli-logger "^0.5.40" @@ -6849,7 +6958,7 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -util@^0.12.0: +util@^0.12.0, util@^0.12.5: version "0.12.5" resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== @@ -6927,6 +7036,15 @@ vuvuzela@1.0.3: resolved "https://registry.yarnpkg.com/vuvuzela/-/vuvuzela-1.0.3.tgz#3be145e58271c73ca55279dd851f12a682114b0b" integrity sha512-Tm7jR1xTzBbPW+6y1tknKiEhz04Wf/1iZkcTJjSFcpNko43+dFW6+OOeQe9taJIug3NdfUAjFKgUSyQrIKaDvQ== +web3-bzz@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.10.0.tgz#ac74bc71cdf294c7080a79091079192f05c5baed" + integrity sha512-o9IR59io3pDUsXTsps5pO5hW1D5zBmg46iNc2t4j2DkaYHNdDLwk2IP9ukoM2wg47QILfPEJYzhTfkS/CcX0KA== + dependencies: + "@types/node" "^12.12.6" + got "12.1.0" + swarm-js "^0.1.40" + web3-bzz@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.7.4.tgz#9419e606e38a9777443d4ce40506ebd796e06075" @@ -6945,6 +7063,23 @@ web3-bzz@1.8.1: got "12.1.0" swarm-js "^0.1.40" +web3-bzz@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-bzz/-/web3-bzz-1.8.2.tgz#67ea1c775874056250eece551ded22905ed08784" + integrity sha512-1EEnxjPnFnvNWw3XeeKuTR8PBxYd0+XWzvaLK7OJC/Go9O8llLGxrxICbKV+8cgIE0sDRBxiYx02X+6OhoAQ9w== + dependencies: + "@types/node" "^12.12.6" + got "12.1.0" + swarm-js "^0.1.40" + +web3-core-helpers@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.10.0.tgz#1016534c51a5df77ed4f94d1fcce31de4af37fad" + integrity sha512-pIxAzFDS5vnbXvfvLSpaA1tfRykAe9adw43YCKsEYQwH0gCLL0kMLkaCX3q+Q8EVmAh+e1jWL/nl9U0de1+++g== + dependencies: + web3-eth-iban "1.10.0" + web3-utils "1.10.0" + web3-core-helpers@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.7.4.tgz#f8f808928560d3e64e0c8d7bdd163aa4766bcf40" @@ -6961,6 +7096,25 @@ web3-core-helpers@1.8.1: web3-eth-iban "1.8.1" web3-utils "1.8.1" +web3-core-helpers@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.8.2.tgz#82066560f8085e6c7b93bcc8e88b441289ea9f9f" + integrity sha512-6B1eLlq9JFrfealZBomd1fmlq1o4A09vrCVQSa51ANoib/jllT3atZrRDr0zt1rfI7TSZTZBXdN/aTdeN99DWw== + dependencies: + web3-eth-iban "1.8.2" + web3-utils "1.8.2" + +web3-core-method@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.10.0.tgz#82668197fa086e8cc8066742e35a9d72535e3412" + integrity sha512-4R700jTLAMKDMhQ+nsVfIXvH6IGJlJzGisIfMKWAIswH31h5AZz7uDUW2YctI+HrYd+5uOAlS4OJeeT9bIpvkA== + dependencies: + "@ethersproject/transactions" "^5.6.2" + web3-core-helpers "1.10.0" + web3-core-promievent "1.10.0" + web3-core-subscriptions "1.10.0" + web3-utils "1.10.0" + web3-core-method@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.7.4.tgz#3873c6405e1a0a8a1efc1d7b28de8b7550b00c15" @@ -6983,6 +7137,24 @@ web3-core-method@1.8.1: web3-core-subscriptions "1.8.1" web3-utils "1.8.1" +web3-core-method@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.8.2.tgz#ba5ec68084e903f0516415010477618be017eac2" + integrity sha512-1qnr5mw5wVyULzLOrk4B+ryO3gfGjGd/fx8NR+J2xCGLf1e6OSjxT9vbfuQ3fErk/NjSTWWreieYWLMhaogcRA== + dependencies: + "@ethersproject/transactions" "^5.6.2" + web3-core-helpers "1.8.2" + web3-core-promievent "1.8.2" + web3-core-subscriptions "1.8.2" + web3-utils "1.8.2" + +web3-core-promievent@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.10.0.tgz#cbb5b3a76b888df45ed3a8d4d8d4f54ccb66a37b" + integrity sha512-68N7k5LWL5R38xRaKFrTFT2pm2jBNFaM4GioS00YjAKXRQ3KjmhijOMG3TICz6Aa5+6GDWYelDNx21YAeZ4YTg== + dependencies: + eventemitter3 "4.0.4" + web3-core-promievent@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.7.4.tgz#80a75633fdfe21fbaae2f1e38950edb2f134868c" @@ -6997,6 +7169,24 @@ web3-core-promievent@1.8.1: dependencies: eventemitter3 "4.0.4" +web3-core-promievent@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.8.2.tgz#e670d6b4453632e6ecfd9ad82da44f77ac1585c9" + integrity sha512-nvkJWDVgoOSsolJldN33tKW6bKKRJX3MCPDYMwP5SUFOA/mCzDEoI88N0JFofDTXkh1k7gOqp1pvwi9heuaxGg== + dependencies: + eventemitter3 "4.0.4" + +web3-core-requestmanager@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.10.0.tgz#4b34f6e05837e67c70ff6f6993652afc0d54c340" + integrity sha512-3z/JKE++Os62APml4dvBM+GAuId4h3L9ckUrj7ebEtS2AR0ixyQPbrBodgL91Sv7j7cQ3Y+hllaluqjguxvSaQ== + dependencies: + util "^0.12.5" + web3-core-helpers "1.10.0" + web3-providers-http "1.10.0" + web3-providers-ipc "1.10.0" + web3-providers-ws "1.10.0" + web3-core-requestmanager@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.7.4.tgz#2dc8a526dab8183dca3fef54658621801b1d0469" @@ -7019,6 +7209,25 @@ web3-core-requestmanager@1.8.1: web3-providers-ipc "1.8.1" web3-providers-ws "1.8.1" +web3-core-requestmanager@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.8.2.tgz#dda95e83ca4808949612a41e54ecea557f78ef26" + integrity sha512-p1d090RYs5Mu7DK1yyc3GCBVZB/03rBtFhYFoS2EruGzOWs/5Q0grgtpwS/DScdRAm8wB8mYEBhY/RKJWF6B2g== + dependencies: + util "^0.12.5" + web3-core-helpers "1.8.2" + web3-providers-http "1.8.2" + web3-providers-ipc "1.8.2" + web3-providers-ws "1.8.2" + +web3-core-subscriptions@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.10.0.tgz#b534592ee1611788fc0cb0b95963b9b9b6eacb7c" + integrity sha512-HGm1PbDqsxejI075gxBc5OSkwymilRWZufIy9zEpnWKNmfbuv5FfHgW1/chtJP6aP3Uq2vHkvTDl3smQBb8l+g== + dependencies: + eventemitter3 "4.0.4" + web3-core-helpers "1.10.0" + web3-core-subscriptions@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.7.4.tgz#cfbd3fa71081a8c8c6f1a64577a1a80c5bd9826f" @@ -7035,6 +7244,27 @@ web3-core-subscriptions@1.8.1: eventemitter3 "4.0.4" web3-core-helpers "1.8.1" +web3-core-subscriptions@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.8.2.tgz#0c8bd49439d83c6f0a03c70f00b24a915a70a5ed" + integrity sha512-vXQogHDmAIQcKpXvGiMddBUeP9lnKgYF64+yQJhPNE5PnWr1sAibXuIPV7mIPihpFr/n/DORRj6Wh1pUv9zaTw== + dependencies: + eventemitter3 "4.0.4" + web3-core-helpers "1.8.2" + +web3-core@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.10.0.tgz#9aa07c5deb478cf356c5d3b5b35afafa5fa8e633" + integrity sha512-fWySwqy2hn3TL89w5TM8wXF1Z2Q6frQTKHWmP0ppRQorEK8NcHJRfeMiv/mQlSKoTS1F6n/nv2uyZsixFycjYQ== + dependencies: + "@types/bn.js" "^5.1.1" + "@types/node" "^12.12.6" + bignumber.js "^9.0.0" + web3-core-helpers "1.10.0" + web3-core-method "1.10.0" + web3-core-requestmanager "1.10.0" + web3-utils "1.10.0" + web3-core@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.7.4.tgz#943fff99134baedafa7c65b4a0bbd424748429ff" @@ -7061,6 +7291,27 @@ web3-core@1.8.1: web3-core-requestmanager "1.8.1" web3-utils "1.8.1" +web3-core@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.8.2.tgz#333e93d7872b1a36efe758ed8b89a7acbdd962c2" + integrity sha512-DJTVEAYcNqxkqruJE+Rxp3CIv0y5AZMwPHQmOkz/cz+MM75SIzMTc0AUdXzGyTS8xMF8h3YWMQGgGEy8SBf1PQ== + dependencies: + "@types/bn.js" "^5.1.0" + "@types/node" "^12.12.6" + bignumber.js "^9.0.0" + web3-core-helpers "1.8.2" + web3-core-method "1.8.2" + web3-core-requestmanager "1.8.2" + web3-utils "1.8.2" + +web3-eth-abi@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.10.0.tgz#53a7a2c95a571e205e27fd9e664df4919483cce1" + integrity sha512-cwS+qRBWpJ43aI9L3JS88QYPfFcSJJ3XapxOQ4j40v6mk7ATpA8CVK1vGTzpihNlOfMVRBkR95oAj7oL6aiDOg== + dependencies: + "@ethersproject/abi" "^5.6.3" + web3-utils "1.10.0" + web3-eth-abi@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.7.4.tgz#3fee967bafd67f06b99ceaddc47ab0970f2a614a" @@ -7077,6 +7328,30 @@ web3-eth-abi@1.8.1: "@ethersproject/abi" "^5.6.3" web3-utils "1.8.1" +web3-eth-abi@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth-abi/-/web3-eth-abi-1.8.2.tgz#16e1e9be40e2527404f041a4745111211488f31a" + integrity sha512-Om9g3kaRNjqiNPAgKwGT16y+ZwtBzRe4ZJFGjLiSs6v5I7TPNF+rRMWuKnR6jq0azQZDj6rblvKFMA49/k48Og== + dependencies: + "@ethersproject/abi" "^5.6.3" + web3-utils "1.8.2" + +web3-eth-accounts@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.10.0.tgz#2942beca0a4291455f32cf09de10457a19a48117" + integrity sha512-wiq39Uc3mOI8rw24wE2n15hboLE0E9BsQLdlmsL4Zua9diDS6B5abXG0XhFcoNsXIGMWXVZz4TOq3u4EdpXF/Q== + dependencies: + "@ethereumjs/common" "2.5.0" + "@ethereumjs/tx" "3.3.2" + eth-lib "0.2.8" + ethereumjs-util "^7.1.5" + scrypt-js "^3.0.1" + uuid "^9.0.0" + web3-core "1.10.0" + web3-core-helpers "1.10.0" + web3-core-method "1.10.0" + web3-utils "1.10.0" + web3-eth-accounts@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.7.4.tgz#7a24a4dfe947f7e9d1bae678529e591aa146167a" @@ -7111,6 +7386,36 @@ web3-eth-accounts@1.8.1: web3-core-method "1.8.1" web3-utils "1.8.1" +web3-eth-accounts@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth-accounts/-/web3-eth-accounts-1.8.2.tgz#b894f5d5158fcae429da42de75d96520d0712971" + integrity sha512-c367Ij63VCz9YdyjiHHWLFtN85l6QghgwMQH2B1eM/p9Y5lTlTX7t/Eg/8+f1yoIStXbk2w/PYM2lk+IkbqdLA== + dependencies: + "@ethereumjs/common" "2.5.0" + "@ethereumjs/tx" "3.3.2" + eth-lib "0.2.8" + ethereumjs-util "^7.1.5" + scrypt-js "^3.0.1" + uuid "^9.0.0" + web3-core "1.8.2" + web3-core-helpers "1.8.2" + web3-core-method "1.8.2" + web3-utils "1.8.2" + +web3-eth-contract@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.10.0.tgz#8e68c7654576773ec3c91903f08e49d0242c503a" + integrity sha512-MIC5FOzP/+2evDksQQ/dpcXhSqa/2hFNytdl/x61IeWxhh6vlFeSjq0YVTAyIzdjwnL7nEmZpjfI6y6/Ufhy7w== + dependencies: + "@types/bn.js" "^5.1.1" + web3-core "1.10.0" + web3-core-helpers "1.10.0" + web3-core-method "1.10.0" + web3-core-promievent "1.10.0" + web3-core-subscriptions "1.10.0" + web3-eth-abi "1.10.0" + web3-utils "1.10.0" + web3-eth-contract@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.7.4.tgz#e5761cfb43d453f57be4777b2e5e7e1082078ff7" @@ -7139,6 +7444,34 @@ web3-eth-contract@1.8.1: web3-eth-abi "1.8.1" web3-utils "1.8.1" +web3-eth-contract@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth-contract/-/web3-eth-contract-1.8.2.tgz#5388b7130923d2b790c09a420391a81312a867fb" + integrity sha512-ID5A25tHTSBNwOPjiXSVzxruz006ULRIDbzWTYIFTp7NJ7vXu/kynKK2ag/ObuTqBpMbobP8nXcA9b5EDkIdQA== + dependencies: + "@types/bn.js" "^5.1.0" + web3-core "1.8.2" + web3-core-helpers "1.8.2" + web3-core-method "1.8.2" + web3-core-promievent "1.8.2" + web3-core-subscriptions "1.8.2" + web3-eth-abi "1.8.2" + web3-utils "1.8.2" + +web3-eth-ens@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.10.0.tgz#96a676524e0b580c87913f557a13ed810cf91cd9" + integrity sha512-3hpGgzX3qjgxNAmqdrC2YUQMTfnZbs4GeLEmy8aCWziVwogbuqQZ+Gzdfrym45eOZodk+lmXyLuAdqkNlvkc1g== + dependencies: + content-hash "^2.5.2" + eth-ens-namehash "2.0.8" + web3-core "1.10.0" + web3-core-helpers "1.10.0" + web3-core-promievent "1.10.0" + web3-eth-abi "1.10.0" + web3-eth-contract "1.10.0" + web3-utils "1.10.0" + web3-eth-ens@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.7.4.tgz#346720305379c0a539e226141a9602f1da7bc0c8" @@ -7167,6 +7500,28 @@ web3-eth-ens@1.8.1: web3-eth-contract "1.8.1" web3-utils "1.8.1" +web3-eth-ens@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth-ens/-/web3-eth-ens-1.8.2.tgz#0a086ad4d919102e28b9fd3036df246add9df22a" + integrity sha512-PWph7C/CnqdWuu1+SH4U4zdrK4t2HNt0I4XzPYFdv9ugE8EuojselioPQXsVGvjql+Nt3jDLvQvggPqlMbvwRw== + dependencies: + content-hash "^2.5.2" + eth-ens-namehash "2.0.8" + web3-core "1.8.2" + web3-core-helpers "1.8.2" + web3-core-promievent "1.8.2" + web3-eth-abi "1.8.2" + web3-eth-contract "1.8.2" + web3-utils "1.8.2" + +web3-eth-iban@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.10.0.tgz#5a46646401965b0f09a4f58e7248c8a8cd22538a" + integrity sha512-0l+SP3IGhInw7Q20LY3IVafYEuufo4Dn75jAHT7c2aDJsIolvf2Lc6ugHkBajlwUneGfbRQs/ccYPQ9JeMUbrg== + dependencies: + bn.js "^5.2.1" + web3-utils "1.10.0" + web3-eth-iban@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.7.4.tgz#711fb2547fdf0f988060027331b2b6c430505753" @@ -7183,6 +7538,26 @@ web3-eth-iban@1.8.1: bn.js "^5.2.1" web3-utils "1.8.1" +web3-eth-iban@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.8.2.tgz#5cb3022234b13986f086353b53f0379a881feeaf" + integrity sha512-h3vNblDWkWMuYx93Q27TAJz6lhzpP93EiC3+45D6xoz983p6si773vntoQ+H+5aZhwglBtoiBzdh7PSSOnP/xQ== + dependencies: + bn.js "^5.2.1" + web3-utils "1.8.2" + +web3-eth-personal@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.10.0.tgz#94d525f7a29050a0c2a12032df150ac5ea633071" + integrity sha512-anseKn98w/d703eWq52uNuZi7GhQeVjTC5/svrBWEKob0WZ5kPdo+EZoFN0sp5a5ubbrk/E0xSl1/M5yORMtpg== + dependencies: + "@types/node" "^12.12.6" + web3-core "1.10.0" + web3-core-helpers "1.10.0" + web3-core-method "1.10.0" + web3-net "1.10.0" + web3-utils "1.10.0" + web3-eth-personal@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.7.4.tgz#22c399794cb828a75703df8bb4b3c1331b471546" @@ -7207,6 +7582,36 @@ web3-eth-personal@1.8.1: web3-net "1.8.1" web3-utils "1.8.1" +web3-eth-personal@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth-personal/-/web3-eth-personal-1.8.2.tgz#3526c1ebaa4e7bf3a0a8ec77e34f067cc9a750b2" + integrity sha512-Vg4HfwCr7doiUF/RC+Jz0wT4+cYaXcOWMAW2AHIjHX6Z7Xwa8nrURIeQgeEE62qcEHAzajyAdB1u6bJyTfuCXw== + dependencies: + "@types/node" "^12.12.6" + web3-core "1.8.2" + web3-core-helpers "1.8.2" + web3-core-method "1.8.2" + web3-net "1.8.2" + web3-utils "1.8.2" + +web3-eth@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.10.0.tgz#38b905e2759697c9624ab080cfcf4e6c60b3a6cf" + integrity sha512-Z5vT6slNMLPKuwRyKGbqeGYC87OAy8bOblaqRTgg94CXcn/mmqU7iPIlG4506YdcdK3x6cfEDG7B6w+jRxypKA== + dependencies: + web3-core "1.10.0" + web3-core-helpers "1.10.0" + web3-core-method "1.10.0" + web3-core-subscriptions "1.10.0" + web3-eth-abi "1.10.0" + web3-eth-accounts "1.10.0" + web3-eth-contract "1.10.0" + web3-eth-ens "1.10.0" + web3-eth-iban "1.10.0" + web3-eth-personal "1.10.0" + web3-net "1.10.0" + web3-utils "1.10.0" + web3-eth@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.7.4.tgz#a7c1d3ccdbba4de4a82df7e3c4db716e4a944bf2" @@ -7243,6 +7648,33 @@ web3-eth@1.8.1: web3-net "1.8.1" web3-utils "1.8.1" +web3-eth@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-eth/-/web3-eth-1.8.2.tgz#8562287ae1803c30eb54dc7d832092e5739ce06a" + integrity sha512-JoTiWWc4F4TInpbvDUGb0WgDYJsFhuIjJlinc5ByjWD88Gvh+GKLsRjjFdbqe5YtwIGT4NymwoC5LQd1K6u/QQ== + dependencies: + web3-core "1.8.2" + web3-core-helpers "1.8.2" + web3-core-method "1.8.2" + web3-core-subscriptions "1.8.2" + web3-eth-abi "1.8.2" + web3-eth-accounts "1.8.2" + web3-eth-contract "1.8.2" + web3-eth-ens "1.8.2" + web3-eth-iban "1.8.2" + web3-eth-personal "1.8.2" + web3-net "1.8.2" + web3-utils "1.8.2" + +web3-net@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.10.0.tgz#be53e7f5dafd55e7c9013d49c505448b92c9c97b" + integrity sha512-NLH/N3IshYWASpxk4/18Ge6n60GEvWBVeM8inx2dmZJVmRI6SJIlUxbL8jySgiTn3MMZlhbdvrGo8fpUW7a1GA== + dependencies: + web3-core "1.10.0" + web3-core-method "1.10.0" + web3-utils "1.10.0" + web3-net@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.7.4.tgz#3153dfd3423262dd6fbec7aae5467202c4cad431" @@ -7261,6 +7693,15 @@ web3-net@1.8.1: web3-core-method "1.8.1" web3-utils "1.8.1" +web3-net@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-net/-/web3-net-1.8.2.tgz#97e1e0015fabc4cda31017813e98d0b5468dd04f" + integrity sha512-1itkDMGmbgb83Dg9nporFes9/fxsU7smJ3oRXlFkg4ZHn8YJyP1MSQFPJWWwSc+GrcCFt4O5IrUTvEkHqE3xag== + dependencies: + web3-core "1.8.2" + web3-core-method "1.8.2" + web3-utils "1.8.2" + web3-provider-engine@16.0.3: version "16.0.3" resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-16.0.3.tgz#8ff93edf3a8da2f70d7f85c5116028c06a0d9f07" @@ -7289,6 +7730,16 @@ web3-provider-engine@16.0.3: xhr "^2.2.0" xtend "^4.0.1" +web3-providers-http@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.10.0.tgz#864fa48675e7918c9a4374e5f664b32c09d0151b" + integrity sha512-eNr965YB8a9mLiNrkjAWNAPXgmQWfpBfkkn7tpEFlghfww0u3I0tktMZiaToJVcL2+Xq+81cxbkpeWJ5XQDwOA== + dependencies: + abortcontroller-polyfill "^1.7.3" + cross-fetch "^3.1.4" + es6-promise "^4.2.8" + web3-core-helpers "1.10.0" + web3-providers-http@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.7.4.tgz#8209cdcb115db5ccae1f550d1c4e3005e7538d02" @@ -7307,6 +7758,24 @@ web3-providers-http@1.8.1: es6-promise "^4.2.8" web3-core-helpers "1.8.1" +web3-providers-http@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.8.2.tgz#fbda3a3bbc8db004af36e91bec35f80273b37885" + integrity sha512-2xY94IIEQd16+b+vIBF4IC1p7GVaz9q4EUFscvMUjtEq4ru4Atdzjs9GP+jmcoo49p70II0UV3bqQcz0TQfVyQ== + dependencies: + abortcontroller-polyfill "^1.7.3" + cross-fetch "^3.1.4" + es6-promise "^4.2.8" + web3-core-helpers "1.8.2" + +web3-providers-ipc@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.10.0.tgz#9747c7a6aee96a51488e32fa7c636c3460b39889" + integrity sha512-OfXG1aWN8L1OUqppshzq8YISkWrYHaATW9H8eh0p89TlWMc1KZOL9vttBuaBEi96D/n0eYDn2trzt22bqHWfXA== + dependencies: + oboe "2.1.5" + web3-core-helpers "1.10.0" + web3-providers-ipc@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.7.4.tgz#02e85e99e48f432c9d34cee7d786c3685ec9fcfa" @@ -7323,6 +7792,23 @@ web3-providers-ipc@1.8.1: oboe "2.1.5" web3-core-helpers "1.8.1" +web3-providers-ipc@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.8.2.tgz#e52a7250f40c83b99a2482ec5b4cf2728377ae5c" + integrity sha512-p6fqKVGFg+WiXGHWnB1hu43PbvPkDHTz4RgoEzbXugv5rtv5zfYLqm8Ba6lrJOS5ks9kGKR21a0y3NzE3u7V4w== + dependencies: + oboe "2.1.5" + web3-core-helpers "1.8.2" + +web3-providers-ws@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.10.0.tgz#cb0b87b94c4df965cdf486af3a8cd26daf3975e5" + integrity sha512-sK0fNcglW36yD5xjnjtSGBnEtf59cbw4vZzJ+CmOWIKGIR96mP5l684g0WD0Eo+f4NQc2anWWXG74lRc9OVMCQ== + dependencies: + eventemitter3 "4.0.4" + web3-core-helpers "1.10.0" + websocket "^1.0.32" + web3-providers-ws@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.7.4.tgz#6e60bcefb456f569a3e766e386d7807a96f90595" @@ -7341,6 +7827,25 @@ web3-providers-ws@1.8.1: web3-core-helpers "1.8.1" websocket "^1.0.32" +web3-providers-ws@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.8.2.tgz#56a2b701387011aca9154ca4bc06ea4b5f27e4ef" + integrity sha512-3s/4K+wHgbiN+Zrp9YjMq2eqAF6QGABw7wFftPdx+m5hWImV27/MoIx57c6HffNRqZXmCHnfWWFCNHHsi7wXnA== + dependencies: + eventemitter3 "4.0.4" + web3-core-helpers "1.8.2" + websocket "^1.0.32" + +web3-shh@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.10.0.tgz#c2979b87e0f67a7fef2ce9ee853bd7bfbe9b79a8" + integrity sha512-uNUUuNsO2AjX41GJARV9zJibs11eq6HtOe6Wr0FtRUcj8SN6nHeYIzwstAvJ4fXA53gRqFMTxdntHEt9aXVjpg== + dependencies: + web3-core "1.10.0" + web3-core-method "1.10.0" + web3-core-subscriptions "1.10.0" + web3-net "1.10.0" + web3-shh@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.7.4.tgz#bee91cce2737c529fd347274010b548b6ea060f1" @@ -7361,6 +7866,29 @@ web3-shh@1.8.1: web3-core-subscriptions "1.8.1" web3-net "1.8.1" +web3-shh@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-shh/-/web3-shh-1.8.2.tgz#217a417f0d6e243dd4d441848ffc2bd164cea8a0" + integrity sha512-uZ+3MAoNcaJsXXNCDnizKJ5viBNeHOFYsCbFhV755Uu52FswzTOw6DtE7yK9nYXMtIhiSgi7nwl1RYzP8pystw== + dependencies: + web3-core "1.8.2" + web3-core-method "1.8.2" + web3-core-subscriptions "1.8.2" + web3-net "1.8.2" + +web3-utils@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.0.tgz#ca4c1b431a765c14ac7f773e92e0fd9377ccf578" + integrity sha512-kSaCM0uMcZTNUSmn5vMEhlo02RObGNRRCkdX0V9UTAU0+lrvn0HSaudyCo6CQzuXUsnuY2ERJGCGPfeWmv19Rg== + dependencies: + bn.js "^5.2.1" + ethereum-bloom-filters "^1.0.6" + ethereumjs-util "^7.1.0" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + utf8 "3.0.0" + web3-utils@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.4.tgz#eb6fa3706b058602747228234453811bbee017f5" @@ -7387,6 +7915,19 @@ web3-utils@1.8.1, web3-utils@^1.0.0-beta.31, web3-utils@^1.2.5, web3-utils@^1.3. randombytes "^2.1.0" utf8 "3.0.0" +web3-utils@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.8.2.tgz#c32dec5e9b955acbab220eefd7715bc540b75cc9" + integrity sha512-v7j6xhfLQfY7xQDrUP0BKbaNrmZ2/+egbqP9q3KYmOiPpnvAfol+32slgL0WX/5n8VPvKCK5EZ1HGrAVICSToA== + dependencies: + bn.js "^5.2.1" + ethereum-bloom-filters "^1.0.6" + ethereumjs-util "^7.1.0" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + utf8 "3.0.0" + web3@*, web3@^1.2.5: version "1.8.1" resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.1.tgz#8ea67215ef5f3a6f6d3381800b527242ea22885a" @@ -7400,6 +7941,19 @@ web3@*, web3@^1.2.5: web3-shh "1.8.1" web3-utils "1.8.1" +web3@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/web3/-/web3-1.10.0.tgz#2fde0009f59aa756c93e07ea2a7f3ab971091274" + integrity sha512-YfKY9wSkGcM8seO+daR89oVTcbu18NsVfvOngzqMYGUU0pPSQmE57qQDvQzUeoIOHAnXEBNzrhjQJmm8ER0rng== + dependencies: + web3-bzz "1.10.0" + web3-core "1.10.0" + web3-eth "1.10.0" + web3-eth-personal "1.10.0" + web3-net "1.10.0" + web3-shh "1.10.0" + web3-utils "1.10.0" + web3@1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/web3/-/web3-1.7.4.tgz#00c9aef8e13ade92fd773d845fff250535828e93" @@ -7413,6 +7967,19 @@ web3@1.7.4: web3-shh "1.7.4" web3-utils "1.7.4" +web3@1.8.2: + version "1.8.2" + resolved "https://registry.yarnpkg.com/web3/-/web3-1.8.2.tgz#95a4e5398fd0f01325264bf8e5e8cdc69a7afe86" + integrity sha512-92h0GdEHW9wqDICQQKyG4foZBYi0OQkyg4CRml2F7XBl/NG+fu9o6J19kzfFXzSBoA4DnJXbyRgj/RHZv5LRiw== + dependencies: + web3-bzz "1.8.2" + web3-core "1.8.2" + web3-eth "1.8.2" + web3-eth-personal "1.8.2" + web3-net "1.8.2" + web3-shh "1.8.2" + web3-utils "1.8.2" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"