aftermath-ts-sdk 0.0.140 → 0.0.142
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/general/utils/helpers.d.ts +1 -0
- package/dist/general/utils/helpers.d.ts.map +1 -1
- package/dist/general/utils/helpers.js +6 -0
- package/dist/packages/nftAmm/nftAmmMarket.js +1 -1
- package/dist/packages/pools/api/poolsApi.d.ts.map +1 -1
- package/dist/packages/pools/api/poolsApi.js +8 -5
- package/dist/packages/pools/api/poolsApiHelpers.js +1 -1
- package/dist/packages/pools/pool.d.ts +4 -1
- package/dist/packages/pools/pool.d.ts.map +1 -1
- package/dist/packages/pools/pool.js +3 -1
- package/dist/packages/router/api/routerApi.d.ts +0 -2
- package/dist/packages/router/api/routerApi.d.ts.map +1 -1
- package/dist/packages/router/api/routerSynchronousApiHelpers.d.ts +1 -3
- package/dist/packages/router/api/routerSynchronousApiHelpers.d.ts.map +1 -1
- package/dist/packages/router/api/routerSynchronousApiHelpers.js +14 -16
- package/dist/packages/router/utils/synchronous/routerPools/aftermathRouterPool.js +3 -3
- package/package.json +1 -1
|
@@ -35,6 +35,7 @@ export declare class Helpers {
|
|
|
35
35
|
static uniqueArray: <T>(arr: T[]) => T[];
|
|
36
36
|
static sleep: (ms: number) => Promise<unknown>;
|
|
37
37
|
static createUid: () => string;
|
|
38
|
+
static filterObject: <Value>(obj: Record<string, Value>, predicate: (key: string, value: Value) => boolean) => Record<string, Value>;
|
|
38
39
|
static isArrayOfStrings(value: unknown): value is string[];
|
|
39
40
|
}
|
|
40
41
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/general/utils/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,qBAAa,OAAO;IAKnB,gBAAuB,aAAa,iCAA2B;IAC/D,gBAAuB,MAAM,0BAAoB;IACjD,gBAAuB,WAAW,+BAAyB;IAC3D,gBAAuB,OAAO,2BAAqB;IACnD,gBAAuB,GAAG,uBAAiB;IAC3C,gBAAuB,YAAY,gCAA0B;IAM7D,OAAc,0BAA0B,SACjC,aAAa,KACjB,aAAa,CAAiC;IAEjD,OAAc,sBAAsB,SAC7B,aAAa,KACjB,aAAa,CAqBd;IAMF,OAAc,QAAQ,QAAS,MAAM,KAAG,OAAO,CAA6B;IAE5E,OAAc,GAAG,QAAS,MAAM,EAAE,YACQ;IAE1C,OAAc,SAAS,QAAS,MAAM,EAAE,YACU;IAElD,OAAc,WAAW,MAAO,MAAM,KAAK,MAAM,aAAa,MAAM,aACrB;IAE/C,OAAc,iBAAiB,MAC3B,MAAM,KACN,MAAM,aACE,MAAM,aACwC;IAE1D,OAAc,YAAY,MAAO,MAAM,KAAK,MAAM,YAAY,MAAM,aACA;IAEpE,OAAc,iBAAiB;oBAClB,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/general/utils/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,qBAAa,OAAO;IAKnB,gBAAuB,aAAa,iCAA2B;IAC/D,gBAAuB,MAAM,0BAAoB;IACjD,gBAAuB,WAAW,+BAAyB;IAC3D,gBAAuB,OAAO,2BAAqB;IACnD,gBAAuB,GAAG,uBAAiB;IAC3C,gBAAuB,YAAY,gCAA0B;IAM7D,OAAc,0BAA0B,SACjC,aAAa,KACjB,aAAa,CAAiC;IAEjD,OAAc,sBAAsB,SAC7B,aAAa,KACjB,aAAa,CAqBd;IAMF,OAAc,QAAQ,QAAS,MAAM,KAAG,OAAO,CAA6B;IAE5E,OAAc,GAAG,QAAS,MAAM,EAAE,YACQ;IAE1C,OAAc,SAAS,QAAS,MAAM,EAAE,YACU;IAElD,OAAc,WAAW,MAAO,MAAM,KAAK,MAAM,aAAa,MAAM,aACrB;IAE/C,OAAc,iBAAiB,MAC3B,MAAM,KACN,MAAM,aACE,MAAM,aACwC;IAE1D,OAAc,YAAY,MAAO,MAAM,KAAK,MAAM,YAAY,MAAM,aACA;IAEpE,OAAc,iBAAiB;oBAClB,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;oBAE1B,MAAM,KAAK,MAAM,KAAG,MAAM;oBAC1B,MAAM,KAAK,MAAM,KAAG,MAAM;MACrC;IAMF,OAAc,yBAAyB,QAAS,MAAM,YACI;IAM1D,OAAc,mBAAmB,SAC1B,MAAM,iDAiBT;IAMJ,OAAc,QAAQ,sBAwBpB;IAEF,OAAc,UAAU,QAAS,GAAG,EAAE,YAcpC;IAEF,OAAc,WAAW,uBAA2C;IAEpE,OAAc,KAAK,OAAQ,MAAM,sBAA2C;IAE5E,OAAc,SAAS,eAC4C;IAEnE,OAAc,YAAY,uDAER,MAAM,mBAAmB,OAAO,2BAWjB;WAMnB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,EAAE;CAMjE"}
|
|
@@ -126,3 +126,9 @@ Helpers.indexOfMax = (arr) => {
|
|
|
126
126
|
Helpers.uniqueArray = (arr) => [...new Set(arr)];
|
|
127
127
|
Helpers.sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
128
128
|
Helpers.createUid = () => Date.now().toString(36) + Math.random().toString(36).substring(2);
|
|
129
|
+
Helpers.filterObject = (obj, predicate) => Object.keys(obj).reduce((acc, key) => {
|
|
130
|
+
const val = obj[key];
|
|
131
|
+
if (!predicate(key, val))
|
|
132
|
+
return acc;
|
|
133
|
+
return Object.assign(Object.assign({}, acc), { [key]: val });
|
|
134
|
+
}, {});
|
|
@@ -67,7 +67,7 @@ class NftAmmMarket extends caller_1.Caller {
|
|
|
67
67
|
});
|
|
68
68
|
};
|
|
69
69
|
this.getWithdrawFractionalizedCoinAmountOut = (inputs) => {
|
|
70
|
-
const lpRatio = this.pool.
|
|
70
|
+
const lpRatio = this.pool.getMultiCoinWithdrawLpRatio({
|
|
71
71
|
lpCoinAmountOut: inputs.lpCoinAmount,
|
|
72
72
|
});
|
|
73
73
|
const amountsOut = this.pool.getWithdrawAmountsOut({
|
|
@@ -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,+BAA+B,WAAkB;QACvD,aAAa,EAAE,UAAU,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC;QACX,YAAY,EAAE,OAAO,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAG,QAAQ,qBAAqB,CAAC,CAOhC;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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"}
|
|
@@ -214,13 +214,16 @@ class PoolsApi {
|
|
|
214
214
|
.getPools({ objectIds: lpCoinPoolObjectIds });
|
|
215
215
|
const poolStats = yield Promise.all(lpCoinPools.map((lpPool) => lpPool.getStats()));
|
|
216
216
|
let lpCoinsToPrice = {};
|
|
217
|
-
for (const [index,
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
coinPrice = poolStats[index].lpPrice;
|
|
221
|
-
}
|
|
217
|
+
for (const [index, safeIndex] of safeIndexes.entries()) {
|
|
218
|
+
const lpCoin = lpCoins[safeIndex];
|
|
219
|
+
const coinPrice = poolStats[index].lpPrice;
|
|
222
220
|
lpCoinsToPrice = Object.assign(Object.assign({}, lpCoinsToPrice), { [lpCoin]: coinPrice });
|
|
223
221
|
}
|
|
222
|
+
for (const [index, lpCoin] of lpCoins.entries()) {
|
|
223
|
+
if (safeIndexes.includes(index))
|
|
224
|
+
continue;
|
|
225
|
+
lpCoinsToPrice = Object.assign(Object.assign({}, lpCoinsToPrice), { [lpCoin]: -1 });
|
|
226
|
+
}
|
|
224
227
|
return lpCoinsToPrice;
|
|
225
228
|
});
|
|
226
229
|
/////////////////////////////////////////////////////////////////////
|
|
@@ -69,7 +69,10 @@ export declare class Pool extends Caller {
|
|
|
69
69
|
lpRatio: number;
|
|
70
70
|
referral?: boolean;
|
|
71
71
|
}) => CoinsToBalance;
|
|
72
|
-
|
|
72
|
+
getMultiCoinWithdrawLpRatio: (inputs: {
|
|
73
|
+
lpCoinAmountOut: bigint;
|
|
74
|
+
}) => number;
|
|
75
|
+
getAllCoinWithdrawLpRatio: (inputs: {
|
|
73
76
|
lpCoinAmountOut: bigint;
|
|
74
77
|
}) => number;
|
|
75
78
|
}
|
|
@@ -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,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,
|
|
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,2BAA2B,WAAY;QAC7C,eAAe,EAAE,MAAM,CAAC;KACxB,KAAG,MAAM,CAEsB;IAEzB,yBAAyB,WAAY;QAC3C,eAAe,EAAE,MAAM,CAAC;KACxB,KAAG,MAAM,CACuD;CACjE"}
|
|
@@ -95,7 +95,9 @@ class Pool extends caller_1.Caller {
|
|
|
95
95
|
}, {});
|
|
96
96
|
return amountsOut;
|
|
97
97
|
};
|
|
98
|
-
this.
|
|
98
|
+
this.getMultiCoinWithdrawLpRatio = (inputs) => Number(this.pool.lpCoinSupply - inputs.lpCoinAmountOut) /
|
|
99
|
+
Number(this.pool.lpCoinSupply);
|
|
100
|
+
this.getAllCoinWithdrawLpRatio = (inputs) => Number(inputs.lpCoinAmountOut) / Number(this.pool.lpCoinSupply);
|
|
99
101
|
this.pool = pool;
|
|
100
102
|
}
|
|
101
103
|
/////////////////////////////////////////////////////////////////////
|
|
@@ -33,8 +33,6 @@ export declare class RouterApi {
|
|
|
33
33
|
externalFee?: RouterExternalFee;
|
|
34
34
|
}) => Promise<RouterCompleteTradeRoute>;
|
|
35
35
|
fetchTransactionForCompleteTradeRoute(inputs: {
|
|
36
|
-
network: SuiNetwork | Url;
|
|
37
|
-
provider: AftermathApi;
|
|
38
36
|
walletAddress: SuiAddress;
|
|
39
37
|
completeRoute: RouterCompleteTradeRoute;
|
|
40
38
|
slippage: Slippage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EACN,OAAO,EACP,QAAQ,EACR,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,QAAQ,EACR,UAAU,EACV,GAAG,EAEH,+BAA+B,EAE/B,kBAAkB,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,qBAAa,SAAS;IAapB,OAAO,CAAC,QAAQ,CAAC,QAAQ;aACT,SAAS,EAAE,kBAAkB,EAAE;IAThD,SAAgB,OAAO,8BAAC;IACxB,SAAgB,YAAY,wBAAC;gBAOX,QAAQ,EAAE,YAAY,EACvB,SAAS,GAAE,kBAAkB,EAAkB;IAWzD,SAAS,iBAAqC;IAC9C,IAAI,mBAAuC;IAC3C,QAAQ,oBAAwC;IAChD,KAAK,iBAAqC;IAC1C,MAAM,kBAAsC;IAU5C,sBAAsB,iDAK3B;IAMK,2BAA2B,WAAkB;QACnD,KAAK,EAAE,+BAA+B,CAAC;KACvC,gEAEC;IAMK,oCAAoC,WAAkB;QAC5D,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;QAC1B,KAAK,EAAE,+BAA+B,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAGhC,KAAG,QAAQ,wBAAwB,CAAC,CAiCnC;IAwBW,qCAAqC,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"routerApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EACN,OAAO,EACP,QAAQ,EACR,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,QAAQ,EACR,UAAU,EACV,GAAG,EAEH,+BAA+B,EAE/B,kBAAkB,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,qBAAa,SAAS;IAapB,OAAO,CAAC,QAAQ,CAAC,QAAQ;aACT,SAAS,EAAE,kBAAkB,EAAE;IAThD,SAAgB,OAAO,8BAAC;IACxB,SAAgB,YAAY,wBAAC;gBAOX,QAAQ,EAAE,YAAY,EACvB,SAAS,GAAE,kBAAkB,EAAkB;IAWzD,SAAS,iBAAqC;IAC9C,IAAI,mBAAuC;IAC3C,QAAQ,oBAAwC;IAChD,KAAK,iBAAqC;IAC1C,MAAM,kBAAsC;IAU5C,sBAAsB,iDAK3B;IAMK,2BAA2B,WAAkB;QACnD,KAAK,EAAE,+BAA+B,CAAC;KACvC,gEAEC;IAMK,oCAAoC,WAAkB;QAC5D,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;QAC1B,KAAK,EAAE,+BAA+B,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,iBAAiB,CAAC;KAGhC,KAAG,QAAQ,wBAAwB,CAAC,CAiCnC;IAwBW,qCAAqC,CAAC,MAAM,EAAE;QAC1D,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;KACnB,GAAG,OAAO,CAAC,qBAAqB,CAAC;CASlC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SuiAddress, TransactionBlock } from "@mysten/sui.js";
|
|
2
2
|
import { AftermathApi } from "../../../general/providers/aftermathApi";
|
|
3
3
|
import { RouterCompleteTradeRoute, RouterProtocolName, RouterSerializablePool } from "../routerTypes";
|
|
4
|
-
import { Balance, CoinType, Slippage
|
|
4
|
+
import { Balance, CoinType, Slippage } from "../../../types";
|
|
5
5
|
export declare class RouterSynchronousApiHelpers {
|
|
6
6
|
private readonly Provider;
|
|
7
7
|
private readonly protocolNamesToApi;
|
|
@@ -18,8 +18,6 @@ export declare class RouterSynchronousApiHelpers {
|
|
|
18
18
|
protocols: RouterProtocolName[];
|
|
19
19
|
}) => Promise<CoinType[]>;
|
|
20
20
|
fetchBuildTransactionForCompleteTradeRoute(inputs: {
|
|
21
|
-
network: SuiNetwork | Url;
|
|
22
|
-
provider: AftermathApi;
|
|
23
21
|
walletAddress: SuiAddress;
|
|
24
22
|
completeRoute: RouterCompleteTradeRoute;
|
|
25
23
|
slippage: Slippage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerSynchronousApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerSynchronousApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EAEV,gBAAgB,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"routerSynchronousApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerSynchronousApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,UAAU,EAEV,gBAAgB,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAmB,MAAM,gBAAgB,CAAC;AAW9E,qBAAa,2BAA2B;IA0B3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IArBrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CASjC;IAEF,gBAAuB,SAAS;;;;MAI9B;gBAM2B,QAAQ,EAAE,YAAY;IAQ5C,aAAa,WAAkB;QACrC,SAAS,EAAE,kBAAkB,EAAE,CAAC;KAChC,KAAG,QAAQ,sBAAsB,EAAE,CAAC,CAanC;IAMK,mBAAmB,WAAkB;QAC3C,SAAS,EAAE,kBAAkB,EAAE,CAAC;KAChC,KAAG,QAAQ,QAAQ,EAAE,CAAC,CAgBrB;IAMW,0CAA0C,CAAC,MAAM,EAAE;QAC/D,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;KACnB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAkH7B,OAAc,uBAAuB,WAAY;QAChD,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;KACpB,KAAG,OAAO,EAAE,CAqBX;IAUF,OAAO,CAAC,qBAAqB,CAK3B;CACF"}
|
|
@@ -73,7 +73,7 @@ class RouterSynchronousApiHelpers {
|
|
|
73
73
|
/////////////////////////////////////////////////////////////////////
|
|
74
74
|
fetchBuildTransactionForCompleteTradeRoute(inputs) {
|
|
75
75
|
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
const {
|
|
76
|
+
const { walletAddress, completeRoute, slippage } = inputs;
|
|
77
77
|
const referrer = completeRoute.referrer;
|
|
78
78
|
const externalFee = completeRoute.externalFee;
|
|
79
79
|
if (externalFee &&
|
|
@@ -94,30 +94,28 @@ class RouterSynchronousApiHelpers {
|
|
|
94
94
|
coinAmount: completeRoute.coinIn.amount,
|
|
95
95
|
});
|
|
96
96
|
let coinsOut = [];
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
coinInArg,
|
|
108
|
-
];
|
|
97
|
+
let splitCoins = [];
|
|
98
|
+
if (completeRoute.routes.length > 1) {
|
|
99
|
+
splitCoins = tx.add({
|
|
100
|
+
kind: "SplitCoins",
|
|
101
|
+
coin: coinInArg,
|
|
102
|
+
amounts: completeRoute.routes
|
|
103
|
+
.slice(1)
|
|
104
|
+
.map((route) => tx.pure(route.coinIn.amount)),
|
|
105
|
+
});
|
|
106
|
+
}
|
|
109
107
|
for (const [routeIndex, route] of completeRoute.routes.entries()) {
|
|
110
|
-
const splitCoinArg = splitCoins[routeIndex];
|
|
108
|
+
const splitCoinArg = routeIndex === 0 ? coinInArg : splitCoins[routeIndex - 1];
|
|
111
109
|
let coinIn = splitCoinArg;
|
|
112
110
|
for (const path of route.paths) {
|
|
113
111
|
const poolForPath = (0, routerPoolInterface_1.createRouterPool)({
|
|
114
112
|
pool: path.pool,
|
|
115
|
-
network,
|
|
113
|
+
network: "",
|
|
116
114
|
});
|
|
117
115
|
if (!coinIn)
|
|
118
116
|
throw new Error("no coin in argument given for router trade command");
|
|
119
117
|
const newCoinIn = poolForPath.addTradeCommandToTransaction({
|
|
120
|
-
provider,
|
|
118
|
+
provider: this.Provider,
|
|
121
119
|
tx,
|
|
122
120
|
coinIn,
|
|
123
121
|
coinInAmount: route.coinIn.amount,
|
|
@@ -39,7 +39,7 @@ class AftermathRouterPool {
|
|
|
39
39
|
this.getTradeAmountOut = (inputs) => {
|
|
40
40
|
// withdraw
|
|
41
41
|
if (inputs.coinInType === this.pool.lpCoinType) {
|
|
42
|
-
const lpRatio = this.poolClass.
|
|
42
|
+
const lpRatio = this.poolClass.getMultiCoinWithdrawLpRatio({
|
|
43
43
|
lpCoinAmountOut: inputs.coinInAmount,
|
|
44
44
|
});
|
|
45
45
|
// TODO: move this estimation to helper function within sdk
|
|
@@ -84,7 +84,7 @@ class AftermathRouterPool {
|
|
|
84
84
|
}
|
|
85
85
|
// deposit
|
|
86
86
|
if (inputs.coinOutType === this.pool.lpCoinType) {
|
|
87
|
-
const expectedLpRatio = this.poolClass.
|
|
87
|
+
const expectedLpRatio = this.poolClass.getMultiCoinWithdrawLpRatio({
|
|
88
88
|
lpCoinAmountOut: inputs.expectedAmountOut,
|
|
89
89
|
});
|
|
90
90
|
return inputs.provider.Pools().Helpers.multiCoinDepositTx(Object.assign(Object.assign({}, inputs), { poolId: this.pool.objectId,
|
|
@@ -110,7 +110,7 @@ class AftermathRouterPool {
|
|
|
110
110
|
}
|
|
111
111
|
// reverse deposit (withdraw)
|
|
112
112
|
if (inputs.coinOutType === this.pool.lpCoinType) {
|
|
113
|
-
const lpRatio = this.poolClass.
|
|
113
|
+
const lpRatio = this.poolClass.getMultiCoinWithdrawLpRatio({
|
|
114
114
|
lpCoinAmountOut: inputs.coinOutAmount,
|
|
115
115
|
});
|
|
116
116
|
const amountsOuts = this.poolClass.getWithdrawAmountsOut({
|