aftermath-ts-sdk 1.1.86 → 1.1.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -68,7 +68,7 @@ class NftAmmMarket extends caller_1.Caller {
68
68
  };
69
69
  this.getWithdrawFractionalizedCoinAmountOut = (inputs) => {
70
70
  const lpRatio = this.pool.getMultiCoinWithdrawLpRatio({
71
- lpCoinAmountOut: inputs.lpCoinAmount,
71
+ lpCoinAmountIn: inputs.lpCoinAmount,
72
72
  });
73
73
  const amountsOut = this.pool.getWithdrawAmountsOut({
74
74
  lpRatio,
@@ -628,7 +628,7 @@ class PoolsApi {
628
628
  referrer,
629
629
  });
630
630
  const lpRatio = pool.getMultiCoinWithdrawLpRatio({
631
- lpCoinAmountOut: lpCoinAmount,
631
+ lpCoinAmountIn: lpCoinAmount,
632
632
  });
633
633
  const amountsOut = pool.getWithdrawAmountsOut({
634
634
  lpRatio,
@@ -190,6 +190,11 @@ export declare class Pool extends Caller {
190
190
  amountsOutDirection: CoinsToBalance;
191
191
  referral?: boolean;
192
192
  }) => CoinsToBalance;
193
+ getWithdrawAmountsOutSimple: (inputs: {
194
+ lpCoinAmountIn: Balance;
195
+ coinTypesOut: CoinType[];
196
+ referral?: boolean;
197
+ }) => CoinsToBalance;
193
198
  /**
194
199
  * Calculates the output amounts for an all coin withdraw.
195
200
  * @param {Object} inputs - The inputs for the method.
@@ -204,20 +209,20 @@ export declare class Pool extends Caller {
204
209
  /**
205
210
  * Calculates the LP ratio for a multi-coin withdraw.
206
211
  * @param {Object} inputs - The inputs for the method.
207
- * @param {bigint} inputs.lpCoinAmountOut - The LP coin amount out.
212
+ * @param {bigint} inputs.lpCoinAmountIn - The LP coin amount out.
208
213
  * @returns {number} The LP ratio for the multi-coin withdraw.
209
214
  */
210
215
  getMultiCoinWithdrawLpRatio: (inputs: {
211
- lpCoinAmountOut: bigint;
216
+ lpCoinAmountIn: bigint;
212
217
  }) => number;
213
218
  /**
214
219
  * Calculates the LP ratio for an all coin withdraw.
215
220
  * @param {Object} inputs - The inputs for the method.
216
- * @param {bigint} inputs.lpCoinAmountOut - The LP coin amount out.
221
+ * @param {bigint} inputs.lpCoinAmountIn - The LP coin amount out.
217
222
  * @returns {number} The LP ratio for the all coin withdraw.
218
223
  */
219
224
  getAllCoinWithdrawLpRatio: (inputs: {
220
- lpCoinAmountOut: bigint;
225
+ lpCoinAmountIn: bigint;
221
226
  }) => number;
222
227
  daoFeePercentage: () => Percentage | undefined;
223
228
  daoFeeRecipient: () => SuiAddress | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/packages/pools/pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/packages/pools/pool.ts"],"names":[],"mappings":"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"}
@@ -161,6 +161,43 @@ class Pool extends caller_1.Caller {
161
161
  }
162
162
  return amountsOut;
163
163
  };
164
+ this.getWithdrawAmountsOutSimple = (inputs) => {
165
+ const { lpCoinAmountIn, coinTypesOut, referral } = inputs;
166
+ const lpCoinSupply = this.pool.lpCoinSupply;
167
+ let withdrawAmountsEstimates = {};
168
+ coinTypesOut.forEach((poolCoin) => {
169
+ const poolCoinAmountInPool = this.pool.coins[utils_1.Helpers.addLeadingZeroesToType(poolCoin)]
170
+ .balance;
171
+ const poolCoinAmount = Number(poolCoinAmountInPool) *
172
+ (Number(lpCoinAmountIn) / Number(lpCoinSupply));
173
+ withdrawAmountsEstimates[utils_1.Helpers.addLeadingZeroesToType(poolCoin)] =
174
+ BigInt(Math.floor(poolCoinAmount));
175
+ });
176
+ const lpRatio = this.getMultiCoinWithdrawLpRatio({
177
+ lpCoinAmountIn,
178
+ });
179
+ const amountsOut = this.getWithdrawAmountsOut({
180
+ lpRatio,
181
+ amountsOutDirection: withdrawAmountsEstimates,
182
+ referral,
183
+ });
184
+ for (const coin of Object.keys(amountsOut)) {
185
+ if (!coinTypesOut
186
+ .map((coinOut) => utils_1.Helpers.addLeadingZeroesToType(coinOut))
187
+ .includes(coin))
188
+ continue;
189
+ const amountOut = amountsOut[coin];
190
+ if (amountOut <= BigInt(0))
191
+ throw new Error(`amountsOut[${coin}] <= 0 `);
192
+ if (amountOut / this.pool.coins[coin].balance >=
193
+ _1.Pools.constants.bounds.maxWithdrawPercentageOfPoolBalance)
194
+ throw new Error("coinOutAmount / coinOutPoolBalance >= maxWithdrawPercentageOfPoolBalance");
195
+ amountsOut[coin] = this.getAmountWithDAOFee({
196
+ amount: amountOut,
197
+ });
198
+ }
199
+ return amountsOut;
200
+ };
164
201
  /**
165
202
  * Calculates the output amounts for an all coin withdraw.
166
203
  * @param {Object} inputs - The inputs for the method.
@@ -181,18 +218,18 @@ class Pool extends caller_1.Caller {
181
218
  /**
182
219
  * Calculates the LP ratio for a multi-coin withdraw.
183
220
  * @param {Object} inputs - The inputs for the method.
184
- * @param {bigint} inputs.lpCoinAmountOut - The LP coin amount out.
221
+ * @param {bigint} inputs.lpCoinAmountIn - The LP coin amount out.
185
222
  * @returns {number} The LP ratio for the multi-coin withdraw.
186
223
  */
187
- this.getMultiCoinWithdrawLpRatio = (inputs) => Number(this.pool.lpCoinSupply - inputs.lpCoinAmountOut) /
224
+ this.getMultiCoinWithdrawLpRatio = (inputs) => Number(this.pool.lpCoinSupply - inputs.lpCoinAmountIn) /
188
225
  Number(this.pool.lpCoinSupply);
189
226
  /**
190
227
  * Calculates the LP ratio for an all coin withdraw.
191
228
  * @param {Object} inputs - The inputs for the method.
192
- * @param {bigint} inputs.lpCoinAmountOut - The LP coin amount out.
229
+ * @param {bigint} inputs.lpCoinAmountIn - The LP coin amount out.
193
230
  * @returns {number} The LP ratio for the all coin withdraw.
194
231
  */
195
- this.getAllCoinWithdrawLpRatio = (inputs) => Number(inputs.lpCoinAmountOut) / Number(this.pool.lpCoinSupply);
232
+ this.getAllCoinWithdrawLpRatio = (inputs) => Number(inputs.lpCoinAmountIn) / Number(this.pool.lpCoinSupply);
196
233
  // =========================================================================
197
234
  // Getters
198
235
  // =========================================================================
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aftermath-ts-sdk",
3
- "version": "1.1.86",
3
+ "version": "1.1.88",
4
4
  "description": "Aftermath TypeScript SDK",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",