UNPKG

@okxweb3/coin-stellar

Version:

@ok/coin-stellar is a Stellar SDK for building Web3 wallets and applications. It supports Stellar and PI blockchains, enabling private key management, address generation, transaction signing, trustline creation, and asset transfers

34 lines 1.6 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.liquidityPoolWithdraw = void 0; const xdr_1 = __importDefault(require("../xdr")); function liquidityPoolWithdraw(opts = {}) { const attributes = {}; if (!opts.liquidityPoolId) { throw new TypeError('liquidityPoolId argument is required'); } attributes.liquidityPoolId = xdr_1.default.PoolId.fromXDR(opts.liquidityPoolId, 'hex'); if (!this.isValidAmount(opts.amount)) { throw new TypeError(this.constructAmountRequirementsError('amount')); } attributes.amount = this._toXDRAmount(opts.amount); if (!this.isValidAmount(opts.minAmountA, true)) { throw new TypeError(this.constructAmountRequirementsError('minAmountA')); } attributes.minAmountA = this._toXDRAmount(opts.minAmountA); if (!this.isValidAmount(opts.minAmountB, true)) { throw new TypeError(this.constructAmountRequirementsError('minAmountB')); } attributes.minAmountB = this._toXDRAmount(opts.minAmountB); const liquidityPoolWithdrawOp = new xdr_1.default.LiquidityPoolWithdrawOp(attributes); const opAttributes = { body: xdr_1.default.OperationBody.liquidityPoolWithdraw(liquidityPoolWithdrawOp) }; this.setSourceAccount(opAttributes, opts); return new xdr_1.default.Operation(opAttributes); } exports.liquidityPoolWithdraw = liquidityPoolWithdraw; //# sourceMappingURL=liquidity_pool_withdraw.js.map