aftermath-ts-sdk 0.0.126 → 0.0.128

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.
Files changed (122) hide show
  1. package/dist/general/api/inspectionsApiHelpers.d.ts +2 -2
  2. package/dist/general/api/inspectionsApiHelpers.d.ts.map +1 -1
  3. package/dist/general/api/inspectionsApiHelpers.js +7 -4
  4. package/dist/general/api/transactionsApiHelpers.d.ts.map +1 -1
  5. package/dist/general/api/transactionsApiHelpers.js +2 -1
  6. package/dist/general/providers/aftermathApi.d.ts.map +1 -1
  7. package/dist/general/types/castingTypes.d.ts +6 -0
  8. package/dist/general/types/castingTypes.d.ts.map +1 -1
  9. package/dist/general/types/configTypes.d.ts +24 -1
  10. package/dist/general/types/configTypes.d.ts.map +1 -1
  11. package/dist/general/utils/casting.d.ts +1 -0
  12. package/dist/general/utils/casting.d.ts.map +1 -1
  13. package/dist/general/utils/casting.js +1 -0
  14. package/dist/packages/capys/api/capysApiHelpers.d.ts.map +1 -1
  15. package/dist/packages/capys/api/capysApiHelpers.js +13 -13
  16. package/dist/packages/coin/api/coinApiHelpers.d.ts +7 -1
  17. package/dist/packages/coin/api/coinApiHelpers.d.ts.map +1 -1
  18. package/dist/packages/coin/api/coinApiHelpers.js +36 -23
  19. package/dist/packages/external/cetus/cetusApi.d.ts +33 -0
  20. package/dist/packages/external/cetus/cetusApi.d.ts.map +1 -0
  21. package/dist/packages/external/cetus/cetusApi.js +56 -0
  22. package/dist/packages/external/cetus/cetusApiHelpers.d.ts +197 -0
  23. package/dist/packages/external/cetus/cetusApiHelpers.d.ts.map +1 -0
  24. package/dist/packages/external/cetus/cetusApiHelpers.js +232 -0
  25. package/dist/packages/external/cetus/cetusTypes.d.ts +15 -0
  26. package/dist/packages/external/cetus/cetusTypes.d.ts.map +1 -0
  27. package/dist/packages/external/cetus/cetusTypes.js +7 -0
  28. package/dist/packages/external/deepBook/deepBookApi.d.ts +1 -1
  29. package/dist/packages/external/deepBook/deepBookApi.d.ts.map +1 -1
  30. package/dist/packages/external/deepBook/deepBookApiHelper.d.ts.map +1 -1
  31. package/dist/packages/external/deepBook/deepBookApiHelper.js +5 -6
  32. package/dist/packages/external/deepBook/deepBookTypes.d.ts.map +1 -1
  33. package/dist/packages/external/nojo/nojoAmmApi.d.ts +1 -1
  34. package/dist/packages/external/nojo/nojoAmmApi.d.ts.map +1 -1
  35. package/dist/packages/external/nojo/nojoAmmTypes.d.ts.map +1 -1
  36. package/dist/packages/external/turbos/turbosApi.d.ts +33 -0
  37. package/dist/packages/external/turbos/turbosApi.d.ts.map +1 -0
  38. package/dist/packages/external/turbos/turbosApi.js +56 -0
  39. package/dist/packages/external/turbos/turbosApiHelpers.d.ts +192 -0
  40. package/dist/packages/external/turbos/turbosApiHelpers.d.ts.map +1 -0
  41. package/dist/packages/external/turbos/turbosApiHelpers.js +266 -0
  42. package/dist/packages/external/turbos/turbosTypes.d.ts +18 -0
  43. package/dist/packages/external/turbos/turbosTypes.d.ts.map +1 -0
  44. package/dist/packages/external/turbos/turbosTypes.js +12 -0
  45. package/dist/packages/faucet/api/faucetApiHelpers.d.ts.map +1 -1
  46. package/dist/packages/faucet/api/faucetApiHelpers.js +4 -4
  47. package/dist/packages/nftAmm/api/nftAmmApiHelpers.js +4 -5
  48. package/dist/packages/pools/api/poolsApi.js +1 -1
  49. package/dist/packages/pools/api/poolsApiHelpers.d.ts +1 -1
  50. package/dist/packages/pools/api/poolsApiHelpers.d.ts.map +1 -1
  51. package/dist/packages/pools/api/poolsApiHelpers.js +11 -10
  52. package/dist/packages/referralVault/api/referralVaultApi.js +2 -2
  53. package/dist/packages/referralVault/api/referralVaultApiHelpers.d.ts.map +1 -1
  54. package/dist/packages/referralVault/api/referralVaultApiHelpers.js +6 -6
  55. package/dist/packages/router/api/routerApi.d.ts +18 -5
  56. package/dist/packages/router/api/routerApi.d.ts.map +1 -1
  57. package/dist/packages/router/api/routerApi.js +45 -11
  58. package/dist/packages/router/api/routerAsyncApiHelpers.d.ts +16 -0
  59. package/dist/packages/router/api/routerAsyncApiHelpers.d.ts.map +1 -0
  60. package/dist/packages/router/api/routerAsyncApiHelpers.js +94 -0
  61. package/dist/packages/router/api/{routerApiHelpers.d.ts → routerSynchronousApiHelpers.d.ts} +13 -7
  62. package/dist/packages/router/api/routerSynchronousApiHelpers.d.ts.map +1 -0
  63. package/dist/packages/router/api/{routerApiHelpers.js → routerSynchronousApiHelpers.js} +74 -26
  64. package/dist/packages/router/index.d.ts +1 -1
  65. package/dist/packages/router/index.d.ts.map +1 -1
  66. package/dist/packages/router/index.js +1 -1
  67. package/dist/packages/router/router.d.ts +0 -1
  68. package/dist/packages/router/router.d.ts.map +1 -1
  69. package/dist/packages/router/router.js +9 -5
  70. package/dist/packages/router/routerTypes.d.ts +27 -10
  71. package/dist/packages/router/routerTypes.d.ts.map +1 -1
  72. package/dist/packages/router/routerTypes.js +17 -0
  73. package/dist/packages/router/utils/async/routerAsyncApiInterface.d.ts +24 -0
  74. package/dist/packages/router/utils/async/routerAsyncApiInterface.d.ts.map +1 -0
  75. package/dist/packages/router/utils/async/routerAsyncGraph.d.ts +12 -0
  76. package/dist/packages/router/utils/async/routerAsyncGraph.d.ts.map +1 -0
  77. package/dist/packages/router/utils/async/routerAsyncGraph.js +115 -0
  78. package/dist/packages/router/utils/{routerApiInterface.d.ts → synchronous/interfaces/routerApiInterface.d.ts} +2 -2
  79. package/dist/packages/router/utils/synchronous/interfaces/routerApiInterface.d.ts.map +1 -0
  80. package/dist/packages/router/utils/synchronous/interfaces/routerApiInterface.js +2 -0
  81. package/dist/packages/router/utils/{routerPoolInterface.d.ts → synchronous/interfaces/routerPoolInterface.d.ts} +5 -3
  82. package/dist/packages/router/utils/synchronous/interfaces/routerPoolInterface.d.ts.map +1 -0
  83. package/dist/packages/router/utils/synchronous/interfaces/routerPoolInterface.js +32 -0
  84. package/dist/packages/router/utils/{routerGraph.d.ts → synchronous/routerGraph.d.ts} +30 -5
  85. package/dist/packages/router/utils/synchronous/routerGraph.d.ts.map +1 -0
  86. package/dist/packages/router/utils/{routerGraph.js → synchronous/routerGraph.js} +84 -15
  87. package/dist/packages/router/utils/{routerPools → synchronous/routerPools}/aftermathRouterPool.d.ts +7 -5
  88. package/dist/packages/router/utils/synchronous/routerPools/aftermathRouterPool.d.ts.map +1 -0
  89. package/dist/packages/router/utils/{routerPools → synchronous/routerPools}/aftermathRouterPool.js +3 -3
  90. package/dist/packages/router/utils/synchronous/routerPools/cetusRouterPool.d.ts +85 -0
  91. package/dist/packages/router/utils/synchronous/routerPools/cetusRouterPool.d.ts.map +1 -0
  92. package/dist/packages/router/utils/synchronous/routerPools/cetusRouterPool.js +41 -0
  93. package/dist/packages/router/utils/{routerPools → synchronous/routerPools}/deepBookRouterPool.d.ts +7 -5
  94. package/dist/packages/router/utils/synchronous/routerPools/deepBookRouterPool.d.ts.map +1 -0
  95. package/dist/packages/router/utils/{routerPools → synchronous/routerPools}/deepBookRouterPool.js +2 -2
  96. package/dist/packages/router/utils/{routerPools → synchronous/routerPools}/nojoRouterPool.d.ts +7 -5
  97. package/dist/packages/router/utils/synchronous/routerPools/nojoRouterPool.d.ts.map +1 -0
  98. package/dist/packages/router/utils/{routerPools → synchronous/routerPools}/nojoRouterPool.js +3 -3
  99. package/dist/packages/router/utils/synchronous/routerPools/turbosRouterPool.d.ts +85 -0
  100. package/dist/packages/router/utils/synchronous/routerPools/turbosRouterPool.d.ts.map +1 -0
  101. package/dist/packages/router/utils/synchronous/routerPools/turbosRouterPool.js +43 -0
  102. package/dist/packages/router/utils/synchronous/routerTest.d.ts.map +1 -0
  103. package/dist/packages/router/utils/synchronous/routerTest.js +124 -0
  104. package/dist/packages/staking/api/stakingApi.d.ts.map +1 -1
  105. package/dist/packages/staking/api/stakingApi.js +4 -2
  106. package/dist/packages/staking/api/stakingApiHelpers.js +4 -4
  107. package/dist/packages/staking/staking.d.ts +0 -4
  108. package/dist/packages/staking/staking.d.ts.map +1 -1
  109. package/dist/packages/staking/staking.js +1 -5
  110. package/package.json +1 -1
  111. package/dist/packages/router/api/routerApiHelpers.d.ts.map +0 -1
  112. package/dist/packages/router/utils/routerApiInterface.d.ts.map +0 -1
  113. package/dist/packages/router/utils/routerGraph.d.ts.map +0 -1
  114. package/dist/packages/router/utils/routerPoolInterface.d.ts.map +0 -1
  115. package/dist/packages/router/utils/routerPoolInterface.js +0 -24
  116. package/dist/packages/router/utils/routerPools/aftermathRouterPool.d.ts.map +0 -1
  117. package/dist/packages/router/utils/routerPools/deepBookRouterPool.d.ts.map +0 -1
  118. package/dist/packages/router/utils/routerPools/nojoRouterPool.d.ts.map +0 -1
  119. package/dist/packages/router/utils/routerTest.d.ts.map +0 -1
  120. package/dist/packages/router/utils/routerTest.js +0 -105
  121. /package/dist/packages/router/utils/{routerApiInterface.js → async/routerAsyncApiInterface.js} +0 -0
  122. /package/dist/packages/router/utils/{routerTest.d.ts → synchronous/routerTest.d.ts} +0 -0
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class TurbosRouterPool {
4
+ /////////////////////////////////////////////////////////////////////
5
+ //// Constructor
6
+ /////////////////////////////////////////////////////////////////////
7
+ constructor(pool, network) {
8
+ /////////////////////////////////////////////////////////////////////
9
+ //// Constants
10
+ /////////////////////////////////////////////////////////////////////
11
+ this.protocolName = "Turbos";
12
+ this.expectedGasCostPerHop = BigInt(9000000); // 0.009 SUI
13
+ this.noHopsAllowed = true;
14
+ /////////////////////////////////////////////////////////////////////
15
+ //// Functions
16
+ /////////////////////////////////////////////////////////////////////
17
+ this.getSpotPrice = (_) => {
18
+ throw new Error("uncallable");
19
+ };
20
+ this.getTradeAmountOut = (_) => {
21
+ throw new Error("uncallable");
22
+ };
23
+ this.addTradeCommandToTransaction = (inputs) => {
24
+ // PRODUCTION: handle slippage !
25
+ if (!inputs.tx.blockData.sender)
26
+ throw new Error("no sender for tx set (required for turbos txs)");
27
+ return inputs.provider
28
+ .Router()
29
+ .Turbos()
30
+ .Helpers.tradeTx(Object.assign(Object.assign({}, inputs), { coinInId: inputs.coinIn, pool: this.pool, walletAddress: inputs.tx.blockData.sender }));
31
+ };
32
+ this.getTradeAmountIn = (_) => {
33
+ throw new Error("uncallable");
34
+ };
35
+ this.getUpdatedPoolBeforeTrade = (_) => new TurbosRouterPool(this.pool, this.network);
36
+ this.getUpdatedPoolAfterTrade = (_) => new TurbosRouterPool(this.pool, this.network);
37
+ this.pool = pool;
38
+ this.network = network;
39
+ this.uid = pool.id;
40
+ this.coinTypes = [pool.coinTypeA, pool.coinTypeB];
41
+ }
42
+ }
43
+ exports.default = TurbosRouterPool;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routerTest.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/synchronous/routerTest.ts"],"names":[],"mappings":""}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ // import { Aftermath } from "../../../../general/providers";
3
+ // import { Helpers } from "../../../../general/utils/helpers";
4
+ // import { Balance, PoolObject } from "../../../../types";
5
+ // import { CoinType } from "../../../coin/coinTypes";
6
+ // import { Pool } from "../../../pools";
7
+ // import { Router } from "../../router";
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ // const tradeAmounts = {
10
+ // max: BigInt(9_223_372_036_854_775_807),
11
+ // extraLarge: BigInt(100000000000000000),
12
+ // large: BigInt(10000000000000),
13
+ // medium: BigInt(1000000000),
14
+ // small: BigInt(10000),
15
+ // };
16
+ // const runMe = async () => {
17
+ // const sdk = new Aftermath("LOCAL");
18
+ // const router = sdk.Router();
19
+ // const supportedCoins = Object.keys(await router.getSupportedCoinPaths());
20
+ // // PRODUCTOIN: add asserts for coins not in pool or same coin trades
21
+ // const coinIn =
22
+ // supportedCoins.find((coin) => coin.toLowerCase().includes("afsui")) ??
23
+ // "";
24
+ // const coinOut =
25
+ // supportedCoins.find((coin) => coin.toLowerCase().includes("::af::")) ??
26
+ // "";
27
+ // const coinInAmount = BigInt(223447384370);
28
+ // console.log("START");
29
+ // console.log("\n");
30
+ // try {
31
+ // // await runRoute(router, coinIn, coinInAmount, coinOut, 1);
32
+ // const coinOutAmount = await runRoute(
33
+ // router,
34
+ // coinIn,
35
+ // coinInAmount,
36
+ // coinOut,
37
+ // 5,
38
+ // false
39
+ // );
40
+ // await runRoute(router, coinIn, coinOutAmount, coinOut, 5, true);
41
+ // // const pool = await sdk.Pools().getPool({
42
+ // // objectId:
43
+ // // "0x5dbf77deddfc68f446b96b2a17b7160faf4a015544df9ab3db81bf7b5ffc0570",
44
+ // // });
45
+ // // const pool = new Pool(
46
+ // // Helpers.parseJsonWithBigint(
47
+ // // `{"objectId":"0xbc8bdb27d73b28f9ba9cd1b56e256f21bf9584d1e80ccc460a24e46bd4078950","lpCoinType":"0xef7ba1db7f5604bee5f86cf444c3636d6e5d711fbba280954fa9d2f654ef7db7::af_lp_eth::AF_LP_ETH","name":"ETH Pool","creator":"0x4b02b9b45f2a9597363fbaacb2fd6e7fb8ed9329bb6f716631b5717048908ace","lpCoinSupply":"3675123799120n","illiquidLpCoinSupply":"1000n","flatness":"0n","coins":{"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::af::AF":{"weight":"250000000000000000n","balance":"1000000000000000n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"},"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::afsui::AFSUI":{"weight":"250000000000000000n","balance":"876843564864654n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"},"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::lzeth::LZETH":{"weight":"250000000000000000n","balance":"45612457575n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"},"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::wheth::WHETH":{"weight":"250000000000000000n","balance":"4561233457n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"}}}`
48
+ // // ) as unknown as PoolObject
49
+ // // );
50
+ // // const amountOut = pool.getTradeAmountOut({
51
+ // // coinInType:
52
+ // // "0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::axlusdc::AXLUSDC",
53
+ // // coinOutType:
54
+ // // "0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::afsui::AFSUI",
55
+ // // coinInAmount: BigInt(5000000),
56
+ // // });
57
+ // // console.log("amountOut", amountOut);
58
+ // // await runRoute(router, coinIn, coinOutAmount, coinOut, 5, true);
59
+ // // await runRoute(router, coinIn, coinInAmount, coinOut, 3);
60
+ // // await runRoute(router, coinIn, coinInAmount, coinOut, 4);
61
+ // // await runRoute(router, coinIn, coinInAmount, coinOut, 5);
62
+ // // await runRoute(router, coinIn, coinInAmount, coinOut, 6);
63
+ // // await runRoute(router, coinIn, coinInAmount, coinOut, 7);
64
+ // } catch (e) {
65
+ // console.error(e);
66
+ // }
67
+ // console.log("END");
68
+ // };
69
+ // const runRoute = async (
70
+ // router: Router,
71
+ // coinIn: CoinType,
72
+ // coinInAmount: Balance,
73
+ // coinOut: CoinType,
74
+ // maxRouteLength: number,
75
+ // isGivenAmountOut: boolean
76
+ // ): Promise<Balance> => {
77
+ // const start = performance.now();
78
+ // const completeRoute = isGivenAmountOut
79
+ // ? await router.getCompleteTradeRouteGivenAmountOut(
80
+ // {
81
+ // coinInType: coinIn,
82
+ // coinOutType: coinOut,
83
+ // coinOutAmount: coinInAmount,
84
+ // }
85
+ // // maxRouteLength
86
+ // )
87
+ // : await router.getCompleteTradeRouteGivenAmountIn(
88
+ // { coinInType: coinIn, coinInAmount, coinOutType: coinOut }
89
+ // // maxRouteLength
90
+ // );
91
+ // console.log({ coinIn, coinInAmount, coinOut });
92
+ // const end = performance.now();
93
+ // const stableCoinPercentLoss =
94
+ // (Number(completeRoute.coinIn.amount - completeRoute.coinOut.amount) /
95
+ // Number(completeRoute.coinIn.amount)) *
96
+ // 100;
97
+ // console.log("Max Route Length:", maxRouteLength);
98
+ // console.log("Routes Used:", completeRoute.routes.length);
99
+ // // for (const route of completeRoute.routes) {
100
+ // // console.log("\n");
101
+ // // console.log(
102
+ // // route.paths.map((path) => {
103
+ // // return {
104
+ // // pool: path.poolObjectId,
105
+ // // coinIn: path.coinIn,
106
+ // // coinInAmount: path.coinIn.amount,
107
+ // // coinOut: path.coinOut,
108
+ // // coinOutAmount: path.coinOut.amount,
109
+ // // };
110
+ // // })
111
+ // // );
112
+ // // }
113
+ // console.log("Coin In Amount:", completeRoute.coinIn.amount);
114
+ // console.log("Coin Out Amount:", completeRoute.coinOut.amount);
115
+ // console.log(
116
+ // "Stable Coin Loss:",
117
+ // completeRoute.coinIn.amount - completeRoute.coinOut.amount,
118
+ // `${stableCoinPercentLoss.toFixed(2)}%`
119
+ // );
120
+ // console.log("Execution time:", end - start, "ms");
121
+ // console.log("\n");
122
+ // return completeRoute.coinOut.amount;
123
+ // };
124
+ // runMe();
@@ -1 +1 @@
1
- {"version":3,"file":"stakingApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/staking/api/stakingApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,cAAc,EACd,UAAU,EACV,mBAAmB,EAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGhE,qBAAa,UAAU;IAWV,OAAO,CAAC,QAAQ,CAAC,QAAQ;IANrC,SAAgB,OAAO,oBAAC;gBAMK,QAAQ,EAAE,YAAY;IAa5C,oBAAoB,YACjB,UAAU,KACjB,QAAQ,cAAc,EAAE,CAAC,CAI1B;IAEK,qBAAqB,QAAa,QAAQ,mBAAmB,EAAE,CAAC,CAErE;IAMK,qBAAqB,WAAkB;QAC7C,aAAa,EAAE,UAAU,CAAC;QAC1B,cAAc,EAAE,OAAO,CAAC;QACxB,gBAAgB,EAAE,UAAU,CAAC;KAC7B,KAAG,QAAQ,qBAAqB,CAAC,CAMhC;IAEK,uBAAuB,WAAkB;QAC/C,aAAa,EAAE,UAAU,CAAC;QAC1B,kBAAkB,EAAE,OAAO,CAAC;KAC5B,KAAG,QAAQ,qBAAqB,CAAC,CAMhC;IAMK,iBAAiB,WAAkB;QACzC,aAAa,EAAE,UAAU,CAAC;KAC1B,KAAG,QAAQ,eAAe,EAAE,CAAC,CAW5B;IAMK,WAAW,QAAa,QAAQ,OAAO,CAAC,CAM7C;IAEK,sBAAsB,QAAa,QAAQ,MAAM,CAAC,CAMvD;CACF"}
1
+ {"version":3,"file":"stakingApi.d.ts","sourceRoot":"","sources":["../../../../src/packages/staking/api/stakingApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,cAAc,EACd,UAAU,EACV,mBAAmB,EAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGhE,qBAAa,UAAU;IAWV,OAAO,CAAC,QAAQ,CAAC,QAAQ;IANrC,SAAgB,OAAO,oBAAC;gBAMK,QAAQ,EAAE,YAAY;IAa5C,oBAAoB,YACjB,UAAU,KACjB,QAAQ,cAAc,EAAE,CAAC,CAI1B;IAEK,qBAAqB,QAAa,QAAQ,mBAAmB,EAAE,CAAC,CAErE;IAMK,qBAAqB,WAAkB;QAC7C,aAAa,EAAE,UAAU,CAAC;QAC1B,cAAc,EAAE,OAAO,CAAC;QACxB,gBAAgB,EAAE,UAAU,CAAC;KAC7B,KAAG,QAAQ,qBAAqB,CAAC,CAMhC;IAEK,uBAAuB,WAAkB;QAC/C,aAAa,EAAE,UAAU,CAAC;QAC1B,kBAAkB,EAAE,OAAO,CAAC;KAC5B,KAAG,QAAQ,qBAAqB,CAAC,CAMhC;IAMK,iBAAiB,WAAkB;QACzC,aAAa,EAAE,UAAU,CAAC;KAC1B,KAAG,QAAQ,eAAe,EAAE,CAAC,CAW5B;IAMK,WAAW,QAAa,QAAQ,OAAO,CAAC,CAM7C;IAEK,sBAAsB,QAAa,QAAQ,MAAM,CAAC,CAQvD;CACF"}
@@ -59,7 +59,7 @@ class StakingApi {
59
59
  this.fetchSuiTvl = () => __awaiter(this, void 0, void 0, function* () {
60
60
  const tx = new sui_js_1.TransactionBlock();
61
61
  this.Helpers.addGetStakedSuiTvlCommandToTransaction({ tx });
62
- const bytes = yield this.Provider.Inspections().fetchBytesFromTransaction(tx);
62
+ const bytes = yield this.Provider.Inspections().fetchFirstBytesFromTxOutput(tx);
63
63
  return utils_1.Casting.bigIntFromBytes(bytes);
64
64
  });
65
65
  this.fetchAfSuiExchangeRate = () => __awaiter(this, void 0, void 0, function* () {
@@ -67,7 +67,9 @@ class StakingApi {
67
67
  this.fetchSuiTvl(),
68
68
  this.Helpers.fetchAfSuiSupply(),
69
69
  ]);
70
- return Number(afSuiSupply) / Number(suiTvl);
70
+ return suiTvl <= BigInt(0) || afSuiSupply <= BigInt(0)
71
+ ? 1
72
+ : Number(afSuiSupply) / Number(suiTvl);
71
73
  });
72
74
  this.Provider = Provider;
73
75
  this.Helpers = new stakingApiHelpers_1.StakingApiHelpers(Provider);
@@ -32,7 +32,7 @@ class StakingApiHelpers {
32
32
  this.addStakeCommandToTransaction = (inputs) => {
33
33
  const { tx, suiCoin } = inputs;
34
34
  return tx.moveCall({
35
- target: aftermathApi_1.AftermathApi.helpers.transactions.createTransactionTarget(this.addresses.packages.lsd, StakingApiHelpers.constants.modules.interface, "request_add_stake"),
35
+ target: utils_1.Helpers.transactions.createTransactionTarget(this.addresses.packages.lsd, StakingApiHelpers.constants.modules.interface, "request_add_stake"),
36
36
  typeArguments: [],
37
37
  arguments: [
38
38
  tx.object(this.addresses.objects.staking),
@@ -44,7 +44,7 @@ class StakingApiHelpers {
44
44
  this.addUnstakeCommandToTransaction = (inputs) => {
45
45
  const { tx, afSuiCoin } = inputs;
46
46
  return tx.moveCall({
47
- target: aftermathApi_1.AftermathApi.helpers.transactions.createTransactionTarget(this.addresses.packages.lsd, StakingApiHelpers.constants.modules.interface, "request_unstake"),
47
+ target: utils_1.Helpers.transactions.createTransactionTarget(this.addresses.packages.lsd, StakingApiHelpers.constants.modules.interface, "request_unstake"),
48
48
  typeArguments: [],
49
49
  arguments: [
50
50
  tx.object(this.addresses.objects.staking),
@@ -57,7 +57,7 @@ class StakingApiHelpers {
57
57
  this.addGetAfSuiSupplyCommandToTransaction = (inputs) => {
58
58
  const { tx } = inputs;
59
59
  return tx.moveCall({
60
- target: aftermathApi_1.AftermathApi.helpers.transactions.createTransactionTarget(this.addresses.packages.lsd, StakingApiHelpers.constants.modules.staking, "afsui_supply"),
60
+ target: utils_1.Helpers.transactions.createTransactionTarget(this.addresses.packages.lsd, StakingApiHelpers.constants.modules.staking, "afsui_supply"),
61
61
  typeArguments: [],
62
62
  arguments: [tx.object(this.addresses.objects.staking)],
63
63
  });
@@ -257,7 +257,7 @@ class StakingApiHelpers {
257
257
  this.fetchAfSuiSupply = () => __awaiter(this, void 0, void 0, function* () {
258
258
  const tx = new sui_js_1.TransactionBlock();
259
259
  this.addGetAfSuiSupplyCommandToTransaction({ tx });
260
- const bytes = yield this.Provider.Inspections().fetchBytesFromTransaction(tx);
260
+ const bytes = yield this.Provider.Inspections().fetchFirstBytesFromTxOutput(tx);
261
261
  return utils_1.Casting.bigIntFromBytes(bytes);
262
262
  });
263
263
  const addresses = this.Provider.addresses.staking;
@@ -4,10 +4,6 @@ import { Caller } from "../../general/utils/caller";
4
4
  export declare class Staking extends Caller {
5
5
  readonly network?: string | undefined;
6
6
  static readonly constants: {
7
- objectTypes: {
8
- stakedSuiType: string;
9
- delegationType: string;
10
- };
11
7
  fees: {
12
8
  unstakeFee: number;
13
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"staking.d.ts","sourceRoot":"","sources":["../../../src/packages/staking/staking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACN,YAAY,EACZ,cAAc,EAEd,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,OAAO,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,qBAAa,OAAQ,SAAQ,MAAM;aAsBN,OAAO,CAAC;IAjBpC,gBAAuB,SAAS;;;;;;;;;;;MAW9B;gBAM0B,OAAO,CAAC,oBAAkB;IAQzC,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAIrD,mBAAmB,CAC/B,MAAM,EAAE,uBAAuB,GAC7B,OAAO,CAAC,eAAe,EAAE,CAAC;IAQhB,qBAAqB,CAAC,MAAM,EAAE,oBAAoB;IAOlD,uBAAuB,CAAC,MAAM,EAAE,oBAAoB;IAWpD,mBAAmB,CAAC,MAAM,EAAE,YAAY;IAOxC,qBAAqB,CAAC,MAAM,EAAE,cAAc;IAW5C,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;CAGpD"}
1
+ {"version":3,"file":"staking.d.ts","sourceRoot":"","sources":["../../../src/packages/staking/staking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACN,YAAY,EACZ,cAAc,EAEd,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,OAAO,EAEP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,qBAAa,OAAQ,SAAQ,MAAM;aAkBN,OAAO,CAAC;IAbpC,gBAAuB,SAAS;;;;;;;MAO9B;gBAM0B,OAAO,CAAC,oBAAkB;IAQzC,mBAAmB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAIrD,mBAAmB,CAC/B,MAAM,EAAE,uBAAuB,GAC7B,OAAO,CAAC,eAAe,EAAE,CAAC;IAQhB,qBAAqB,CAAC,MAAM,EAAE,oBAAoB;IAOlD,uBAAuB,CAAC,MAAM,EAAE,oBAAoB;IAWpD,mBAAmB,CAAC,MAAM,EAAE,YAAY;IAOxC,qBAAqB,CAAC,MAAM,EAAE,cAAc;IAW5C,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;CAGpD"}
@@ -77,12 +77,8 @@ exports.Staking = Staking;
77
77
  //// Constants
78
78
  /////////////////////////////////////////////////////////////////////
79
79
  Staking.constants = {
80
- objectTypes: {
81
- stakedSuiType: "0x2::staking_pool::StakedSui",
82
- delegationType: "0x2::staking_pool::Delegation",
83
- },
84
80
  fees: {
85
- unstakeFee: 0.05, // 5%
81
+ unstakeFee: 0.01, // 1%
86
82
  },
87
83
  bounds: {
88
84
  minStake: BigInt("1000000000"), // 1 SUI
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aftermath-ts-sdk",
3
- "version": "0.0.126",
3
+ "version": "0.0.128",
4
4
  "description": "Aftermath TypeScript SDK",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1 +0,0 @@
1
- {"version":3,"file":"routerApiHelpers.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/api/routerApiHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EACN,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAMjE,qBAAa,gBAAgB;IAkBhB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAbrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAOjC;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,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;QAC1B,QAAQ,EAAE,YAAY,CAAC;QACvB,aAAa,EAAE,UAAU,CAAC;QAC1B,aAAa,EAAE,wBAAwB,CAAC;QACxC,QAAQ,EAAE,QAAQ,CAAC;KACnB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA6FtB,qBAAqB,WAAY;QACvC,SAAS,EAAE,kBAAkB,EAAE,CAAC;KAChC,KAAG,mBAAmB,GAAG,CAAC,EAAE,CAG3B;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"routerApiInterface.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/utils/routerApiInterface.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAMxD,MAAM,WAAW,kBAAkB,CAAC,QAAQ,SAAS,sBAAsB;IAS1E,aAAa,EAAE,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEzC,mBAAmB,EAAE,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;CAG/C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"routerGraph.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/utils/routerGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EACN,OAAO,EACP,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,aAAa,EACb,+BAA+B,EAC/B,sBAAsB,EACtB,wBAAwB,EAMxB,UAAU,EAEV,GAAG,EAIH,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA2B5C,qBAAa,WAAW;IAKvB,gBAAuB,cAAc,EAAE,aAAa,CAKlD;IAMF,SAAgB,KAAK,EAAE,mBAAmB,CAAC;IAC3C,SAAgB,SAAS,EAAE,aAAa,CAAC;gBAOxC,OAAO,EAAE,UAAU,GAAG,GAAG,EACzB,KAAK,EAAE,+BAA+B,EACtC,OAAO,CAAC,EAAE,aAAa;WAiBV,WAAW,CAAC,MAAM,EAAE;QACjC,KAAK,EAAE,sBAAsB,EAAE,CAAC;KAChC,GAAG,+BAA+B;WAgCrB,qBAAqB,CAAC,MAAM,EAAE;QAC3C,KAAK,EAAE,+BAA+B,CAAC;QACvC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;KAC1B,GAAG,mBAAmB;IA2BvB,OAAc,2BAA2B,WAAkB;QAC1D,KAAK,EAAE,+BAA+B,CAAC;QACvC,cAAc,CAAC,EAAE,MAAM,CAAC;KACxB,KAAG,QAAQ,wBAAwB,CAAC,CAmCnC;IAMK,6BAA6B,CACnC,MAAM,EAAE,QAAQ,EAChB,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,QAAQ,EACjB,QAAQ,CAAC,EAAE,UAAU,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC7B,wBAAwB;IAWpB,8BAA8B,CACpC,MAAM,EAAE,QAAQ,EAChB,OAAO,EAAE,QAAQ,EACjB,aAAa,EAAE,OAAO,EACtB,QAAQ,CAAC,EAAE,UAAU,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAC7B,wBAAwB;IAe3B,OAAO,CAAC,gBAAgB;IAgExB,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAyDpC;IAMF,OAAO,CAAC,MAAM,CAAC,UAAU,CAwBvB;IAEF,OAAO,CAAC,MAAM,CAAC,oBAAoB,CA8CjC;IAEF,OAAO,CAAC,MAAM,CAAC,kBAAkB,CA8E/B;IAEF,OAAO,CAAC,uBAAuB,CA2C7B;IAEF,OAAO,CAAC,oCAAoC,CAoF1C;IAEF,OAAO,CAAC,uBAAuB,CA8D7B;IAEF,OAAO,CAAC,iCAAiC,CA0JvC;IAEF,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAqCpC;IAEF,OAAO,CAAC,MAAM,CAAC,sCAAsC,CAuBnD;IAEF,OAAO,CAAC,MAAM,CAAC,wCAAwC,CAiBrD;IAEF,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAM3B;IAEJ,OAAO,CAAC,MAAM,CAAC,eAAe,CAI3B;IAEH,OAAO,CAAC,MAAM,CAAC,8CAA8C,CAqD3D;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"routerPoolInterface.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/utils/routerPoolInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,OAAO,EACP,kBAAkB,EAClB,sBAAsB,EACtB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,GAAG,EACH,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAS1D,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAE7B,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;CAC1B,GAAG,mBAAmB,CAUtB;AAmBD,MAAM,WAAW,mBAAmB;IASnC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAEvB,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAO/B,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;IAEd,4BAA4B,EAAE,CAAC,MAAM,EAAE;QACtC,QAAQ,EAAE,YAAY,CAAC;QACvB,EAAE,EAAE,gBAAgB,CAAC;QACrB,MAAM,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAK,mBAAmB,CAAC;IAY1B,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,OAAO,CAAC;IAEd,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,24 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createRouterPool = void 0;
7
- const aftermathRouterPool_1 = __importDefault(require("./routerPools/aftermathRouterPool"));
8
- const nojoRouterPool_1 = __importDefault(require("./routerPools/nojoRouterPool"));
9
- const nojoAmmTypes_1 = require("../../external/nojo/nojoAmmTypes");
10
- const deepBookTypes_1 = require("../../external/deepBook/deepBookTypes");
11
- const deepBookRouterPool_1 = __importDefault(require("./routerPools/deepBookRouterPool"));
12
- /////////////////////////////////////////////////////////////////////
13
- //// Creation
14
- /////////////////////////////////////////////////////////////////////
15
- function createRouterPool(inputs) {
16
- const { pool, network } = inputs;
17
- const constructedPool = (0, nojoAmmTypes_1.isNojoPoolObject)(pool)
18
- ? new nojoRouterPool_1.default(pool, network)
19
- : (0, deepBookTypes_1.isDeepBookPoolObject)(pool)
20
- ? new deepBookRouterPool_1.default(pool, network)
21
- : new aftermathRouterPool_1.default(pool, network);
22
- return constructedPool;
23
- }
24
- exports.createRouterPool = createRouterPool;
@@ -1 +0,0 @@
1
- {"version":3,"file":"aftermathRouterPool.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/routerPools/aftermathRouterPool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,GAAG,EACH,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,cAAM,mBAAoB,YAAW,mBAAmB;gBAK3C,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,GAAG;IAYvD,QAAQ,CAAC,YAAY,eAAe;IAEpC,QAAQ,CAAC,qBAAqB,SAAuB;IAErD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAO;IAMjC,YAAY,WAAY;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,YAkBC;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,KAAG,OAAO,CAiCT;IAEF,4BAA4B,WAAY;QACvC,QAAQ,EAAE,YAAY,CAAC;QACvB,EAAE,EAAE,gBAAgB,CAAC;QACrB,MAAM,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB;;;;;;;;;;;;;;MA2CC;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,KAAG,OAAO,CAiCT;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,CA8BrB;CACF;AAED,eAAe,mBAAmB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"deepBookRouterPool.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/routerPools/deepBookRouterPool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,GAAG,EACH,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EACN,kBAAkB,EAElB,MAAM,0CAA0C,CAAC;AAGlD,cAAM,kBAAmB,YAAW,mBAAmB;gBAK1C,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,UAAU,GAAG,GAAG;IAW/D,QAAQ,CAAC,YAAY,cAAc;IAEnC,QAAQ,CAAC,qBAAqB,SAAuB;IAErD,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;IACnC,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,KAAG,MAAM,CAMR;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,KAAG,OAAO,CAGT;IAEF,4BAA4B,WAAY;QACvC,QAAQ,EAAE,YAAY,CAAC;QACvB,EAAE,EAAE,gBAAgB,CAAC;QACrB,MAAM,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB,KAAG,mBAAmB,CASrB;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,KAAG,OAAO,CAET;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,CA2BrB;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,CAIrB;IAMF,OAAO,CAAC,kCAAkC,CA0DxC;IAEF,OAAO,CAAC,cAAc,CAE8B;CACpD;AAED,eAAe,kBAAkB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"nojoRouterPool.d.ts","sourceRoot":"","sources":["../../../../../src/packages/router/utils/routerPools/nojoRouterPool.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,GAAG,EACH,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAGrE,cAAM,cAAe,YAAW,mBAAmB;gBAKtC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,GAAG,GAAG;IAY3D,QAAQ,CAAC,YAAY,UAAU;IAE/B,QAAQ,CAAC,qBAAqB,SAAqB;IAEnD,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAO;IACjC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAS;IAMjD,YAAY,WAAY;QACvB,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;KACtB,YAQC;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,KAAG,OAAO,CA0BT;IAEF,4BAA4B,WAAY;QACvC,QAAQ,EAAE,YAAY,CAAC;QACvB,EAAE,EAAE,gBAAgB,CAAC;QACrB,MAAM,EAAE,QAAQ,GAAG,mBAAmB,CAAC;QACvC,UAAU,EAAE,QAAQ,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC;QACtB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,CAAC,EAAE,UAAU,CAAC;KACtB;;;;;;;;;;;;;;MAaC;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,KAAG,OAAO,CA0BT;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,CAKnB;IAEJ,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,CA2BrB;IAMF,OAAO,CAAC,OAAO,CAEwC;CACvD;AAED,eAAe,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"routerTest.d.ts","sourceRoot":"","sources":["../../../../src/packages/router/utils/routerTest.ts"],"names":[],"mappings":""}
@@ -1,105 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const providers_1 = require("../../../general/providers");
13
- const tradeAmounts = {
14
- max: BigInt(9223372036854776000),
15
- extraLarge: BigInt(100000000000000000),
16
- large: BigInt(10000000000000),
17
- medium: BigInt(1000000000),
18
- small: BigInt(10000),
19
- };
20
- const runMe = () => __awaiter(void 0, void 0, void 0, function* () {
21
- var _a, _b;
22
- const sdk = new providers_1.Aftermath("LOCAL");
23
- const router = sdk.Router();
24
- const supportedCoins = Object.keys(yield router.getSupportedCoinPaths());
25
- // PRODUCTOIN: add asserts for coins not in pool or same coin trades
26
- const coinIn = (_a = supportedCoins.find((coin) => coin.toLowerCase().includes("afsui"))) !== null && _a !== void 0 ? _a : "";
27
- const coinOut = (_b = supportedCoins.find((coin) => coin.toLowerCase().includes("::af::"))) !== null && _b !== void 0 ? _b : "";
28
- const coinInAmount = BigInt(223447384370);
29
- console.log("START");
30
- console.log("\n");
31
- try {
32
- // await runRoute(router, coinIn, coinInAmount, coinOut, 1);
33
- const coinOutAmount = yield runRoute(router, coinIn, coinInAmount, coinOut, 5, false);
34
- yield runRoute(router, coinIn, coinOutAmount, coinOut, 5, true);
35
- // const pool = await sdk.Pools().getPool({
36
- // objectId:
37
- // "0x5dbf77deddfc68f446b96b2a17b7160faf4a015544df9ab3db81bf7b5ffc0570",
38
- // });
39
- // const pool = new Pool(
40
- // Helpers.parseJsonWithBigint(
41
- // `{"objectId":"0xbc8bdb27d73b28f9ba9cd1b56e256f21bf9584d1e80ccc460a24e46bd4078950","lpCoinType":"0xef7ba1db7f5604bee5f86cf444c3636d6e5d711fbba280954fa9d2f654ef7db7::af_lp_eth::AF_LP_ETH","name":"ETH Pool","creator":"0x4b02b9b45f2a9597363fbaacb2fd6e7fb8ed9329bb6f716631b5717048908ace","lpCoinSupply":"3675123799120n","illiquidLpCoinSupply":"1000n","flatness":"0n","coins":{"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::af::AF":{"weight":"250000000000000000n","balance":"1000000000000000n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"},"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::afsui::AFSUI":{"weight":"250000000000000000n","balance":"876843564864654n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"},"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::lzeth::LZETH":{"weight":"250000000000000000n","balance":"45612457575n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"},"0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::wheth::WHETH":{"weight":"250000000000000000n","balance":"4561233457n","tradeFeeIn":"100000000000000n","tradeFeeOut":"0n","depositFee":"0n","withdrawFee":"0n"}}}`
42
- // ) as unknown as PoolObject
43
- // );
44
- // const amountOut = pool.getTradeAmountOut({
45
- // coinInType:
46
- // "0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::axlusdc::AXLUSDC",
47
- // coinOutType:
48
- // "0xfa9a96ded27547caf042ae0cde633b1699a8da7344e5e0bee2d0fd00556086df::afsui::AFSUI",
49
- // coinInAmount: BigInt(5000000),
50
- // });
51
- // console.log("amountOut", amountOut);
52
- // await runRoute(router, coinIn, coinOutAmount, coinOut, 5, true);
53
- // await runRoute(router, coinIn, coinInAmount, coinOut, 3);
54
- // await runRoute(router, coinIn, coinInAmount, coinOut, 4);
55
- // await runRoute(router, coinIn, coinInAmount, coinOut, 5);
56
- // await runRoute(router, coinIn, coinInAmount, coinOut, 6);
57
- // await runRoute(router, coinIn, coinInAmount, coinOut, 7);
58
- }
59
- catch (e) {
60
- console.error(e);
61
- }
62
- console.log("END");
63
- });
64
- const runRoute = (router, coinIn, coinInAmount, coinOut, maxRouteLength, isGivenAmountOut) => __awaiter(void 0, void 0, void 0, function* () {
65
- const start = performance.now();
66
- const completeRoute = isGivenAmountOut
67
- ? yield router.getCompleteTradeRouteGivenAmountOut({
68
- coinInType: coinIn,
69
- coinOutType: coinOut,
70
- coinOutAmount: coinInAmount,
71
- }
72
- // maxRouteLength
73
- )
74
- : yield router.getCompleteTradeRouteGivenAmountIn({ coinInType: coinIn, coinInAmount, coinOutType: coinOut }
75
- // maxRouteLength
76
- );
77
- console.log({ coinIn, coinInAmount, coinOut });
78
- const end = performance.now();
79
- const stableCoinPercentLoss = (Number(completeRoute.coinIn.amount - completeRoute.coinOut.amount) /
80
- Number(completeRoute.coinIn.amount)) *
81
- 100;
82
- console.log("Max Route Length:", maxRouteLength);
83
- console.log("Routes Used:", completeRoute.routes.length);
84
- // for (const route of completeRoute.routes) {
85
- // console.log("\n");
86
- // console.log(
87
- // route.paths.map((path) => {
88
- // return {
89
- // pool: path.poolObjectId,
90
- // coinIn: path.coinIn,
91
- // coinInAmount: path.coinIn.amount,
92
- // coinOut: path.coinOut,
93
- // coinOutAmount: path.coinOut.amount,
94
- // };
95
- // })
96
- // );
97
- // }
98
- console.log("Coin In Amount:", completeRoute.coinIn.amount);
99
- console.log("Coin Out Amount:", completeRoute.coinOut.amount);
100
- console.log("Stable Coin Loss:", completeRoute.coinIn.amount - completeRoute.coinOut.amount, `${stableCoinPercentLoss.toFixed(2)}%`);
101
- console.log("Execution time:", end - start, "ms");
102
- console.log("\n");
103
- return completeRoute.coinOut.amount;
104
- });
105
- runMe();