UNPKG

@accret/bridge-sdk

Version:
31 lines 1.33 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildTransaction = buildTransaction; exports.executeSwap = executeSwap; const web3_js_1 = require("@solana/web3.js"); const axios_1 = __importDefault(require("axios")); const ethers_1 = require("ethers"); const constants_1 = require("../../constants"); const sendSolanaTx_1 = require("../../utils/sendSolanaTx"); async function buildTransaction({ userPublicKey, quoteResponse, }) { const params = { userPublicKey: userPublicKey, quoteResponse: quoteResponse, }; const response = await axios_1.default.post(`${constants_1.JUPITER_API_URL}/swap/v1/swap`, params); return response.data; } async function executeSwap(params) { const { quote, privateKey } = params; const wallet = web3_js_1.Keypair.fromSecretKey((0, ethers_1.decodeBase64)(privateKey)); const swapResponse = await buildTransaction({ userPublicKey: wallet.publicKey.toBase58(), quoteResponse: quote, }); const transaction = await (0, sendSolanaTx_1.sendTransaction)(swapResponse.swapTransaction, wallet); return transaction; } //# sourceMappingURL=buildTransaction.js.map