@mento-protocol/mento-sdk 3.0.0-beta.4 → 3.0.0-beta.5

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 (56) hide show
  1. package/dist/cache/routes.d.ts.map +1 -1
  2. package/dist/cache/routes.js +2 -3
  3. package/dist/cache/routes.js.map +1 -1
  4. package/dist/cache/tokens.js +5 -5
  5. package/dist/cache/tokens.js.map +1 -1
  6. package/dist/core/abis/breakerbox.d.ts +13 -0
  7. package/dist/core/abis/breakerbox.d.ts.map +1 -0
  8. package/dist/core/abis/breakerbox.js +8 -0
  9. package/dist/core/abis/breakerbox.js.map +1 -0
  10. package/dist/core/abis/fpmm.d.ts +8 -0
  11. package/dist/core/abis/fpmm.d.ts.map +1 -1
  12. package/dist/core/abis/fpmm.js +1 -0
  13. package/dist/core/abis/fpmm.js.map +1 -1
  14. package/dist/core/abis/index.d.ts +1 -0
  15. package/dist/core/abis/index.d.ts.map +1 -1
  16. package/dist/core/abis/index.js +1 -0
  17. package/dist/core/abis/index.js.map +1 -1
  18. package/dist/core/types/index.d.ts +1 -0
  19. package/dist/core/types/index.d.ts.map +1 -1
  20. package/dist/core/types/index.js +1 -0
  21. package/dist/core/types/index.js.map +1 -1
  22. package/dist/core/types/tradingMode.d.ts +24 -0
  23. package/dist/core/types/tradingMode.d.ts.map +1 -0
  24. package/dist/core/types/tradingMode.js +31 -0
  25. package/dist/core/types/tradingMode.js.map +1 -0
  26. package/dist/index.d.ts +5 -0
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +8 -2
  29. package/dist/index.js.map +1 -1
  30. package/dist/services/index.d.ts +1 -0
  31. package/dist/services/index.d.ts.map +1 -1
  32. package/dist/services/index.js +1 -0
  33. package/dist/services/index.js.map +1 -1
  34. package/dist/services/quotes/QuoteService.d.ts.map +1 -1
  35. package/dist/services/quotes/QuoteService.js +1 -0
  36. package/dist/services/quotes/QuoteService.js.map +1 -1
  37. package/dist/services/swap/SwapService.d.ts.map +1 -1
  38. package/dist/services/swap/SwapService.js +3 -0
  39. package/dist/services/swap/SwapService.js.map +1 -1
  40. package/dist/services/trading/TradingService.d.ts +76 -0
  41. package/dist/services/trading/TradingService.d.ts.map +1 -0
  42. package/dist/services/trading/TradingService.js +110 -0
  43. package/dist/services/trading/TradingService.js.map +1 -0
  44. package/dist/services/trading/index.d.ts +2 -0
  45. package/dist/services/trading/index.d.ts.map +1 -0
  46. package/dist/services/trading/index.js +18 -0
  47. package/dist/services/trading/index.js.map +1 -0
  48. package/dist/utils/index.d.ts +1 -0
  49. package/dist/utils/index.d.ts.map +1 -1
  50. package/dist/utils/index.js +1 -0
  51. package/dist/utils/index.js.map +1 -1
  52. package/dist/utils/rateFeed.d.ts +18 -0
  53. package/dist/utils/rateFeed.d.ts.map +1 -0
  54. package/dist/utils/rateFeed.js +27 -0
  55. package/dist/utils/rateFeed.js.map +1 -0
  56. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/cache/routes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CA6GxD,CAAA;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAEhE"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/cache/routes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CA4GxD,CAAA;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAEhE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // This file is auto-generated. Do not edit manually.
3
- // Generated on 2025-12-17T12:12:43.212Z
3
+ // Generated on 2025-12-18T14:21:57.284Z
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.cachedRoutes = void 0;
6
6
  exports.getCachedRoutes = getCachedRoutes;
@@ -9,6 +9,7 @@ exports.getCachedRoutes = getCachedRoutes;
9
9
  * Routes that don't exist for a chain will return an empty array
10
10
  */
11
11
  exports.cachedRoutes = {
12
+ // Chain 42220
12
13
  42220: [
13
14
  {
14
15
  "id": "KESm-USDm",
@@ -115,8 +116,6 @@ exports.cachedRoutes = {
115
116
  }
116
117
  }
117
118
  ],
118
- // Celo Sepolia testnet - no routes cached yet
119
- 11142220: []
120
119
  };
121
120
  /**
122
121
  * Get cached routes for a specific chain
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/cache/routes.ts"],"names":[],"mappings":";AAAA,qDAAqD;AACrD,wCAAwC;;;AA4HxC,0CAEC;AA1HD;;;GAGG;AACU,QAAA,YAAY,GAAoC;IAC3D,KAAK,EAAE;QACL;YACE,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;aACF;YACD,MAAM,EAAE;gBACN;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,MAAM;iBACnB;aACF;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG;gBACvB,MAAM,EAAE;oBACN;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,GAAG;qBACnB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;aACF;YACD,MAAM,EAAE;gBACN;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,SAAS;iBACtB;aACF;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,CAAC;gBACrB,MAAM,EAAE;oBACN;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,CAAC;qBACjB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;aACF;YACD,MAAM,EAAE;gBACN;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,MAAM;iBACnB;gBACD;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,SAAS;iBACtB;aACF;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,KAAK;gBACzB,MAAM,EAAE;oBACN;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,GAAG;qBACnB;oBACD;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,CAAC;qBACjB;iBACF;aACF;SACF;KACF;IACD,8CAA8C;IAC9C,QAAQ,EAAE,EAAE;CACb,CAAA;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,OAAe;IAC7C,OAAO,oBAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;AACpC,CAAC"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/cache/routes.ts"],"names":[],"mappings":";AAAA,qDAAqD;AACrD,wCAAwC;;;AA2HxC,0CAEC;AAzHD;;;GAGG;AACU,QAAA,YAAY,GAAoC;IAC3D,cAAc;IACd,KAAK,EAAE;QACL;YACE,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;aACF;YACD,MAAM,EAAE;gBACN;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,MAAM;iBACnB;aACF;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,GAAG;gBACvB,MAAM,EAAE;oBACN;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,GAAG;qBACnB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;aACF;YACD,MAAM,EAAE;gBACN;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,SAAS;iBACtB;aACF;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,CAAC;gBACrB,MAAM,EAAE;oBACN;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,CAAC;qBACjB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,QAAQ,EAAE;gBACR;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;gBACD;oBACE,SAAS,EAAE,4CAA4C;oBACvD,QAAQ,EAAE,MAAM;iBACjB;aACF;YACD,MAAM,EAAE;gBACN;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,MAAM;iBACnB;gBACD;oBACE,aAAa,EAAE,4CAA4C;oBAC3D,UAAU,EAAE,4CAA4C;oBACxD,QAAQ,EAAE,4CAA4C;oBACtD,QAAQ,EAAE,4CAA4C;oBACtD,UAAU,EAAE,SAAS;iBACtB;aACF;YACD,UAAU,EAAE;gBACV,kBAAkB,EAAE,KAAK;gBACzB,MAAM,EAAE;oBACN;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,GAAG;qBACnB;oBACD;wBACE,aAAa,EAAE,4CAA4C;wBAC3D,aAAa,EAAE,CAAC;qBACjB;iBACF;aACF;SACF;KACF;CACF,CAAA;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,OAAe;IAC7C,OAAO,oBAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;AACpC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // This file is auto-generated. Do not edit manually.
3
- // Generated on 2025-12-17T12:12:17.888Z
3
+ // Generated on 2025-12-18T14:22:08.063Z
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.TOKEN_ADDRESSES_BY_CHAIN = exports.cachedTokens = exports.TokenSymbol = void 0;
6
6
  exports.getCachedTokens = getCachedTokens;
@@ -37,7 +37,7 @@ var TokenSymbol;
37
37
  * Cached tokens indexed by chain ID
38
38
  */
39
39
  exports.cachedTokens = {
40
- // Celo Mainnet
40
+ // Chain 42220
41
41
  42220: [
42
42
  {
43
43
  address: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
@@ -158,9 +158,9 @@ exports.cachedTokens = {
158
158
  symbol: TokenSymbol.USD_,
159
159
  name: 'Tether USD',
160
160
  decimals: 6,
161
- },
161
+ }
162
162
  ],
163
- // Celo Sepolia Testnet
163
+ // Chain 11142220
164
164
  11142220: [
165
165
  {
166
166
  address: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
@@ -281,7 +281,7 @@ exports.cachedTokens = {
281
281
  symbol: TokenSymbol.USDC,
282
282
  name: 'USDC',
283
283
  decimals: 6,
284
- },
284
+ }
285
285
  ],
286
286
  };
287
287
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/cache/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/cache/tokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export declare const BREAKERBOX_ABI: readonly [{
2
+ readonly name: "getRateFeedTradingMode";
3
+ readonly type: "function";
4
+ readonly stateMutability: "view";
5
+ readonly inputs: readonly [{
6
+ readonly type: "address";
7
+ readonly name: "rateFeedID";
8
+ }];
9
+ readonly outputs: readonly [{
10
+ readonly type: "uint8";
11
+ }];
12
+ }];
13
+ //# sourceMappingURL=breakerbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakerbox.d.ts","sourceRoot":"","sources":["../../../src/core/abis/breakerbox.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc;;;;;;;;;;;EAEzB,CAAA"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BREAKERBOX_ABI = void 0;
4
+ const viem_1 = require("viem");
5
+ exports.BREAKERBOX_ABI = (0, viem_1.parseAbi)([
6
+ 'function getRateFeedTradingMode(address rateFeedID) view returns (uint8)',
7
+ ]);
8
+ //# sourceMappingURL=breakerbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakerbox.js","sourceRoot":"","sources":["../../../src/core/abis/breakerbox.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,cAAc,GAAG,IAAA,eAAQ,EAAC;IACrC,0EAA0E;CAC3E,CAAC,CAAA"}
@@ -30,5 +30,13 @@ export declare const FPMM_ABI: readonly [{
30
30
  readonly outputs: readonly [{
31
31
  readonly type: "uint256";
32
32
  }];
33
+ }, {
34
+ readonly name: "referenceRateFeedID";
35
+ readonly type: "function";
36
+ readonly stateMutability: "view";
37
+ readonly inputs: readonly [];
38
+ readonly outputs: readonly [{
39
+ readonly type: "address";
40
+ }];
33
41
  }];
34
42
  //# sourceMappingURL=fpmm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fpmm.d.ts","sourceRoot":"","sources":["../../../src/core/abis/fpmm.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKnB,CAAA"}
1
+ {"version":3,"file":"fpmm.d.ts","sourceRoot":"","sources":["../../../src/core/abis/fpmm.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnB,CAAA"}
@@ -7,5 +7,6 @@ exports.FPMM_ABI = (0, viem_1.parseAbi)([
7
7
  'function token1() view returns (address)',
8
8
  'function lpFee() view returns (uint256)',
9
9
  'function protocolFee() view returns (uint256)',
10
+ 'function referenceRateFeedID() view returns (address)',
10
11
  ]);
11
12
  //# sourceMappingURL=fpmm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fpmm.js","sourceRoot":"","sources":["../../../src/core/abis/fpmm.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,QAAQ,GAAG,IAAA,eAAQ,EAAC;IAC/B,0CAA0C;IAC1C,0CAA0C;IAC1C,yCAAyC;IACzC,+CAA+C;CAChD,CAAC,CAAA"}
1
+ {"version":3,"file":"fpmm.js","sourceRoot":"","sources":["../../../src/core/abis/fpmm.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,QAAQ,GAAG,IAAA,eAAQ,EAAC;IAC/B,0CAA0C;IAC1C,0CAA0C;IAC1C,yCAAyC;IACzC,+CAA+C;IAC/C,uDAAuD;CACxD,CAAC,CAAA"}
@@ -7,4 +7,5 @@ export * from './fpmmFactory';
7
7
  export * from './fpmm';
8
8
  export * from './virtualPoolFactory';
9
9
  export * from './router';
10
+ export * from './breakerbox';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/abis/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,sBAAsB,CAAA;AACpC,cAAc,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/abis/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,sBAAsB,CAAA;AACpC,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
@@ -23,4 +23,5 @@ __exportStar(require("./fpmmFactory"), exports);
23
23
  __exportStar(require("./fpmm"), exports);
24
24
  __exportStar(require("./virtualPoolFactory"), exports);
25
25
  __exportStar(require("./router"), exports);
26
+ __exportStar(require("./breakerbox"), exports);
26
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/abis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,8CAA2B;AAC3B,2CAAwB;AACxB,gDAA6B;AAC7B,yCAAsB;AACtB,uDAAoC;AACpC,2CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/abis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,8CAA2B;AAC3B,2CAAwB;AACxB,gDAA6B;AAC7B,yCAAsB;AACtB,uDAAoC;AACpC,2CAAwB;AACxB,+CAA4B"}
@@ -3,4 +3,5 @@ export * from './provider';
3
3
  export * from './token';
4
4
  export * from './route';
5
5
  export * from './pool';
6
+ export * from './tradingMode';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,eAAe,CAAA"}
@@ -19,4 +19,5 @@ __exportStar(require("./provider"), exports);
19
19
  __exportStar(require("./token"), exports);
20
20
  __exportStar(require("./route"), exports);
21
21
  __exportStar(require("./pool"), exports);
22
+ __exportStar(require("./tradingMode"), exports);
22
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAmC;AACnC,6CAA0B;AAC1B,0CAAuB;AACvB,0CAAuB;AACvB,yCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAmC;AACnC,6CAA0B;AAC1B,0CAAuB;AACvB,0CAAuB;AACvB,yCAAsB;AACtB,gDAA6B"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Trading modes for rate feeds in the BreakerBox circuit breaker.
3
+ *
4
+ * The BreakerBox uses a bitmask approach where multiple breakers can
5
+ * contribute to the final trading mode. In practice:
6
+ * - 0 = Bidirectional (trading enabled)
7
+ * - Any non-zero value = Trading suspended
8
+ *
9
+ * For SDK consumers, use isTradingEnabled() helper to check if trading
10
+ * is allowed.
11
+ */
12
+ export declare enum TradingMode {
13
+ /** Bidirectional trading is enabled (normal operation) */
14
+ BIDIRECTIONAL = 0,
15
+ /** Trading is suspended (circuit breaker tripped) - any non-zero value */
16
+ SUSPENDED = 1
17
+ }
18
+ /**
19
+ * Check if trading is enabled for a given trading mode.
20
+ * @param mode - The trading mode value from BreakerBox
21
+ * @returns true if trading is enabled (mode === 0)
22
+ */
23
+ export declare function isTradingEnabled(mode: number): boolean;
24
+ //# sourceMappingURL=tradingMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tradingMode.d.ts","sourceRoot":"","sources":["../../../src/core/types/tradingMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,oBAAY,WAAW;IACrB,0DAA0D;IAC1D,aAAa,IAAI;IACjB,0EAA0E;IAC1E,SAAS,IAAI;CACd;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TradingMode = void 0;
4
+ exports.isTradingEnabled = isTradingEnabled;
5
+ /**
6
+ * Trading modes for rate feeds in the BreakerBox circuit breaker.
7
+ *
8
+ * The BreakerBox uses a bitmask approach where multiple breakers can
9
+ * contribute to the final trading mode. In practice:
10
+ * - 0 = Bidirectional (trading enabled)
11
+ * - Any non-zero value = Trading suspended
12
+ *
13
+ * For SDK consumers, use isTradingEnabled() helper to check if trading
14
+ * is allowed.
15
+ */
16
+ var TradingMode;
17
+ (function (TradingMode) {
18
+ /** Bidirectional trading is enabled (normal operation) */
19
+ TradingMode[TradingMode["BIDIRECTIONAL"] = 0] = "BIDIRECTIONAL";
20
+ /** Trading is suspended (circuit breaker tripped) - any non-zero value */
21
+ TradingMode[TradingMode["SUSPENDED"] = 1] = "SUSPENDED";
22
+ })(TradingMode || (exports.TradingMode = TradingMode = {}));
23
+ /**
24
+ * Check if trading is enabled for a given trading mode.
25
+ * @param mode - The trading mode value from BreakerBox
26
+ * @returns true if trading is enabled (mode === 0)
27
+ */
28
+ function isTradingEnabled(mode) {
29
+ return mode === TradingMode.BIDIRECTIONAL;
30
+ }
31
+ //# sourceMappingURL=tradingMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tradingMode.js","sourceRoot":"","sources":["../../../src/core/types/tradingMode.ts"],"names":[],"mappings":";;;AAuBA,4CAEC;AAzBD;;;;;;;;;;GAUG;AACH,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,0DAA0D;IAC1D,+DAAiB,CAAA;IACjB,0EAA0E;IAC1E,uDAAa,CAAA;AACf,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,IAAI,KAAK,WAAW,CAAC,aAAa,CAAA;AAC3C,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ import { PoolService } from './services/pools';
4
4
  import { RouteService } from './services/routes';
5
5
  import { QuoteService } from './services/quotes';
6
6
  import { SwapService } from './services/swap';
7
+ import { TradingService } from './services/trading';
7
8
  /**
8
9
  * @class Mento
9
10
  * @description The main class for the Mento SDK. Initializes a viem PublicClient internally
@@ -30,6 +31,9 @@ import { SwapService } from './services/swap';
30
31
  *
31
32
  * // Build swap parameters
32
33
  * const swapDetails = await mento.swap.buildSwapParams(cUSD, CELO, amountIn, { slippageTolerance: 0.5 });
34
+ *
35
+ * // Check if a pair is tradable (circuit breaker check)
36
+ * const isTradable = await mento.trading.isPairTradable(cUSD, CELO);
33
37
  */
34
38
  export declare class Mento {
35
39
  private chainId;
@@ -38,6 +42,7 @@ export declare class Mento {
38
42
  routes: RouteService;
39
43
  quotes: QuoteService;
40
44
  swap: SwapService;
45
+ trading: TradingService;
41
46
  private constructor();
42
47
  /**
43
48
  * Create a new Mento SDK instance
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAIhD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,KAAK;IAEd,OAAO,CAAC,OAAO;IACR,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,WAAW;IAN1B,OAAO;IASP;;;;;OAKG;WACiB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAoB5E;;;;OAIG;IACI,kBAAkB,CAAC,YAAY,EAAE,MAAM,iBAAiB,GAAG,MAAM;CAGzE;AAED,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAIhD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,KAAK;IAEd,OAAO,CAAC,OAAO;IACR,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IAPhC,OAAO;IAUP;;;;;OAKG;WACiB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAqB5E;;;;OAIG;IACI,kBAAkB,CAAC,YAAY,EAAE,MAAM,iBAAiB,GAAG,MAAM;CAGzE;AAED,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ const pools_1 = require("./services/pools");
23
23
  const routes_1 = require("./services/routes");
24
24
  const quotes_1 = require("./services/quotes");
25
25
  const swap_1 = require("./services/swap");
26
+ const trading_1 = require("./services/trading");
26
27
  /**
27
28
  * @class Mento
28
29
  * @description The main class for the Mento SDK. Initializes a viem PublicClient internally
@@ -49,15 +50,19 @@ const swap_1 = require("./services/swap");
49
50
  *
50
51
  * // Build swap parameters
51
52
  * const swapDetails = await mento.swap.buildSwapParams(cUSD, CELO, amountIn, { slippageTolerance: 0.5 });
53
+ *
54
+ * // Check if a pair is tradable (circuit breaker check)
55
+ * const isTradable = await mento.trading.isPairTradable(cUSD, CELO);
52
56
  */
53
57
  class Mento {
54
- constructor(chainId, tokens, pools, routes, quotes, swap) {
58
+ constructor(chainId, tokens, pools, routes, quotes, swap, trading) {
55
59
  this.chainId = chainId;
56
60
  this.tokens = tokens;
57
61
  this.pools = pools;
58
62
  this.routes = routes;
59
63
  this.quotes = quotes;
60
64
  this.swap = swap;
65
+ this.trading = trading;
61
66
  }
62
67
  /**
63
68
  * Create a new Mento SDK instance
@@ -78,8 +83,9 @@ class Mento {
78
83
  const routeService = new routes_1.RouteService(publicClient, chainId, poolService);
79
84
  const quoteService = new quotes_1.QuoteService(publicClient, chainId, routeService);
80
85
  const swapService = new swap_1.SwapService(publicClient, chainId, routeService, quoteService);
86
+ const tradingService = new trading_1.TradingService(publicClient, chainId, routeService);
81
87
  // Return new mento
82
- return new Mento(chainId, tokenService, poolService, routeService, quoteService, swapService);
88
+ return new Mento(chainId, tokenService, poolService, routeService, quoteService, swapService, tradingService);
83
89
  }
84
90
  /**
85
91
  * Get the address of a contract for the current chain
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+BAAkE;AAGlE,0DAA+D;AAC/D,qDAAsE;AACtE,8CAAgD;AAChD,4CAA8C;AAC9C,8CAAgD;AAChD,8CAAgD;AAChD,0CAA6C;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAa,KAAK;IAChB,YACU,OAAe,EAChB,MAAoB,EACpB,KAAkB,EAClB,MAAoB,EACpB,MAAoB,EACpB,IAAiB;QALhB,YAAO,GAAP,OAAO,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAc;QACpB,UAAK,GAAL,KAAK,CAAa;QAClB,WAAM,GAAN,MAAM,CAAc;QACpB,WAAM,GAAN,MAAM,CAAc;QACpB,SAAI,GAAJ,IAAI,CAAa;IACvB,CAAC;IAEJ;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,MAAe;QACzD,gDAAgD;QAChD,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,MAAM,IAAI,IAAA,8BAAgB,EAAC,OAAO,CAAC,CAAC,CAAA;QAE3D,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;YACtC,KAAK,EAAE,IAAA,4BAAc,EAAC,OAAO,CAAC;YAC9B,SAAS;SACV,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC5D,MAAM,WAAW,GAAG,IAAI,mBAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC1D,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;QACzE,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;QAC1E,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAA;QAEtF,mBAAmB;QACnB,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;IAC/F,CAAC;IAED;;;;OAIG;IACI,kBAAkB,CAAC,YAAqC;QAC7D,OAAO,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,YAAY,CAAC,CAAA;IAClE,CAAC;CACF;AA5CD,sBA4CC;AAED,mDAAgC;AAChC,+CAA4B;AAC5B,8CAA2B;AAC3B,6CAA0B;AAC1B,0CAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+BAAkE;AAGlE,0DAA+D;AAC/D,qDAAsE;AACtE,8CAAgD;AAChD,4CAA8C;AAC9C,8CAAgD;AAChD,8CAAgD;AAChD,0CAA6C;AAC7C,gDAAmD;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAa,KAAK;IAChB,YACU,OAAe,EAChB,MAAoB,EACpB,KAAkB,EAClB,MAAoB,EACpB,MAAoB,EACpB,IAAiB,EACjB,OAAuB;QANtB,YAAO,GAAP,OAAO,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAc;QACpB,UAAK,GAAL,KAAK,CAAa;QAClB,WAAM,GAAN,MAAM,CAAc;QACpB,WAAM,GAAN,MAAM,CAAc;QACpB,SAAI,GAAJ,IAAI,CAAa;QACjB,YAAO,GAAP,OAAO,CAAgB;IAC7B,CAAC;IAEJ;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,MAAe;QACzD,gDAAgD;QAChD,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,MAAM,IAAI,IAAA,8BAAgB,EAAC,OAAO,CAAC,CAAC,CAAA;QAE3D,2BAA2B;QAC3B,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;YACtC,KAAK,EAAE,IAAA,4BAAc,EAAC,OAAO,CAAC;YAC9B,SAAS;SACV,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC5D,MAAM,WAAW,GAAG,IAAI,mBAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC1D,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;QACzE,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;QAC1E,MAAM,WAAW,GAAG,IAAI,kBAAW,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAA;QACtF,MAAM,cAAc,GAAG,IAAI,wBAAc,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;QAE9E,mBAAmB;QACnB,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAA;IAC/G,CAAC;IAED;;;;OAIG;IACI,kBAAkB,CAAC,YAAqC;QAC7D,OAAO,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,YAAY,CAAC,CAAA;IAClE,CAAC;CACF;AA9CD,sBA8CC;AAED,mDAAgC;AAChC,+CAA4B;AAC5B,8CAA2B;AAC3B,6CAA0B;AAC1B,0CAAuB"}
@@ -4,4 +4,5 @@ export * from './pools';
4
4
  export * from './routes';
5
5
  export * from './quotes';
6
6
  export * from './swap';
7
+ export * from './trading';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAA;AAChD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAA;AAChD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA"}
@@ -20,4 +20,5 @@ __exportStar(require("./pools"), exports);
20
20
  __exportStar(require("./routes"), exports);
21
21
  __exportStar(require("./quotes"), exports);
22
22
  __exportStar(require("./swap"), exports);
23
+ __exportStar(require("./trading"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mEAAgD;AAChD,kDAA+B;AAC/B,0CAAuB;AACvB,2CAAwB;AACxB,2CAAwB;AACxB,yCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mEAAgD;AAChD,kDAA+B;AAC/B,0CAAuB;AACvB,2CAAwB;AACxB,2CAAwB;AACxB,yCAAsB;AACtB,4CAAyB"}
@@ -1 +1 @@
1
- {"version":3,"file":"QuoteService.d.ts","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAKxC;;;GAGG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY;gBAFZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY;IAGpC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;CAmB1G"}
1
+ {"version":3,"file":"QuoteService.d.ts","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAKxC;;;GAGG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY;gBAFZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY;IAIpC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;CAmB1G"}
@@ -14,6 +14,7 @@ class QuoteService {
14
14
  this.chainId = chainId;
15
15
  this.routeService = routeService;
16
16
  }
17
+ // TODO: Go through codebase and update token/symbol/name references to the old ones.
17
18
  /**
18
19
  * Calculates the expected output amount for a swap between two tokens.
19
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"QuoteService.js","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":";;;AAGA,0CAA4C;AAC5C,oDAAkE;AAClE,yDAAyD;AAEzD;;;GAGG;AACH,MAAa,YAAY;IACvB,YACU,YAA0B,EAC1B,OAAe,EACf,YAA0B;QAF1B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAO,GAAP,OAAO,CAAQ;QACf,iBAAY,GAAZ,YAAY,CAAc;IACjC,CAAC;IAEJ;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,YAAY,CAAC,OAAgB,EAAE,QAAiB,EAAE,QAAgB,EAAE,KAAa;QACrF,wEAAwE;QACxE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAC9D,CAAC;QAED,yDAAyD;QACzD,MAAM,YAAY,GAAG,IAAA,6BAAe,EAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;QACnE,MAAM,aAAa,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,QAAQ,CAAC,CAAA;QAE3E,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;YACpD,OAAO,EAAE,aAA8B;YACvC,GAAG,EAAE,iBAAU;YACf,YAAY,EAAE,eAAe;YAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;SAC/B,CAAC,CAAa,CAAA;QAEf,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACpC,CAAC;CACF;AApDD,oCAoDC"}
1
+ {"version":3,"file":"QuoteService.js","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":";;;AAGA,0CAA4C;AAC5C,oDAAkE;AAClE,yDAAyD;AAEzD;;;GAGG;AACH,MAAa,YAAY;IACvB,YACU,YAA0B,EAC1B,OAAe,EACf,YAA0B;QAF1B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAO,GAAP,OAAO,CAAQ;QACf,iBAAY,GAAZ,YAAY,CAAc;IACjC,CAAC;IAEJ,qFAAqF;IACrF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,KAAK,CAAC,YAAY,CAAC,OAAgB,EAAE,QAAiB,EAAE,QAAgB,EAAE,KAAa;QACrF,wEAAwE;QACxE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAC9D,CAAC;QAED,yDAAyD;QACzD,MAAM,YAAY,GAAG,IAAA,6BAAe,EAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;QACnE,MAAM,aAAa,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,QAAQ,CAAC,CAAA;QAE3E,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;YACpD,OAAO,EAAE,aAA8B;YACvC,GAAG,EAAE,iBAAU;YACf,YAAY,EAAE,eAAe;YAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;SAC/B,CAAC,CAAa,CAAA;QAEf,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACpC,CAAC;CACF;AArDD,oCAqDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SwapService.d.ts","sourceRoot":"","sources":["../../../src/services/swap/SwapService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAsB,MAAM,MAAM,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAGpD,OAAO,EAAmB,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAEtE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAA;IACzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAA;IACZ;;OAEG;IACH,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAA;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAA;IAC3B;;OAEG;IACH,IAAI,EAAE,WAAW,CAAA;CAClB;AAED;;;GAGG;AACH,qBAAa,WAAW;IAEpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;gBAHZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAGpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,oBAAoB,CACxB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,WAAW,EACpB,KAAK,CAAC,EAAE,KAAK,GACZ,OAAO,CAAC,eAAe,CAAC;IAW3B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,eAAe,CACnB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,WAAW,EACpB,KAAK,CAAC,EAAE,KAAK,GACZ,OAAO,CAAC,WAAW,CAAC;IA+BvB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;YACW,YAAY;IAU1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;;OAGG;IACH,OAAO,CAAC,cAAc;CAavB"}
1
+ {"version":3,"file":"SwapService.d.ts","sourceRoot":"","sources":["../../../src/services/swap/SwapService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAsB,MAAM,MAAM,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAGpD,OAAO,EAAmB,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAEtE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAA;IACzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAA;IACZ;;OAEG;IACH,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAA;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAA;IAC3B;;OAEG;IACH,IAAI,EAAE,WAAW,CAAA;CAClB;AAED;;;GAGG;AACH,qBAAa,WAAW;IAEpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;gBAHZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY;IAGpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,oBAAoB,CACxB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,WAAW,EACpB,KAAK,CAAC,EAAE,KAAK,GACZ,OAAO,CAAC,eAAe,CAAC;IAe3B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,eAAe,CACnB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,WAAW,EACpB,KAAK,CAAC,EAAE,KAAK,GACZ,OAAO,CAAC,WAAW,CAAC;IA+BvB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;YACW,YAAY;IAU1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;;OAGG;IACH,OAAO,CAAC,cAAc;CAavB"}
@@ -57,6 +57,9 @@ class SwapService {
57
57
  const approval = currentAllowance < amountIn ? this.buildApprovalParams(tokenIn, amountIn) : null;
58
58
  return { approval, swap };
59
59
  }
60
+ // TODO: Do not use viem.Address on public interface functions.
61
+ // Instead use a string and validate it is a valid address.
62
+ // This prevents consumers from having to do any weird casting or importing viem.address
60
63
  /**
61
64
  * Builds swap transaction parameters without executing the transaction.
62
65
  * Does NOT check or handle token approval - use buildSwapTransaction for that.
@@ -1 +1 @@
1
- {"version":3,"file":"SwapService.js","sourceRoot":"","sources":["../../../src/services/swap/SwapService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SwapService.js","sourceRoot":"","sources":["../../../src/services/swap/SwapService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import { PublicClient } from 'viem';
2
+ import { Route } from '../../core/types';
3
+ import { RouteService } from '../routes';
4
+ /**
5
+ * Service for checking trading status and circuit breaker state in the Mento protocol.
6
+ * Provides methods to query whether trading is enabled for specific rate feeds,
7
+ * token pairs, or routes.
8
+ */
9
+ export declare class TradingService {
10
+ private publicClient;
11
+ private chainId;
12
+ private routeService;
13
+ constructor(publicClient: PublicClient, chainId: number, routeService: RouteService);
14
+ /**
15
+ * Returns the current trading mode for a given rate feed.
16
+ *
17
+ * The BreakerBox uses a bitmask approach where 0 means bidirectional trading
18
+ * is enabled, and any non-zero value means trading is suspended.
19
+ *
20
+ * @param rateFeedId - The address of the rate feed
21
+ * @returns The raw trading mode value from BreakerBox (0 = enabled, non-zero = suspended)
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const mode = await tradingService.getRateFeedTradingMode(rateFeedId)
26
+ * if (mode === TradingMode.BIDIRECTIONAL) {
27
+ * console.log('Trading is enabled')
28
+ * }
29
+ * ```
30
+ */
31
+ getRateFeedTradingMode(rateFeedId: string): Promise<number>;
32
+ /**
33
+ * Checks if a trading pair is currently tradable.
34
+ * For multi-hop routes (e.g., CELO → USDm → USDT), checks that ALL
35
+ * intermediate rate feeds are in BIDIRECTIONAL mode.
36
+ *
37
+ * @param tokenIn - Input token address
38
+ * @param tokenOut - Output token address
39
+ * @returns true if the pair is tradable (all rate feeds BIDIRECTIONAL), false otherwise
40
+ * @throws {RouteNotFoundError} If no route exists between the token pair
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * const isTradable = await tradingService.isPairTradable(cUSD, CELO)
45
+ * if (!isTradable) {
46
+ * console.log('Trading is currently suspended for this pair')
47
+ * }
48
+ * ```
49
+ */
50
+ isPairTradable(tokenIn: string, tokenOut: string): Promise<boolean>;
51
+ /**
52
+ * Checks if a route is currently tradable.
53
+ * Verifies that all pools in the route's path have their rate feeds
54
+ * in BIDIRECTIONAL mode.
55
+ *
56
+ * @param route - The route to check
57
+ * @returns true if all pools in the route are tradable, false otherwise
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * const route = await routeService.findRoute(tokenIn, tokenOut)
62
+ * const isRouteTradable = await tradingService.isRouteTradable(route)
63
+ * ```
64
+ */
65
+ isRouteTradable(route: Route): Promise<boolean>;
66
+ /**
67
+ * Get the reference rate feed ID for a pool.
68
+ * Both FPMM and Virtual pools expose this via the referenceRateFeedID() view function.
69
+ *
70
+ * @param pool - The pool to get rate feed ID for
71
+ * @returns The rate feed ID address
72
+ * @private
73
+ */
74
+ private getPoolRateFeedId;
75
+ }
76
+ //# sourceMappingURL=TradingService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TradingService.d.ts","sourceRoot":"","sources":["../../../src/services/trading/TradingService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,EAAiC,KAAK,EAAQ,MAAM,kBAAkB,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAMxC;;;;GAIG;AACH,qBAAa,cAAc;IAEvB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY;gBAFZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY;IAGpC;;;;;;;;;;;;;;;;OAgBG;IACG,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAajE;;;;;;;;;;;;;;;;;OAiBG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKzE;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;IAcrD;;;;;;;OAOG;YACW,iBAAiB;CAShC"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TradingService = void 0;
4
+ const types_1 = require("../../core/types");
5
+ const abis_1 = require("../../core/abis");
6
+ const constants_1 = require("../../core/constants");
7
+ // TODO: Could be expanded to include trading limit checks
8
+ /**
9
+ * Service for checking trading status and circuit breaker state in the Mento protocol.
10
+ * Provides methods to query whether trading is enabled for specific rate feeds,
11
+ * token pairs, or routes.
12
+ */
13
+ class TradingService {
14
+ constructor(publicClient, chainId, routeService) {
15
+ this.publicClient = publicClient;
16
+ this.chainId = chainId;
17
+ this.routeService = routeService;
18
+ }
19
+ /**
20
+ * Returns the current trading mode for a given rate feed.
21
+ *
22
+ * The BreakerBox uses a bitmask approach where 0 means bidirectional trading
23
+ * is enabled, and any non-zero value means trading is suspended.
24
+ *
25
+ * @param rateFeedId - The address of the rate feed
26
+ * @returns The raw trading mode value from BreakerBox (0 = enabled, non-zero = suspended)
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const mode = await tradingService.getRateFeedTradingMode(rateFeedId)
31
+ * if (mode === TradingMode.BIDIRECTIONAL) {
32
+ * console.log('Trading is enabled')
33
+ * }
34
+ * ```
35
+ */
36
+ async getRateFeedTradingMode(rateFeedId) {
37
+ const breakerBoxAddr = (0, constants_1.getContractAddress)(this.chainId, 'BreakerBox');
38
+ const mode = await this.publicClient.readContract({
39
+ address: breakerBoxAddr,
40
+ abi: abis_1.BREAKERBOX_ABI,
41
+ functionName: 'getRateFeedTradingMode',
42
+ args: [rateFeedId],
43
+ });
44
+ return Number(mode);
45
+ }
46
+ /**
47
+ * Checks if a trading pair is currently tradable.
48
+ * For multi-hop routes (e.g., CELO → USDm → USDT), checks that ALL
49
+ * intermediate rate feeds are in BIDIRECTIONAL mode.
50
+ *
51
+ * @param tokenIn - Input token address
52
+ * @param tokenOut - Output token address
53
+ * @returns true if the pair is tradable (all rate feeds BIDIRECTIONAL), false otherwise
54
+ * @throws {RouteNotFoundError} If no route exists between the token pair
55
+ *
56
+ * @example
57
+ * ```typescript
58
+ * const isTradable = await tradingService.isPairTradable(cUSD, CELO)
59
+ * if (!isTradable) {
60
+ * console.log('Trading is currently suspended for this pair')
61
+ * }
62
+ * ```
63
+ */
64
+ async isPairTradable(tokenIn, tokenOut) {
65
+ const route = await this.routeService.findRoute(tokenIn, tokenOut);
66
+ return this.isRouteTradable(route);
67
+ }
68
+ /**
69
+ * Checks if a route is currently tradable.
70
+ * Verifies that all pools in the route's path have their rate feeds
71
+ * in BIDIRECTIONAL mode.
72
+ *
73
+ * @param route - The route to check
74
+ * @returns true if all pools in the route are tradable, false otherwise
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * const route = await routeService.findRoute(tokenIn, tokenOut)
79
+ * const isRouteTradable = await tradingService.isRouteTradable(route)
80
+ * ```
81
+ */
82
+ async isRouteTradable(route) {
83
+ // Get rate feed IDs for each pool in the path and check trading modes
84
+ const rateFeedChecks = await Promise.all(route.path.map(async (pool) => {
85
+ const rateFeedId = await this.getPoolRateFeedId(pool);
86
+ const tradingMode = await this.getRateFeedTradingMode(rateFeedId);
87
+ return (0, types_1.isTradingEnabled)(tradingMode);
88
+ }));
89
+ // All rate feeds must have trading enabled for the route to be tradable
90
+ return rateFeedChecks.every((isEnabled) => isEnabled);
91
+ }
92
+ /**
93
+ * Get the reference rate feed ID for a pool.
94
+ * Both FPMM and Virtual pools expose this via the referenceRateFeedID() view function.
95
+ *
96
+ * @param pool - The pool to get rate feed ID for
97
+ * @returns The rate feed ID address
98
+ * @private
99
+ */
100
+ async getPoolRateFeedId(pool) {
101
+ const rateFeedId = await this.publicClient.readContract({
102
+ address: pool.poolAddr,
103
+ abi: abis_1.FPMM_ABI,
104
+ functionName: 'referenceRateFeedID',
105
+ });
106
+ return rateFeedId;
107
+ }
108
+ }
109
+ exports.TradingService = TradingService;
110
+ //# sourceMappingURL=TradingService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TradingService.js","sourceRoot":"","sources":["../../../src/services/trading/TradingService.ts"],"names":[],"mappings":";;;AACA,4CAA6E;AAE7E,0CAA0D;AAC1D,oDAAkE;AAElE,0DAA0D;AAE1D;;;;GAIG;AACH,MAAa,cAAc;IACzB,YACU,YAA0B,EAC1B,OAAe,EACf,YAA0B;QAF1B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAO,GAAP,OAAO,CAAQ;QACf,iBAAY,GAAZ,YAAY,CAAc;IACjC,CAAC;IAEJ;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,sBAAsB,CAAC,UAAkB;QAC7C,MAAM,cAAc,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,YAAY,CAAC,CAAA;QAEhF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;YAChD,OAAO,EAAE,cAA+B;YACxC,GAAG,EAAE,qBAAc;YACnB,YAAY,EAAE,wBAAwB;YACtC,IAAI,EAAE,CAAC,UAA2B,CAAC;SACpC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;IACrB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,cAAc,CAAC,OAAe,EAAE,QAAgB;QACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAClE,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,eAAe,CAAC,KAAY;QAChC,sEAAsE;QACtE,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;YACrD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAA;YACjE,OAAO,IAAA,wBAAgB,EAAC,WAAW,CAAC,CAAA;QACtC,CAAC,CAAC,CACH,CAAA;QAED,wEAAwE;QACxE,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;IACvD,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,iBAAiB,CAAC,IAAU;QACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;YACtD,OAAO,EAAE,IAAI,CAAC,QAAyB;YACvC,GAAG,EAAE,eAAQ;YACb,YAAY,EAAE,qBAAqB;SACpC,CAAC,CAAA;QAEF,OAAO,UAAoB,CAAA;IAC7B,CAAC;CACF;AAzGD,wCAyGC"}
@@ -0,0 +1,2 @@
1
+ export * from './TradingService';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/trading/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./TradingService"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/trading/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC"}
@@ -4,4 +4,5 @@ export * from './routes';
4
4
  export * from './sortUtils';
5
5
  export * from './pathEncoder';
6
6
  export * from './tokens';
7
+ export * from './rateFeed';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA"}
@@ -20,4 +20,5 @@ __exportStar(require("./routes"), exports);
20
20
  __exportStar(require("./sortUtils"), exports);
21
21
  __exportStar(require("./pathEncoder"), exports);
22
22
  __exportStar(require("./tokens"), exports);
23
+ __exportStar(require("./rateFeed"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,gDAA6B;AAC7B,2CAAwB;AACxB,8CAA2B;AAC3B,gDAA6B;AAC7B,2CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,gDAA6B;AAC7B,2CAAwB;AACxB,8CAA2B;AAC3B,gDAA6B;AAC7B,2CAAwB;AACxB,6CAA0B"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Computes the rate feed ID from a rate feed identifier string.
3
+ * Follows the Solidity formula: address(uint160(uint256(keccak256(abi.encodePacked(rateFeed)))))
4
+ *
5
+ * @param rateFeed - The rate feed identifier string (e.g., "EURUSD", "relayed:COPUSD")
6
+ * @returns The computed rate feed address as a hex string
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const rateFeedId = toRateFeedId('EURUSD')
11
+ * // Returns the computed address for the EURUSD rate feed
12
+ *
13
+ * const relayedRateFeedId = toRateFeedId('relayed:COPUSD')
14
+ * // Returns the computed address for the relayed COPUSD rate feed
15
+ * ```
16
+ */
17
+ export declare function toRateFeedId(rateFeed: string): `0x${string}`;
18
+ //# sourceMappingURL=rateFeed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rateFeed.d.ts","sourceRoot":"","sources":["../../src/utils/rateFeed.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAM5D"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toRateFeedId = toRateFeedId;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * Computes the rate feed ID from a rate feed identifier string.
7
+ * Follows the Solidity formula: address(uint160(uint256(keccak256(abi.encodePacked(rateFeed)))))
8
+ *
9
+ * @param rateFeed - The rate feed identifier string (e.g., "EURUSD", "relayed:COPUSD")
10
+ * @returns The computed rate feed address as a hex string
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * const rateFeedId = toRateFeedId('EURUSD')
15
+ * // Returns the computed address for the EURUSD rate feed
16
+ *
17
+ * const relayedRateFeedId = toRateFeedId('relayed:COPUSD')
18
+ * // Returns the computed address for the relayed COPUSD rate feed
19
+ * ```
20
+ */
21
+ function toRateFeedId(rateFeed) {
22
+ const hashedBytes = (0, viem_1.keccak256)((0, viem_1.toBytes)(rateFeed));
23
+ const hashAsBigInt = BigInt(hashedBytes);
24
+ const maskedToUint160 = hashAsBigInt & ((1n << 160n) - 1n);
25
+ return `0x${maskedToUint160.toString(16).padStart(40, '0')}`;
26
+ }
27
+ //# sourceMappingURL=rateFeed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rateFeed.js","sourceRoot":"","sources":["../../src/utils/rateFeed.ts"],"names":[],"mappings":";;AAkBA,oCAMC;AAxBD,+BAAyC;AAEzC;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,YAAY,CAAC,QAAgB;IAC3C,MAAM,WAAW,GAAG,IAAA,gBAAS,EAAC,IAAA,cAAO,EAAC,QAAQ,CAAC,CAAC,CAAA;IAChD,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;IACxC,MAAM,eAAe,GAAG,YAAY,GAAG,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAE1D,OAAO,KAAK,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAA;AAC9D,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mento-protocol/mento-sdk",
3
3
  "description": "Official SDK for interacting with the Mento Protocol",
4
- "version": "3.0.0-beta.4",
4
+ "version": "3.0.0-beta.5",
5
5
  "license": "MIT",
6
6
  "author": "Mento Labs",
7
7
  "keywords": [