aftermath-ts-sdk 0.0.138 → 0.0.139

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.
@@ -30,6 +30,13 @@ export declare class PoolsApi {
30
30
  slippage: Slippage;
31
31
  referrer?: SuiAddress;
32
32
  }) => Promise<SerializedTransaction>;
33
+ fetchAllCoinWithdrawTransaction: (inputs: {
34
+ walletAddress: SuiAddress;
35
+ pool: Pool;
36
+ lpCoinAmount: Balance;
37
+ slippage: Slippage;
38
+ referrer?: SuiAddress;
39
+ }) => Promise<SerializedTransaction>;
33
40
  fetchTradeTransaction: (inputs: {
34
41
  walletAddress: SuiAddress;
35
42
  pool: Pool;
@@ -1 +1 @@
1
- {"version":3,"file":"poolsApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/api/poolsApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolsApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/api/poolsApi.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,10 @@ class PoolsApi {
107
107
  const transaction = yield this.Helpers.fetchBuildWithdrawTx(inputs);
108
108
  return this.Provider.Transactions().fetchSetGasBudgetAndSerializeTransaction(transaction);
109
109
  });
110
+ this.fetchAllCoinWithdrawTransaction = (inputs) => __awaiter(this, void 0, void 0, function* () {
111
+ const transaction = yield this.Helpers.fetchBuildAllCoinWithdrawTx(inputs);
112
+ return this.Provider.Transactions().fetchSetGasBudgetAndSerializeTransaction(transaction);
113
+ });
110
114
  this.fetchTradeTransaction = (inputs) => __awaiter(this, void 0, void 0, function* () {
111
115
  const transaction = yield this.Helpers.fetchBuildTradeTx(inputs);
112
116
  return this.Provider.Transactions().fetchSetGasBudgetAndSerializeTransaction(transaction);
@@ -188,15 +192,34 @@ class PoolsApi {
188
192
  // TODO: rename this function and/or move it ?
189
193
  this.fetchLpCoinsToPrice = (provider, lpCoins) => __awaiter(this, void 0, void 0, function* () {
190
194
  // PRODUCTION: remove all notions of sdk from api functions !
191
- const lpCoinPoolObjectIds = yield Promise.all(lpCoins.map((lpCoinType) => provider.Pools().getPoolObjectIdForLpCoinType({ lpCoinType })));
195
+ const unsafeLpCoinPoolObjectIds = yield Promise.all(lpCoins.map((lpCoinType) => __awaiter(this, void 0, void 0, function* () {
196
+ try {
197
+ return yield provider
198
+ .Pools()
199
+ .getPoolObjectIdForLpCoinType({ lpCoinType });
200
+ }
201
+ catch (e) {
202
+ return "";
203
+ }
204
+ })));
205
+ const safeIndexes = [];
206
+ const lpCoinPoolObjectIds = unsafeLpCoinPoolObjectIds.filter((id, index) => {
207
+ const isValid = id !== "";
208
+ if (isValid)
209
+ safeIndexes.push(index);
210
+ return isValid;
211
+ });
192
212
  const lpCoinPools = yield provider
193
213
  .Pools()
194
214
  .getPools({ objectIds: lpCoinPoolObjectIds });
195
215
  const poolStats = yield Promise.all(lpCoinPools.map((lpPool) => lpPool.getStats()));
196
216
  let lpCoinsToPrice = {};
197
217
  for (const [index, lpCoin] of lpCoins.entries()) {
198
- const stats = poolStats[index];
199
- lpCoinsToPrice = Object.assign(Object.assign({}, lpCoinsToPrice), { [lpCoin]: stats.lpPrice });
218
+ let coinPrice = -1;
219
+ if (safeIndexes.includes(index)) {
220
+ coinPrice = poolStats[index].lpPrice;
221
+ }
222
+ lpCoinsToPrice = Object.assign(Object.assign({}, lpCoinsToPrice), { [lpCoin]: coinPrice });
200
223
  }
201
224
  return lpCoinsToPrice;
202
225
  });
@@ -46,10 +46,18 @@ export declare class PoolsApiHelpers {
46
46
  lpCoinId: ObjectId | TransactionArgument;
47
47
  lpCoinType: CoinType;
48
48
  expectedAmountsOut: Balance[];
49
- coinsOutType: CoinType[];
49
+ coinTypes: CoinType[];
50
50
  slippage: Slippage;
51
51
  withTransfer?: boolean;
52
52
  }) => TransactionArgument;
53
+ allCoinWithdrawTx: (inputs: {
54
+ tx: TransactionBlock;
55
+ poolId: ObjectId;
56
+ lpCoinId: ObjectId | TransactionArgument;
57
+ lpCoinType: CoinType;
58
+ coinTypes: CoinType[];
59
+ withTransfer?: boolean;
60
+ }) => TransactionArgument;
53
61
  publishLpCoinTx: (inputs: {
54
62
  tx: TransactionBlock;
55
63
  }) => ({
@@ -150,6 +158,12 @@ export declare class PoolsApiHelpers {
150
158
  slippage: Slippage;
151
159
  referrer?: SuiAddress;
152
160
  }) => Promise<TransactionBlock>;
161
+ fetchBuildAllCoinWithdrawTx: (inputs: {
162
+ walletAddress: SuiAddress;
163
+ pool: Pool;
164
+ lpCoinAmount: Balance;
165
+ referrer?: SuiAddress;
166
+ }) => Promise<TransactionBlock>;
153
167
  buildPublishLpCoinTx: (inputs: {
154
168
  walletAddress: SuiAddress;
155
169
  }) => TransactionBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"poolsApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/api/poolsApiHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolsApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/api/poolsApiHelpers.ts"],"names":[],"mappings":"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"}
@@ -53,7 +53,8 @@ class PoolsApiHelpers {
53
53
  const objectIds = yield this.Provider.Events().fetchAllEvents((cursor, limit) => this.Provider.Events().fetchCastEventsWithCursor({
54
54
  MoveEventType: eventsApiHelpers_1.EventsApiHelpers.createEventType(this.addresses.pools.packages.amm, "events", "CreatedPoolEvent"),
55
55
  }, (eventOnChain) => eventOnChain.parsedJson.pool_id, cursor, limit));
56
- return objectIds;
56
+ const filteredIds = objectIds.filter((id) => !PoolsApiHelpers.constants.blacklistedPoolIds.includes(id));
57
+ return filteredIds;
57
58
  });
58
59
  /////////////////////////////////////////////////////////////////////
59
60
  //// Dev Inspects
@@ -118,8 +119,8 @@ class PoolsApiHelpers {
118
119
  });
119
120
  };
120
121
  this.multiCoinWithdrawTx = (inputs) => {
121
- const { tx, poolId, lpCoinId, expectedAmountsOut, coinsOutType, lpCoinType, slippage, withTransfer, } = inputs;
122
- const poolSize = coinsOutType.length;
122
+ const { tx, poolId, lpCoinId, expectedAmountsOut, coinTypes, lpCoinType, slippage, withTransfer, } = inputs;
123
+ const poolSize = coinTypes.length;
123
124
  return tx.add({
124
125
  kind: "MoveCall",
125
126
  target: utils_1.Helpers.transactions.createTransactionTarget(withTransfer
@@ -127,7 +128,7 @@ class PoolsApiHelpers {
127
128
  : this.addresses.pools.packages.amm, withTransfer
128
129
  ? PoolsApiHelpers.constants.moduleNames.interface
129
130
  : PoolsApiHelpers.constants.moduleNames.withdraw, `withdraw_${poolSize}_coins`),
130
- typeArguments: [lpCoinType, ...coinsOutType],
131
+ typeArguments: [lpCoinType, ...coinTypes],
131
132
  arguments: [
132
133
  tx.object(poolId),
133
134
  tx.object(this.addresses.pools.objects.poolRegistry),
@@ -141,9 +142,31 @@ class PoolsApiHelpers {
141
142
  ],
142
143
  });
143
144
  };
145
+ this.allCoinWithdrawTx = (inputs) => {
146
+ const { tx, poolId, lpCoinId, coinTypes, lpCoinType, withTransfer } = inputs;
147
+ const poolSize = coinTypes.length;
148
+ return tx.add({
149
+ kind: "MoveCall",
150
+ target: utils_1.Helpers.transactions.createTransactionTarget(withTransfer
151
+ ? this.addresses.pools.packages.ammInterface
152
+ : this.addresses.pools.packages.amm, withTransfer
153
+ ? PoolsApiHelpers.constants.moduleNames.interface
154
+ : PoolsApiHelpers.constants.moduleNames.withdraw, `all_coin_withdraw_${poolSize}_coins`),
155
+ typeArguments: [lpCoinType, ...coinTypes],
156
+ arguments: [
157
+ tx.object(poolId),
158
+ tx.object(this.addresses.pools.objects.poolRegistry),
159
+ tx.object(this.addresses.pools.objects.protocolFeeVault),
160
+ tx.object(this.addresses.pools.objects.treasury),
161
+ tx.object(this.addresses.pools.objects.insuranceFund),
162
+ tx.object(this.addresses.referralVault.objects.referralVault),
163
+ typeof lpCoinId === "string" ? tx.object(lpCoinId) : lpCoinId,
164
+ ],
165
+ });
166
+ };
144
167
  this.publishLpCoinTx = (inputs) => {
145
168
  const { tx } = inputs;
146
- const compiledModulesAndDeps = JSON.parse(`{"modules":["oRzrCwYAAAAJAQAGAgYIAw4LBBkCBRsQBytPCHpgCtoBBQzfAQ0AAgIDAQcAAAIAAgECAAAGAAEAAQQDAQECAQICCAAHCAEAAQgAAgkABwgBBUFGX0xQCVR4Q29udGV4dAVhZl9scA1hbW1faW50ZXJmYWNlDmNyZWF0ZV9scF9jb2luC2R1bW15X2ZpZWxkBGluaXQKdHhfY29udGV4dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSGtSCGxSkXYC0/yRf8awt+oAmrsP3RxZjHuO/XNom1AACAQUBAAAAAAEECwALATgAAgA="],"dependencies":["0x66b4bc89ea0b5269b5f062eddd7f42f100df85121906104fbdba6d43c8b6d45f","0x921ad4821b14a45d80b4ff245ff1ac2dfa8026aec3f74716631ee3bf5cda26d4","0x321a50c956db8b0b8fe53af2756e33212e18ea1a6ba82b9dd4308114b6944289","0x0000000000000000000000000000000000000000000000000000000000000001","0xd017a79cc5f7a2108da262921ae6397cfb252a58d70eb8cbcaefba3ea821394b","0x484d68333fe65c4910a5c708c9aa6469bfc59d343bc5ed898a18226ae422959f","0x0000000000000000000000000000000000000000000000000000000000000002","0x0000000000000000000000000000000000000000000000000000000000000003","0x373c265b27110d08e500ebb2a2e40aab08e1dd7d7f40eb878094ed260c4e5afa","0x98ce01359788d3b0bb7963832aec636d4865087c1971ac687cfeae13eba76e0f"],"digest":[198,111,64,73,135,80,243,246,232,194,92,89,122,230,95,41,203,135,103,8,227,133,230,153,52,142,209,199,76,64,227,67]}`);
169
+ const compiledModulesAndDeps = JSON.parse(`{"modules":["oRzrCwYAAAAJAQAGAgYIAw4LBBkCBRsQBytPCHpgCtoBBQzfAQ0AAgIDAQcAAAIAAgECAAAGAAEAAQQDAQECAQICCAAHCAEAAQgAAgkABwgBBUFGX0xQCVR4Q29udGV4dAVhZl9scA1hbW1faW50ZXJmYWNlDmNyZWF0ZV9scF9jb2luC2R1bW15X2ZpZWxkBGluaXQKdHhfY29udGV4dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITrjjbvbkwWswAhXLcNgQmxJj+yuKv50mWJoNBcn191gACAQUBAAAAAAEECwALATgAAgA="],"dependencies":["0xadf8553fc429ed873633d18df297b8c1081f7d9080c60e9f70296bc464b6aeec","0x13ae38dbbdb9305acc008572dc360426c498fecae2afe74996268341727d7dd6","0x321a50c956db8b0b8fe53af2756e33212e18ea1a6ba82b9dd4308114b6944289","0x0000000000000000000000000000000000000000000000000000000000000001","0x3f84a34a349dfc02cf3f7b90d13a7b81e4956c9d5b77345ae251d79f1db1e44d","0x484d68333fe65c4910a5c708c9aa6469bfc59d343bc5ed898a18226ae422959f","0x0000000000000000000000000000000000000000000000000000000000000002","0x0000000000000000000000000000000000000000000000000000000000000003","0x373c265b27110d08e500ebb2a2e40aab08e1dd7d7f40eb878094ed260c4e5afa","0x543763e9d064c12274dc08a8099824f90cba4334190b805fd360e0d34dad0309"],"digest":[23,92,91,106,221,67,5,140,177,219,29,237,180,148,146,248,27,194,142,243,33,50,220,35,113,82,255,83,103,114,27,201]}`);
147
170
  return tx.publish({
148
171
  modules: compiledModulesAndDeps.modules.map((m) => Array.from((0, sui_js_1.fromB64)(m))),
149
172
  dependencies: compiledModulesAndDeps.dependencies.map((addr) => (0, sui_js_1.normalizeSuiObjectId)(addr)),
@@ -282,13 +305,39 @@ class PoolsApiHelpers {
282
305
  poolId: pool.pool.objectId,
283
306
  lpCoinType: pool.pool.lpCoinType,
284
307
  expectedAmountsOut: coinAmounts,
285
- coinsOutType: coinTypes,
308
+ coinTypes: coinTypes,
286
309
  lpCoinId,
287
310
  slippage,
288
311
  withTransfer: true,
289
312
  });
290
313
  return tx;
291
314
  });
315
+ this.fetchBuildAllCoinWithdrawTx = (inputs) => __awaiter(this, void 0, void 0, function* () {
316
+ const { walletAddress, pool, lpCoinAmount, referrer } = inputs;
317
+ const tx = new sui_js_1.TransactionBlock();
318
+ tx.setSender(walletAddress);
319
+ if (referrer)
320
+ this.Provider.ReferralVault().Helpers.addUpdateReferrerCommandToTransaction({
321
+ tx,
322
+ referrer,
323
+ });
324
+ const lpCoinId = yield this.Provider.Coin().Helpers.fetchCoinWithAmountTx({
325
+ tx,
326
+ walletAddress,
327
+ coinType: pool.pool.lpCoinType,
328
+ coinAmount: lpCoinAmount,
329
+ });
330
+ const coinTypes = Object.keys(pool.pool.coins);
331
+ this.allCoinWithdrawTx({
332
+ tx,
333
+ poolId: pool.pool.objectId,
334
+ lpCoinType: pool.pool.lpCoinType,
335
+ coinTypes,
336
+ lpCoinId,
337
+ withTransfer: true,
338
+ });
339
+ return tx;
340
+ });
292
341
  this.buildPublishLpCoinTx = (inputs) => {
293
342
  const tx = new sui_js_1.TransactionBlock();
294
343
  tx.setSender(inputs.walletAddress);
@@ -474,4 +523,5 @@ PoolsApiHelpers.constants = {
474
523
  withdraw: "WithdrawEvent",
475
524
  },
476
525
  defaultLpCoinIconImageUrl: "https://aftermath.finance/coins/lp/af_lp.svg",
526
+ blacklistedPoolIds: [""],
477
527
  };
@@ -1,4 +1,4 @@
1
- import { ApiPoolDepositBody, ApiPoolTradeBody, ApiPoolWithdrawBody, Balance, CoinType, CoinsToBalance, PoolDataPoint, PoolVolumeDataTimeframeKey, PoolObject, PoolStats, ApiEventsBody, PoolDepositEvent, PoolWithdrawEvent, PoolTradeEvent } from "../../types";
1
+ import { ApiPoolDepositBody, ApiPoolTradeBody, ApiPoolWithdrawBody, Balance, CoinType, CoinsToBalance, PoolDataPoint, PoolVolumeDataTimeframeKey, PoolObject, PoolStats, ApiEventsBody, PoolDepositEvent, PoolWithdrawEvent, PoolTradeEvent, ApiPoolAllCoinWithdrawBody } from "../../types";
2
2
  import { Caller } from "../../general/utils/caller";
3
3
  export declare class Pool extends Caller {
4
4
  readonly pool: PoolObject;
@@ -13,6 +13,7 @@ export declare class Pool extends Caller {
13
13
  }): Promise<PoolDataPoint[]>;
14
14
  getDepositTransaction(inputs: ApiPoolDepositBody): Promise<import("@mysten/sui.js").TransactionBlock>;
15
15
  getWithdrawTransaction(inputs: ApiPoolWithdrawBody): Promise<import("@mysten/sui.js").TransactionBlock>;
16
+ getAllCoinWithdrawTransaction(inputs: ApiPoolAllCoinWithdrawBody): Promise<import("@mysten/sui.js").TransactionBlock>;
16
17
  getTradeTransaction(inputs: ApiPoolTradeBody): Promise<import("@mysten/sui.js").TransactionBlock>;
17
18
  getDepositEvents(inputs: ApiEventsBody): Promise<{
18
19
  events: PoolDepositEvent[];
@@ -64,6 +65,10 @@ export declare class Pool extends Caller {
64
65
  amountsOutDirection: CoinsToBalance;
65
66
  referral?: boolean;
66
67
  }) => CoinsToBalance;
68
+ getAllCoinWithdrawAmountsOut: (inputs: {
69
+ lpRatio: number;
70
+ referral?: boolean;
71
+ }) => CoinsToBalance;
67
72
  getWithdrawLpRatio: (inputs: {
68
73
  lpCoinAmountOut: bigint;
69
74
  }) => number;
@@ -1 +1 @@
1
- {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/packages/pools/pool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,cAAc,EACd,aAAa,EACb,0BAA0B,EAC1B,UAAU,EACV,SAAS,EAET,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EAEd,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAIpD,qBAAa,IAAK,SAAQ,MAAM;aAoBd,IAAI,EAAE,UAAU;aAChB,OAAO,CAAC;IAhBzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAE/B;IAMK,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;gBAOnB,IAAI,EAAE,UAAU,EAChB,OAAO,CAAC,oBAAkB;IAU9B,QAAQ;IAId,QAAQ,CAAC,KAAK,EAAE,SAAS;IAInB,SAAS,CAAC,MAAM,EAAE;QAC9B,SAAS,EAAE,0BAA0B,CAAC;KACtC,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQf,qBAAqB,CAAC,MAAM,EAAE,kBAAkB;IAOhD,sBAAsB,CAAC,MAAM,EAAE,mBAAmB;IAOlD,mBAAmB,CAAC,MAAM,EAAE,gBAAgB;IAW5C,gBAAgB,CAAC,MAAM,EAAE,aAAa;;;;;;;IAetC,iBAAiB,CAAC,MAAM,EAAE,aAAa;;;;;;;IAevC,cAAc,CAAC,MAAM,EAAE,aAAa;;;;;;;IAmB1C,YAAY,WAAY;QAC9B,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,YAOC;IAEK,iBAAiB,WAAY;QACnC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QAEtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,OAAO,CAqCT;IAEK,gBAAgB,WAAY;QAClC,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QAEtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,OAAO,CAqCT;IAEK,qBAAqB,WAAY;QACvC,SAAS,EAAE,cAAc,CAAC;QAE1B,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB;qBACa,OAAO;iBACX,MAAM;MAmBd;IAEK,qBAAqB,WAAY;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,mBAAmB,EAAE,cAAc,CAAC;QAEpC,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,cAAc,CAahB;IAEK,kBAAkB,WAAY;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM,CAEzC;CAChC"}
1
+ {"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../../src/packages/pools/pool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,cAAc,EACd,aAAa,EACb,0BAA0B,EAC1B,UAAU,EACV,SAAS,EAET,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EAEd,0BAA0B,EAC1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAIpD,qBAAa,IAAK,SAAQ,MAAM;aAoBd,IAAI,EAAE,UAAU;aAChB,OAAO,CAAC;IAhBzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAE/B;IAMK,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;gBAOnB,IAAI,EAAE,UAAU,EAChB,OAAO,CAAC,oBAAkB;IAU9B,QAAQ;IAId,QAAQ,CAAC,KAAK,EAAE,SAAS;IAInB,SAAS,CAAC,MAAM,EAAE;QAC9B,SAAS,EAAE,0BAA0B,CAAC;KACtC,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQf,qBAAqB,CAAC,MAAM,EAAE,kBAAkB;IAOhD,sBAAsB,CAAC,MAAM,EAAE,mBAAmB;IAOlD,6BAA6B,CACzC,MAAM,EAAE,0BAA0B;IAQtB,mBAAmB,CAAC,MAAM,EAAE,gBAAgB;IAW5C,gBAAgB,CAAC,MAAM,EAAE,aAAa;;;;;;;IAetC,iBAAiB,CAAC,MAAM,EAAE,aAAa;;;;;;;IAevC,cAAc,CAAC,MAAM,EAAE,aAAa;;;;;;;IAmB1C,YAAY,WAAY;QAC9B,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,YAOC;IAEK,iBAAiB,WAAY;QACnC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QAEtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,OAAO,CAqCT;IAEK,gBAAgB,WAAY;QAClC,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QAEtB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,OAAO,CAqCT;IAEK,qBAAqB,WAAY;QACvC,SAAS,EAAE,cAAc,CAAC;QAE1B,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB;qBACa,OAAO;iBACX,MAAM;MAmBd;IAEK,qBAAqB,WAAY;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,mBAAmB,EAAE,cAAc,CAAC;QAEpC,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,cAAc,CAahB;IAEK,4BAA4B,WAAY;QAC9C,OAAO,EAAE,MAAM,CAAC;QAEhB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACnB,KAAG,cAAc,CAehB;IAEK,kBAAkB,WAAY;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,KAAG,MAAM,CACR;CAGjE"}
@@ -73,7 +73,7 @@ class Pool extends caller_1.Caller {
73
73
  if (calcedLpRatio >= utils_1.Casting.fixedOneBigInt)
74
74
  throw new Error("lpRatio >= 1");
75
75
  const lpRatio = utils_1.Casting.bigIntToFixedNumber(calcedLpRatio);
76
- const lpAmountOut = BigInt(Math.floor(Number(this.pool.lpCoinSupply) * (1 - lpRatio)));
76
+ const lpAmountOut = BigInt(Math.floor(Number(this.pool.lpCoinSupply) * (1 / lpRatio - 1)));
77
77
  return {
78
78
  lpAmountOut,
79
79
  lpRatio,
@@ -87,8 +87,15 @@ class Pool extends caller_1.Caller {
87
87
  }
88
88
  return amountsOut;
89
89
  };
90
- this.getWithdrawLpRatio = (inputs) => Number(this.pool.lpCoinSupply - inputs.lpCoinAmountOut) /
91
- Number(this.pool.lpCoinSupply);
90
+ this.getAllCoinWithdrawAmountsOut = (inputs) => {
91
+ if (inputs.lpRatio >= 1)
92
+ throw new Error("lpRatio >= 1");
93
+ const amountsOut = Object.entries(this.pool.coins).reduce((acc, [coin, info]) => {
94
+ return Object.assign(Object.assign({}, acc), { [coin]: BigInt(Math.floor(Number(info.balance) * inputs.lpRatio)) });
95
+ }, {});
96
+ return amountsOut;
97
+ };
98
+ this.getWithdrawLpRatio = (inputs) => Number(inputs.lpCoinAmountOut) / Number(this.pool.lpCoinSupply);
92
99
  this.pool = pool;
93
100
  }
94
101
  /////////////////////////////////////////////////////////////////////
@@ -120,6 +127,11 @@ class Pool extends caller_1.Caller {
120
127
  return this.fetchApiTransaction("transactions/withdraw", inputs);
121
128
  });
122
129
  }
130
+ getAllCoinWithdrawTransaction(inputs) {
131
+ return __awaiter(this, void 0, void 0, function* () {
132
+ return this.fetchApiTransaction("transactions/all-coin-withdraw", inputs);
133
+ });
134
+ }
123
135
  getTradeTransaction(inputs) {
124
136
  return __awaiter(this, void 0, void 0, function* () {
125
137
  return this.fetchApiTransaction("transactions/trade", inputs);
@@ -99,12 +99,10 @@ export interface ApiPoolWithdrawBody {
99
99
  slippage: Slippage;
100
100
  referrer?: SuiAddress;
101
101
  }
102
- export interface ApiPoolSpotPriceBody {
103
- coinInType: CoinType;
104
- coinOutType: CoinType;
105
- }
106
- export interface ApiPoolObjectIdForLpCoinTypeBody {
107
- lpCoinType: CoinType;
102
+ export interface ApiPoolAllCoinWithdrawBody {
103
+ walletAddress: SuiAddress;
104
+ lpCoinAmount: Balance;
105
+ referrer?: SuiAddress;
108
106
  }
109
107
  export interface ApiPublishLpCoinBody {
110
108
  walletAddress: SuiAddress;
@@ -123,4 +121,11 @@ export interface ApiCreatePoolBody {
123
121
  poolFlatness: 0 | 1;
124
122
  createPoolCapId: ObjectId;
125
123
  }
124
+ export interface ApiPoolSpotPriceBody {
125
+ coinInType: CoinType;
126
+ coinOutType: CoinType;
127
+ }
128
+ export interface ApiPoolObjectIdForLpCoinTypeBody {
129
+ lpCoinType: CoinType;
130
+ }
126
131
  //# sourceMappingURL=poolsTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"poolsTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/pools/poolsTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolsTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/pools/poolsTypes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cmmmCalculations.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/utils/cmmmCalculations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmmmCalculations.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/utils/cmmmCalculations.ts"],"names":[],"mappings":"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"}
@@ -652,8 +652,7 @@ CmmmCalculations.calcWithdrawFlpAmountsOut = (pool, amountsOutDirection, lpRatio
652
652
  prod -
653
653
  scaledInvariant * (2 + scaledInvariant / prod)) /
654
654
  part4;
655
- if (i > 15 &&
656
- utils_1.Helpers.closeEnough(r, prevR, CmmmCalculations.convergenceBound)) {
655
+ if (utils_1.Helpers.closeEnough(r, prevR, CmmmCalculations.convergenceBound)) {
657
656
  let returner = {};
658
657
  for (let coinType of Object.keys(coins)) {
659
658
  returner[coinType] = fixed_1.Fixed.convertToInt(r *
@@ -975,7 +974,7 @@ CmmmCalculations.checkValidSwap = (pool, amountsIn, amountsInScalar, amountsOut,
975
974
  let preinvariant = CmmmCalculations.calcInvariantQuadratic(preprod, presum, flatness);
976
975
  let postinvariant = CmmmCalculations.calcInvariantQuadratic(postprod, postsum, flatness);
977
976
  let pseudoinvariant = CmmmCalculations.calcInvariantQuadratic(pseudoprod, pseudosum, flatness);
978
- return (postinvariant >= preinvariant &&
977
+ return (postinvariant * (1 + CmmmCalculations.tolerance) >= preinvariant &&
979
978
  (utils_1.Helpers.veryCloseInt(preinvariant, pseudoinvariant, fixed_1.Fixed.fixedOneN) ||
980
979
  utils_1.Helpers.closeEnough(preinvariant, pseudoinvariant, CmmmCalculations.validityTolerance)));
981
980
  };
@@ -1049,7 +1048,7 @@ CmmmCalculations.checkValid1dSwap = (pool, coinTypeIn, coinTypeOut, amountInB, a
1049
1048
  let preinvariant = CmmmCalculations.calcInvariantQuadratic(preprod, presum, flatness);
1050
1049
  let postinvariant = CmmmCalculations.calcInvariantQuadratic(postprod, postsum, flatness);
1051
1050
  let pseudoinvariant = CmmmCalculations.calcInvariantQuadratic(pseudoprod, pseudosum, flatness);
1052
- return (postinvariant >= preinvariant &&
1051
+ return (postinvariant * (1 + CmmmCalculations.tolerance) >= preinvariant &&
1053
1052
  (utils_1.Helpers.veryCloseInt(preinvariant, pseudoinvariant, fixed_1.Fixed.fixedOneN) ||
1054
1053
  utils_1.Helpers.closeEnough(preinvariant, pseudoinvariant, CmmmCalculations.validityTolerance)));
1055
1054
  };
@@ -1117,7 +1116,7 @@ CmmmCalculations.checkValidDeposit = (pool, amountsIn, lpRatioRaw) => {
1117
1116
  let preinvariant = CmmmCalculations.calcInvariantQuadratic(preprod, presum, flatness);
1118
1117
  let postinvariant = CmmmCalculations.calcInvariantQuadratic(postprod, postsum, flatness);
1119
1118
  let pseudoinvariant = CmmmCalculations.calcInvariantQuadratic(pseudoprod, pseudosum, flatness);
1120
- return (postinvariant >= preinvariant &&
1119
+ return (postinvariant * (1 + CmmmCalculations.tolerance) >= preinvariant &&
1121
1120
  (utils_1.Helpers.veryCloseInt(preinvariant, pseudoinvariant, fixed_1.Fixed.fixedOneN) ||
1122
1121
  utils_1.Helpers.closeEnough(preinvariant, pseudoinvariant, CmmmCalculations.validityTolerance)));
1123
1122
  };
@@ -1188,7 +1187,7 @@ CmmmCalculations.checkValidWithdraw = (pool, amountsOutSrc, lpRatio) => {
1188
1187
  let preinvariant = CmmmCalculations.calcInvariantQuadratic(preprod, presum, flatness);
1189
1188
  let postinvariant = CmmmCalculations.calcInvariantQuadratic(postprod, postsum, flatness);
1190
1189
  let pseudoinvariant = CmmmCalculations.calcInvariantQuadratic(pseudoprod, pseudosum, flatness);
1191
- return (postinvariant >= preinvariant &&
1190
+ return (postinvariant * (1 + CmmmCalculations.tolerance) >= preinvariant &&
1192
1191
  (utils_1.Helpers.veryCloseInt(preinvariant, pseudoinvariant, fixed_1.Fixed.fixedOneN) ||
1193
1192
  utils_1.Helpers.closeEnough(preinvariant, pseudoinvariant, CmmmCalculations.validityTolerance)));
1194
1193
  };
@@ -80,7 +80,7 @@ class AftermathRouterPool {
80
80
  if (inputs.coinInType === this.pool.lpCoinType) {
81
81
  return inputs.provider.Pools().Helpers.multiCoinWithdrawTx(Object.assign(Object.assign({}, inputs), { poolId: this.pool.objectId,
82
82
  // this is beacuse typescript complains for some reason otherwise
83
- lpCoinId: inputs.coinIn, coinsOutType: [inputs.coinOutType], expectedAmountsOut: [inputs.expectedAmountOut], lpCoinType: this.pool.lpCoinType }));
83
+ lpCoinId: inputs.coinIn, coinTypes: [inputs.coinOutType], expectedAmountsOut: [inputs.expectedAmountOut], lpCoinType: this.pool.lpCoinType }));
84
84
  }
85
85
  // deposit
86
86
  if (inputs.coinOutType === this.pool.lpCoinType) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aftermath-ts-sdk",
3
- "version": "0.0.138",
3
+ "version": "0.0.139",
4
4
  "description": "Aftermath TypeScript SDK",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",