@mento-protocol/mento-sdk 3.0.0-beta.19 → 3.0.0-beta.20

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.
@@ -5,4 +5,10 @@ import { MentoError } from './base';
5
5
  export declare class RouteNotFoundError extends MentoError {
6
6
  constructor(tokenIn: string, tokenOut: string);
7
7
  }
8
+ /**
9
+ * Error thrown when no executable zap-out route exists for the requested amount.
10
+ */
11
+ export declare class ZapOutRouteNotViableError extends MentoError {
12
+ constructor(poolAddress: string, tokenOut: string);
13
+ }
8
14
  //# sourceMappingURL=router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/errors/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAEnC;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBACpC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAK9C"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/errors/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAEnC;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBACpC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAK9C;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,UAAU;gBAC3C,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CAMlD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RouteNotFoundError = void 0;
3
+ exports.ZapOutRouteNotViableError = exports.RouteNotFoundError = void 0;
4
4
  const base_1 = require("./base");
5
5
  /**
6
6
  * Error thrown when no tradable route exists between two tokens.
@@ -11,4 +11,14 @@ class RouteNotFoundError extends base_1.MentoError {
11
11
  }
12
12
  }
13
13
  exports.RouteNotFoundError = RouteNotFoundError;
14
+ /**
15
+ * Error thrown when no executable zap-out route exists for the requested amount.
16
+ */
17
+ class ZapOutRouteNotViableError extends base_1.MentoError {
18
+ constructor(poolAddress, tokenOut) {
19
+ super(`No viable zap-out route for pool ${poolAddress} to ${tokenOut}. ` +
20
+ 'Try reducing the amount or removing liquidity in balanced mode.');
21
+ }
22
+ }
23
+ exports.ZapOutRouteNotViableError = ZapOutRouteNotViableError;
14
24
  //# sourceMappingURL=router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/errors/router.ts"],"names":[],"mappings":";;;AAAA,iCAAmC;AAEnC;;GAEG;AACH,MAAa,kBAAmB,SAAQ,iBAAU;IAChD,YAAY,OAAe,EAAE,QAAgB;QAC3C,KAAK,CACH,6BAA6B,OAAO,QAAQ,QAAQ,sCAAsC,CAC3F,CAAA;IACH,CAAC;CACF;AAND,gDAMC"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/errors/router.ts"],"names":[],"mappings":";;;AAAA,iCAAmC;AAEnC;;GAEG;AACH,MAAa,kBAAmB,SAAQ,iBAAU;IAChD,YAAY,OAAe,EAAE,QAAgB;QAC3C,KAAK,CACH,6BAA6B,OAAO,QAAQ,QAAQ,sCAAsC,CAC3F,CAAA;IACH,CAAC;CACF;AAND,gDAMC;AAED;;GAEG;AACH,MAAa,yBAA0B,SAAQ,iBAAU;IACvD,YAAY,WAAmB,EAAE,QAAgB;QAC/C,KAAK,CACH,oCAAoC,WAAW,OAAO,QAAQ,IAAI;YAChE,iEAAiE,CACpE,CAAA;IACH,CAAC;CACF;AAPD,8DAOC"}
@@ -1 +1 @@
1
- {"version":3,"file":"zapHelpers.d.ts","sourceRoot":"","sources":["../../../src/services/liquidity/zapHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,MAAM,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,OAAO,EAAmB,WAAW,EAAwB,MAAM,yBAAyB,CAAA;AAI5F;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,WAAW,EAAE,EACtB,OAAO,EAAE,WAAW,EAAE,EACtB,SAAS,EAAE,OAAO,GACjB,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,EACjB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,WAAW,EAAE,EACtB,OAAO,EAAE,WAAW,EAAE,GACrB,MAAM,CAMR;AAID;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC,CAiB7D;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC,CAiB7D;AAID;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAStG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,MAAM,CAYR"}
1
+ {"version":3,"file":"zapHelpers.d.ts","sourceRoot":"","sources":["../../../src/services/liquidity/zapHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,MAAM,MAAM,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE5C,OAAO,EAAmB,WAAW,EAAwB,MAAM,yBAAyB,CAAA;AAI5F;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,WAAW,EAAE,EACtB,OAAO,EAAE,WAAW,EAAE,EACtB,SAAS,EAAE,OAAO,GACjB,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,EACjB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,WAAW,EAAE,EACtB,OAAO,EAAE,WAAW,EAAE,GACrB,MAAM,CAMR;AAID;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC,CAiB7D;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC,CAiB7D;AAID;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAStG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,MAAM,CAiBR"}
@@ -112,9 +112,18 @@ function splitAmount(amountIn, splitRatio) {
112
112
  */
113
113
  function estimateLiquidityFromZapIn(amountOutA, amountOutB, reserve0, reserve1, totalSupply) {
114
114
  if (totalSupply === 0n) {
115
- // First liquidity provision - use geometric mean
116
- const product = Number(amountOutA) * Number(amountOutB);
117
- return BigInt(Math.floor(Math.sqrt(product)));
115
+ // First liquidity provision - use geometric mean with BigInt sqrt
116
+ // to avoid precision loss from Number() conversion on 18-decimal values
117
+ const product = amountOutA * amountOutB;
118
+ if (product === 0n)
119
+ return 0n;
120
+ let x = product;
121
+ let y = (x + 1n) / 2n;
122
+ while (y < x) {
123
+ x = y;
124
+ y = (x + product / x) / 2n;
125
+ }
126
+ return x;
118
127
  }
119
128
  // Existing pool - calculate based on smaller ratio
120
129
  const liquidityA = (amountOutA * totalSupply) / reserve0;
@@ -1 +1 @@
1
- {"version":3,"file":"zapHelpers.js","sourceRoot":"","sources":["../../../src/services/liquidity/zapHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zapHelpers.js","sourceRoot":"","sources":["../../../src/services/liquidity/zapHelpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zapOut.d.ts","sourceRoot":"","sources":["../../../src/services/liquidity/zapOut.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,MAAM,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,iBAAiB,EAElB,MAAM,kBAAkB,CAAA;AAUzB;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,iBAAiB,CAAC,CA2B5B;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,aAAa,CAAC,CAoDxB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,WAAW,CAAC,CA2BtB"}
1
+ {"version":3,"file":"zapOut.d.ts","sourceRoot":"","sources":["../../../src/services/liquidity/zapOut.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,YAAY,EAAE,MAAM,MAAM,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EACL,gBAAgB,EAGhB,WAAW,EACX,aAAa,EACb,iBAAiB,EAElB,MAAM,kBAAkB,CAAA;AAezB;;GAEG;AACH,wBAAsB,8BAA8B,CAClD,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,iBAAiB,CAAC,CAqD5B;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,aAAa,CAAC,CAwBxB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,WAAW,CAAC,CA2BtB"}
@@ -5,17 +5,22 @@ exports.buildZapOutParamsInternal = buildZapOutParamsInternal;
5
5
  exports.quoteZapOutInternal = quoteZapOutInternal;
6
6
  const abis_1 = require("../../core/abis");
7
7
  const constants_1 = require("../../core/constants");
8
+ const errors_1 = require("../../core/errors");
8
9
  const validation_1 = require("../../utils/validation");
10
+ const pathEncoder_1 = require("../../utils/pathEncoder");
9
11
  const liquidityHelpers_1 = require("./liquidityHelpers");
10
12
  const zapHelpers_1 = require("./zapHelpers");
11
13
  // ========== ZAP OUT OPERATIONS ==========
14
+ const INSUFFICIENT_LIQUIDITY_SELECTOR = '0xbb55fd27';
15
+ const MAX_ROUTE_CANDIDATES_PER_LEG = 8;
16
+ const MAX_ROUTE_COMBINATIONS = 48;
12
17
  /**
13
18
  * Builds a complete zap out transaction including approval if needed
14
19
  */
15
20
  async function buildZapOutTransactionInternal(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, recipient, owner, options) {
16
21
  (0, validation_1.validateAddress)(owner, 'owner');
17
22
  // Build zap out params
18
- const zapOut = await buildZapOutParamsInternal(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, recipient, options);
23
+ let zapOut = await buildZapOutParamsInternal(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, recipient, options);
19
24
  // Check LP token allowance
20
25
  const poolAddr = poolAddress;
21
26
  const ownerAddr = owner;
@@ -24,6 +29,21 @@ async function buildZapOutTransactionInternal(publicClient, chainId, poolService
24
29
  const approval = currentAllowance < liquidity
25
30
  ? { token: poolAddress, amount: liquidity, params: (0, liquidityHelpers_1.buildApprovalParams)(chainId, poolAddr, liquidity) }
26
31
  : null;
32
+ // We can only preflight/simulate a real zap call when approval is already sufficient.
33
+ // Before approval, transferFrom in zapOut() would fail and make simulation meaningless.
34
+ if (currentAllowance >= liquidity) {
35
+ const routerAddress = (0, constants_1.getContractAddress)(chainId, 'Router');
36
+ try {
37
+ await simulateZapOut(publicClient, ownerAddr, routerAddress, zapOut.params.data);
38
+ }
39
+ catch (error) {
40
+ // Only attempt route fallback for the known liquidity failure.
41
+ if (!isInsufficientLiquidityError(error)) {
42
+ throw error;
43
+ }
44
+ zapOut = await findViableZapOutDetails(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, ownerAddr, options);
45
+ }
46
+ }
27
47
  return { approval, zapOut };
28
48
  }
29
49
  /**
@@ -37,7 +57,35 @@ async function buildZapOutParamsInternal(publicClient, chainId, poolService, rou
37
57
  const { token0, token1, factoryAddr } = await (0, liquidityHelpers_1.getPoolInfo)(poolService, poolAddress);
38
58
  // Find routes for swapping (from pool tokens to tokenOut)
39
59
  const { routesA, routesB } = await (0, zapHelpers_1.findZapOutRoutes)(routeService, token0, token1, tokenOut);
40
- // Generate zap parameters using Router helper
60
+ return buildZapOutDetailsForRoutes(publicClient, chainId, poolAddress, tokenOut, liquidity, token0, token1, factoryAddr, routesA, routesB, options);
61
+ }
62
+ /**
63
+ * Quotes a zap out operation (read-only)
64
+ */
65
+ async function quoteZapOutInternal(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, options) {
66
+ (0, validation_1.validateAddress)(poolAddress, 'poolAddress');
67
+ (0, validation_1.validateAddress)(tokenOut, 'tokenOut');
68
+ const { token0, token1, factoryAddr } = await (0, liquidityHelpers_1.getPoolInfo)(poolService, poolAddress);
69
+ // Find routes for swapping (from pool tokens to tokenOut)
70
+ const { routesA, routesB } = await (0, zapHelpers_1.findZapOutRoutes)(routeService, token0, token1, tokenOut);
71
+ const routerAddress = (0, constants_1.getContractAddress)(chainId, 'Router');
72
+ const [amountOutMinA, amountOutMinB, amountAMin, amountBMin] = (await publicClient.readContract({
73
+ address: routerAddress,
74
+ abi: abis_1.ROUTER_ABI,
75
+ functionName: 'generateZapOutParams',
76
+ args: [token0, token1, factoryAddr, liquidity, routesA, routesB],
77
+ }));
78
+ const finalAmountOutFromA = (0, liquidityHelpers_1.calculateMinAmount)(amountOutMinA, options.slippageTolerance);
79
+ const finalAmountOutFromB = (0, liquidityHelpers_1.calculateMinAmount)(amountOutMinB, options.slippageTolerance);
80
+ return {
81
+ amountOutFromA: finalAmountOutFromA,
82
+ amountOutFromB: finalAmountOutFromB,
83
+ amountAMin: (0, liquidityHelpers_1.calculateMinAmount)(amountAMin, options.slippageTolerance),
84
+ amountBMin: (0, liquidityHelpers_1.calculateMinAmount)(amountBMin, options.slippageTolerance),
85
+ estimatedMinTokenOut: finalAmountOutFromA + finalAmountOutFromB,
86
+ };
87
+ }
88
+ async function buildZapOutDetailsForRoutes(publicClient, chainId, poolAddress, tokenOut, liquidity, token0, token1, factoryAddr, routesA, routesB, options) {
41
89
  const routerAddress = (0, constants_1.getContractAddress)(chainId, 'Router');
42
90
  const [amountOutMinA, amountOutMinB, amountAMin, amountBMin] = (await publicClient.readContract({
43
91
  address: routerAddress,
@@ -45,7 +93,6 @@ async function buildZapOutParamsInternal(publicClient, chainId, poolService, rou
45
93
  functionName: 'generateZapOutParams',
46
94
  args: [token0, token1, factoryAddr, liquidity, routesA, routesB],
47
95
  }));
48
- // Apply slippage to all minimum amounts
49
96
  const finalAmountAMin = (0, liquidityHelpers_1.calculateMinAmount)(amountAMin, options.slippageTolerance);
50
97
  const finalAmountBMin = (0, liquidityHelpers_1.calculateMinAmount)(amountBMin, options.slippageTolerance);
51
98
  const finalAmountOutMinA = (0, liquidityHelpers_1.calculateMinAmount)(amountOutMinA, options.slippageTolerance);
@@ -75,30 +122,121 @@ async function buildZapOutParamsInternal(publicClient, chainId, poolService, rou
75
122
  estimatedMinTokenOut: finalAmountOutMinA + finalAmountOutMinB,
76
123
  };
77
124
  }
78
- /**
79
- * Quotes a zap out operation (read-only)
80
- */
81
- async function quoteZapOutInternal(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, options) {
82
- (0, validation_1.validateAddress)(poolAddress, 'poolAddress');
83
- (0, validation_1.validateAddress)(tokenOut, 'tokenOut');
125
+ async function findViableZapOutDetails(publicClient, chainId, poolService, routeService, poolAddress, tokenOut, liquidity, owner, options) {
84
126
  const { token0, token1, factoryAddr } = await (0, liquidityHelpers_1.getPoolInfo)(poolService, poolAddress);
85
- // Find routes for swapping (from pool tokens to tokenOut)
86
- const { routesA, routesB } = await (0, zapHelpers_1.findZapOutRoutes)(routeService, token0, token1, tokenOut);
87
127
  const routerAddress = (0, constants_1.getContractAddress)(chainId, 'Router');
88
- const [amountOutMinA, amountOutMinB, amountAMin, amountBMin] = (await publicClient.readContract({
89
- address: routerAddress,
90
- abi: abis_1.ROUTER_ABI,
91
- functionName: 'generateZapOutParams',
92
- args: [token0, token1, factoryAddr, liquidity, routesA, routesB],
93
- }));
94
- const finalAmountOutFromA = (0, liquidityHelpers_1.calculateMinAmount)(amountOutMinA, options.slippageTolerance);
95
- const finalAmountOutFromB = (0, liquidityHelpers_1.calculateMinAmount)(amountOutMinB, options.slippageTolerance);
96
- return {
97
- amountOutFromA: finalAmountOutFromA,
98
- amountOutFromB: finalAmountOutFromB,
99
- amountAMin: (0, liquidityHelpers_1.calculateMinAmount)(amountAMin, options.slippageTolerance),
100
- amountBMin: (0, liquidityHelpers_1.calculateMinAmount)(amountBMin, options.slippageTolerance),
101
- estimatedMinTokenOut: finalAmountOutFromA + finalAmountOutFromB,
102
- };
128
+ const routesAOptions = await getEncodedRouteCandidates(routeService, token0, tokenOut, poolAddress);
129
+ const routesBOptions = await getEncodedRouteCandidates(routeService, token1, tokenOut, poolAddress);
130
+ let best = null;
131
+ let combinationsTried = 0;
132
+ outer: for (const routesA of routesAOptions) {
133
+ for (const routesB of routesBOptions) {
134
+ if (combinationsTried >= MAX_ROUTE_COMBINATIONS) {
135
+ break outer;
136
+ }
137
+ combinationsTried += 1;
138
+ try {
139
+ const candidate = await buildZapOutDetailsForRoutes(publicClient, chainId, poolAddress, tokenOut, liquidity, token0, token1, factoryAddr, routesA, routesB, options);
140
+ await simulateZapOut(publicClient, owner, routerAddress, candidate.params.data);
141
+ if (!best || candidate.estimatedMinTokenOut > best.estimatedMinTokenOut) {
142
+ best = candidate;
143
+ }
144
+ }
145
+ catch {
146
+ // Ignore non-viable route combination and continue searching.
147
+ }
148
+ }
149
+ }
150
+ if (!best) {
151
+ throw new errors_1.ZapOutRouteNotViableError(poolAddress, tokenOut);
152
+ }
153
+ return best;
154
+ }
155
+ async function getEncodedRouteCandidates(routeService, tokenIn, tokenOut, sourcePoolAddress) {
156
+ if (tokenIn.toLowerCase() === tokenOut.toLowerCase()) {
157
+ return [[]];
158
+ }
159
+ const rawCandidates = [];
160
+ // Include the SDK default first for consistency.
161
+ try {
162
+ rawCandidates.push(await routeService.findRoute(tokenIn, tokenOut));
163
+ }
164
+ catch {
165
+ // Continue; we'll try full route enumeration next.
166
+ }
167
+ // Build a broader candidate set for fallback route selection.
168
+ const allRoutes = await routeService.getRoutes({ cached: false, returnAllRoutes: true });
169
+ const pairCandidates = allRoutes.filter((route) => {
170
+ const a0 = route.tokens[0].address.toLowerCase();
171
+ const a1 = route.tokens[1].address.toLowerCase();
172
+ const t0 = tokenIn.toLowerCase();
173
+ const t1 = tokenOut.toLowerCase();
174
+ return (a0 === t0 && a1 === t1) || (a0 === t1 && a1 === t0);
175
+ });
176
+ rawCandidates.push(...pairCandidates);
177
+ if (rawCandidates.length === 0) {
178
+ throw new errors_1.RouteNotFoundError(tokenIn, tokenOut);
179
+ }
180
+ // Prioritize routes that avoid swapping through the same pool being zapped out.
181
+ rawCandidates.sort((a, b) => {
182
+ const aUsesSourcePool = routeUsesPool(a, sourcePoolAddress) ? 1 : 0;
183
+ const bUsesSourcePool = routeUsesPool(b, sourcePoolAddress) ? 1 : 0;
184
+ if (aUsesSourcePool !== bUsesSourcePool)
185
+ return aUsesSourcePool - bUsesSourcePool;
186
+ if (a.path.length !== b.path.length)
187
+ return a.path.length - b.path.length;
188
+ return 0;
189
+ });
190
+ const encodedRoutes = [];
191
+ const seen = new Set();
192
+ for (const route of rawCandidates) {
193
+ try {
194
+ const encoded = (0, pathEncoder_1.encodeRoutePath)(route.path, tokenIn, tokenOut);
195
+ const key = JSON.stringify(encoded);
196
+ if (seen.has(key))
197
+ continue;
198
+ seen.add(key);
199
+ encodedRoutes.push(encoded);
200
+ if (encodedRoutes.length >= MAX_ROUTE_CANDIDATES_PER_LEG) {
201
+ break;
202
+ }
203
+ }
204
+ catch {
205
+ // Invalid path encoding for this direction; skip.
206
+ }
207
+ }
208
+ if (encodedRoutes.length === 0) {
209
+ throw new errors_1.RouteNotFoundError(tokenIn, tokenOut);
210
+ }
211
+ return encodedRoutes;
212
+ }
213
+ function routeUsesPool(route, poolAddress) {
214
+ const normalizedPool = poolAddress.toLowerCase();
215
+ return route.path.some((hop) => hop.poolAddr.toLowerCase() === normalizedPool);
216
+ }
217
+ async function simulateZapOut(publicClient, owner, routerAddress, data) {
218
+ await publicClient.call({
219
+ account: owner,
220
+ to: routerAddress,
221
+ data,
222
+ });
223
+ }
224
+ function isInsufficientLiquidityError(error) {
225
+ const message = extractErrorMessage(error).toLowerCase();
226
+ return (message.includes(INSUFFICIENT_LIQUIDITY_SELECTOR) ||
227
+ message.includes('insufficientliquidity'));
228
+ }
229
+ function extractErrorMessage(error) {
230
+ if (!(error instanceof Error)) {
231
+ return String(error);
232
+ }
233
+ const typed = error;
234
+ const parts = [
235
+ typed.message,
236
+ typed.shortMessage,
237
+ typed.details,
238
+ typed.cause instanceof Error ? typed.cause.message : undefined,
239
+ ].filter((part) => Boolean(part));
240
+ return parts.join(' | ');
103
241
  }
104
242
  //# sourceMappingURL=zapOut.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zapOut.js","sourceRoot":"","sources":["../../../src/services/liquidity/zapOut.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zapOut.js","sourceRoot":"","sources":["../../../src/services/liquidity/zapOut.ts"],"names":[],"mappings":"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"}
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.19",
4
+ "version": "3.0.0-beta.20",
5
5
  "license": "MIT",
6
6
  "author": "Mento Labs",
7
7
  "keywords": [