@mento-protocol/mento-sdk 3.0.0-beta.22 → 3.0.0-beta.24

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.
@@ -158,5 +158,113 @@ export declare const FPMM_ABI: readonly [{
158
158
  }, {
159
159
  readonly type: "uint256";
160
160
  }];
161
+ }, {
162
+ readonly name: "ReferenceRateNotSet";
163
+ readonly type: "error";
164
+ readonly inputs: readonly [];
165
+ }, {
166
+ readonly name: "ReservesEmpty";
167
+ readonly type: "error";
168
+ readonly inputs: readonly [];
169
+ }, {
170
+ readonly name: "InvalidToken";
171
+ readonly type: "error";
172
+ readonly inputs: readonly [];
173
+ }, {
174
+ readonly name: "ZeroAddress";
175
+ readonly type: "error";
176
+ readonly inputs: readonly [];
177
+ }, {
178
+ readonly name: "ProtocolFeeRecipientRequired";
179
+ readonly type: "error";
180
+ readonly inputs: readonly [];
181
+ }, {
182
+ readonly name: "NotFeeSetter";
183
+ readonly type: "error";
184
+ readonly inputs: readonly [];
185
+ }, {
186
+ readonly name: "FeeTooHigh";
187
+ readonly type: "error";
188
+ readonly inputs: readonly [];
189
+ }, {
190
+ readonly name: "InsufficientLiquidityMinted";
191
+ readonly type: "error";
192
+ readonly inputs: readonly [];
193
+ }, {
194
+ readonly name: "InsufficientLiquidityBurned";
195
+ readonly type: "error";
196
+ readonly inputs: readonly [];
197
+ }, {
198
+ readonly name: "InsufficientOutputAmount";
199
+ readonly type: "error";
200
+ readonly inputs: readonly [];
201
+ }, {
202
+ readonly name: "InsufficientLiquidity";
203
+ readonly type: "error";
204
+ readonly inputs: readonly [];
205
+ }, {
206
+ readonly name: "InvalidToAddress";
207
+ readonly type: "error";
208
+ readonly inputs: readonly [];
209
+ }, {
210
+ readonly name: "InsufficientInputAmount";
211
+ readonly type: "error";
212
+ readonly inputs: readonly [];
213
+ }, {
214
+ readonly name: "NotLiquidityStrategy";
215
+ readonly type: "error";
216
+ readonly inputs: readonly [];
217
+ }, {
218
+ readonly name: "OneOutputAmountRequired";
219
+ readonly type: "error";
220
+ readonly inputs: readonly [];
221
+ }, {
222
+ readonly name: "PriceDifferenceTooSmall";
223
+ readonly type: "error";
224
+ readonly inputs: readonly [];
225
+ }, {
226
+ readonly name: "PriceDifferenceNotImproved";
227
+ readonly type: "error";
228
+ readonly inputs: readonly [];
229
+ }, {
230
+ readonly name: "PriceDifferenceMovedInWrongDirection";
231
+ readonly type: "error";
232
+ readonly inputs: readonly [];
233
+ }, {
234
+ readonly name: "PriceDifferenceMovedTooFarFromThresholds";
235
+ readonly type: "error";
236
+ readonly inputs: readonly [];
237
+ }, {
238
+ readonly name: "InsufficientAmount0In";
239
+ readonly type: "error";
240
+ readonly inputs: readonly [];
241
+ }, {
242
+ readonly name: "InsufficientAmount1In";
243
+ readonly type: "error";
244
+ readonly inputs: readonly [];
245
+ }, {
246
+ readonly name: "ReserveValueDecreased";
247
+ readonly type: "error";
248
+ readonly inputs: readonly [];
249
+ }, {
250
+ readonly name: "RebalanceIncentiveTooHigh";
251
+ readonly type: "error";
252
+ readonly inputs: readonly [];
253
+ }, {
254
+ readonly name: "RebalanceThresholdTooHigh";
255
+ readonly type: "error";
256
+ readonly inputs: readonly [];
257
+ }, {
258
+ readonly name: "RebalanceDirectionInvalid";
259
+ readonly type: "error";
260
+ readonly inputs: readonly [];
261
+ }, {
262
+ readonly name: "LimitDoesNotFitInInt120";
263
+ readonly type: "error";
264
+ readonly inputs: readonly [];
265
+ }, {
266
+ readonly name: "InvalidTokenDecimals";
267
+ readonly type: "error";
268
+ readonly inputs: readonly [];
161
269
  }];
162
270
  //# 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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAenB,CAAA"}
1
+ {"version":3,"file":"fpmm.d.ts","sourceRoot":"","sources":["../../../src/core/abis/fpmm.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CnB,CAAA"}
@@ -17,5 +17,33 @@ exports.FPMM_ABI = (0, viem_1.parseAbi)([
17
17
  'function rebalanceThresholdBelow() view returns (uint256)',
18
18
  'function liquidityStrategy(address) view returns (bool)',
19
19
  'function getRebalancingState() view returns (uint256, uint256, uint256, uint256, bool, uint16, uint256)',
20
+ // Custom errors
21
+ 'error ReferenceRateNotSet()',
22
+ 'error ReservesEmpty()',
23
+ 'error InvalidToken()',
24
+ 'error ZeroAddress()',
25
+ 'error ProtocolFeeRecipientRequired()',
26
+ 'error NotFeeSetter()',
27
+ 'error FeeTooHigh()',
28
+ 'error InsufficientLiquidityMinted()',
29
+ 'error InsufficientLiquidityBurned()',
30
+ 'error InsufficientOutputAmount()',
31
+ 'error InsufficientLiquidity()',
32
+ 'error InvalidToAddress()',
33
+ 'error InsufficientInputAmount()',
34
+ 'error NotLiquidityStrategy()',
35
+ 'error OneOutputAmountRequired()',
36
+ 'error PriceDifferenceTooSmall()',
37
+ 'error PriceDifferenceNotImproved()',
38
+ 'error PriceDifferenceMovedInWrongDirection()',
39
+ 'error PriceDifferenceMovedTooFarFromThresholds()',
40
+ 'error InsufficientAmount0In()',
41
+ 'error InsufficientAmount1In()',
42
+ 'error ReserveValueDecreased()',
43
+ 'error RebalanceIncentiveTooHigh()',
44
+ 'error RebalanceThresholdTooHigh()',
45
+ 'error RebalanceDirectionInvalid()',
46
+ 'error LimitDoesNotFitInInt120()',
47
+ 'error InvalidTokenDecimals()',
20
48
  ]);
21
49
  //# 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;IAC/C,uDAAuD;IACvD,iMAAiM;IACjM,iEAAiE;IACjE,6CAA6C;IAC7C,6CAA6C;IAC7C,sDAAsD;IACtD,2DAA2D;IAC3D,2DAA2D;IAC3D,yDAAyD;IACzD,yGAAyG;CAC1G,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;IACvD,iMAAiM;IACjM,iEAAiE;IACjE,6CAA6C;IAC7C,6CAA6C;IAC7C,sDAAsD;IACtD,2DAA2D;IAC3D,2DAA2D;IAC3D,yDAAyD;IACzD,yGAAyG;IAEzG,gBAAgB;IAChB,6BAA6B;IAC7B,uBAAuB;IACvB,sBAAsB;IACtB,qBAAqB;IACrB,sCAAsC;IACtC,sBAAsB;IACtB,oBAAoB;IACpB,qCAAqC;IACrC,qCAAqC;IACrC,kCAAkC;IAClC,+BAA+B;IAC/B,0BAA0B;IAC1B,iCAAiC;IACjC,8BAA8B;IAC9B,iCAAiC;IACjC,iCAAiC;IACjC,oCAAoC;IACpC,8CAA8C;IAC9C,kDAAkD;IAClD,+BAA+B;IAC/B,+BAA+B;IAC/B,+BAA+B;IAC/B,mCAAmC;IACnC,mCAAmC;IACnC,mCAAmC;IACnC,iCAAiC;IACjC,8BAA8B;CAC/B,CAAC,CAAA"}
@@ -17,5 +17,69 @@ export declare const FPMM_FACTORY_ABI: readonly [{
17
17
  readonly outputs: readonly [{
18
18
  readonly type: "bool";
19
19
  }];
20
+ }, {
21
+ readonly name: "CreateXBytecodeHashMismatch";
22
+ readonly type: "error";
23
+ readonly inputs: readonly [];
24
+ }, {
25
+ readonly name: "ZeroAddress";
26
+ readonly type: "error";
27
+ readonly inputs: readonly [];
28
+ }, {
29
+ readonly name: "IdenticalTokenAddresses";
30
+ readonly type: "error";
31
+ readonly inputs: readonly [];
32
+ }, {
33
+ readonly name: "SortTokensZeroAddress";
34
+ readonly type: "error";
35
+ readonly inputs: readonly [];
36
+ }, {
37
+ readonly name: "InvalidOracleAdapter";
38
+ readonly type: "error";
39
+ readonly inputs: readonly [];
40
+ }, {
41
+ readonly name: "InvalidProxyAdmin";
42
+ readonly type: "error";
43
+ readonly inputs: readonly [];
44
+ }, {
45
+ readonly name: "InvalidOwner";
46
+ readonly type: "error";
47
+ readonly inputs: readonly [];
48
+ }, {
49
+ readonly name: "InvalidReferenceRateFeedID";
50
+ readonly type: "error";
51
+ readonly inputs: readonly [];
52
+ }, {
53
+ readonly name: "PairAlreadyExists";
54
+ readonly type: "error";
55
+ readonly inputs: readonly [];
56
+ }, {
57
+ readonly name: "ImplementationNotRegistered";
58
+ readonly type: "error";
59
+ readonly inputs: readonly [];
60
+ }, {
61
+ readonly name: "ImplementationAlreadyRegistered";
62
+ readonly type: "error";
63
+ readonly inputs: readonly [];
64
+ }, {
65
+ readonly name: "IndexOutOfBounds";
66
+ readonly type: "error";
67
+ readonly inputs: readonly [];
68
+ }, {
69
+ readonly name: "ImplementationIndexMismatch";
70
+ readonly type: "error";
71
+ readonly inputs: readonly [];
72
+ }, {
73
+ readonly name: "FeeTooHigh";
74
+ readonly type: "error";
75
+ readonly inputs: readonly [];
76
+ }, {
77
+ readonly name: "RebalanceIncentiveTooHigh";
78
+ readonly type: "error";
79
+ readonly inputs: readonly [];
80
+ }, {
81
+ readonly name: "RebalanceThresholdTooHigh";
82
+ readonly type: "error";
83
+ readonly inputs: readonly [];
20
84
  }];
21
85
  //# sourceMappingURL=fpmmFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fpmmFactory.d.ts","sourceRoot":"","sources":["../../../src/core/abis/fpmmFactory.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;EAG3B,CAAA"}
1
+ {"version":3,"file":"fpmmFactory.d.ts","sourceRoot":"","sources":["../../../src/core/abis/fpmmFactory.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqB3B,CAAA"}
@@ -5,5 +5,22 @@ const viem_1 = require("viem");
5
5
  exports.FPMM_FACTORY_ABI = (0, viem_1.parseAbi)([
6
6
  'function deployedFPMMAddresses() view returns (address[])',
7
7
  'function isPool(address pool) view returns (bool)',
8
+ // Custom errors
9
+ 'error CreateXBytecodeHashMismatch()',
10
+ 'error ZeroAddress()',
11
+ 'error IdenticalTokenAddresses()',
12
+ 'error SortTokensZeroAddress()',
13
+ 'error InvalidOracleAdapter()',
14
+ 'error InvalidProxyAdmin()',
15
+ 'error InvalidOwner()',
16
+ 'error InvalidReferenceRateFeedID()',
17
+ 'error PairAlreadyExists()',
18
+ 'error ImplementationNotRegistered()',
19
+ 'error ImplementationAlreadyRegistered()',
20
+ 'error IndexOutOfBounds()',
21
+ 'error ImplementationIndexMismatch()',
22
+ 'error FeeTooHigh()',
23
+ 'error RebalanceIncentiveTooHigh()',
24
+ 'error RebalanceThresholdTooHigh()',
8
25
  ]);
9
26
  //# sourceMappingURL=fpmmFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fpmmFactory.js","sourceRoot":"","sources":["../../../src/core/abis/fpmmFactory.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,gBAAgB,GAAG,IAAA,eAAQ,EAAC;IACvC,2DAA2D;IAC3D,mDAAmD;CACpD,CAAC,CAAA"}
1
+ {"version":3,"file":"fpmmFactory.js","sourceRoot":"","sources":["../../../src/core/abis/fpmmFactory.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,gBAAgB,GAAG,IAAA,eAAQ,EAAC;IACvC,2DAA2D;IAC3D,mDAAmD;IAEnD,gBAAgB;IAChB,qCAAqC;IACrC,qBAAqB;IACrB,iCAAiC;IACjC,+BAA+B;IAC/B,8BAA8B;IAC9B,2BAA2B;IAC3B,sBAAsB;IACtB,oCAAoC;IACpC,2BAA2B;IAC3B,qCAAqC;IACrC,yCAAyC;IACzC,0BAA0B;IAC1B,qCAAqC;IACrC,oBAAoB;IACpB,mCAAmC;IACnC,mCAAmC;CACpC,CAAC,CAAA"}
@@ -433,5 +433,89 @@ export declare const ROUTER_ABI: readonly [{
433
433
  readonly type: "uint256";
434
434
  readonly name: "amountBMin";
435
435
  }];
436
+ }, {
437
+ readonly name: "ETHTransferFailed";
438
+ readonly type: "error";
439
+ readonly inputs: readonly [];
440
+ }, {
441
+ readonly name: "Expired";
442
+ readonly type: "error";
443
+ readonly inputs: readonly [];
444
+ }, {
445
+ readonly name: "InsufficientAmount";
446
+ readonly type: "error";
447
+ readonly inputs: readonly [];
448
+ }, {
449
+ readonly name: "InsufficientAmountA";
450
+ readonly type: "error";
451
+ readonly inputs: readonly [];
452
+ }, {
453
+ readonly name: "InsufficientAmountB";
454
+ readonly type: "error";
455
+ readonly inputs: readonly [];
456
+ }, {
457
+ readonly name: "InsufficientAmountADesired";
458
+ readonly type: "error";
459
+ readonly inputs: readonly [];
460
+ }, {
461
+ readonly name: "InsufficientAmountBDesired";
462
+ readonly type: "error";
463
+ readonly inputs: readonly [];
464
+ }, {
465
+ readonly name: "InsufficientAmountAOptimal";
466
+ readonly type: "error";
467
+ readonly inputs: readonly [];
468
+ }, {
469
+ readonly name: "InsufficientLiquidity";
470
+ readonly type: "error";
471
+ readonly inputs: readonly [];
472
+ }, {
473
+ readonly name: "InsufficientOutputAmount";
474
+ readonly type: "error";
475
+ readonly inputs: readonly [];
476
+ }, {
477
+ readonly name: "InvalidAmountInForETHDeposit";
478
+ readonly type: "error";
479
+ readonly inputs: readonly [];
480
+ }, {
481
+ readonly name: "InvalidTokenInForETHDeposit";
482
+ readonly type: "error";
483
+ readonly inputs: readonly [];
484
+ }, {
485
+ readonly name: "InvalidPath";
486
+ readonly type: "error";
487
+ readonly inputs: readonly [];
488
+ }, {
489
+ readonly name: "InvalidRouteA";
490
+ readonly type: "error";
491
+ readonly inputs: readonly [];
492
+ }, {
493
+ readonly name: "InvalidRouteB";
494
+ readonly type: "error";
495
+ readonly inputs: readonly [];
496
+ }, {
497
+ readonly name: "OnlyWETH";
498
+ readonly type: "error";
499
+ readonly inputs: readonly [];
500
+ }, {
501
+ readonly name: "PoolDoesNotExist";
502
+ readonly type: "error";
503
+ readonly inputs: readonly [];
504
+ }, {
505
+ readonly name: "PoolFactoryDoesNotExist";
506
+ readonly type: "error";
507
+ readonly inputs: readonly [];
508
+ }, {
509
+ readonly name: "SameAddresses";
510
+ readonly type: "error";
511
+ readonly inputs: readonly [];
512
+ }, {
513
+ readonly name: "ZeroAddress";
514
+ readonly type: "error";
515
+ readonly inputs: readonly [];
516
+ }, {
517
+ readonly name: "FXMarketClosed";
518
+ readonly type: "error";
519
+ readonly inputs: readonly [];
436
520
  }];
437
521
  //# sourceMappingURL=router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/abis/router.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBrB,CAAA"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/abis/router.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CrB,CAAA"}
@@ -19,5 +19,27 @@ exports.ROUTER_ABI = (0, viem_1.parseAbi)([
19
19
  // Structs
20
20
  'struct Route { address from; address to; address factory; }',
21
21
  'struct Zap { address tokenA; address tokenB; address factory; uint256 amountOutMinA; uint256 amountOutMinB; uint256 amountAMin; uint256 amountBMin; }',
22
+ // Custom errors (Router)
23
+ 'error ETHTransferFailed()',
24
+ 'error Expired()',
25
+ 'error InsufficientAmount()',
26
+ 'error InsufficientAmountA()',
27
+ 'error InsufficientAmountB()',
28
+ 'error InsufficientAmountADesired()',
29
+ 'error InsufficientAmountBDesired()',
30
+ 'error InsufficientAmountAOptimal()',
31
+ 'error InsufficientLiquidity()',
32
+ 'error InsufficientOutputAmount()',
33
+ 'error InvalidAmountInForETHDeposit()',
34
+ 'error InvalidTokenInForETHDeposit()',
35
+ 'error InvalidPath()',
36
+ 'error InvalidRouteA()',
37
+ 'error InvalidRouteB()',
38
+ 'error OnlyWETH()',
39
+ 'error PoolDoesNotExist()',
40
+ 'error PoolFactoryDoesNotExist()',
41
+ 'error SameAddresses()',
42
+ 'error ZeroAddress()',
43
+ 'error FXMarketClosed()',
22
44
  ]);
23
45
  //# sourceMappingURL=router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/abis/router.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,UAAU,GAAG,IAAA,eAAQ,EAAC;IACjC,kBAAkB;IAClB,yGAAyG;IACzG,qKAAqK;IAErK,6BAA6B;IAC7B,2OAA2O;IAC3O,8LAA8L;IAC9L,iMAAiM;IACjM,oJAAoJ;IAEpJ,iBAAiB;IACjB,mMAAmM;IACnM,mIAAmI;IACnI,8QAA8Q;IAC9Q,4PAA4P;IAE5P,UAAU;IACV,6DAA6D;IAC7D,uJAAuJ;CACxJ,CAAC,CAAA"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/abis/router.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,UAAU,GAAG,IAAA,eAAQ,EAAC;IACjC,kBAAkB;IAClB,yGAAyG;IACzG,qKAAqK;IAErK,6BAA6B;IAC7B,2OAA2O;IAC3O,8LAA8L;IAC9L,iMAAiM;IACjM,oJAAoJ;IAEpJ,iBAAiB;IACjB,mMAAmM;IACnM,mIAAmI;IACnI,8QAA8Q;IAC9Q,4PAA4P;IAE5P,UAAU;IACV,6DAA6D;IAC7D,uJAAuJ;IAEvJ,yBAAyB;IACzB,2BAA2B;IAC3B,iBAAiB;IACjB,4BAA4B;IAC5B,6BAA6B;IAC7B,6BAA6B;IAC7B,oCAAoC;IACpC,oCAAoC;IACpC,oCAAoC;IACpC,+BAA+B;IAC/B,kCAAkC;IAClC,sCAAsC;IACtC,qCAAqC;IACrC,qBAAqB;IACrB,uBAAuB;IACvB,uBAAuB;IACvB,kBAAkB;IAClB,0BAA0B;IAC1B,iCAAiC;IACjC,uBAAuB;IACvB,qBAAqB;IACrB,wBAAwB;CACzB,CAAC,CAAA"}
@@ -31,5 +31,29 @@ export declare const VIRTUAL_POOL_FACTORY_ABI: readonly [{
31
31
  readonly outputs: readonly [{
32
32
  readonly type: "address[]";
33
33
  }];
34
+ }, {
35
+ readonly name: "InvalidExchangeProvider";
36
+ readonly type: "error";
37
+ readonly inputs: readonly [];
38
+ }, {
39
+ readonly name: "InvalidExchangeId";
40
+ readonly type: "error";
41
+ readonly inputs: readonly [];
42
+ }, {
43
+ readonly name: "VirtualPoolAlreadyExistsForThisPair";
44
+ readonly type: "error";
45
+ readonly inputs: readonly [];
46
+ }, {
47
+ readonly name: "InvalidCreateXBytecode";
48
+ readonly type: "error";
49
+ readonly inputs: readonly [];
50
+ }, {
51
+ readonly name: "PoolNotFound";
52
+ readonly type: "error";
53
+ readonly inputs: readonly [];
54
+ }, {
55
+ readonly name: "PoolAlreadyDeprecated";
56
+ readonly type: "error";
57
+ readonly inputs: readonly [];
34
58
  }];
35
59
  //# sourceMappingURL=virtualPoolFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"virtualPoolFactory.d.ts","sourceRoot":"","sources":["../../../src/core/abis/virtualPoolFactory.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInC,CAAA"}
1
+ {"version":3,"file":"virtualPoolFactory.d.ts","sourceRoot":"","sources":["../../../src/core/abis/virtualPoolFactory.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYnC,CAAA"}
@@ -6,5 +6,12 @@ exports.VIRTUAL_POOL_FACTORY_ABI = (0, viem_1.parseAbi)([
6
6
  'function getOrPrecomputeProxyAddress(address token0, address token1) view returns (address)',
7
7
  'function isPool(address pool) view returns (bool)',
8
8
  'function getAllPools() view returns (address[])',
9
+ // Custom errors
10
+ 'error InvalidExchangeProvider()',
11
+ 'error InvalidExchangeId()',
12
+ 'error VirtualPoolAlreadyExistsForThisPair()',
13
+ 'error InvalidCreateXBytecode()',
14
+ 'error PoolNotFound()',
15
+ 'error PoolAlreadyDeprecated()',
9
16
  ]);
10
17
  //# sourceMappingURL=virtualPoolFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"virtualPoolFactory.js","sourceRoot":"","sources":["../../../src/core/abis/virtualPoolFactory.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,wBAAwB,GAAG,IAAA,eAAQ,EAAC;IAC/C,6FAA6F;IAC7F,mDAAmD;IACnD,iDAAiD;CAClD,CAAC,CAAA"}
1
+ {"version":3,"file":"virtualPoolFactory.js","sourceRoot":"","sources":["../../../src/core/abis/virtualPoolFactory.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAElB,QAAA,wBAAwB,GAAG,IAAA,eAAQ,EAAC;IAC/C,6FAA6F;IAC7F,mDAAmD;IACnD,iDAAiD;IAEjD,gBAAgB;IAChB,iCAAiC;IACjC,2BAA2B;IAC3B,6CAA6C;IAC7C,gCAAgC;IAChC,sBAAsB;IACtB,+BAA+B;CAChC,CAAC,CAAA"}
@@ -60,7 +60,7 @@ exports.addresses = {
60
60
  VirtualPoolFactory: '0x887955f28723B0e9Bddc358448CB5B1FDe692da4',
61
61
  Router: '0xcf6cD45210b3ffE3cA28379C4683F1e60D0C2CCd',
62
62
  ReserveLiquidityStrategy: '0x734bb3251Ec3f1A83f8f2A8609bcEF649D54EbF8',
63
- CDPLiquidityStrategy: '0x065AE7d4e207C8f4dca112D0B79E668cc7e93e03',
63
+ CDPLiquidityStrategy: '0x065AE7D4e207C8f4dca112D0B79E668cc7e93e03',
64
64
  },
65
65
  };
66
66
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"poolDetails.d.ts","sourceRoot":"","sources":["../../../src/services/pools/poolDetails.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,eAAe,EAAe,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAEzF,OAAO,EAAE,YAAY,EAAW,MAAM,MAAM,CAAA;AAE5C;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,eAAe,CAAC,CAmH1B;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA4BjH"}
1
+ {"version":3,"file":"poolDetails.d.ts","sourceRoot":"","sources":["../../../src/services/pools/poolDetails.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,eAAe,EAAe,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAEzF,OAAO,EAAE,YAAY,EAAuB,MAAM,MAAM,CAAA;AAExD;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,eAAe,CAAC,CAmH1B;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA4BjH"}
@@ -4,6 +4,7 @@ exports.fetchFPMMPoolDetails = fetchFPMMPoolDetails;
4
4
  exports.fetchVirtualPoolDetails = fetchVirtualPoolDetails;
5
5
  const constants_1 = require("../../core/constants");
6
6
  const abis_1 = require("../../core/abis");
7
+ const viem_1 = require("viem");
7
8
  /**
8
9
  * Fetches enriched details for an FPMM pool
9
10
  */
@@ -130,16 +131,21 @@ async function fetchVirtualPoolDetails(publicClient, pool) {
130
131
  * Returns the known liquidity strategy addresses for the given chain.
131
132
  */
132
133
  function getKnownLiquidityStrategies(chainId) {
133
- const strategies = [];
134
134
  const chainAddresses = constants_1.addresses[chainId];
135
135
  if (!chainAddresses)
136
- return strategies;
137
- if (chainAddresses.ReserveLiquidityStrategy) {
138
- strategies.push(chainAddresses.ReserveLiquidityStrategy);
139
- }
140
- if (chainAddresses.CDPLiquidityStrategy) {
141
- strategies.push(chainAddresses.CDPLiquidityStrategy);
142
- }
143
- return strategies;
136
+ return [];
137
+ const strategyCandidates = [
138
+ chainAddresses.ReserveLiquidityStrategy,
139
+ chainAddresses.CDPLiquidityStrategy,
140
+ ].filter((address) => Boolean(address));
141
+ // Normalize to checksummed addresses and ignore malformed config values.
142
+ return strategyCandidates.flatMap((address) => {
143
+ try {
144
+ return [(0, viem_1.getAddress)(address)];
145
+ }
146
+ catch {
147
+ return [];
148
+ }
149
+ });
144
150
  }
145
151
  //# sourceMappingURL=poolDetails.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"poolDetails.js","sourceRoot":"","sources":["../../../src/services/pools/poolDetails.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolDetails.js","sourceRoot":"","sources":["../../../src/services/pools/poolDetails.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"QuoteService.d.ts","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,MAAM,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AASxC;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;CA+BxG"}
1
+ {"version":3,"file":"QuoteService.d.ts","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAA4C,MAAM,MAAM,CAAA;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAOxC;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;CAoCxG"}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.QuoteService = void 0;
4
+ const viem_1 = require("viem");
4
5
  const abis_1 = require("../../core/abis");
5
6
  const constants_1 = require("../../core/constants");
6
7
  const errors_1 = require("../../core/errors");
7
8
  const pathEncoder_1 = require("../../utils/pathEncoder");
8
9
  const validation_1 = require("../../utils/validation");
9
- const FX_MARKET_CLOSED_SIG = '0xa407143a';
10
10
  /**
11
11
  * Service for getting swap quotes from the Mento protocol.
12
12
  * Calculates expected output amounts for trades without executing them.
@@ -73,9 +73,12 @@ class QuoteService {
73
73
  return amounts[amounts.length - 1];
74
74
  }
75
75
  catch (error) {
76
- const errorString = String(error);
77
- if (errorString.includes(FX_MARKET_CLOSED_SIG)) {
78
- throw new errors_1.FXMarketClosedError();
76
+ if (error instanceof viem_1.BaseError) {
77
+ const revertError = error.walk((e) => e instanceof viem_1.ContractFunctionRevertedError);
78
+ if (revertError instanceof viem_1.ContractFunctionRevertedError &&
79
+ revertError.data?.errorName === 'FXMarketClosed') {
80
+ throw new errors_1.FXMarketClosedError();
81
+ }
79
82
  }
80
83
  throw error;
81
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"QuoteService.js","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":";;;AAGA,0CAA4C;AAC5C,oDAAkE;AAClE,8CAAuD;AACvD,yDAA+E;AAC/E,uDAAwD;AAExD,MAAM,oBAAoB,GAAG,YAAY,CAAA;AAEzC;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,QAAgB,EAAE,QAAgB,EAAE,KAAa;QACnF,0BAA0B;QAC1B,IAAA,4BAAe,EAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACnC,IAAA,4BAAe,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAErC,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,OAAkB,EAAE,QAAmB,CAAC,CAAA;QACzF,MAAM,aAAa,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,QAAQ,CAAC,CAAA;QAE3E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACpD,OAAO,EAAE,aAA8B;gBACvC,GAAG,EAAE,iBAAU;gBACf,YAAY,EAAE,eAAe;gBAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAoC,CAAC;aACvD,CAAC,CAAa,CAAA;YAEf,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACpC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YACjC,IAAI,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAC/C,MAAM,IAAI,4BAAmB,EAAE,CAAA;YACjC,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;CACF;AAzED,oCAyEC"}
1
+ {"version":3,"file":"QuoteService.js","sourceRoot":"","sources":["../../../src/services/quotes/QuoteService.ts"],"names":[],"mappings":";;;AAAA,+BAAsF;AAGtF,0CAA4C;AAC5C,oDAAkE;AAClE,8CAAuD;AACvD,yDAA+E;AAC/E,uDAAwD;AAExD;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,KAAK,CAAC,YAAY,CAAC,OAAe,EAAE,QAAgB,EAAE,QAAgB,EAAE,KAAa;QACnF,0BAA0B;QAC1B,IAAA,4BAAe,EAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACnC,IAAA,4BAAe,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAErC,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,OAAkB,EAAE,QAAmB,CAAC,CAAA;QACzF,MAAM,aAAa,GAAG,IAAA,8BAAkB,EAAC,IAAI,CAAC,OAAkB,EAAE,QAAQ,CAAC,CAAA;QAE3E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACpD,OAAO,EAAE,aAA8B;gBACvC,GAAG,EAAE,iBAAU;gBACf,YAAY,EAAE,eAAe;gBAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAoC,CAAC;aACvD,CAAC,CAAa,CAAA;YAEf,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACpC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,KAAK,YAAY,gBAAS,EAAE,CAAC;gBAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,oCAA6B,CAAC,CAAA;gBACjF,IACE,WAAW,YAAY,oCAA6B;oBACpD,WAAW,CAAC,IAAI,EAAE,SAAS,KAAK,gBAAgB,EAChD,CAAC;oBACD,MAAM,IAAI,4BAAmB,EAAE,CAAA;gBACjC,CAAC;YACH,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;CACF;AA9ED,oCA8EC"}
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.22",
4
+ "version": "3.0.0-beta.24",
5
5
  "license": "MIT",
6
6
  "author": "Mento Labs",
7
7
  "keywords": [