@uniswap/universal-router-sdk 5.2.0 → 5.4.0

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 (62) hide show
  1. package/README.md +81 -0
  2. package/dist/cjs/src/index.d.ts +3 -0
  3. package/dist/cjs/src/index.js +6 -1
  4. package/dist/cjs/src/index.js.map +1 -1
  5. package/dist/cjs/src/swapRouter.d.ts +17 -1
  6. package/dist/cjs/src/swapRouter.js +83 -8
  7. package/dist/cjs/src/swapRouter.js.map +1 -1
  8. package/dist/cjs/src/types/encodeSwaps.d.ts +149 -0
  9. package/dist/cjs/src/types/encodeSwaps.js +3 -0
  10. package/dist/cjs/src/types/encodeSwaps.js.map +1 -0
  11. package/dist/cjs/src/utils/computeEncodeSwapsAmounts.d.ts +8 -0
  12. package/dist/cjs/src/utils/computeEncodeSwapsAmounts.js +47 -0
  13. package/dist/cjs/src/utils/computeEncodeSwapsAmounts.js.map +1 -0
  14. package/dist/cjs/src/utils/constants.js +15 -0
  15. package/dist/cjs/src/utils/constants.js.map +1 -1
  16. package/dist/cjs/src/utils/encodeSwapStep.d.ts +4 -0
  17. package/dist/cjs/src/utils/encodeSwapStep.js +61 -0
  18. package/dist/cjs/src/utils/encodeSwapStep.js.map +1 -0
  19. package/dist/cjs/src/utils/encodeV4Action.d.ts +8 -0
  20. package/dist/cjs/src/utils/encodeV4Action.js +97 -0
  21. package/dist/cjs/src/utils/encodeV4Action.js.map +1 -0
  22. package/dist/cjs/src/utils/normalizeEncodeSwapsSpec.d.ts +2 -0
  23. package/dist/cjs/src/utils/normalizeEncodeSwapsSpec.js +18 -0
  24. package/dist/cjs/src/utils/normalizeEncodeSwapsSpec.js.map +1 -0
  25. package/dist/cjs/src/utils/validateEncodeSwaps.d.ts +2 -0
  26. package/dist/cjs/src/utils/validateEncodeSwaps.js +135 -0
  27. package/dist/cjs/src/utils/validateEncodeSwaps.js.map +1 -0
  28. package/dist/esm/src/index.d.ts +3 -0
  29. package/dist/esm/src/index.js +3 -0
  30. package/dist/esm/src/index.js.map +1 -1
  31. package/dist/esm/src/swapRouter.d.ts +17 -1
  32. package/dist/esm/src/swapRouter.js +85 -10
  33. package/dist/esm/src/swapRouter.js.map +1 -1
  34. package/dist/esm/src/types/encodeSwaps.d.ts +149 -0
  35. package/dist/esm/src/types/encodeSwaps.js +2 -0
  36. package/dist/esm/src/types/encodeSwaps.js.map +1 -0
  37. package/dist/esm/src/utils/computeEncodeSwapsAmounts.d.ts +8 -0
  38. package/dist/esm/src/utils/computeEncodeSwapsAmounts.js +43 -0
  39. package/dist/esm/src/utils/computeEncodeSwapsAmounts.js.map +1 -0
  40. package/dist/esm/src/utils/constants.js +15 -0
  41. package/dist/esm/src/utils/constants.js.map +1 -1
  42. package/dist/esm/src/utils/encodeSwapStep.d.ts +4 -0
  43. package/dist/esm/src/utils/encodeSwapStep.js +57 -0
  44. package/dist/esm/src/utils/encodeSwapStep.js.map +1 -0
  45. package/dist/esm/src/utils/encodeV4Action.d.ts +8 -0
  46. package/dist/esm/src/utils/encodeV4Action.js +92 -0
  47. package/dist/esm/src/utils/encodeV4Action.js.map +1 -0
  48. package/dist/esm/src/utils/normalizeEncodeSwapsSpec.d.ts +2 -0
  49. package/dist/esm/src/utils/normalizeEncodeSwapsSpec.js +14 -0
  50. package/dist/esm/src/utils/normalizeEncodeSwapsSpec.js.map +1 -0
  51. package/dist/esm/src/utils/validateEncodeSwaps.d.ts +2 -0
  52. package/dist/esm/src/utils/validateEncodeSwaps.js +130 -0
  53. package/dist/esm/src/utils/validateEncodeSwaps.js.map +1 -0
  54. package/dist/types/src/index.d.ts +3 -0
  55. package/dist/types/src/swapRouter.d.ts +17 -1
  56. package/dist/types/src/types/encodeSwaps.d.ts +149 -0
  57. package/dist/types/src/utils/computeEncodeSwapsAmounts.d.ts +8 -0
  58. package/dist/types/src/utils/encodeSwapStep.d.ts +4 -0
  59. package/dist/types/src/utils/encodeV4Action.d.ts +8 -0
  60. package/dist/types/src/utils/normalizeEncodeSwapsSpec.d.ts +2 -0
  61. package/dist/types/src/utils/validateEncodeSwaps.d.ts +2 -0
  62. package/package.json +6 -6
@@ -4,12 +4,19 @@ import { Interface } from '@ethersproject/abi';
4
4
  import { BigNumber } from 'ethers';
5
5
  import { Multicall, NonfungiblePositionManager as V3PositionManager, } from '@uniswap/v3-sdk';
6
6
  import { V4PositionManager, Pool as V4Pool, } from '@uniswap/v4-sdk';
7
- import { Percent, CHAIN_TO_ADDRESSES_MAP } from '@uniswap/sdk-core';
7
+ import { TradeType, Percent, CHAIN_TO_ADDRESSES_MAP } from '@uniswap/sdk-core';
8
8
  import { UniswapTrade, TokenTransferMode } from './entities/actions/uniswap';
9
9
  import { RoutePlanner, CommandType } from './utils/routerCommands';
10
10
  import { encodePermit, encodeV3PositionPermit } from './utils/inputTokens';
11
- import { UNIVERSAL_ROUTER_ADDRESS, UniversalRouterVersion } from './utils/constants';
11
+ import { ETH_ADDRESS, ROUTER_AS_RECIPIENT, UNIVERSAL_ROUTER_ADDRESS, UniversalRouterVersion, isAtLeastV2_1_1, } from './utils/constants';
12
+ import { getCurrencyAddress } from './utils/getCurrencyAddress';
13
+ import { encodeFee1e18, encodeFeeBips } from './utils/numbers';
14
+ import { encodeSwapStep } from './utils/encodeSwapStep';
15
+ import { computeEncodeSwapsAmounts } from './utils/computeEncodeSwapsAmounts';
16
+ import { normalizeEncodeSwapsSpec } from './utils/normalizeEncodeSwapsSpec';
17
+ import { validateEncodeSwaps } from './utils/validateEncodeSwaps';
12
18
  import { getUniversalRouterDomain, EXECUTE_SIGNED_TYPES, generateNonce } from './utils/eip712';
19
+ const DEFAULT_PROXY_DEADLINE_BUFFER_SECONDS = 30 * 60;
13
20
  function isMint(options) {
14
21
  return Object.keys(options).some((k) => k === 'recipient');
15
22
  }
@@ -48,6 +55,73 @@ export class SwapRouter {
48
55
  deadline: options.deadlineOrPreviousBlockhash ? BigNumber.from(options.deadlineOrPreviousBlockhash) : undefined,
49
56
  });
50
57
  }
58
+ /**
59
+ * Encodes router-provided swap steps inside the SDK safety envelope.
60
+ *
61
+ * Routers own `swapSteps` (V2/V3/V4 swaps, plus any `WRAP_ETH` / `UNWRAP_WETH` required by the route).
62
+ * The SDK owns ingress, fees, final settlement, exact-output refund, and optional `safeMode`.
63
+ *
64
+ * Router contract: end with final output in `spec.routing.outputToken`; for `EXACT_OUTPUT`, unused input
65
+ * must end in `spec.routing.inputToken`. Don't include a top-level `SWEEP` — the SDK appends settlement,
66
+ * refund, and safeMode sweeps itself.
67
+ *
68
+ * Router custody with `payerIsUser = false` is deliberate for safety, even if it costs an extra command
69
+ * or transfer; the SDK does not infer route topology on behalf of routers.
70
+ */
71
+ static encodeSwaps(spec, swapSteps) {
72
+ var _a, _b;
73
+ const normalizedSpec = normalizeEncodeSwapsSpec(spec);
74
+ const planner = new RoutePlanner();
75
+ validateEncodeSwaps(normalizedSpec, swapSteps);
76
+ const { exactOrMaxAmountIn, netMinOrExactAmountOut } = computeEncodeSwapsAmounts(normalizedSpec);
77
+ const { routing: { inputToken, outputToken }, } = normalizedSpec;
78
+ // Ingress: pull funds into the router. Native input is paid as msg.value at the bottom
79
+ // instead of via Permit2; ApproveProxy ingress is handled by the outer wrapper at the end.
80
+ if (normalizedSpec.tokenTransferMode === TokenTransferMode.Permit2) {
81
+ if (normalizedSpec.permit) {
82
+ encodePermit(planner, normalizedSpec.permit);
83
+ }
84
+ if (!inputToken.isNative) {
85
+ planner.addCommand(CommandType.PERMIT2_TRANSFER_FROM, [getCurrencyAddress(inputToken), ROUTER_AS_RECIPIENT, exactOrMaxAmountIn], false, normalizedSpec.urVersion);
86
+ }
87
+ }
88
+ for (const step of swapSteps) {
89
+ encodeSwapStep(planner, step, normalizedSpec.urVersion);
90
+ }
91
+ // Fee deducted from gross output before final settlement.
92
+ // Portion uses 1e18 precision on >=v2.1.1 and bps on v2.0; flat is a plain TRANSFER.
93
+ if (((_a = normalizedSpec.fee) === null || _a === void 0 ? void 0 : _a.kind) === 'portion') {
94
+ const feeCommandType = isAtLeastV2_1_1(normalizedSpec.urVersion)
95
+ ? CommandType.PAY_PORTION_FULL_PRECISION
96
+ : CommandType.PAY_PORTION;
97
+ const encodedFee = isAtLeastV2_1_1(normalizedSpec.urVersion)
98
+ ? encodeFee1e18(normalizedSpec.fee.fee)
99
+ : encodeFeeBips(normalizedSpec.fee.fee);
100
+ planner.addCommand(feeCommandType, [getCurrencyAddress(outputToken), normalizedSpec.fee.recipient, encodedFee], false, normalizedSpec.urVersion);
101
+ }
102
+ else if (((_b = normalizedSpec.fee) === null || _b === void 0 ? void 0 : _b.kind) === 'flat') {
103
+ planner.addCommand(CommandType.TRANSFER, [getCurrencyAddress(outputToken), normalizedSpec.fee.recipient, normalizedSpec.fee.amount], false, normalizedSpec.urVersion);
104
+ }
105
+ // Assumes routers already normalized final gross output into `routing.outputToken`.
106
+ planner.addCommand(CommandType.SWEEP, [getCurrencyAddress(outputToken), normalizedSpec.recipient, netMinOrExactAmountOut], false, normalizedSpec.urVersion);
107
+ // Assumes routers already normalized unused input into `routing.inputToken`.
108
+ // Exact-output uses max input, so any unused slippage padding is refunded to the recipient.
109
+ if (normalizedSpec.tradeType === TradeType.EXACT_OUTPUT) {
110
+ planner.addCommand(CommandType.SWEEP, [getCurrencyAddress(inputToken), normalizedSpec.recipient, 0], false, normalizedSpec.urVersion);
111
+ }
112
+ // safeMode: zero-min ETH sweep recovers any native funds left on the router (dust or unintended msg.value)
113
+ if (normalizedSpec.safeMode) {
114
+ planner.addCommand(CommandType.SWEEP, [ETH_ADDRESS, normalizedSpec.recipient, 0], false, normalizedSpec.urVersion);
115
+ }
116
+ // ApproveProxy wraps the inner UR plan in an outer proxy.execute() that handles ingress upstream.
117
+ if (normalizedSpec.tokenTransferMode === TokenTransferMode.ApproveProxy) {
118
+ return SwapRouter.encodeProxyCall(planner, getCurrencyAddress(inputToken), exactOrMaxAmountIn, normalizedSpec.chainId, normalizedSpec.urVersion, normalizedSpec.deadline);
119
+ }
120
+ // Native input pays via msg.value; ERC20 input is already in the router via Permit2.
121
+ return SwapRouter.encodePlan(planner, inputToken.isNative ? exactOrMaxAmountIn : BigNumber.from(0), {
122
+ deadline: normalizedSpec.deadline ? BigNumber.from(normalizedSpec.deadline) : undefined,
123
+ });
124
+ }
51
125
  /**
52
126
  * Generate EIP712 payload for signed execution (no signing performed)
53
127
  * Decodes existing execute() calldata and prepares it for signing
@@ -228,25 +302,26 @@ export class SwapRouter {
228
302
  return { calldata, value: nativeCurrencyValue.toHexString() };
229
303
  }
230
304
  /**
231
- * Encodes a planned route into calldata targeting the SwapProxy contract.
305
+ * Wraps an inner UR plan in calldata targeting the SwapProxy contract.
232
306
  * The proxy pulls ERC20 tokens from the user into the UR, then executes commands.
233
307
  */
234
308
  static encodeProxyPlan(planner, trade, options) {
235
309
  var _a;
310
+ return SwapRouter.encodeProxyCall(planner, trade.trade.inputAmount.currency.address, BigNumber.from(trade.trade.maximumAmountIn(options.slippageTolerance).quotient.toString()), options.chainId, (_a = options.urVersion) !== null && _a !== void 0 ? _a : UniversalRouterVersion.V2_0, options.deadlineOrPreviousBlockhash ? BigNumber.from(options.deadlineOrPreviousBlockhash) : undefined);
311
+ }
312
+ static encodeProxyCall(planner, inputToken, inputAmount, chainId, urVersion, deadline) {
236
313
  const { commands, inputs } = planner;
237
- const routerAddress = UNIVERSAL_ROUTER_ADDRESS((_a = options.urVersion) !== null && _a !== void 0 ? _a : UniversalRouterVersion.V2_0, options.chainId);
238
- const inputToken = trade.trade.inputAmount.currency.address;
239
- const inputAmount = BigNumber.from(trade.trade.maximumAmountIn(options.slippageTolerance).quotient.toString());
240
- const deadline = options.deadlineOrPreviousBlockhash
241
- ? BigNumber.from(options.deadlineOrPreviousBlockhash)
242
- : BigNumber.from(Math.floor(Date.now() / 1000) + 1800); // 30 min default
314
+ const routerAddress = UNIVERSAL_ROUTER_ADDRESS(urVersion, chainId);
315
+ const resolvedDeadline = deadline
316
+ ? BigNumber.from(deadline)
317
+ : BigNumber.from(Math.floor(Date.now() / 1000) + DEFAULT_PROXY_DEADLINE_BUFFER_SECONDS); // 30 min default
243
318
  const calldata = SwapRouter.PROXY_INTERFACE.encodeFunctionData('execute', [
244
319
  routerAddress,
245
320
  inputToken,
246
321
  inputAmount,
247
322
  commands,
248
323
  inputs,
249
- deadline,
324
+ resolvedDeadline,
250
325
  ]);
251
326
  return { calldata, value: BigNumber.from(0).toHexString() };
252
327
  }
@@ -1 +1 @@
1
- {"version":3,"file":"swapRouter.js","sourceRoot":"","sources":["../../../src/swapRouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swapRouter.js","sourceRoot":"","sources":["../../../src/swapRouter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ import { BigNumberish } from 'ethers';
2
+ import { Currency, CurrencyAmount, Percent, TradeType } from '@uniswap/sdk-core';
3
+ import { type PathKey, type PoolKey } from '@uniswap/v4-sdk';
4
+ import { TokenTransferMode } from '../entities/actions/uniswap';
5
+ import { Permit2Permit } from '../utils/inputTokens';
6
+ import { UniversalRouterVersion } from '../utils/constants';
7
+ export type { PathKey, PoolKey };
8
+ export type Fee = {
9
+ kind: 'portion';
10
+ recipient: string;
11
+ fee: Percent;
12
+ } | {
13
+ kind: 'flat';
14
+ recipient: string;
15
+ amount: BigNumberish;
16
+ };
17
+ export type SwapSpecification = {
18
+ tradeType: TradeType;
19
+ routing: {
20
+ inputToken: Currency;
21
+ outputToken: Currency;
22
+ amount: CurrencyAmount<Currency>;
23
+ quote: CurrencyAmount<Currency>;
24
+ };
25
+ slippageTolerance: Percent;
26
+ recipient?: string;
27
+ fee?: Fee;
28
+ tokenTransferMode?: TokenTransferMode;
29
+ permit?: Permit2Permit;
30
+ chainId?: number;
31
+ deadline?: BigNumberish;
32
+ urVersion?: UniversalRouterVersion;
33
+ safeMode?: boolean;
34
+ };
35
+ export type NormalizedSwapSpecification = Omit<SwapSpecification, 'recipient' | 'tokenTransferMode' | 'urVersion' | 'safeMode'> & {
36
+ recipient: string;
37
+ tokenTransferMode: TokenTransferMode;
38
+ urVersion: UniversalRouterVersion;
39
+ safeMode: boolean;
40
+ };
41
+ export type V2SwapExactIn = {
42
+ type: 'V2_SWAP_EXACT_IN';
43
+ recipient: string;
44
+ amountIn: BigNumberish;
45
+ amountOutMin: BigNumberish;
46
+ path: string[];
47
+ minHopPriceX36?: BigNumberish[];
48
+ };
49
+ export type V2SwapExactOut = {
50
+ type: 'V2_SWAP_EXACT_OUT';
51
+ recipient: string;
52
+ amountOut: BigNumberish;
53
+ amountInMax: BigNumberish;
54
+ path: string[];
55
+ minHopPriceX36?: BigNumberish[];
56
+ };
57
+ export type V3SwapExactIn = {
58
+ type: 'V3_SWAP_EXACT_IN';
59
+ recipient: string;
60
+ amountIn: BigNumberish;
61
+ amountOutMin: BigNumberish;
62
+ path: string;
63
+ minHopPriceX36?: BigNumberish[];
64
+ };
65
+ export type V3SwapExactOut = {
66
+ type: 'V3_SWAP_EXACT_OUT';
67
+ recipient: string;
68
+ amountOut: BigNumberish;
69
+ amountInMax: BigNumberish;
70
+ path: string;
71
+ minHopPriceX36?: BigNumberish[];
72
+ };
73
+ export type V4Swap = {
74
+ type: 'V4_SWAP';
75
+ v4Actions: V4Action[];
76
+ };
77
+ export type WrapEth = {
78
+ type: 'WRAP_ETH';
79
+ recipient: string;
80
+ amount: BigNumberish;
81
+ };
82
+ export type UnwrapWeth = {
83
+ type: 'UNWRAP_WETH';
84
+ recipient: string;
85
+ amountMin: BigNumberish;
86
+ };
87
+ export type SwapStep = V2SwapExactIn | V2SwapExactOut | V3SwapExactIn | V3SwapExactOut | V4Swap | WrapEth | UnwrapWeth;
88
+ export type V4SwapExactIn = {
89
+ action: 'SWAP_EXACT_IN';
90
+ currencyIn: string;
91
+ path: PathKey[];
92
+ amountIn: BigNumberish;
93
+ amountOutMinimum: BigNumberish;
94
+ minHopPriceX36?: BigNumberish[];
95
+ };
96
+ export type V4SwapExactInSingle = {
97
+ action: 'SWAP_EXACT_IN_SINGLE';
98
+ poolKey: PoolKey;
99
+ zeroForOne: boolean;
100
+ amountIn: BigNumberish;
101
+ amountOutMinimum: BigNumberish;
102
+ minHopPriceX36?: BigNumberish;
103
+ hookData: string;
104
+ };
105
+ export type V4SwapExactOut = {
106
+ action: 'SWAP_EXACT_OUT';
107
+ currencyOut: string;
108
+ path: PathKey[];
109
+ amountOut: BigNumberish;
110
+ amountInMaximum: BigNumberish;
111
+ minHopPriceX36?: BigNumberish[];
112
+ };
113
+ export type V4SwapExactOutSingle = {
114
+ action: 'SWAP_EXACT_OUT_SINGLE';
115
+ poolKey: PoolKey;
116
+ zeroForOne: boolean;
117
+ amountOut: BigNumberish;
118
+ amountInMaximum: BigNumberish;
119
+ minHopPriceX36?: BigNumberish;
120
+ hookData: string;
121
+ };
122
+ export type V4Settle = {
123
+ action: 'SETTLE';
124
+ currency: string;
125
+ amount: BigNumberish;
126
+ };
127
+ export type V4SettleAll = {
128
+ action: 'SETTLE_ALL';
129
+ currency: string;
130
+ maxAmount: BigNumberish;
131
+ };
132
+ export type V4Take = {
133
+ action: 'TAKE';
134
+ currency: string;
135
+ recipient: string;
136
+ amount: BigNumberish;
137
+ };
138
+ export type V4TakeAll = {
139
+ action: 'TAKE_ALL';
140
+ currency: string;
141
+ minAmount: BigNumberish;
142
+ };
143
+ export type V4TakePortion = {
144
+ action: 'TAKE_PORTION';
145
+ currency: string;
146
+ recipient: string;
147
+ bips: BigNumberish;
148
+ };
149
+ export type V4Action = V4SwapExactIn | V4SwapExactInSingle | V4SwapExactOut | V4SwapExactOutSingle | V4Settle | V4SettleAll | V4Take | V4TakeAll | V4TakePortion;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=encodeSwaps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encodeSwaps.js","sourceRoot":"","sources":["../../../../src/types/encodeSwaps.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import { BigNumber } from 'ethers';
2
+ import { NormalizedSwapSpecification } from '../types/encodeSwaps';
3
+ export type EncodeSwapsAmounts = {
4
+ exactOrMaxAmountIn: BigNumber;
5
+ grossMinOrExactAmountOut: BigNumber;
6
+ netMinOrExactAmountOut: BigNumber;
7
+ };
8
+ export declare function computeEncodeSwapsAmounts(spec: NormalizedSwapSpecification): EncodeSwapsAmounts;
@@ -0,0 +1,43 @@
1
+ import { BigNumber } from 'ethers';
2
+ import { TradeType } from '@uniswap/sdk-core';
3
+ import { isAtLeastV2_1_1 } from './constants';
4
+ import { encodeFee1e18, encodeFeeBips } from './numbers';
5
+ // Slippage is applied to the quote: scaled down to a floor for exact-input output,
6
+ // scaled up to a ceiling for exact-output input. The unscaled side is the user's exact value.
7
+ // Portion fees pair with exact-input (1e18 precision on >=v2.1.1, bps on v2.0); flat fees pair with exact-output.
8
+ export function computeEncodeSwapsAmounts(spec) {
9
+ var _a, _b;
10
+ const routingAmount = BigNumber.from(spec.routing.amount.quotient.toString());
11
+ const routingQuote = BigNumber.from(spec.routing.quote.quotient.toString());
12
+ const slippageNumerator = BigNumber.from(spec.slippageTolerance.numerator.toString());
13
+ const slippageDenominator = BigNumber.from(spec.slippageTolerance.denominator.toString());
14
+ if (spec.tradeType === TradeType.EXACT_INPUT) {
15
+ const grossMinOrExactAmountOut = routingQuote
16
+ .mul(slippageDenominator)
17
+ .div(slippageDenominator.add(slippageNumerator));
18
+ if (((_a = spec.fee) === null || _a === void 0 ? void 0 : _a.kind) === 'portion') {
19
+ const feeAmount = isAtLeastV2_1_1(spec.urVersion)
20
+ ? grossMinOrExactAmountOut.mul(BigNumber.from(encodeFee1e18(spec.fee.fee))).div(BigNumber.from(10).pow(18))
21
+ : grossMinOrExactAmountOut.mul(BigNumber.from(encodeFeeBips(spec.fee.fee))).div(10000);
22
+ return {
23
+ exactOrMaxAmountIn: routingAmount,
24
+ grossMinOrExactAmountOut,
25
+ netMinOrExactAmountOut: grossMinOrExactAmountOut.sub(feeAmount),
26
+ };
27
+ }
28
+ return {
29
+ exactOrMaxAmountIn: routingAmount,
30
+ grossMinOrExactAmountOut,
31
+ netMinOrExactAmountOut: grossMinOrExactAmountOut,
32
+ };
33
+ }
34
+ const exactOrMaxAmountIn = routingQuote.mul(slippageDenominator.add(slippageNumerator)).div(slippageDenominator);
35
+ const grossMinOrExactAmountOut = routingAmount;
36
+ const netMinOrExactAmountOut = ((_b = spec.fee) === null || _b === void 0 ? void 0 : _b.kind) === 'flat' ? grossMinOrExactAmountOut.sub(BigNumber.from(spec.fee.amount)) : grossMinOrExactAmountOut;
37
+ return {
38
+ exactOrMaxAmountIn,
39
+ grossMinOrExactAmountOut,
40
+ netMinOrExactAmountOut,
41
+ };
42
+ }
43
+ //# sourceMappingURL=computeEncodeSwapsAmounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computeEncodeSwapsAmounts.js","sourceRoot":"","sources":["../../../../src/utils/computeEncodeSwapsAmounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAWxD,mFAAmF;AACnF,8FAA8F;AAC9F,kHAAkH;AAClH,MAAM,UAAU,yBAAyB,CAAC,IAAiC;;IACzE,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC7E,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC3E,MAAM,iBAAiB,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;IACrF,MAAM,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;IAEzF,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE;QAC5C,MAAM,wBAAwB,GAAG,YAAY;aAC1C,GAAG,CAAC,mBAAmB,CAAC;aACxB,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAA;QAElD,IAAI,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,IAAI,MAAK,SAAS,EAAE;YAChC,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC/C,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC3G,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAM,CAAC,CAAA;YAEzF,OAAO;gBACL,kBAAkB,EAAE,aAAa;gBACjC,wBAAwB;gBACxB,sBAAsB,EAAE,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC;aAChE,CAAA;SACF;QAED,OAAO;YACL,kBAAkB,EAAE,aAAa;YACjC,wBAAwB;YACxB,sBAAsB,EAAE,wBAAwB;SACjD,CAAA;KACF;IAED,MAAM,kBAAkB,GAAG,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;IAChH,MAAM,wBAAwB,GAAG,aAAa,CAAA;IAC9C,MAAM,sBAAsB,GAC1B,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,IAAI,MAAK,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAA;IAEtH,OAAO;QACL,kBAAkB;QAClB,wBAAwB;QACxB,sBAAsB;KACvB,CAAA;AACH,CAAC"}
@@ -484,6 +484,21 @@ export const CHAIN_CONFIGS = {
484
484
  },
485
485
  swapProxy: SWAP_PROXY_DEPLOY_ADDRESS,
486
486
  },
487
+ // megaeth
488
+ [4326]: {
489
+ weth: '0x4200000000000000000000000000000000000006',
490
+ routerConfigs: {
491
+ [UniversalRouterVersion.V2_0]: {
492
+ address: '0x48fd03529d2a91be835f07f6b72f53b4aad6093d',
493
+ creationBlock: 7009661,
494
+ },
495
+ [UniversalRouterVersion.V2_1_1]: {
496
+ address: '0x47837eb80db5908eabba9105626d9b348bea7b02',
497
+ creationBlock: 7009661,
498
+ },
499
+ },
500
+ swapProxy: SWAP_PROXY_DEPLOY_ADDRESS,
501
+ },
487
502
  // xlayer
488
503
  [196]: {
489
504
  weth: '0xe538905cf8410324e03A5A23C1c177a474D59b2b',
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAN,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,sCAAY,CAAA;IACZ,sCAAY,CAAA;IACZ,0CAAgB,CAAA;AAClB,CAAC,EAJW,sBAAsB,KAAtB,sBAAsB,QAIjC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAAgC;IAC9D,OAAO,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,CAAA;AAC7G,CAAC;AAaD,MAAM,2BAA2B,GAAG,4CAA4C,CAAA;AAChF,MAAM,yBAAyB,GAAG,4CAA4C,CAAA;AAE9E,8DAA8D;AAC9D,MAAM,CAAC,MAAM,aAAa,GAAmC;IAC3D,UAAU;IACV,CAAC,CAAC,CAAC,EAAE;QACH,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,SAAS;IACT,CAAC,CAAC,CAAC,EAAE;QACH,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;SACF;KACF;IACD,UAAU;IACV,CAAC,QAAQ,CAAC,EAAE;QACV,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,UAAU;IACV,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,gBAAgB;IAChB,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;KACF;IACD,UAAU;IACV,CAAC,EAAE,CAAC,EAAE;QACJ,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,SAAS;aACzB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,SAAS;aACzB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,SAAS;aACzB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,kBAAkB;IAClB,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;SACF;KACF;IACD,WAAW;IACX,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,SAAS;aACzB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,SAAS;aACzB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,SAAS;aACzB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,kBAAkB;IAClB,CAAC,MAAM,CAAC,EAAE;QACR,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;KACF;IACD,OAAO;IACP,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,2BAA2B;QACjC,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,iBAAiB;IACjB,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,2BAA2B;QACjC,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;KACF;IACD,sBAAsB;IACtB,CAAC,EAAE,CAAC,EAAE;QACJ,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,YAAY;IACZ,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,cAAc;IACd,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;SACF;KACF;IACD,eAAe;IACf,CAAC,IAAI,CAAC,EAAE;QACN,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,QAAQ;IACR,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,OAAO;IACP,CAAC,OAAO,CAAC,EAAE;QACT,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,SAAS;IACT,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,aAAa;IACb,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,mBAAmB;IACnB,CAAC,IAAI,CAAC,EAAE;QACN,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,mBAAmB;IACnB,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,KAAK;aACrB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,gBAAgB;IAChB,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,KAAK;aACrB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,KAAK;aACrB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,eAAe;IACf,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,UAAU;IACV,CAAC,IAAI,CAAC,EAAE;QACN,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,QAAQ;IACR,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,QAAQ;IACR,CAAC,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,QAAQ;IACR,CAAC,IAAI,CAAC,EAAE;QACN,IAAI,EAAE,2BAA2B;QACjC,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,OAAO;aACvB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;IACD,SAAS;IACT,CAAC,GAAG,CAAC,EAAE;QACL,IAAI,EAAE,4CAA4C;QAClD,aAAa,EAAE;YACb,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;YACD,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,EAAE,4CAA4C;gBACrD,aAAa,EAAE,QAAQ;aACxB;SACF;QACD,SAAS,EAAE,yBAAyB;KACrC;CACF,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAA+B,EAAE,OAAe,EAAU,EAAE;IACnG,IAAI,CAAC,CAAC,OAAO,IAAI,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAA;IACrG,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC5D,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,0BAA0B,OAAO,EAAE,CAAC,CAAA;IACpG,OAAO,MAAM,CAAC,OAAO,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAU,EAAE;IAC5D,IAAI,CAAC,CAAC,OAAO,IAAI,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAA;IAC9F,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,SAAS,CAAA;IAC9C,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAA;IAC5E,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,OAA+B,EAAE,OAAe,EAAU,EAAE;IAC1G,IAAI,CAAC,CAAC,OAAO,IAAI,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAA;IACrG,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC5D,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,0BAA0B,OAAO,EAAE,CAAC,CAAA;IACpG,OAAO,MAAM,CAAC,aAAa,CAAA;AAC7B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAe,EAAU,EAAE;IACtD,IAAI,CAAC,CAAC,OAAO,IAAI,aAAa,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAA;IAErG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,2BAA2B;QAAE,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,qBAAqB,CAAC,CAAA;IAEtH,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAA;AACpC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAC1D,MAAM,CAAC,MAAM,WAAW,GAAG,4CAA4C,CAAA;AACvE,MAAM,CAAC,MAAM,aAAa,GAAG,4CAA4C,CAAA;AACzE,MAAM,CAAC,MAAM,YAAY,GAAG,4CAA4C,CAAA;AACxE,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAC5D,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAE5D,MAAM,CAAC,MAAM,mBAAmB,GAAG,4CAA4C,CAAA;AAC/E,MAAM,CAAC,MAAM,mBAAmB,GAAG,4CAA4C,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/utils/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { UniversalRouterVersion } from './constants';
2
+ import { RoutePlanner } from './routerCommands';
3
+ import { SwapStep } from '../types/encodeSwaps';
4
+ export declare function encodeSwapStep(planner: RoutePlanner, step: SwapStep, urVersion?: UniversalRouterVersion): void;
@@ -0,0 +1,57 @@
1
+ import { V4Planner } from '@uniswap/v4-sdk';
2
+ import { isAtLeastV2_1_1 } from './constants';
3
+ import { CommandType } from './routerCommands';
4
+ import { encodeV4Action, toV4URVersion } from './encodeV4Action';
5
+ // V2/V3 swap params hardcode payerIsUser=false; encodeSwaps pulls funds into the router first via PERMIT2_TRANSFER_FROM
6
+ export function encodeSwapStep(planner, step, urVersion) {
7
+ var _a, _b, _c, _d;
8
+ const useV2_1_1 = isAtLeastV2_1_1(urVersion);
9
+ switch (step.type) {
10
+ case 'V2_SWAP_EXACT_IN': {
11
+ const params = [step.recipient, step.amountIn, step.amountOutMin, step.path, false];
12
+ if (useV2_1_1)
13
+ params.push((_a = step.minHopPriceX36) !== null && _a !== void 0 ? _a : []);
14
+ planner.addCommand(CommandType.V2_SWAP_EXACT_IN, params, false, urVersion);
15
+ return;
16
+ }
17
+ case 'V2_SWAP_EXACT_OUT': {
18
+ const params = [step.recipient, step.amountOut, step.amountInMax, step.path, false];
19
+ if (useV2_1_1)
20
+ params.push((_b = step.minHopPriceX36) !== null && _b !== void 0 ? _b : []);
21
+ planner.addCommand(CommandType.V2_SWAP_EXACT_OUT, params, false, urVersion);
22
+ return;
23
+ }
24
+ case 'V3_SWAP_EXACT_IN': {
25
+ const params = [step.recipient, step.amountIn, step.amountOutMin, step.path, false];
26
+ if (useV2_1_1)
27
+ params.push((_c = step.minHopPriceX36) !== null && _c !== void 0 ? _c : []);
28
+ planner.addCommand(CommandType.V3_SWAP_EXACT_IN, params, false, urVersion);
29
+ return;
30
+ }
31
+ case 'V3_SWAP_EXACT_OUT': {
32
+ const params = [step.recipient, step.amountOut, step.amountInMax, step.path, false];
33
+ if (useV2_1_1)
34
+ params.push((_d = step.minHopPriceX36) !== null && _d !== void 0 ? _d : []);
35
+ planner.addCommand(CommandType.V3_SWAP_EXACT_OUT, params, false, urVersion);
36
+ return;
37
+ }
38
+ case 'V4_SWAP': {
39
+ const v4Planner = new V4Planner();
40
+ for (const v4Action of step.v4Actions) {
41
+ const encoded = encodeV4Action(v4Action, urVersion);
42
+ v4Planner.addAction(encoded.action, encoded.params, toV4URVersion(urVersion));
43
+ }
44
+ planner.addCommand(CommandType.V4_SWAP, [v4Planner.finalize()], false, urVersion);
45
+ return;
46
+ }
47
+ case 'WRAP_ETH':
48
+ planner.addCommand(CommandType.WRAP_ETH, [step.recipient, step.amount], false, urVersion);
49
+ return;
50
+ case 'UNWRAP_WETH':
51
+ planner.addCommand(CommandType.UNWRAP_WETH, [step.recipient, step.amountMin], false, urVersion);
52
+ return;
53
+ default:
54
+ throw new Error(`Unknown swap step type: ${step.type}`);
55
+ }
56
+ }
57
+ //# sourceMappingURL=encodeSwapStep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encodeSwapStep.js","sourceRoot":"","sources":["../../../../src/utils/encodeSwapStep.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { Actions, URVersion } from '@uniswap/v4-sdk';
2
+ import { UniversalRouterVersion } from './constants';
3
+ import { V4Action } from '../types/encodeSwaps';
4
+ export declare function toV4URVersion(version?: UniversalRouterVersion): URVersion;
5
+ export declare function encodeV4Action(v4Action: V4Action, urVersion?: UniversalRouterVersion): {
6
+ action: Actions;
7
+ params: any[];
8
+ };