diff --git a/packages/addresses-tools/src/addresses.helpers.ts b/packages/addresses-tools/src/addresses.helpers.ts index 8b0289f3..9dcfa820 100644 --- a/packages/addresses-tools/src/addresses.helpers.ts +++ b/packages/addresses-tools/src/addresses.helpers.ts @@ -52,8 +52,7 @@ export const getScanVariable = ({ customNetworkName }: { customNetworkName?: str "klaytn-baobab": "", "klaytn-cypress": "", "polygon-localnet": "", - "polygon-mumbai": process.env.POLYGONSCAN_API_KEY || "", - ropsten: process.env.ETHERSCAN_API_KEY || "" + "polygon-mumbai": process.env.POLYGONSCAN_API_KEY || "" }; return v[networkName]; @@ -76,8 +75,7 @@ export const getExplorerUrl = ({ customNetworkName }: { customNetworkName?: stri "klaytn-baobab": "https://baobab.scope.klaytn.com/", "klaytn-cypress": "https://scope.klaytn.com/", "polygon-localnet": "", - "polygon-mumbai": "https://mumbai.polygonscan.com/", - ropsten: "https://ropsten.etherscan.io/" + "polygon-mumbai": "https://mumbai.polygonscan.com/" }; return v[networkName]; @@ -96,8 +94,7 @@ export const getGasSymbolByNetwork = (networkName: NetworkName): string => { "klaytn-baobab": "KLAY", "klaytn-cypress": "KLAY", "polygon-localnet": "MATIC", - "polygon-mumbai": "MATIC", - ropsten: "BYEBYE" + "polygon-mumbai": "MATIC" }; return v[networkName]; diff --git a/packages/addresses-tools/src/index.ts b/packages/addresses-tools/src/index.ts index fca9c8a4..c79a885a 100644 --- a/packages/addresses-tools/src/index.ts +++ b/packages/addresses-tools/src/index.ts @@ -1,2 +1,3 @@ export * from "./addresses.helpers"; export * from "./networks"; +export * from "./system-addresses.helpers"; diff --git a/packages/addresses-tools/src/networks.ts b/packages/addresses-tools/src/networks.ts index 4665cc19..ded55177 100644 --- a/packages/addresses-tools/src/networks.ts +++ b/packages/addresses-tools/src/networks.ts @@ -6,7 +6,8 @@ export const getHardhatConfigNetworks = (PRIVATE_KEYS: string[]): NetworksUserCo // chainId: 7001, gas: 5000000, gasPrice: 80000000000, - url: `https://api.athens2.zetachain.com/evm`, + // url: `https://api.athens2.zetachain.com/evm`, //A2 + url: `https://zetachain-athens-evm.blockpi.network/v1/rpc/public`, //A3 }, "bsc-localnet": { gas: 5000000, @@ -66,19 +67,12 @@ export const getHardhatConfigNetworks = (PRIVATE_KEYS: string[]): NetworksUserCo gasPrice: 80000000000, url: "https://rpc.ankr.com/polygon_mumbai", }, - ropsten: { - accounts: PRIVATE_KEYS, - gas: 9000000, - gasPrice: 80000000000, - url: "https://ropsten.infura.io/v3/", - }, }); export const getHardhatConfigScanners = () => ({ apiKey: { bscTestnet: process.env.BSCSCAN_API_KEY, goerli: process.env.ETHERSCAN_API_KEY, - polygonMumbai: process.env.POYLGONSCAN_API_KEY, - ropsten: process.env.ETHERSCAN_API_KEY, + polygonMumbai: process.env.POYLGONSCAN_API_KEY }, }); diff --git a/packages/addresses-tools/src/system-addresses.helpers.ts b/packages/addresses-tools/src/system-addresses.helpers.ts new file mode 100644 index 00000000..5ca86bf2 --- /dev/null +++ b/packages/addresses-tools/src/system-addresses.helpers.ts @@ -0,0 +1,49 @@ +import { NetworkName } from "@zetachain/addresses"; +import { getAddress, getZRC20Address as getZRC20AddressFromProtocol } from "@zetachain/protocol-contracts/dist/lib"; + +export type AthensVersion = "Athens2" | "Athens3"; + +export type ZRC20 = "gETH" | "tBNB" | "tBTC" | "tMATIC"; + +//@dev: Legacy addresses to make it simple if is needed to run a script pointing to Athens2 +const ATHENS2_SYSTEM_CONTRACT = "0x239e96c8f17C85c30100AC26F635Ea15f23E9c67"; +const ATHENS2_ZRC20Addresses: Record = { + gETH: "0x91d18e54DAf4F677cB28167158d6dd21F6aB3921", + tBNB: "0x13A0c5930C028511Dc02665E7285134B6d11A5f4", + tBTC: "0x48f80608B672DC30DC7e3dbBd0343c5F02C738Eb", + tMATIC: "0xd97B1de3619ed2c6BEb3860147E30cA8A7dC9891" +}; + +export const getSystemContractAddress = (version: AthensVersion = "Athens3") => { + if (version === "Athens2") { + return ATHENS2_SYSTEM_CONTRACT; + } + return getAddress("systemContract", "zeta_testnet"); +}; + +export const getZRC20Address = (version: AthensVersion = "Athens3") => { + if (version === "Athens2") { + return ATHENS2_ZRC20Addresses; + } + const ZRC20Addresses: Record = { + gETH: getZRC20AddressFromProtocol("bsc_testnet"), + tBNB: getZRC20AddressFromProtocol("bsc_testnet"), + // tBTC: getZRC20AddressFromProtocol(""), + tBTC: "0x0", + tMATIC: getZRC20AddressFromProtocol("mumbai_testnet") + }; + + return ZRC20Addresses; +}; + +export type SwappableNetwork = Extract; + +export const isSwappableNetwork = (network: string): network is SwappableNetwork => + network === "bitcoin-test" || network === "bsc-testnet" || network === "goerli" || network === "polygon-mumbai"; + +export const ChainToZRC20: Record = { + "bitcoin-test": "tBTC", + "bsc-testnet": "tBNB", + goerli: "gETH", + "polygon-mumbai": "tMATIC" +}; diff --git a/packages/addresses/src/addresses.athens.json b/packages/addresses/src/addresses.athens.json index cf5c2285..f488b19a 100644 --- a/packages/addresses/src/addresses.athens.json +++ b/packages/addresses/src/addresses.athens.json @@ -1,16 +1,16 @@ { "bsc-testnet": { - "connector": "0x000054d3A0Bc83Ec7808F52fCdC28A96c89F6C5c", + "connector": "0x0000ecb8cdd25a18f12daa23f6422e07fbf8b9e1", "crossChainCounter": "", - "crossChainNft": "0xF7f6534C8f70f6001Fc267b55abfAA8B8a41Ea2e", + "crossChainNft": "", "dai": "", "immutableCreate2Factory": "0x095a03c6a68137fE9a566bBc3e552F299d8b886d", - "multiChainSwap": "0xa0b5cbdc4d14c4f4d36483ec0de310919f3b2d90", + "multiChainSwap": "", "multiChainSwapZetaConnector": "", - "multiChainValue": "0x54284C0b4948FE2F93D3a0Dc17fA3587b16eE19F", + "multiChainValue": "0x064516547ECd3b2D1709e1b2798Aae92b1C8a84C", "tridentPoolFactory": "", - "tss": "0x7c125C1d515b8945841b3d5144a060115C58725F", - "tssUpdater": "0x7274d1d5dddef36aac53dd45b93487ce01ef0a55", + "tss": "0x8531a5aB847ff5B22D855633C25ED1DA3255247e", + "tssUpdater": "0x55122f7590164Ac222504436943FAB17B62F5d7d", "uniswapV2Factory": "", "uniswapV2Router02": "0x9Ac64Cc6e4415144C455BD8E4837Fea55603e5c3", "uniswapV3NftManager": "", @@ -20,22 +20,22 @@ "weth9": "", "zetaSwap": "", "zetaSwapBtcInbound": "", - "zetaToken": "0x000080383847bd75f91c168269aa74004877592f", - "zetaTokenConsumerUniV2": "0xa67b03930eb53d0462dCc0835e97964C062042fb", + "zetaToken": "0x0000c9ec4042283e8139c74f4c64bcd1e0b9b54f", + "zetaTokenConsumerUniV2": "", "zetaTokenConsumerUniV3": "" }, "goerli": { - "connector": "0x00007d0BA516a2bA02D77907d3a1348C1187Ae62", + "connector": "0x00005e3125aba53c5652f9f0ce1a4cf91d8b15ea", "crossChainCounter": "", - "crossChainNft": "0xfE9eb065cab82421D06C8eD41c31Beb473a5Fa7e", + "crossChainNft": "", "dai": "", "immutableCreate2Factory": "0x095a03c6a68137fE9a566bBc3e552F299d8b886d", - "multiChainSwap": "0x805fE47D1FE7d86496753bB4B36206953c1ae660", + "multiChainSwap": "", "multiChainSwapZetaConnector": "", - "multiChainValue": "0x31F884940B3876290A16B183b841bbE7E4965743", + "multiChainValue": "0x14BeC0E4A8e7bF7A02Af54Ad81a57a9fcA4D37Fd", "tridentPoolFactory": "", - "tss": "0x7c125C1d515b8945841b3d5144a060115C58725F", - "tssUpdater": "0x7274d1d5dddef36aac53dd45b93487ce01ef0a55", + "tss": "0x8531a5aB847ff5B22D855633C25ED1DA3255247e", + "tssUpdater": "0x55122f7590164Ac222504436943FAB17B62F5d7d", "uniswapV2Factory": "", "uniswapV2Router02": "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D", "uniswapV3NftManager": "", @@ -45,22 +45,22 @@ "weth9": "", "zetaSwap": "", "zetaSwapBtcInbound": "", - "zetaToken": "0xCc7bb2D219A0FC08033E130629C2B854b7bA9195", - "zetaTokenConsumerUniV2": "0xDDB1C86c69f258F6d33377a8725404E4393326bB", + "zetaToken": "0x0000c304d2934c00db1d51995b9f6996affd17c0", + "zetaTokenConsumerUniV2": "", "zetaTokenConsumerUniV3": "" }, "polygon-mumbai": { - "connector": "0x000054d3A0Bc83Ec7808F52fCdC28A96c89F6C5c", + "connector": "0x00005e3125aba53c5652f9f0ce1a4cf91d8b15ea", "crossChainCounter": "", "crossChainNft": "", "dai": "", "immutableCreate2Factory": "0x095a03c6a68137fE9a566bBc3e552F299d8b886d", - "multiChainSwap": "0xaf28cb0d9E045170E1642321B964740784E7dC64", + "multiChainSwap": "", "tridentPoolFactory": "", "multiChainSwapZetaConnector": "", - "multiChainValue": "0x15D434879B65d7008Dec00f191e578D8E90D026b", - "tss": "0x7c125C1d515b8945841b3d5144a060115C58725F", - "tssUpdater": "0x7274d1d5dddef36aac53dd45b93487ce01ef0a55", + "multiChainValue": "0x14BeC0E4A8e7bF7A02Af54Ad81a57a9fcA4D37Fd", + "tss": "0x8531a5aB847ff5B22D855633C25ED1DA3255247e", + "tssUpdater": "0x55122f7590164Ac222504436943FAB17B62F5d7d", "uniswapV2Factory": "", "uniswapV2Router02": "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D", "uniswapV3NftManager": "", @@ -70,18 +70,17 @@ "weth9": "0x9c3C9283D3e44854697Cd22D3Faa240Cfb032889", "zetaSwap": "", "zetaSwapBtcInbound": "", - "zetaToken": "0x000080383847bd75f91c168269aa74004877592f", + "zetaToken": "0x0000c9ec4042283e8139c74f4c64bcd1e0b9b54f", "zetaTokenConsumerUniV2": "", - "zetaTokenConsumerUniV3": "0xCa7185cA7AB06fA60060d4D65C50b6883cc70419" + "zetaTokenConsumerUniV3": "" }, - "ropsten": { + "klaytn-baobab": { "connector": "", "crossChainCounter": "", "crossChainNft": "", "dai": "", "immutableCreate2Factory": "", "multiChainSwap": "", - "multiChainSwapZetaConnector": "", "multiChainValue": "", "tridentPoolFactory": "", "tss": "", @@ -99,30 +98,6 @@ "zetaTokenConsumerUniV2": "", "zetaTokenConsumerUniV3": "" }, - "klaytn-baobab": { - "connector": "0x000054d3A0Bc83Ec7808F52fCdC28A96c89F6C5c", - "crossChainCounter": "", - "crossChainNft": "", - "dai": "", - "immutableCreate2Factory": "0x095a03c6a68137fE9a566bBc3e552F299d8b886d", - "multiChainSwap": "0xf254632444601120166809AB7B0A4fC59a3d8A61", - "multiChainValue": "0x4f97Bc7ed459111296583e92a62f17D20B20825d", - "tridentPoolFactory": "0x2be2C91cCA2df52b41a9e42723c46fD029359c95", - "tss": "0x7c125C1d515b8945841b3d5144a060115C58725F", - "tssUpdater": "0x7274d1d5dddef36aac53dd45b93487ce01ef0a55", - "uniswapV2Factory": "", - "uniswapV2Router02": "", - "uniswapV3NftManager": "", - "uniswapV3Quoter": "0x42271971dbF42fbfEaF7F428604a86760300cB5B", - "uniswapV3Router": "0x42271971dbF42fbfEaF7F428604a86760300cB5B", - "usdc": "", - "weth9": "0x0339d5Eb6D195Ba90B13ed1BCeAa97EbD198b106", - "zetaSwap": "", - "zetaSwapBtcInbound": "", - "zetaToken": "0x000080383847bD75F91c168269Aa74004877592f", - "zetaTokenConsumerUniV2": "", - "zetaTokenConsumerUniV3": "" - }, "athens": { "connector": "", "crossChainCounter": "", @@ -142,8 +117,8 @@ "uniswapV3Router": "", "usdc": "", "weth9": "0x5F0b1a82749cb4E2278EC87F8BF6B618dC71a8bf", - "zetaSwap": "0x71Ec5c05Aa669c4922569c1D33F7a81aaa218138", - "zetaSwapBtcInbound": "0x79c73Ba355f84feFFcDA2D2Cd4D61b9c795919Cc", + "zetaSwap": "0xd886b7Af031F9a505310bA01951948BD1d673aF1", + "zetaSwapBtcInbound": "0x064516547ECd3b2D1709e1b2798Aae92b1C8a84C", "zetaToken": "", "zetaTokenConsumerUniV2": "", "zetaTokenConsumerUniV3": "" diff --git a/packages/addresses/src/addresses.helpers.ts b/packages/addresses/src/addresses.helpers.ts index b6a9e437..a2dbd5cb 100644 --- a/packages/addresses/src/addresses.helpers.ts +++ b/packages/addresses/src/addresses.helpers.ts @@ -85,15 +85,13 @@ export type TestnetNetworkName = | "bsc-testnet" | "goerli" | "klaytn-baobab" - | "polygon-mumbai" - | "ropsten"; + | "polygon-mumbai"; export type ZetaTestnetNetworkName = "athens"; export type TestnetAddressGroup = Record; export const isTestnetNetworkName = (networkName: string): networkName is TestnetNetworkName => networkName === "goerli" || networkName === "bsc-testnet" || networkName === "polygon-mumbai" || - networkName === "ropsten" || networkName === "klaytn-baobab" || networkName === "athens"; export const isZetaTestnet = (networkName: string | undefined): networkName is ZetaTestnetNetworkName => @@ -139,8 +137,7 @@ export const getChainId = (networkName: NetworkName) => { "klaytn-baobab": 1001, "klaytn-cypress": 8217, "polygon-localnet": 80001, - "polygon-mumbai": 80001, - ropsten: 3 + "polygon-mumbai": 80001 }; return chainIds[networkName]; diff --git a/packages/example-contracts/lib/shared/network.constants.ts b/packages/example-contracts/lib/shared/network.constants.ts index c4489629..47319b47 100644 --- a/packages/example-contracts/lib/shared/network.constants.ts +++ b/packages/example-contracts/lib/shared/network.constants.ts @@ -81,12 +81,6 @@ export const networkVariables: Record = { connectorAddress: "", crossChainId: 0, crossChainName: "" - }, - ropsten: { - chainId: 0, - connectorAddress: "", - crossChainId: 0, - crossChainName: "" } }; diff --git a/packages/zeta-app-contracts/scripts/multi-chain-value/deploy.ts b/packages/zeta-app-contracts/scripts/multi-chain-value/deploy.ts index 1408ac04..cdc2158a 100644 --- a/packages/zeta-app-contracts/scripts/multi-chain-value/deploy.ts +++ b/packages/zeta-app-contracts/scripts/multi-chain-value/deploy.ts @@ -21,7 +21,6 @@ async function main() { const contract = (await Factory.deploy(connectorAddress, zetaTokenAddress)) as MultiChainValue; await contract.deployed(); - //@ts-expect-error console.log("MultiChainValue deployed to:", contract.address); if (isZetaTestnet(ZETA_NETWORK)) { @@ -42,7 +41,6 @@ async function main() { (await (await contract.addAvailableChainId(getChainId("athens"))).wait().catch((e: any) => console.error(e))); } - //@ts-expect-error saveAddress("multiChainValue", contract.address); } diff --git a/packages/zeta-app-contracts/scripts/multi-chain-value/send-value.ts b/packages/zeta-app-contracts/scripts/multi-chain-value/send-value.ts index 19dc237a..b1d0d28d 100644 --- a/packages/zeta-app-contracts/scripts/multi-chain-value/send-value.ts +++ b/packages/zeta-app-contracts/scripts/multi-chain-value/send-value.ts @@ -17,7 +17,8 @@ async function main() { const amount = parseEther("1"); - await zetaToken.approve(multiChainValueContract.address, amount.mul(10)); + const tx = await zetaToken.approve(multiChainValueContract.address, amount.mul(10)); + await tx.wait(); if (isZetaTestnet(ZETA_NETWORK)) { networkName !== "goerli" && @@ -56,10 +57,10 @@ async function main() { ) ).wait()); - networkName !== "ropsten" && + networkName !== "athens" && (await ( await multiChainValueContract.send( - getChainId("ropsten"), + getChainId("athens"), ethers.utils.solidityPack(["address"], [process.env.PUBLIC_KEY_1]), amount ) diff --git a/packages/zevm-app-contracts/scripts/deploy.ts b/packages/zevm-app-contracts/scripts/deploy.ts index 06d1f2b4..1f987b64 100644 --- a/packages/zevm-app-contracts/scripts/deploy.ts +++ b/packages/zevm-app-contracts/scripts/deploy.ts @@ -1,6 +1,7 @@ import { BigNumber } from "@ethersproject/bignumber"; import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/signers"; import { getChainId, isNetworkName, NetworkName } from "@zetachain/addresses"; +import { getSystemContractAddress } from "@zetachain/addresses-tools"; import { parseEther } from "ethers/lib/utils"; import { ethers, network } from "hardhat"; @@ -17,10 +18,7 @@ const networkName = network.name; const REWARD_DURATION = BigNumber.from("604800"); // 1 week const REWARDS_AMOUNT = parseEther("10"); -//@todo: this is here because need to import address pkg but this pkg will be move to new repo, -// so will refactor when it will be done - -export const SYSTEM_CONTRACT = "0x239e96c8f17C85c30100AC26F635Ea15f23E9c67"; +const SYSTEM_CONTRACT = getSystemContractAddress(); interface Pair { TokenA: string; diff --git a/packages/zevm-example-contracts/scripts/multi-output/deploy.ts b/packages/zevm-example-contracts/scripts/multi-output/deploy.ts index 82070567..63847095 100644 --- a/packages/zevm-example-contracts/scripts/multi-output/deploy.ts +++ b/packages/zevm-example-contracts/scripts/multi-output/deploy.ts @@ -1,10 +1,11 @@ +import { getSystemContractAddress } from "@zetachain/addresses-tools"; import { ethers } from "hardhat"; import { ZetaMultiOutput, ZetaMultiOutput__factory } from "../../typechain-types"; -import { SYSTEM_CONTRACT } from "../systemConstants"; const main = async () => { console.log(`Deploying MultiOutput...`); + const SYSTEM_CONTRACT = getSystemContractAddress(); const Factory = (await ethers.getContractFactory("ZetaMultiOutput")) as ZetaMultiOutput__factory; const contract = (await Factory.deploy(SYSTEM_CONTRACT)) as ZetaMultiOutput; diff --git a/packages/zevm-example-contracts/scripts/systemConstants.ts b/packages/zevm-example-contracts/scripts/systemConstants.ts deleted file mode 100644 index 9349b55e..00000000 --- a/packages/zevm-example-contracts/scripts/systemConstants.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { isNetworkName, NetworkName } from "@zetachain/addresses"; - -export const SYSTEM_CONTRACT = "0x239e96c8f17C85c30100AC26F635Ea15f23E9c67"; - -export type ZRC20 = "gETH" | "tBNB" | "tBTC" | "tMATIC"; - -export const ZRC20Addresses: Record = { - gETH: "0x91d18e54DAf4F677cB28167158d6dd21F6aB3921", - tBNB: "0x13A0c5930C028511Dc02665E7285134B6d11A5f4", - tBTC: "0x48f80608B672DC30DC7e3dbBd0343c5F02C738Eb", - tMATIC: "0xd97B1de3619ed2c6BEb3860147E30cA8A7dC9891" -}; - -export type SwappableNetwork = Extract; - -export const isSwappableNetwork = (network: string): network is SwappableNetwork => - network === "bitcoin-test" || network === "bsc-testnet" || network === "goerli" || network === "polygon-mumbai"; - -export const ChainToZRC20: Record = { - "bitcoin-test": "tBTC", - "bsc-testnet": "tBNB", - goerli: "gETH", - "polygon-mumbai": "tMATIC" -}; diff --git a/packages/zevm-example-contracts/scripts/zeta-swap/add-liquidity-zeta-uniswap.ts b/packages/zevm-example-contracts/scripts/zeta-swap/add-liquidity-zeta-uniswap.ts index 8a0815cb..787f8d69 100644 --- a/packages/zevm-example-contracts/scripts/zeta-swap/add-liquidity-zeta-uniswap.ts +++ b/packages/zevm-example-contracts/scripts/zeta-swap/add-liquidity-zeta-uniswap.ts @@ -4,7 +4,7 @@ import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/signers"; import { getChainId } from "@zetachain/addresses"; import { NetworkName } from "@zetachain/addresses"; import { getAddress } from "@zetachain/addresses"; -import { getGasSymbolByNetwork } from "@zetachain/addresses-tools"; +import { getGasSymbolByNetwork, getSystemContractAddress } from "@zetachain/addresses-tools"; import { BigNumber } from "ethers"; import { ethers } from "hardhat"; @@ -17,7 +17,8 @@ import { SystemContract__factory, UniswapV2Router02__factory } from "../../typechain-types"; -import { SYSTEM_CONTRACT } from "../systemConstants"; + +const SYSTEM_CONTRACT = getSystemContractAddress(); const BTC_TO_ADD = parseUnits("0", 8); const ETH_TO_ADD = parseUnits("1500"); diff --git a/packages/zevm-example-contracts/scripts/zeta-swap/deploy.ts b/packages/zevm-example-contracts/scripts/zeta-swap/deploy.ts index 3b88997e..27456e2a 100644 --- a/packages/zevm-example-contracts/scripts/zeta-swap/deploy.ts +++ b/packages/zevm-example-contracts/scripts/zeta-swap/deploy.ts @@ -1,11 +1,11 @@ -import { saveAddress } from "@zetachain/addresses-tools"; +import { getSystemContractAddress, saveAddress } from "@zetachain/addresses-tools"; import { ethers } from "hardhat"; import { ZetaSwap, ZetaSwap__factory, ZetaSwapBtcInbound, ZetaSwapBtcInbound__factory } from "../../typechain-types"; -import { SYSTEM_CONTRACT } from "../systemConstants"; const main = async () => { console.log(`Deploying ZetaSwap...`); + const SYSTEM_CONTRACT = getSystemContractAddress(); const Factory = (await ethers.getContractFactory("ZetaSwap")) as ZetaSwap__factory; const contract = (await Factory.deploy(SYSTEM_CONTRACT)) as ZetaSwap; diff --git a/packages/zevm-example-contracts/scripts/zeta-swap/get-system-data.ts b/packages/zevm-example-contracts/scripts/zeta-swap/get-system-data.ts index 42a71b7b..fddb9f7b 100644 --- a/packages/zevm-example-contracts/scripts/zeta-swap/get-system-data.ts +++ b/packages/zevm-example-contracts/scripts/zeta-swap/get-system-data.ts @@ -1,10 +1,9 @@ import { getChainId } from "@zetachain/addresses"; import { NetworkName } from "@zetachain/addresses"; -import { getGasSymbolByNetwork } from "@zetachain/addresses-tools"; +import { getGasSymbolByNetwork, getSystemContractAddress } from "@zetachain/addresses-tools"; import { ethers } from "hardhat"; import { SystemContract, SystemContract__factory } from "../../typechain-types"; -import { SYSTEM_CONTRACT } from "../systemConstants"; const getZRC20Address = async (systemContract: SystemContract, network: NetworkName) => { const tokenAddress = await systemContract.gasCoinZRC20ByChainId(getChainId(network)); @@ -15,6 +14,7 @@ const getZRC20Address = async (systemContract: SystemContract, network: NetworkN async function main() { const [deployer] = await ethers.getSigners(); + const SYSTEM_CONTRACT = getSystemContractAddress(); const systemContract = await SystemContract__factory.connect(SYSTEM_CONTRACT, deployer); const uniswapFactoryAddress = await systemContract.uniswapv2FactoryAddress(); diff --git a/packages/zevm-example-contracts/scripts/zeta-swap/stress-swap.ts b/packages/zevm-example-contracts/scripts/zeta-swap/stress-swap.ts index d76d3c77..3c55596b 100644 --- a/packages/zevm-example-contracts/scripts/zeta-swap/stress-swap.ts +++ b/packages/zevm-example-contracts/scripts/zeta-swap/stress-swap.ts @@ -11,11 +11,13 @@ import { BigNumber } from "@ethersproject/bignumber"; import { formatEther, parseEther } from "@ethersproject/units"; import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/signers"; import { getAddress } from "@zetachain/addresses"; +import { ChainToZRC20, getZRC20Address, isSwappableNetwork, SwappableNetwork } from "@zetachain/addresses-tools"; import { ethers, network } from "hardhat"; -import { ChainToZRC20, isSwappableNetwork, SwappableNetwork, ZRC20Addresses } from "../systemConstants"; import { getSwapData } from "./helpers"; +const ZRC20Addresses = getZRC20Address(); + interface SwapToChainParams { destinationNetwork: SwappableNetwork; nonce: number; diff --git a/packages/zevm-example-contracts/scripts/zeta-swap/swap-on-zevm.ts b/packages/zevm-example-contracts/scripts/zeta-swap/swap-on-zevm.ts index 0293cda2..14d660c9 100644 --- a/packages/zevm-example-contracts/scripts/zeta-swap/swap-on-zevm.ts +++ b/packages/zevm-example-contracts/scripts/zeta-swap/swap-on-zevm.ts @@ -1,11 +1,11 @@ import { BigNumber } from "@ethersproject/bignumber"; import { parseUnits } from "@ethersproject/units"; import { getAddress, isZetaNetworkName } from "@zetachain/addresses"; +import { getZRC20Address } from "@zetachain/addresses-tools"; import { ethers } from "hardhat"; import { network } from "hardhat"; import { ERC20__factory, ZetaSwap__factory, ZetaSwapBtcInbound__factory } from "../../typechain-types"; -import { ZRC20Addresses } from "../systemConstants"; import { getSwapParams } from "./helpers"; const USE_BTC_SWAP = true; @@ -14,6 +14,8 @@ const SAMPLE_MEMO = "0x25A92a5853702F199bb2d805Bba05d67025214A800000005"; // 0xA const main = async () => { if (!isZetaNetworkName(network.name) || !network.name) throw new Error("Invalid network name"); const [signer] = await ethers.getSigners(); + + const ZRC20Addresses = getZRC20Address(); const zetaSwap = getAddress({ address: USE_BTC_SWAP ? "zetaSwapBtcInbound" : "zetaSwap", networkName: "athens", diff --git a/packages/zevm-example-contracts/scripts/zeta-swap/swap.ts b/packages/zevm-example-contracts/scripts/zeta-swap/swap.ts index 0e4e475e..970af04c 100644 --- a/packages/zevm-example-contracts/scripts/zeta-swap/swap.ts +++ b/packages/zevm-example-contracts/scripts/zeta-swap/swap.ts @@ -1,14 +1,15 @@ import { BigNumber } from "@ethersproject/bignumber"; import { parseEther } from "@ethersproject/units"; import { getAddress, isNetworkName } from "@zetachain/addresses"; +import { getZRC20Address } from "@zetachain/addresses-tools"; import { ethers } from "hardhat"; import { network } from "hardhat"; -import { ZRC20Addresses } from "../systemConstants"; import { getSwapData } from "./helpers"; const main = async () => { if (!isNetworkName(network.name) || !network.name) throw new Error("Invalid network name"); + const ZRC20Addresses = getZRC20Address(); const destinationToken = network.name == "goerli" ? ZRC20Addresses["tMATIC"] : ZRC20Addresses["gETH"];