Pnuttaste/Interchain-message/scripts/deploy/deployEth.ts
Mista J df8039f494 new file: Interchain-message/.env.example
new file:   Interchain-message/.eslintrc.js
	new file:   Interchain-message/.gitignore
	new file:   Interchain-message/.prettierrc
	new file:   Interchain-message/.solhint.json
	new file:   Interchain-message/.solhintignore
	new file:   Interchain-message/contracts/interfaces/IBridge.sol
	new file:   Interchain-message/contracts/interfaces/IMessageBus.sol
	new file:   Interchain-message/contracts/interfaces/IMessageReceiverApp.sol
	new file:   Interchain-message/contracts/interfaces/IUniswapRouterV3.sol
	new file:   Interchain-message/contracts/interfaces/IWETH.sol
	new file:   Interchain-message/contracts/message/apps/BridgeSwap.sol
	new file:   Interchain-message/contracts/message/apps/RubicRouterV2.sol
	new file:   Interchain-message/contracts/message/apps/RubicRouterV2ETH.sol
	new file:   Interchain-message/contracts/message/apps/SwapBase.sol
	new file:   Interchain-message/contracts/message/apps/TransferSwapInch.sol
	new file:   Interchain-message/contracts/message/apps/TransferSwapV2.sol
	new file:   Interchain-message/contracts/message/apps/TransferSwapV3.sol
	new file:   Interchain-message/contracts/message/framework/MessageReceiverApp.sol
	new file:   Interchain-message/contracts/message/framework/MessageSenderApp.sol
	new file:   Interchain-message/contracts/message/libraries/MessageSenderLib.sol
	new file:   Interchain-message/contracts/message/libraries/MsgDataTypes.sol
	new file:   Interchain-message/contracts/test/MessageBusSender.sol
	new file:   Interchain-message/contracts/test/TestERC20.sol
	new file:   Interchain-message/contracts/test/TestMessages.sol
	new file:   Interchain-message/contracts/test/WETH9.sol
	new file:   Interchain-message/deployments/Readme.md
	new file:   Interchain-message/executor/config/cbridge.toml
	new file:   Interchain-message/executor/config/executor.toml
	new file:   Interchain-message/executor/eth-ks/signer.json
	new file:   Interchain-message/hardhat.config.ts
	new file:   Interchain-message/package-lock.json
	new file:   Interchain-message/package.json
	new file:   Interchain-message/reports/contract_sizes.txt
	new file:   Interchain-message/reports/gas_usage/summary.txt
	new file:   Interchain-message/scripts/deploy/deploy.js
	new file:   Interchain-message/scripts/deploy/deployAVAX.ts
	new file:   Interchain-message/scripts/deploy/deployArbitrum.ts
	new file:   Interchain-message/scripts/deploy/deployAurora.ts
	new file:   Interchain-message/scripts/deploy/deployBSC.ts
	new file:   Interchain-message/scripts/deploy/deployEth.ts
	new file:   Interchain-message/scripts/deploy/deployFantom.ts
	new file:   Interchain-message/scripts/deploy/deployPoly.ts
	new file:   Interchain-message/scripts/privateKey.js
	new file:   Interchain-message/scripts/sendTx/avaxToFantomBridge.js
	new file:   Interchain-message/scripts/sendTx/avaxToFantomNativeV2.js
	new file:   Interchain-message/test/RubicCrossChainBridge.spec.ts
	new file:   Interchain-message/test/RubicCrossChainV2.spec.ts
	new file:   Interchain-message/test/RubicCrossChainV3.spec.ts
	new file:   Interchain-message/test/RubicFallback.spec.ts
	new file:   Interchain-message/test/RubicSettings.spec.ts
	new file:   Interchain-message/test/shared/consts.ts
	new file:   Interchain-message/test/shared/fixtures.ts
	new file:   Interchain-message/test/shared/utils.ts
	new file:   Interchain-message/tsconfig.json
	deleted:    Rubic-Inter-chain-Message-develop.zip
	deleted:    proxy-instant-trades-master.zip
	deleted:    rubic-app-master.zip
	deleted:    rubic-sdk-master.zip
2024-07-09 17:32:00 -04:00

75 lines
2.3 KiB
TypeScript

import { ethers } from 'hardhat';
const hre = require('hardhat');
async function main() {
const CrossChainSwap = await hre.ethers.getContractFactory('RubicRouterV2');
/*
* constructor
* address _messageBus,
* address[] memory _supportedDEXes,
* address _nativeWrap
*/
// ETH 1
// MessageBus 0x4066D196A423b2b3B8B054f4F40efB47a74E200C
// WETH native token address in ETHEREUM: 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
// USDC token address in Eth: 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
// SUSHI: 0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F
const CrossChainSwapDeploy = await CrossChainSwap.deploy(
ethers.utils.parseEther('1').div('1000'),
'3000', // 0.3%
[
'0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D',
'0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F',
'0xE592427A0AEce92De3Edee1F18E0157C05861564',
'0x1111111254fb6c44bAC0beD2854e76F90643097d'
],
[],
[],
[],
[],
[],
'0x503cef47ce5e37aa62544a363bef3c9b62d42116',
'0x4066D196A423b2b3B8B054f4F40efB47a74E200C',
'0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2'
);
await CrossChainSwapDeploy.deployed();
console.log('CrossChainSwapDeploy deployed to:', CrossChainSwapDeploy.address);
await new Promise(r => setTimeout(r, 10000));
await hre.run('verify:verify', {
address: CrossChainSwapDeploy.address,
constructorArguments: [
ethers.utils.parseEther('1').div('1000'),
'3000', // 0.3%
[
'0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D',
'0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F',
'0xE592427A0AEce92De3Edee1F18E0157C05861564',
'0x1111111254fb6c44bAC0beD2854e76F90643097d'
],
[],
[],
[],
[],
[],
'0x503cef47ce5e37aa62544a363bef3c9b62d42116',
'0x4066D196A423b2b3B8B054f4F40efB47a74E200C',
'0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2'
]
});
}
// We recommend this pattern to be able to use async/await everywhere
// and properly handle errors.
main()
.then(() => process.exit(0))
.catch(error => {
console.error(error);
process.exit(1);
});