aftermath-ts-sdk 1.1.47 → 1.1.49
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/external/cetus/cetusApi.d.ts +5 -1
- package/dist/packages/external/cetus/cetusApi.d.ts.map +1 -1
- package/dist/packages/external/cetus/cetusApi.js +5 -1
- package/dist/packages/external/deepBook/deepBookApi.d.ts +5 -1
- package/dist/packages/external/deepBook/deepBookApi.d.ts.map +1 -1
- package/dist/packages/external/deepBook/deepBookApi.js +8 -1
- package/dist/packages/external/flowX/flowXApi.d.ts +5 -1
- package/dist/packages/external/flowX/flowXApi.d.ts.map +1 -1
- package/dist/packages/external/flowX/flowXApi.js +8 -1
- package/dist/packages/external/turbos/turbosApi.d.ts +5 -1
- package/dist/packages/external/turbos/turbosApi.d.ts.map +1 -1
- package/dist/packages/external/turbos/turbosApi.js +5 -1
- package/dist/packages/router/api/routerApiHelpers.d.ts +5 -1
- package/dist/packages/router/api/routerApiHelpers.d.ts.map +1 -1
- package/dist/packages/router/api/routerApiHelpers.js +44 -0
- package/dist/packages/router/api/routerAsyncApiHelpers.d.ts.map +1 -1
- package/dist/packages/router/api/routerAsyncApiHelpers.js +9 -3
- package/dist/packages/router/router.d.ts +3 -3
- package/dist/packages/router/router.d.ts.map +1 -1
- package/dist/packages/router/routerTypes.d.ts +6 -1
- package/dist/packages/router/routerTypes.d.ts.map +1 -1
- package/dist/packages/router/utils/async/routerAsyncApiInterface.d.ts +5 -1
- package/dist/packages/router/utils/async/routerAsyncApiInterface.d.ts.map +1 -1
- package/dist/packages/router/utils/async/routerAsyncGraph.d.ts +1 -1
- package/dist/packages/router/utils/async/routerAsyncGraph.d.ts.map +1 -1
- package/dist/packages/router/utils/async/routerAsyncGraph.js +2 -2
- package/dist/packages/router/utils/synchronous/interfaces/routerPoolInterface.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/interfaces/routerPoolInterface.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerGraph.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerGraph.js +9 -2
- package/dist/packages/router/utils/synchronous/routerPools/afSuiRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/afSuiRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/afSuiRouterPool.js +39 -14
- package/dist/packages/router/utils/synchronous/routerPools/aftermathRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/aftermathRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/aftermathRouterPool.js +151 -113
- package/dist/packages/router/utils/synchronous/routerPools/baySwapRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/baySwapRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/baySwapRouterPool.js +20 -6
- package/dist/packages/router/utils/synchronous/routerPools/blueMoveRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/blueMoveRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/blueMoveRouterPool.js +21 -9
- package/dist/packages/router/utils/synchronous/routerPools/cetusRouterPool.d.ts +2 -2
- package/dist/packages/router/utils/synchronous/routerPools/cetusRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/deepBookRouterPool.d.ts +2 -2
- package/dist/packages/router/utils/synchronous/routerPools/deepBookRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/deprecatedDeepBookRouterPool.d.ts +2 -2
- package/dist/packages/router/utils/synchronous/routerPools/deprecatedDeepBookRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/deprecatedDeepBookRouterPool.js +5 -3
- package/dist/packages/router/utils/synchronous/routerPools/flowXRouterPool.d.ts +2 -2
- package/dist/packages/router/utils/synchronous/routerPools/flowXRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/interestRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/interestRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/interestRouterPool.js +20 -5
- package/dist/packages/router/utils/synchronous/routerPools/kriyaRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/kriyaRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/kriyaRouterPool.js +19 -4
- package/dist/packages/router/utils/synchronous/routerPools/suiswapRouterPool.d.ts +10 -2
- package/dist/packages/router/utils/synchronous/routerPools/suiswapRouterPool.d.ts.map +1 -1
- package/dist/packages/router/utils/synchronous/routerPools/suiswapRouterPool.js +44 -6
- package/dist/packages/router/utils/synchronous/routerPools/turbosRouterPool.d.ts +2 -2
- package/dist/packages/router/utils/synchronous/routerPools/turbosRouterPool.d.ts.map +1 -1
- package/dist/packages/staking/api/stakingApi.d.ts +1 -0
- package/dist/packages/staking/api/stakingApi.d.ts.map +1 -1
- package/dist/packages/staking/api/stakingApi.js +3 -0
- package/package.json +1 -1
|
@@ -28,7 +28,11 @@ export declare class CetusApi implements RouterAsyncApiInterface<CetusPoolObject
|
|
|
28
28
|
coinInType: CoinType;
|
|
29
29
|
coinOutType: CoinType;
|
|
30
30
|
coinInAmount: Balance;
|
|
31
|
-
}) => Promise<
|
|
31
|
+
}) => Promise<{
|
|
32
|
+
coinOutAmount: bigint;
|
|
33
|
+
feeInAmount: bigint;
|
|
34
|
+
feeOutAmount: bigint;
|
|
35
|
+
}>;
|
|
32
36
|
fetchCalcTradeResult: (inputs: {
|
|
33
37
|
pool: CetusPoolObject;
|
|
34
38
|
coinInType: CoinType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cetusApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/cetus/cetusApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EACN,oBAAoB,EACpB,eAAe,EAEf,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,aAAa,EACb,OAAO,EACP,cAAc,EACd,QAAQ,EACR,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,qBAAa,QAAS,YAAW,uBAAuB,CAAC,eAAe,CAAC;IA2B5D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAtBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAM/B;IAMF,SAAgB,SAAS,EAAE,cAAc,CAAC;IAE1C,SAAgB,WAAW,EAAE;QAC5B,IAAI,EAAE,aAAa,CAAC;KACpB,CAAC;gBAM2B,QAAQ,EAAE,YAAY;IAsB5C,aAAa,QAAa,QAAQ,eAAe,EAAE,CAAC,CAazD;IAEK,mBAAmB,WAAY;QACrC,KAAK,EAAE,eAAe,EAAE,CAAC;QACzB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB;2BACmB,eAAe,EAAE;yBACnB,eAAe,EAAE;MAoCjC;IAMK,mBAAmB,0BAQxB;IAEK,mBAAmB,WAAkB;QAC3C,IAAI,EAAE,eAAe,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB
|
|
1
|
+
{"version":3,"file":"cetusApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/cetus/cetusApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EACN,oBAAoB,EACpB,eAAe,EAEf,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,aAAa,EACb,OAAO,EACP,cAAc,EACd,QAAQ,EACR,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAG3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,qBAAa,QAAS,YAAW,uBAAuB,CAAC,eAAe,CAAC;IA2B5D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAtBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAM/B;IAMF,SAAgB,SAAS,EAAE,cAAc,CAAC;IAE1C,SAAgB,WAAW,EAAE;QAC5B,IAAI,EAAE,aAAa,CAAC;KACpB,CAAC;gBAM2B,QAAQ,EAAE,YAAY;IAsB5C,aAAa,QAAa,QAAQ,eAAe,EAAE,CAAC,CAazD;IAEK,mBAAmB,WAAY;QACrC,KAAK,EAAE,eAAe,EAAE,CAAC;QACzB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB;2BACmB,eAAe,EAAE;yBACnB,eAAe,EAAE;MAoCjC;IAMK,mBAAmB,0BAQxB;IAEK,mBAAmB,WAAkB;QAC3C,IAAI,EAAE,eAAe,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB;;;;OAOC;IAMK,oBAAoB,WAAkB;QAC5C,IAAI,EAAE,eAAe,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB,KAAG,QAAQ,oBAAoB,CAAC,CA+C/B;IAMK,mBAAmB,WACjB,uBAAuB,GAAG;QACjC,YAAY,EAAE,QAAQ,CAAC;KACvB,SAyBA;IAEK,mBAAmB,WACjB,uBAAuB,GAAG;QACjC,YAAY,EAAE,QAAQ,CAAC;KACvB,SAyBA;IAEK,OAAO,WACL,uBAAuB,GAAG;QACjC,IAAI,EAAE,eAAe,CAAC;KACtB,SAaA;IAMK,iBAAiB,WACf;QACP,EAAE,EAAE,gBAAgB,CAAC;QACrB,YAAY,EAAE,QAAQ,CAAC;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,SAAS,EAAE,QAAQ,CAAC;QACpB,SAAS,EAAE,QAAQ,CAAC;KACpB,GAAG,CACD;QACA,YAAY,EAAE,OAAO,CAAC;KACrB,GACD;QACA,aAAa,EAAE,OAAO,CAAC;KACtB,CACH,SA6CC;IAMI,eAAe,WAAY;QACjC,QAAQ,EAAE,QAAQ,CAAC;QACnB,IAAI,EAAE,eAAe,CAAC;KACtB,YAIC;IAUF,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAa/B;IAEF,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAU9B;IAEF,OAAO,CAAC,MAAM,CAAC,OAAO,CAMpB;CACF"}
|
|
@@ -74,7 +74,11 @@ class CetusApi {
|
|
|
74
74
|
});
|
|
75
75
|
this.fetchTradeAmountOut = (inputs) => __awaiter(this, void 0, void 0, function* () {
|
|
76
76
|
const tradeResult = yield this.fetchCalcTradeResult(inputs);
|
|
77
|
-
return
|
|
77
|
+
return {
|
|
78
|
+
coinOutAmount: tradeResult.amountOut,
|
|
79
|
+
feeInAmount: tradeResult.feeAmount,
|
|
80
|
+
feeOutAmount: BigInt(0),
|
|
81
|
+
};
|
|
78
82
|
});
|
|
79
83
|
// =========================================================================
|
|
80
84
|
// Inspections
|
|
@@ -34,7 +34,11 @@ export declare class DeepBookApi implements RouterAsyncApiInterface<DeepBookPool
|
|
|
34
34
|
coinInType: CoinType;
|
|
35
35
|
coinOutType: CoinType;
|
|
36
36
|
coinInAmount: Balance;
|
|
37
|
-
}) => Promise<
|
|
37
|
+
}) => Promise<{
|
|
38
|
+
coinOutAmount: bigint;
|
|
39
|
+
feeInAmount: bigint;
|
|
40
|
+
feeOutAmount: bigint;
|
|
41
|
+
}>;
|
|
38
42
|
otherCoinInPool: (inputs: {
|
|
39
43
|
coinType: CoinType;
|
|
40
44
|
pool: PartialDeepBookPoolObject;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepBookApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/deepBook/deepBookApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EACN,kBAAkB,EAClB,kBAAkB,EAClB,yBAAyB,EACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AAKrC,OAAO,EACN,aAAa,EACb,OAAO,EAGP,iBAAiB,EACjB,QAAQ,EACR,UAAU,EACV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAG3F,qBAAa,WACZ,YAAW,uBAAuB,CAAC,kBAAkB,CAAC;IA8B1C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAxBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAQ/B;IAMF,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C,SAAgB,WAAW,EAAE;QAC5B,UAAU,EAAE,aAAa,CAAC;KAC1B,CAAC;gBAM2B,QAAQ,EAAE,YAAY;IAsB5C,aAAa,QAAa,QAAQ,kBAAkB,EAAE,CAAC,CAe5D;IAEK,oBAAoB,QAAa,QACvC,yBAAyB,EAAE,CAC3B,CA8CC;IAEK,wCAAwC,WAAkB;QAChE,IAAI,EAAE,yBAAyB,CAAC;KAChC,KAAG,QAAQ,kBAAkB,CAAC,CAqB7B;IAEK,4BAA4B,WAAkB;QACpD,aAAa,EAAE,UAAU,CAAC;KAC1B,KAAG,QAAQ,QAAQ,CAAC,CAenB;IAMK,mBAAmB,WAAY;QACrC,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC5B,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB;2BACmB,kBAAkB,EAAE;yBACtB,kBAAkB,EAAE;MAyCpC;IAEK,mBAAmB,WAAkB;QAC3C,IAAI,EAAE,yBAAyB,CAAC;QAChC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB
|
|
1
|
+
{"version":3,"file":"deepBookApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/deepBook/deepBookApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -121,7 +121,14 @@ class DeepBookApi {
|
|
|
121
121
|
};
|
|
122
122
|
};
|
|
123
123
|
this.fetchTradeAmountOut = (inputs) => __awaiter(this, void 0, void 0, function* () {
|
|
124
|
-
|
|
124
|
+
const coinOutAmount = yield this.fetchCalcTradeAmountOut(inputs);
|
|
125
|
+
const feeInAmount = BigInt(Math.round(Number(inputs.coinInAmount) *
|
|
126
|
+
(Number(inputs.pool.takerFeeRate) / 1000000000)));
|
|
127
|
+
return {
|
|
128
|
+
coinOutAmount,
|
|
129
|
+
feeInAmount,
|
|
130
|
+
feeOutAmount: BigInt(0),
|
|
131
|
+
};
|
|
125
132
|
});
|
|
126
133
|
this.otherCoinInPool = (inputs) => {
|
|
127
134
|
return DeepBookApi.isBaseCoinType(inputs)
|
|
@@ -23,7 +23,11 @@ export declare class FlowXApi implements RouterAsyncApiInterface<FlowXPoolObject
|
|
|
23
23
|
coinInType: CoinType;
|
|
24
24
|
coinOutType: CoinType;
|
|
25
25
|
coinInAmount: Balance;
|
|
26
|
-
}) => Promise<
|
|
26
|
+
}) => Promise<{
|
|
27
|
+
coinOutAmount: bigint;
|
|
28
|
+
feeInAmount: bigint;
|
|
29
|
+
feeOutAmount: bigint;
|
|
30
|
+
}>;
|
|
27
31
|
otherCoinInPool: (inputs: {
|
|
28
32
|
coinType: CoinType;
|
|
29
33
|
pool: FlowXPoolObject;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flowXApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/flowX/flowXApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,qBAAa,QAAS,YAAW,uBAAuB,CAAC,eAAe,CAAC;IAqB5D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAhBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAI/B;IAMF,SAAgB,SAAS,EAAE,cAAc,CAAC;gBAMb,QAAQ,EAAE,YAAY;IAmB5C,aAAa,QAAa,QAAQ,eAAe,EAAE,CAAC,CAYzD;IAMK,mBAAmB,WAAY;QACrC,KAAK,EAAE,eAAe,EAAE,CAAC;QACzB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB;2BACmB,eAAe,EAAE;yBACnB,eAAe,EAAE;MA6CjC;IAEK,mBAAmB,WAAkB;QAC3C,IAAI,EAAE,eAAe,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB
|
|
1
|
+
{"version":3,"file":"flowXApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/flowX/flowXApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,qBAAa,QAAS,YAAW,uBAAuB,CAAC,eAAe,CAAC;IAqB5D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAhBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAI/B;IAMF,SAAgB,SAAS,EAAE,cAAc,CAAC;gBAMb,QAAQ,EAAE,YAAY;IAmB5C,aAAa,QAAa,QAAQ,eAAe,EAAE,CAAC,CAYzD;IAMK,mBAAmB,WAAY;QACrC,KAAK,EAAE,eAAe,EAAE,CAAC;QACzB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB;2BACmB,eAAe,EAAE;yBACnB,eAAe,EAAE;MA6CjC;IAEK,mBAAmB,WAAkB;QAC3C,IAAI,EAAE,eAAe,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB;;;;OAyBC;IAEK,eAAe,WAAY;QACjC,QAAQ,EAAE,QAAQ,CAAC;QACnB,IAAI,EAAE,eAAe,CAAC;KACtB,YAIC;IAMK,OAAO,WAAY,uBAAuB,SAsB/C;IAUF,OAAO,CAAC,iBAAiB,CA6BvB;IAUF,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAa/B;IAEF,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAU9B;IAEF,OAAO,CAAC,MAAM,CAAC,WAAW,CAMxB;CACF"}
|
|
@@ -73,7 +73,14 @@ class FlowXApi {
|
|
|
73
73
|
};
|
|
74
74
|
};
|
|
75
75
|
this.fetchTradeAmountOut = (inputs) => __awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
|
|
76
|
+
const coinOutAmount = yield routerAsyncApiHelpers_1.RouterAsyncApiHelpers.devInspectTradeAmountOut(Object.assign(Object.assign({}, inputs), { Provider: this.Provider, devInspectTx: (txInputs) => this.tradeDevInspectTx(Object.assign(Object.assign(Object.assign({}, inputs), txInputs), { routerSwapCapCoinType: inputs.coinInType })) }));
|
|
77
|
+
// TODO: set correct fee (just assuming all fees are 0.3% for now)
|
|
78
|
+
const feeInAmount = BigInt(Math.round(Number(inputs.coinInAmount) * (0.3 / 100)));
|
|
79
|
+
return {
|
|
80
|
+
coinOutAmount,
|
|
81
|
+
feeInAmount,
|
|
82
|
+
feeOutAmount: BigInt(0),
|
|
83
|
+
};
|
|
77
84
|
});
|
|
78
85
|
this.otherCoinInPool = (inputs) => {
|
|
79
86
|
return FlowXApi.isCoinTypeX(inputs)
|
|
@@ -53,7 +53,11 @@ export declare class TurbosApi implements RouterAsyncApiInterface<TurbosPoolObje
|
|
|
53
53
|
coinInType: CoinType;
|
|
54
54
|
coinOutType: CoinType;
|
|
55
55
|
coinInAmount: Balance;
|
|
56
|
-
}) => Promise<
|
|
56
|
+
}) => Promise<{
|
|
57
|
+
coinOutAmount: bigint;
|
|
58
|
+
feeInAmount: bigint;
|
|
59
|
+
feeOutAmount: bigint;
|
|
60
|
+
}>;
|
|
57
61
|
otherCoinInPool: (inputs: {
|
|
58
62
|
coinType: CoinType;
|
|
59
63
|
pool: TurbosPoolObject;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turbosApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/turbos/turbosApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EACN,OAAO,EAEP,cAAc,EACd,sBAAsB,EACtB,eAAe,EACf,QAAQ,EACR,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,qBAAqB,EAErB,gBAAgB,EAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAE3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGvD,qBAAa,SAAU,YAAW,uBAAuB,CAAC,gBAAgB,CAAC;IA8B9D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAzBrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAM/B;IAMF,SAAgB,SAAS,EAAE;QAC1B,MAAM,EAAE,eAAe,CAAC;QACxB,aAAa,EAAE,sBAAsB,CAAC;QACtC,KAAK,EAAE,cAAc,CAAC;KACtB,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,cAAc,CAAW;IACxC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAU;gBAMV,QAAQ,EAAE,YAAY;IAwB5C,aAAa,QAAa,QAAQ,gBAAgB,EAAE,CAAC,CAgB1D;IAEK,mBAAmB,WAAY;QACrC,KAAK,EAAE,gBAAgB,EAAE,CAAC;QAC1B,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB;2BACmB,gBAAgB,EAAE;yBACpB,gBAAgB,EAAE;MAoClC;IAMK,mBAAmB,WACjB,uBAAuB,GAAG;QACjC,YAAY,EAAE,QAAQ,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;KACtB,SAiCA;IAEK,mBAAmB,WACjB,uBAAuB,GAAG;QACjC,YAAY,EAAE,QAAQ,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;KACtB,SAiCA;IAEK,OAAO,WACL,uBAAuB,GAAG;QACjC,IAAI,EAAE,gBAAgB,CAAC;KACvB,SAcA;IAMK,iBAAiB,WAAY;QACnC,EAAE,EAAE,gBAAgB,CAAC;QACrB,YAAY,EAAE,QAAQ,CAAC;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,SAAS,EAAE,QAAQ,CAAC;QACpB,SAAS,EAAE,QAAQ,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KAClB,SAgDE;IAMI,mBAAmB,0BAQxB;IAEK,mBAAmB,WAAkB;QAC3C,IAAI,EAAE,gBAAgB,CAAC;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB
|
|
1
|
+
{"version":3,"file":"turbosApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/external/turbos/turbosApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -165,7 +165,11 @@ class TurbosApi {
|
|
|
165
165
|
});
|
|
166
166
|
this.fetchTradeAmountOut = (inputs) => __awaiter(this, void 0, void 0, function* () {
|
|
167
167
|
const tradeResult = yield this.fetchCalcTradeResult(inputs);
|
|
168
|
-
return
|
|
168
|
+
return {
|
|
169
|
+
coinOutAmount: tradeResult.amountOut,
|
|
170
|
+
feeInAmount: tradeResult.feeAmount,
|
|
171
|
+
feeOutAmount: BigInt(0),
|
|
172
|
+
};
|
|
169
173
|
});
|
|
170
174
|
this.otherCoinInPool = (inputs) => {
|
|
171
175
|
return TurbosApi.otherCoinInPool(inputs);
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { AftermathApi } from "../../../general/providers/aftermathApi";
|
|
2
|
-
import { Balance, CoinType, RouterCompleteTradeRoute, ExternalFee, RouterProtocolName, RouterSerializableCompleteGraph, Slippage, SuiNetwork, AllRouterOptions, SuiAddress, RouterSerializablePool } from "../../../types";
|
|
2
|
+
import { Balance, CoinType, RouterCompleteTradeRoute, ExternalFee, RouterProtocolName, RouterSerializableCompleteGraph, Slippage, SuiNetwork, AllRouterOptions, SuiAddress, RouterSerializablePool, Percentage } from "../../../types";
|
|
3
3
|
import { RouterAsyncApiHelpers } from "./routerAsyncApiHelpers";
|
|
4
4
|
import { RouterSynchronousApiHelpers } from "./routerSynchronousApiHelpers";
|
|
5
5
|
import { TransactionArgument, TransactionBlock } from "@mysten/sui.js/transactions";
|
|
6
6
|
export declare class RouterApiHelpers {
|
|
7
|
+
private readonly Provider;
|
|
7
8
|
private readonly options;
|
|
8
9
|
readonly SynchronousHelpers: RouterSynchronousApiHelpers;
|
|
9
10
|
readonly AsyncHelpers: RouterAsyncApiHelpers;
|
|
@@ -34,6 +35,9 @@ export declare class RouterApiHelpers {
|
|
|
34
35
|
excludeProtocols?: RouterProtocolName[];
|
|
35
36
|
}) => Promise<RouterCompleteTradeRoute>;
|
|
36
37
|
private fetchCompleteTradeRoutesForLastRouteAsyncPool;
|
|
38
|
+
fetchCalcNetTradeFeePercentageFromCompleteTradeRoute(inputs: {
|
|
39
|
+
completeRoute: RouterCompleteTradeRoute;
|
|
40
|
+
}): Promise<Percentage>;
|
|
37
41
|
fetchTransactionForCompleteTradeRoute(inputs: {
|
|
38
42
|
tx: TransactionBlock;
|
|
39
43
|
walletAddress: SuiAddress;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,OAAO,EACP,QAAQ,EAER,wBAAwB,EACxB,WAAW,EACX,kBAAkB,EAClB,+BAA+B,EAC/B,QAAQ,EACR,UAAU,EAKV,gBAAgB,EAChB,UAAU,EACV,sBAAsB,EACtB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"routerApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,OAAO,EACP,QAAQ,EAER,wBAAwB,EACxB,WAAW,EACX,kBAAkB,EAClB,+BAA+B,EAC/B,QAAQ,EACR,UAAU,EAKV,gBAAgB,EAChB,UAAU,EACV,sBAAsB,EACtB,UAAU,EAEV,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AAIrC,qBAAa,gBAAgB;IAa3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IATzB,SAAgB,kBAAkB,8BAAC;IACnC,SAAgB,YAAY,wBAAC;gBAOX,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,gBAAgB;IAiBpC,4BAA4B,WAAkB;QACpD,KAAK,EAAE,sBAAsB,EAAE,CAAC;KAChC,8CAEC;IAMK,oCAAoC,WAAkB;QAC5D,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,OAAO,EAAE,UAAU,CAAC;QACpB,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,WAAW,CAAC;QAC1B,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACxC,KAAG,QAAQ,wBAAwB,CAAC,CAoFnC;IAEK,qCAAqC,WAAkB;QAC7D,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,OAAO,EAAE,UAAU,CAAC;QACpB,KAAK,EAAE,+BAA+B,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACxC,KAAG,QAAQ,wBAAwB,CAAC,CAanC;IAEF,OAAO,CAAC,6CAA6C,CAwDnD;IAEW,oDAAoD,CAAC,MAAM,EAAE;QACzE,aAAa,EAAE,wBAAwB,CAAC;KACxC,GAAG,OAAO,CAAC,UAAU,CAAC;IAiEV,qCAAqC,CAAC,MAAM,EAAE;QAC1D,EAAE,EAAE,gBAAgB,CAAC;QACrB,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;QAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAcrC,uBAAuB,WAAY;QACzC,YAAY,EAAE,OAAO,CAAC;KACtB,KAAG,OAAO,EAAE,CAmBX;IAUF,OAAO,CAAC,MAAM,CAAC,uCAAuC,CAiDpD;CACF"}
|
|
@@ -15,11 +15,14 @@ const routerGraph_1 = require("../utils/synchronous/routerGraph");
|
|
|
15
15
|
const routerAsyncApiHelpers_1 = require("./routerAsyncApiHelpers");
|
|
16
16
|
const routerSynchronousApiHelpers_1 = require("./routerSynchronousApiHelpers");
|
|
17
17
|
const routerAsyncGraph_1 = require("../utils/async/routerAsyncGraph");
|
|
18
|
+
const utils_1 = require("../../../general/utils");
|
|
19
|
+
const __1 = require("../..");
|
|
18
20
|
class RouterApiHelpers {
|
|
19
21
|
// =========================================================================
|
|
20
22
|
// Constructor
|
|
21
23
|
// =========================================================================
|
|
22
24
|
constructor(Provider, options) {
|
|
25
|
+
this.Provider = Provider;
|
|
23
26
|
this.options = options;
|
|
24
27
|
// =========================================================================
|
|
25
28
|
// Public Methods
|
|
@@ -118,6 +121,47 @@ class RouterApiHelpers {
|
|
|
118
121
|
this.SynchronousHelpers = new routerSynchronousApiHelpers_1.RouterSynchronousApiHelpers(Provider);
|
|
119
122
|
this.AsyncHelpers = new routerAsyncApiHelpers_1.RouterAsyncApiHelpers(Provider, options.regular.async);
|
|
120
123
|
}
|
|
124
|
+
fetchCalcNetTradeFeePercentageFromCompleteTradeRoute(inputs) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
const { completeRoute } = inputs;
|
|
127
|
+
const coinsWithFees = completeRoute.routes
|
|
128
|
+
.reduce((acc, route) => [...acc, ...route.paths], [])
|
|
129
|
+
.reduce((acc, path) => [
|
|
130
|
+
...acc,
|
|
131
|
+
{
|
|
132
|
+
coinType: path.coinIn.type,
|
|
133
|
+
fee: path.coinIn.tradeFee,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
coinType: path.coinOut.type,
|
|
137
|
+
fee: path.coinOut.tradeFee,
|
|
138
|
+
},
|
|
139
|
+
], [])
|
|
140
|
+
.filter((data) => data.fee > BigInt(0));
|
|
141
|
+
const coins = utils_1.Helpers.uniqueArray([
|
|
142
|
+
...coinsWithFees.map((data) => data.coinType),
|
|
143
|
+
completeRoute.coinOut.type,
|
|
144
|
+
]);
|
|
145
|
+
const [coinsToPrice, coinsToDecimals] = yield Promise.all([
|
|
146
|
+
this.Provider.Prices().fetchCoinsToPrice({
|
|
147
|
+
coins,
|
|
148
|
+
}),
|
|
149
|
+
this.Provider.Coin().fetchCoinsToDecimals({
|
|
150
|
+
coins,
|
|
151
|
+
}),
|
|
152
|
+
]);
|
|
153
|
+
const netFeeUsd = coinsWithFees.reduce((acc, data) => acc +
|
|
154
|
+
(coinsToPrice[data.coinType] < 0
|
|
155
|
+
? 0
|
|
156
|
+
: coinsToPrice[data.coinType]) *
|
|
157
|
+
__1.Coin.balanceWithDecimals(data.fee, coinsToDecimals[data.coinType]), 0);
|
|
158
|
+
const coinOutAmountUsd = (coinsToPrice[completeRoute.coinOut.type] < 0
|
|
159
|
+
? 0
|
|
160
|
+
: coinsToPrice[completeRoute.coinOut.type]) *
|
|
161
|
+
__1.Coin.balanceWithDecimals(completeRoute.coinOut.amount, coinsToDecimals[completeRoute.coinOut.type]);
|
|
162
|
+
return coinOutAmountUsd <= 0 ? 0 : netFeeUsd / coinOutAmountUsd;
|
|
163
|
+
});
|
|
164
|
+
}
|
|
121
165
|
// =========================================================================
|
|
122
166
|
// Transaction Builders
|
|
123
167
|
// =========================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerAsyncApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerAsyncApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,kBAAkB,EAClB,uBAAuB,EACvB,2BAA2B,EAE3B,uBAAuB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAOjF,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AAOrC,qBAAa,qBAAqB;IAoBhC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhBzB,SAAgB,kBAAkB,EAAE,MAAM,CACzC,uBAAuB,EACvB,MAAM,uBAAuB,CAAC,GAAG,CAAC,CAClC,CAKC;gBAOgB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,kBAAkB;IAOtC,aAAa,WAAkB;QACrC,SAAS,EAAE,uBAAuB,EAAE,CAAC;KACrC,KAAG,QAAQ,2BAA2B,EAAE,CAAC,CAYxC;IAEK,mBAAmB,WAAY;QACrC,SAAS,EAAE,uBAAuB,EAAE,CAAC;QACrC,KAAK,EAAE,2BAA2B,EAAE,CAAC;QACrC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAG;QACH,eAAe,EAAE,2BAA2B,EAAE,CAAC;QAC/C,iBAAiB,EAAE,2BAA2B,EAAE,CAAC;KACjD,CA+BC;IAEK,iBAAiB,WAAkB;QACzC,KAAK,EAAE,2BAA2B,EAAE,CAAC;QACrC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,EAAE,CAAC;KACzB,KAAG,QAAQ,uBAAuB,CAAC,
|
|
1
|
+
{"version":3,"file":"routerAsyncApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerAsyncApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,kBAAkB,EAClB,uBAAuB,EACvB,2BAA2B,EAE3B,uBAAuB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAOjF,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AAOrC,qBAAa,qBAAqB;IAoBhC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhBzB,SAAgB,kBAAkB,EAAE,MAAM,CACzC,uBAAuB,EACvB,MAAM,uBAAuB,CAAC,GAAG,CAAC,CAClC,CAKC;gBAOgB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,kBAAkB;IAOtC,aAAa,WAAkB;QACrC,SAAS,EAAE,uBAAuB,EAAE,CAAC;KACrC,KAAG,QAAQ,2BAA2B,EAAE,CAAC,CAYxC;IAEK,mBAAmB,WAAY;QACrC,SAAS,EAAE,uBAAuB,EAAE,CAAC;QACrC,KAAK,EAAE,2BAA2B,EAAE,CAAC;QACrC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAG;QACH,eAAe,EAAE,2BAA2B,EAAE,CAAC;QAC/C,iBAAiB,EAAE,2BAA2B,EAAE,CAAC;KACjD,CA+BC;IAEK,iBAAiB,WAAkB;QACzC,KAAK,EAAE,2BAA2B,EAAE,CAAC;QACrC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,EAAE,CAAC;KACzB,KAAG,QAAQ,uBAAuB,CAAC,CAiElC;IAMK,oBAAoB,WAAY;QACtC,IAAI,EAAE,2BAA2B,CAAC;KAClC,KAAG,uBAAuB,CAkBzB;IAUF,OAAc,wBAAwB;kBAC3B,YAAY;oBACV,QAAQ;qBACP,QAAQ;sBACP,OAAO;+BACE;YACtB,EAAE,EAAE,gBAAgB,CAAC;YACrB,WAAW,EAAE,UAAU,CAAC;YACxB,kBAAkB,EAAE,UAAU,CAAC;SAC/B;;;;;;;;;;;;;;;;;;;;UACE,QAAQ,OAAO,CAAC,CA4IlB;IAUF,OAAO,CAAC,qBAAqB,CAK3B;CACF"}
|
|
@@ -77,20 +77,26 @@ class RouterAsyncApiHelpers {
|
|
|
77
77
|
const resultsOrUndefined = yield Promise.all(apis.map((api, index) => __awaiter(this, void 0, void 0, function* () {
|
|
78
78
|
try {
|
|
79
79
|
const pool = inputs.pools[index];
|
|
80
|
-
const
|
|
80
|
+
const tradeResults = yield Promise.all(coinInAmounts.map((amountIn) => __awaiter(this, void 0, void 0, function* () {
|
|
81
81
|
try {
|
|
82
82
|
return yield api.fetchTradeAmountOut(Object.assign(Object.assign({}, inputs), { pool, coinInAmount: amountIn }));
|
|
83
83
|
}
|
|
84
84
|
catch (e) {
|
|
85
85
|
console.error(e);
|
|
86
|
-
return
|
|
86
|
+
return {
|
|
87
|
+
coinOutAmount: BigInt(0),
|
|
88
|
+
feeInAmount: BigInt(0),
|
|
89
|
+
feeOutAmount: BigInt(0),
|
|
90
|
+
};
|
|
87
91
|
}
|
|
88
92
|
})));
|
|
89
93
|
const protocol = protocols[index];
|
|
90
94
|
return {
|
|
91
95
|
pool,
|
|
92
|
-
amountsOut,
|
|
93
96
|
protocol,
|
|
97
|
+
amountsOut: tradeResults.map((result) => result.coinOutAmount),
|
|
98
|
+
feesIn: tradeResults.map((result) => result.feeInAmount),
|
|
99
|
+
feesOut: tradeResults.map((result) => result.feeOutAmount),
|
|
94
100
|
};
|
|
95
101
|
}
|
|
96
102
|
catch (e) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ApiRouterTransactionForCompleteTradeRouteBody,
|
|
1
|
+
import { ApiRouterTransactionForCompleteTradeRouteBody, RouterSerializableCompleteGraph, SuiNetwork, ApiRouterTradeEventsBody, RouterTradeEvent, Balance, ApiRouterPartialCompleteTradeRouteBody, ApiRouterAddTransactionForCompleteTradeRouteBody, ApiRouterAddTransactionForCompleteTradeRouteResponse, RouterCompleteTradeRouteWithFee } from "../../types";
|
|
2
2
|
import { Caller } from "../../general/utils/caller";
|
|
3
3
|
import { TransactionBlock } from "@mysten/sui.js/transactions";
|
|
4
4
|
/**
|
|
@@ -51,7 +51,7 @@ export declare class Router extends Caller {
|
|
|
51
51
|
* Amount of coin being given away
|
|
52
52
|
*/
|
|
53
53
|
coinInAmount: Balance;
|
|
54
|
-
}, abortSignal?: AbortSignal): Promise<
|
|
54
|
+
}, abortSignal?: AbortSignal): Promise<RouterCompleteTradeRouteWithFee>;
|
|
55
55
|
/**
|
|
56
56
|
* Creates route across multiple pools and protocols for best trade execution price
|
|
57
57
|
*
|
|
@@ -64,7 +64,7 @@ export declare class Router extends Caller {
|
|
|
64
64
|
* Amount of coin expected to receive
|
|
65
65
|
*/
|
|
66
66
|
coinOutAmount: Balance;
|
|
67
|
-
}, abortSignal?: AbortSignal): Promise<
|
|
67
|
+
}, abortSignal?: AbortSignal): Promise<RouterCompleteTradeRouteWithFee>;
|
|
68
68
|
/**
|
|
69
69
|
* Creates `TranscationBlock` from previously created complete trade route
|
|
70
70
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/packages/router/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,6CAA6C,
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/packages/router/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,6CAA6C,EAG7C,+BAA+B,EAE/B,UAAU,EAEV,wBAAwB,EACxB,gBAAgB,EAIhB,OAAO,EACP,sCAAsC,EACtC,gDAAgD,EAChD,oDAAoD,EACpD,+BAA+B,EAC/B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;;;;;;;;;GAUG;AACH,qBAAa,MAAO,SAAQ,MAAM;aAsBL,OAAO,CAAC;IAjBpC,gBAAuB,SAAS;QAC/B;;WAEG;;MAEF;IAMF;;;;;OAKG;gBACyB,OAAO,CAAC,wBAAY;IAYhD;;;OAGG;IACI,cAAc,QAAa,QAAQ,MAAM,CAAC,CAE/C;IAEW,iBAAiB;IAI9B;;;;OAIG;IACU,QAAQ;IAIrB;;;;;;OAMG;IACU,kCAAkC,CAC9C,MAAM,EAAE,sCAAsC,GAAG;QAChD;;WAEG;QACH,YAAY,EAAE,OAAO,CAAC;KACtB,EACD,WAAW,CAAC,EAAE,WAAW;IAQ1B;;;;;;OAMG;IACU,mCAAmC,CAC/C,MAAM,EAAE,sCAAsC,GAAG;QAChD;;WAEG;QACH,aAAa,EAAE,OAAO,CAAC;KACvB,EACD,WAAW,CAAC,EAAE,WAAW;IAY1B;;;;;;;;;;;;;;;;OAgBG;IACU,mCAAmC,CAC/C,MAAM,EAAE,6CAA6C;IAQzC,mCAAmC,CAC/C,MAAM,EAAE,IAAI,CACX,gDAAgD,EAChD,cAAc,CACd,GAAG;QACH,EAAE,EAAE,gBAAgB,CAAC;KACrB;IAgBW,cAAc,CAAC,MAAM,EAAE,wBAAwB;CAG5D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AnyObjectType, Balance, Event, Slippage, ApiEventsBody, ObjectId, SuiAddress, TxBytes, BigIntAsString, SerializedTransaction, ExternalFee } from "../../general/types/generalTypes";
|
|
1
|
+
import { AnyObjectType, Balance, Percentage, Event, Slippage, ApiEventsBody, ObjectId, SuiAddress, TxBytes, BigIntAsString, SerializedTransaction, ExternalFee } from "../../general/types/generalTypes";
|
|
2
2
|
import { CoinType } from "../coin/coinTypes";
|
|
3
3
|
import { PoolObject, PoolTradeFee } from "../pools/poolsTypes";
|
|
4
4
|
import { DeepBookPoolObject } from "../external/deepBook/deepBookTypes";
|
|
@@ -37,6 +37,9 @@ export type RouterCompleteTradeRoute = RouterTradeInfo & {
|
|
|
37
37
|
referrer?: SuiAddress;
|
|
38
38
|
externalFee?: ExternalFee;
|
|
39
39
|
};
|
|
40
|
+
export type RouterCompleteTradeRouteWithFee = RouterCompleteTradeRoute & {
|
|
41
|
+
netTradeFeePercentage: Percentage;
|
|
42
|
+
};
|
|
40
43
|
export type RouterTradeRoute = RouterTradeInfo & {
|
|
41
44
|
paths: RouterTradePath[];
|
|
42
45
|
};
|
|
@@ -98,6 +101,8 @@ export interface RouterAsyncTradeResult {
|
|
|
98
101
|
protocol: RouterAsyncProtocolName;
|
|
99
102
|
pool: RouterAsyncSerializablePool;
|
|
100
103
|
amountsOut: Balance[];
|
|
104
|
+
feesIn: Balance[];
|
|
105
|
+
feesOut: Balance[];
|
|
101
106
|
}
|
|
102
107
|
export interface RouterTradeEvent extends Event {
|
|
103
108
|
trader: SuiAddress;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/router/routerTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,aAAa,EACb,OAAO,
|
|
1
|
+
{"version":3,"file":"routerTypes.d.ts","sourceRoot":"","sources":["../../../src/packages/router/routerTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,11 @@ export interface RouterAsyncApiInterface<PoolType extends RouterAsyncSerializabl
|
|
|
15
15
|
coinInType: CoinType;
|
|
16
16
|
coinOutType: CoinType;
|
|
17
17
|
coinInAmount: Balance;
|
|
18
|
-
}) => Promise<
|
|
18
|
+
}) => Promise<{
|
|
19
|
+
coinOutAmount: Balance;
|
|
20
|
+
feeInAmount: Balance;
|
|
21
|
+
feeOutAmount: Balance;
|
|
22
|
+
}>;
|
|
19
23
|
otherCoinInPool: (inputs: {
|
|
20
24
|
coinType: CoinType;
|
|
21
25
|
pool: PoolType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerAsyncApiInterface.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/async/routerAsyncApiInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAMzE,MAAM,WAAW,uBAAuB,CACvC,QAAQ,SAAS,2BAA2B;IAc5C,aAAa,EAAE,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEzC,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAC7B,KAAK,EAAE,QAAQ,EAAE,CAAC;QAClB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAK;QACL,iBAAiB,EAAE,QAAQ,EAAE,CAAC;QAC9B,eAAe,EAAE,QAAQ,EAAE,CAAC;KAC5B,CAAC;IAMF,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAC7B,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"routerAsyncApiInterface.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/async/routerAsyncApiInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAMzE,MAAM,WAAW,uBAAuB,CACvC,QAAQ,SAAS,2BAA2B;IAc5C,aAAa,EAAE,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEzC,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAC7B,KAAK,EAAE,QAAQ,EAAE,CAAC;QAClB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAK;QACL,iBAAiB,EAAE,QAAQ,EAAE,CAAC;QAC9B,eAAe,EAAE,QAAQ,EAAE,CAAC;KAC5B,CAAC;IAMF,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAC7B,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,YAAY,EAAE,OAAO,CAAC;KACtB,KAAK,OAAO,CAAC;QACb,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,OAAO,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;KACtB,CAAC,CAAC;IAUH,eAAe,EAAE,CAAC,MAAM,EAAE;QACzB,QAAQ,EAAE,QAAQ,CAAC;QACnB,IAAI,EAAE,QAAQ,CAAC;KACf,KAAK,QAAQ,CAAC;CACf"}
|
|
@@ -3,7 +3,7 @@ export declare class RouterAsyncGraph {
|
|
|
3
3
|
static createFinalCompleteRoute(inputs: {
|
|
4
4
|
tradeResults: RouterAsyncTradeResults;
|
|
5
5
|
coinInAmounts: Balance[];
|
|
6
|
-
completeRoutes?: RouterCompleteTradeRoute[][];
|
|
6
|
+
completeRoutes?: Omit<RouterCompleteTradeRoute, "netTradeFeePercentage">[][];
|
|
7
7
|
}): RouterCompleteTradeRoute;
|
|
8
8
|
static completeRoutesFromTradeResults: (inputs: {
|
|
9
9
|
tradeResults: RouterAsyncTradeResults;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerAsyncGraph.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/async/routerAsyncGraph.ts"],"names":[],"mappings":"AACA,OAAO,EACN,OAAO,EACP,uBAAuB,EACvB,wBAAwB,EAExB,MAAM,mBAAmB,CAAC;AAM3B,qBAAa,gBAAgB;WASd,wBAAwB,CAAC,MAAM,EAAE;QAC9C,YAAY,EAAE,uBAAuB,CAAC;QACtC,aAAa,EAAE,OAAO,EAAE,CAAC;QACzB,cAAc,CAAC,EAAE,wBAAwB,EAAE,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"routerAsyncGraph.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/async/routerAsyncGraph.ts"],"names":[],"mappings":"AACA,OAAO,EACN,OAAO,EACP,uBAAuB,EACvB,wBAAwB,EAExB,MAAM,mBAAmB,CAAC;AAM3B,qBAAa,gBAAgB;WASd,wBAAwB,CAAC,MAAM,EAAE;QAC9C,YAAY,EAAE,uBAAuB,CAAC;QACtC,aAAa,EAAE,OAAO,EAAE,CAAC;QACzB,cAAc,CAAC,EAAE,IAAI,CACpB,wBAAwB,EACxB,uBAAuB,CACvB,EAAE,EAAE,CAAC;KACN,GAAG,wBAAwB;IAuB5B,OAAc,8BAA8B,WAAY;QACvD,YAAY,EAAE,uBAAuB,CAAC;KACtC,KAAG,wBAAwB,EAAE,EAAE,CAgD9B;IAUF,OAAO,CAAC,MAAM,CAAC,uBAAuB,CA+CpC;IAEF,OAAO,CAAC,MAAM,CAAC,2BAA2B,CAwCxC;CACF"}
|
|
@@ -39,12 +39,12 @@ RouterAsyncGraph.completeRoutesFromTradeResults = (inputs) => {
|
|
|
39
39
|
coinIn: {
|
|
40
40
|
type: tradeResults.coinInType,
|
|
41
41
|
amount: tradeResults.coinInAmounts[amountOutIndex],
|
|
42
|
-
tradeFee:
|
|
42
|
+
tradeFee: result.feesIn[amountOutIndex],
|
|
43
43
|
},
|
|
44
44
|
coinOut: {
|
|
45
45
|
type: tradeResults.coinOutType,
|
|
46
46
|
amount: amountOut,
|
|
47
|
-
tradeFee:
|
|
47
|
+
tradeFee: result.feesOut[amountOutIndex],
|
|
48
48
|
},
|
|
49
49
|
spotPrice: Number(tradeResults.coinInAmounts[0]) /
|
|
50
50
|
Number(result.amountsOut[0]),
|
|
@@ -34,14 +34,22 @@ export interface RouterPoolInterface {
|
|
|
34
34
|
coinInAmount: Balance;
|
|
35
35
|
coinOutType: CoinType;
|
|
36
36
|
referrer?: SuiAddress;
|
|
37
|
-
}) =>
|
|
37
|
+
}) => {
|
|
38
|
+
coinOutAmount: Balance;
|
|
39
|
+
feeInAmount: Balance;
|
|
40
|
+
feeOutAmount: Balance;
|
|
41
|
+
};
|
|
38
42
|
tradeTx: (inputs: RouterPoolTradeTxInputs) => TransactionObjectArgument;
|
|
39
43
|
getTradeAmountIn: (inputs: {
|
|
40
44
|
coinInType: CoinType;
|
|
41
45
|
coinOutAmount: Balance;
|
|
42
46
|
coinOutType: CoinType;
|
|
43
47
|
referrer?: SuiAddress;
|
|
44
|
-
}) =>
|
|
48
|
+
}) => {
|
|
49
|
+
coinInAmount: Balance;
|
|
50
|
+
feeInAmount: Balance;
|
|
51
|
+
feeOutAmount: Balance;
|
|
52
|
+
};
|
|
45
53
|
getUpdatedPoolBeforeTrade: (inputs: {
|
|
46
54
|
coinInType: CoinType;
|
|
47
55
|
coinInAmount: Balance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerPoolInterface.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/router/utils/synchronous/interfaces/routerPoolInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,yBAAyB,EACzB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,OAAO,EAEP,kBAAkB,EAClB,sBAAsB,EAEtB,UAAU,EACV,QAAQ,EAGR,QAAQ,EACR,UAAU,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAyBhE,MAAM,WAAW,uBAAuB;IACvC,QAAQ,EAAE,YAAY,CAAC;IACvB,EAAE,EAAE,gBAAgB,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,yBAAyB,CAAC;IAC/C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,EAAE,yBAAyB,CAAC;IACzC,qBAAqB,EAAE,QAAQ,CAAC;CAChC;AAMD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAE7B,OAAO,EAAE,UAAU,CAAC;CACpB,GAAG,mBAAmB,CAiCtB;AAmBD,MAAM,WAAW,mBAAmB;IASnC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAOhC,YAAY,EAAE,CAAC,MAAM,EAAE;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAK,MAAM,CAAC;IAEb,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAC3B,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"routerPoolInterface.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/router/utils/synchronous/interfaces/routerPoolInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,yBAAyB,EACzB,gBAAgB,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,OAAO,EAEP,kBAAkB,EAClB,sBAAsB,EAEtB,UAAU,EACV,QAAQ,EAGR,QAAQ,EACR,UAAU,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAyBhE,MAAM,WAAW,uBAAuB;IACvC,QAAQ,EAAE,YAAY,CAAC;IACvB,EAAE,EAAE,gBAAgB,CAAC;IACrB,QAAQ,EAAE,QAAQ,GAAG,yBAAyB,CAAC;IAC/C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC;IACrB,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,EAAE,yBAAyB,CAAC;IACzC,qBAAqB,EAAE,QAAQ,CAAC;CAChC;AAMD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAE7B,OAAO,EAAE,UAAU,CAAC;CACpB,GAAG,mBAAmB,CAiCtB;AAmBD,MAAM,WAAW,mBAAmB;IASnC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAOhC,YAAY,EAAE,CAAC,MAAM,EAAE;QACtB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,KAAK,MAAM,CAAC;IAEb,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAC3B,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK;QACL,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,OAAO,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;KACtB,CAAC;IAEF,OAAO,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,yBAAyB,CAAC;IAYxE,gBAAgB,EAAE,CAAC,MAAM,EAAE;QAC1B,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK;QACL,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,OAAO,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;KACtB,CAAC;IAEF,yBAAyB,EAAE,CAAC,MAAM,EAAE;QACnC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAK,mBAAmB,CAAC;IAE1B,wBAAwB,EAAE,CAAC,MAAM,EAAE;QAClC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAK,mBAAmB,CAAC;CAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerGraph.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/synchronous/routerGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EACN,OAAO,EACP,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,wBAAwB,EACxB,+BAA+B,EAE/B,eAAe,EAIf,UAAU,EACV,QAAQ,EAGR,sBAAsB,EACtB,UAAU,EAEV,kBAAkB,EAElB,MAAM,mBAAmB,CAAC;AAW3B,KAAK,kBAAkB,GAAG;IACzB,MAAM,EAAE,UAAU,EAAE,CAAC;CACrB,GAAG,SAAS,CAAC;AAEd,KAAK,UAAU,GAAG;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;CACnB,GAAG,SAAS,CAAC;AAEd,KAAK,SAAS,GAAG,SAAS,GAAG;IAC5B,OAAO,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,KAAK,SAAS,GAAG,eAAe,GAAG;IAClC,gBAAgB,EAAE,OAAO,CAAC;CAC1B,CAAC;AAMF,qBAAa,WAAW;IAoBtB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAZnC,SAAgB,KAAK,EAAE,mBAAmB,CAAC;IAE3C,OAAO,CAAC,WAAW,CAA+B;gBAOjD,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,+BAA+B,EAC9B,OAAO,EAAE,wBAAwB,EACxB,gBAAgB,CAAC,kCAAsB;IAclD,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,wBAAwB,CAAC;IAO/D,6BAA6B,CAAC,MAAM,EAAE;QAC5C,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;KAC1B,GAAG,wBAAwB;IAQrB,8BAA8B,CAAC,MAAM,EAAE;QAC7C,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;KAC1B,GAAG,wBAAwB;IASrB,+BAA+B,CAAC,MAAM,EAAE;QAC9C,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,EAAE,CAAC;QACzB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;KAC1B,GAAG,wBAAwB,EAAE;WA2ChB,WAAW,CAAC,MAAM,EAAE;QACjC,KAAK,EAAE,sBAAsB,EAAE,CAAC;KAChC,GAAG,+BAA+B;WAuDrB,qBAAqB,CAAC,MAAM,EAAE;QAC3C,KAAK,EAAE,+BAA+B,CAAC;QACvC,OAAO,EAAE,UAAU,CAAC;QACpB,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACxC,GAAG,mBAAmB;IAqDvB,OAAc,uBAAuB,WAAY;QAChD,KAAK,EAAE,+BAA+B,CAAC;KACvC,KAAG,QAAQ,EAAE,CAEZ;IAMF,OAAO,CAAC,gBAAgB;IAgJxB,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAkBpC;IAMF,OAAO,CAAC,MAAM,CAAC,UAAU,CAqCvB;IAEF,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAiGjC;IAwGF,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAmG/B;IAEF,OAAO,CAAC,uBAAuB,CAyC7B;IAEF,OAAO,CAAC,oCAAoC,CAsF1C;IAEF,OAAO,CAAC,uBAAuB,CA8D7B;IAEF,OAAO,CAAC,iCAAiC,
|
|
1
|
+
{"version":3,"file":"routerGraph.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/synchronous/routerGraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -131,7 +131,7 @@ class RouterGraph {
|
|
|
131
131
|
coinOutAmount: path.coinIn.amount,
|
|
132
132
|
});
|
|
133
133
|
const totalCoinInAmount = currentCoinInAmount + path.coinIn.amount;
|
|
134
|
-
const
|
|
134
|
+
const tradeResult = isGivenAmountOut
|
|
135
135
|
? poolBeforePathTrades.getTradeAmountIn({
|
|
136
136
|
coinInType: path.coinIn.type,
|
|
137
137
|
coinOutType: path.coinOut.type,
|
|
@@ -144,6 +144,9 @@ class RouterGraph {
|
|
|
144
144
|
coinInAmount: totalCoinInAmount,
|
|
145
145
|
referrer,
|
|
146
146
|
});
|
|
147
|
+
const totalCoinOutAmount = "coinOutAmount" in tradeResult
|
|
148
|
+
? tradeResult.coinOutAmount
|
|
149
|
+
: tradeResult.coinInAmount;
|
|
147
150
|
const coinOutAmountFromTrade = totalCoinOutAmount - path.coinOut.amount;
|
|
148
151
|
const updatedPool = pool.getUpdatedPoolAfterTrade(!isGivenAmountOut
|
|
149
152
|
? {
|
|
@@ -158,7 +161,11 @@ class RouterGraph {
|
|
|
158
161
|
coinOutType: path.coinOut.type,
|
|
159
162
|
coinOutAmount: currentCoinInAmount,
|
|
160
163
|
});
|
|
161
|
-
let newPath = Object.assign(Object.assign({}, path), { coinIn: Object.assign(Object.assign({}, path.coinIn), { amount: totalCoinInAmount
|
|
164
|
+
let newPath = Object.assign(Object.assign({}, path), { coinIn: Object.assign(Object.assign({}, path.coinIn), { amount: totalCoinInAmount, tradeFee: "coinOutAmount" in tradeResult
|
|
165
|
+
? tradeResult.feeOutAmount
|
|
166
|
+
: tradeResult.feeInAmount }), coinOut: Object.assign(Object.assign({}, path.coinOut), { amount: totalCoinOutAmount, tradeFee: "coinOutAmount" in tradeResult
|
|
167
|
+
? tradeResult.feeInAmount
|
|
168
|
+
: tradeResult.feeOutAmount }), spotPrice });
|
|
162
169
|
newRoute = Object.assign(Object.assign({}, newRoute), { paths: [...newRoute.paths, newPath] });
|
|
163
170
|
currentCoinInAmount = coinOutAmountFromTrade;
|
|
164
171
|
currentPools = Object.assign(Object.assign({}, currentPools), { [path.poolUid]: updatedPool });
|
|
@@ -19,7 +19,11 @@ declare class AfSuiRouterPool implements RouterPoolInterface {
|
|
|
19
19
|
coinInAmount: Balance;
|
|
20
20
|
coinOutType: CoinType;
|
|
21
21
|
referrer?: SuiAddress;
|
|
22
|
-
}) =>
|
|
22
|
+
}) => {
|
|
23
|
+
coinOutAmount: bigint;
|
|
24
|
+
feeInAmount: bigint;
|
|
25
|
+
feeOutAmount: bigint;
|
|
26
|
+
};
|
|
23
27
|
tradeTx: (inputs: RouterPoolTradeTxInputs) => Infer<Struct<{
|
|
24
28
|
index: number;
|
|
25
29
|
kind: "Input";
|
|
@@ -45,7 +49,11 @@ declare class AfSuiRouterPool implements RouterPoolInterface {
|
|
|
45
49
|
coinOutAmount: Balance;
|
|
46
50
|
coinOutType: CoinType;
|
|
47
51
|
referrer?: SuiAddress;
|
|
48
|
-
}) =>
|
|
52
|
+
}) => {
|
|
53
|
+
coinInAmount: bigint;
|
|
54
|
+
feeInAmount: bigint;
|
|
55
|
+
feeOutAmount: bigint;
|
|
56
|
+
};
|
|
49
57
|
getUpdatedPoolBeforeTrade: (inputs: {
|
|
50
58
|
coinInType: CoinType;
|
|
51
59
|
coinInAmount: Balance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"afSuiRouterPool.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/router/utils/synchronous/routerPools/afSuiRouterPool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,OAAO,EACP,UAAU,EACV,QAAQ,EAER,UAAU,EACV,qBAAqB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EACN,mBAAmB,EACnB,uBAAuB,EACvB,MAAM,mCAAmC,CAAC;AAI3C,cAAM,eAAgB,YAAW,mBAAmB;gBAKvC,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU;IAW5D,QAAQ,CAAC,YAAY,WAAW;IAChC,QAAQ,CAAC,qBAAqB,SAAsB;IACpD,QAAQ,CAAC,aAAa,SAAS;IAE/B,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAM/B,YAAY,WAAY;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,YAEC;IAEF,iBAAiB,WAAY;QAC5B,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB
|
|
1
|
+
{"version":3,"file":"afSuiRouterPool.d.ts","sourceRoot":"","sources":["../../../../../../src/packages/router/utils/synchronous/routerPools/afSuiRouterPool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,OAAO,EACP,UAAU,EACV,QAAQ,EAER,UAAU,EACV,qBAAqB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EACN,mBAAmB,EACnB,uBAAuB,EACvB,MAAM,mCAAmC,CAAC;AAI3C,cAAM,eAAgB,YAAW,mBAAmB;gBAKvC,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,UAAU;IAW5D,QAAQ,CAAC,YAAY,WAAW;IAChC,QAAQ,CAAC,qBAAqB,SAAsB;IACpD,QAAQ,CAAC,aAAa,SAAS;IAE/B,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAM/B,YAAY,WAAY;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,YAEC;IAEF,iBAAiB,WAAY;QAC5B,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB;;;;MAkDC;IAEF,OAAO,WAAY,uBAAuB;;;;;;;;;;;;;;;;;;;cAWxC;IAEF,gBAAgB,WAAY;QAC3B,UAAU,EAAE,QAAQ,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;QACvB,WAAW,EAAE,QAAQ,CAAC;QACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB;;;;MAmDC;IAEF,yBAAyB,WAAY;QACpC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAG,mBAAmB,CAMrB;IAEF,wBAAwB,WAAY;QACnC,UAAU,EAAE,QAAQ,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;KACvB,KAAG,mBAAmB,CAgBrB;IAMF,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,YAAY,CASlB;CACF;AAED,eAAe,eAAe,CAAC"}
|