aftermath-ts-sdk 0.0.138 → 0.0.140
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.
- package/dist/packages/pools/api/poolsApi.d.ts +6 -0
- package/dist/packages/pools/api/poolsApi.d.ts.map +1 -1
- package/dist/packages/pools/api/poolsApi.js +26 -3
- package/dist/packages/pools/api/poolsApiHelpers.d.ts +15 -1
- package/dist/packages/pools/api/poolsApiHelpers.d.ts.map +1 -1
- package/dist/packages/pools/api/poolsApiHelpers.js +56 -6
- package/dist/packages/pools/pool.d.ts +6 -1
- package/dist/packages/pools/pool.d.ts.map +1 -1
- package/dist/packages/pools/pool.js +15 -3
- package/dist/packages/pools/poolsTypes.d.ts +11 -6
- package/dist/packages/pools/poolsTypes.d.ts.map +1 -1
- package/dist/packages/pools/utils/cmmmCalculations.d.ts.map +1 -1
- package/dist/packages/pools/utils/cmmmCalculations.js +5 -6
- package/dist/packages/router/utils/synchronous/routerPools/aftermathRouterPool.js +1 -1
- package/package.json +1 -1
|
@@ -30,6 +30,12 @@ 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
|
+
referrer?: SuiAddress;
|
|
38
|
+
}) => Promise<SerializedTransaction>;
|
|
33
39
|
fetchTradeTransaction: (inputs: {
|
|
34
40
|
walletAddress: SuiAddress;
|
|
35
41
|
pool: Pool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"poolsApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/pools/api/poolsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EACN,OAAO,EACP,0BAA0B,EAC1B,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,QAAQ,EACR,0BAA0B,EAC1B,QAAQ,EACR,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EAAE,IAAI,EAAS,MAAM,IAAI,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAIvD,qBAAa,QAAQ;IAWR,OAAO,CAAC,QAAQ,CAAC,QAAQ;IANrC,SAAgB,OAAO,kBAAC;gBAMK,QAAQ,EAAE,YAAY;IAa5C,gBAAgB,YACb,OAAO,UACR,MAAM,wEAwBZ;IAEI,kBAAkB,YACf,OAAO,UACR,MAAM,0EAwBZ;IAEI,mBAAmB,YAChB,OAAO,UACR,MAAM,2EAwBZ;IAMI,SAAS,aAAoB,QAAQ,iDAK1C;IAEK,UAAU,cAAqB,QAAQ,EAAE,mDAK9C;IAEK,aAAa,sDAGlB;IAMK,uBAAuB,WAAkB;QAC/C,aAAa,EAAE,UAAU,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC;QACX,SAAS,EAAE,cAAc,CAAC;QAC1B,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAG,QAAQ,qBAAqB,CAAC,CAKhC;IAEK,wBAAwB,WAAkB;QAChD,aAAa,EAAE,UAAU,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC;QACX,mBAAmB,EAAE,cAAc,CAAC;QACpC,YAAY,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAG,QAAQ,qBAAqB,CAAC,CAKhC;IAEK,qBAAqB,WAAkB;QAC7C,aAAa,EAAE,UAAU,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC;QACX,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAG,QAAQ,qBAAqB,CAAC,CAKhC;IAEK,wBAAwB,WAAkB;QAChD,aAAa,EAAE,UAAU,CAAC;KAC1B,KAAG,QAAQ,qBAAqB,CAAC,CAIhC;IAEK,0BAA0B,WAAkB;QAClD,aAAa,EAAE,UAAU,CAAC;QAC1B,UAAU,EAAE,QAAQ,CAAC;QACrB,cAAc,EAAE,0BAA0B,CAAC;QAC3C,SAAS,EAAE;YACV,QAAQ,EAAE,QAAQ,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC;YACf,UAAU,EAAE,MAAM,CAAC;YACnB,cAAc,EAAE,OAAO,CAAC;SACxB,EAAE,CAAC;QACJ,QAAQ,EAAE,QAAQ,CAAC;QACnB,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC;QACpB,eAAe,EAAE,QAAQ,CAAC;KAC1B,KAAG,QAAQ,qBAAqB,CAAC,CAuChC;IAMK,8BAA8B,eACxB,QAAQ,KAClB,QAAQ,QAAQ,CAAC,CAUlB;IAEK,mBAAmB,0BAQxB;IAOK,cAAc,SACd,IAAI,gBACI,YAAY,KACxB,QAAQ,SAAS,CAAC,CAiEnB;IASK,mBAAmB,aACf,SAAS,WACV,QAAQ,EAAE,
|
|
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
|
|
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
|
-
|
|
199
|
-
|
|
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
|
-
|
|
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":"AAAA,OAAO,EACN,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,mBAAmB,EAGnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,OAAO,EACP,WAAW,EACX,QAAQ,EACR,aAAa,EACb,uBAAuB,EACvB,0BAA0B,EAC1B,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,sBAAsB,EAEtB,QAAQ,EACR,oBAAoB,EACpB,YAAY,EACZ,0BAA0B,EAC1B,UAAU,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,MAAM,gBAAgB,CAAC;AAGxB,OAAc,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAI1B,qBAAa,eAAe;
|
|
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
|
-
|
|
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,
|
|
122
|
-
const poolSize =
|
|
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, ...
|
|
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":["
|
|
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
|
-
|
|
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,
|
|
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 -
|
|
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.
|
|
91
|
-
|
|
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
|
|
103
|
-
|
|
104
|
-
|
|
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":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE/E,OAAO,EAEN,WAAW,EACX,aAAa,EACb,MAAM,8BAA8B,CAAC;AA0CtC,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAqB;IAG7C,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAoB;IAMpD,OAAO,CAAC,MAAM,CAAC,UAAU,CAAoB;IAC7C,OAAO,CAAC,MAAM,CAAC,WAAW,CAAoB;IAG9C,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAoB;IAEpD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAkB;IAElD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAoB;IACpD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAA8B;IAC7D,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoC;IAC5D,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAA0B;IAO1D,OAAc,aAAa,SAAU,UAAU,KAAG,MAAM,CAmBtD;IAIF,OAAc,sBAAsB,SAC7B,MAAM,OACP,MAAM,YACD,MAAM,KACd,MAAM,CAON;IAUH,OAAc,uBAAuB,SAC9B,UAAU,SACT,QAAQ,oEAqCd;IAGF,OAAc,aAAa,SACpB,UAAU,cACJ,QAAQ,eACP,QAAQ,KACnB,MAAM,CAMN;IAGH,OAAc,qBAAqB,SAC5B,UAAU,cACJ,QAAQ,eACP,QAAQ,eACR,OAAO,KAClB,MAAM,CAqBP;IAGF,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAwB9B;IAGF,OAAc,cAAc,SACrB,UAAU,cACJ,QAAQ,eACP,QAAQ,YACX,OAAO,KACf,OAAO,CAyDR;IAGF,OAAc,cAAc,SACrB,UAAU,cACJ,QAAQ,eACP,QAAQ,aACV,OAAO,KAChB,OAAO,CA0DR;IAMF,OAAc,eAAe,SACtB,UAAU,aACL,cAAc,uBACJ,cAAc,KACjC,aAAa,CA8Hd;IAIF,OAAc,gBAAgB,SACvB,UAAU,sBACI,cAAc,cACtB,cAAc,KACxB,aAAa,CA8Fd;IAGF,OAAc,uBAAuB,SAC9B,UAAU,aACL,cAAc,KACvB,aAAa,CA8Ed;IAEF,OAAO,CAAC,MAAM,CAAC,sCAAsC,CA+FnD;IAGF,OAAc,yBAAyB,SAChC,UAAU,uBACK,cAAc,WAC1B,WAAW,KAClB,cAAc,
|
|
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 (
|
|
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,
|
|
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) {
|