UNPKG

emmet.sdk

Version:
31 lines 1.22 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.transferERC20 = void 0; const FTBridge_1 = __importDefault(require("../../abi/FTBridge")); const types_1 = require("../../types"); const format_1 = require("../format"); const config_1 = require("./config"); async function transferERC20(fromChain, toChainName, tokenName, amount, receiver) { const { chain, publicClient, signer } = await (0, config_1.config)(fromChain); const chainId = types_1.BridgeChainIds[(0, format_1.formatChainName)(toChainName)]; const bridgeAddress = chain.bridge; const args = [[ BigInt(amount), chainId, tokenName.toUpperCase(), receiver ]]; const { request } = await publicClient.simulateContract({ address: `0x${bridgeAddress.slice(2)}`, abi: FTBridge_1.default, functionName: 'sendInstallment', args, chain, }); return await signer.writeContract(request); } exports.transferERC20 = transferERC20; //# sourceMappingURL=transferERC20.js.map