UNPKG

@bluefin-exchange/bluefin7k-aggregator-sdk

Version:
25 lines (24 loc) 987 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.StSuiContract = void 0; const utils_1 = require("@mysten/sui/utils"); const base_1 = require("../base"); class StSuiContract extends base_1.BaseContract { async swap(tx) { // coinX is always SUI const coinY = this.swapInfo.pool.allTokens[1]; const isStake = this.swapInfo.swapXtoY; const { package: PACKAGE_ID } = this.config.stsui; const [coinOut] = tx.moveCall({ target: `${PACKAGE_ID}::liquid_staking::${isStake ? "mint" : "redeem"}`, typeArguments: [coinY.address], arguments: [ tx.object(this.swapInfo.poolId), isStake ? tx.object(utils_1.SUI_SYSTEM_STATE_OBJECT_ID) : this.inputCoinObject, isStake ? this.inputCoinObject : tx.object(utils_1.SUI_SYSTEM_STATE_OBJECT_ID), ], }); return coinOut; } } exports.StSuiContract = StSuiContract;