Pnuttaste/Interchain-message/scripts/sendTx/avaxToFantomBridge.js

78 lines
2.5 KiB
JavaScript
Raw Normal View History

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 21:32:00 +00:00
const hre = require("hardhat");
async function main() {
const CrossChainSwap = await hre.ethers.getContractFactory("SwapMain");
/*
* constructor
* address _messageBus,
* address[] memory _supportedDEXes,
* address _nativeWrap
*/
// AVALANCHE 43114
// MessageBus 0x5a926eeeAFc4D217ADd17e9641e8cE23Cd01Ad57
// WAVAX native token address in AVALANCHE: 0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7
// USDC token address in AVALANCHE: 0xA7D7079b0FEaD91F3e65f86E8915Cb59c1a4C664
// SUSHI: 0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506
// FTM Fantom 250
// MessageBus 0xFF4E183a0Ceb4Fa98E63BbF8077B929c8E5A2bA4
// FTM native token address in BSC: 0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83
// USDC token address in BSC: 0x04068DA6C83AFCFA0e13ba15A6696662335D5B75
// SUSHI: 0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506
const address = '';
const crossChainSwap = await CrossChainSwap.attach(address);
// src bridge --- dst swap
await crossChainSwap.bridgeWithSwap(
0x93f56C28b66Fa3EEF980ab11a8a0E9D09c6576f5,
21000000000000000000,
43114,
'0x04068DA6C83AFCFA0e13ba15A6696662335D5B75',
['0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506',
'0x0000000000000000000000000000000000000000',
'1',
['0xA7D7079b0FEaD91F3e65f86E8915Cb59c1a4C664', '0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7'],
'0x',
'999999999999999',
'0'
],
1000000,
true,
{value: 21.00001}
);
// src bridge --- dst bridge
await crossChainSwap.bridgeWithSwap(
0x93f56C28b66Fa3EEF980ab11a8a0E9D09c6576f5,
21000000000000000000,
43114,
'0x04068DA6C83AFCFA0e13ba15A6696662335D5B75',
['0x0000000000000000000000000000000000000000', // no need in dex
'0x0000000000000000000000000000000000000000', // without integrator
'4', // bridge
['0xA7D7079b0FEaD91F3e65f86E8915Cb59c1a4C664'],
'0x', // no need in bytes data
'0', // no need in deadline
'0' // no need in amountOut min
],
1000000,
true,
{value: 21.00001}
);
await new Promise(r => setTimeout(r, 10000));
}
// 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);
});