@paraswap/dex-lib 4.7.13-unified-pair-restriction.2 → 4.7.14-multi-route.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 (126) hide show
  1. package/build/dex/generic-rfq/generic-rfq.js +5 -0
  2. package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
  3. package/build/dex/idle-dao/idle-dao.d.ts +1 -0
  4. package/build/dex/idle-dao/idle-dao.js +23 -11
  5. package/build/dex/idle-dao/idle-dao.js.map +1 -1
  6. package/build/dex/{se-vlr/se-vlr-pool.d.ts → maker-psm/maker-psm-event-pool.d.ts} +15 -11
  7. package/build/dex/maker-psm/maker-psm-event-pool.js +132 -0
  8. package/build/dex/maker-psm/maker-psm-event-pool.js.map +1 -0
  9. package/build/dex/maker-psm/maker-psm.d.ts +4 -41
  10. package/build/dex/maker-psm/maker-psm.js +40 -143
  11. package/build/dex/maker-psm/maker-psm.js.map +1 -1
  12. package/build/dex/uniswap-v4/contract-math/Position.d.ts +6 -0
  13. package/build/dex/uniswap-v4/contract-math/Position.js +29 -0
  14. package/build/dex/uniswap-v4/contract-math/Position.js.map +1 -1
  15. package/build/executor/Executor01BytecodeBuilder.d.ts +5 -5
  16. package/build/executor/Executor01BytecodeBuilder.js +17 -14
  17. package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
  18. package/build/executor/Executor02BytecodeBuilder.d.ts +11 -8
  19. package/build/executor/Executor02BytecodeBuilder.js +107 -103
  20. package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
  21. package/build/executor/Executor03BytecodeBuilder.d.ts +5 -5
  22. package/build/executor/Executor03BytecodeBuilder.js +14 -11
  23. package/build/executor/Executor03BytecodeBuilder.js.map +1 -1
  24. package/build/executor/ExecutorBytecodeBuilder.d.ts +8 -8
  25. package/build/executor/ExecutorBytecodeBuilder.js +8 -8
  26. package/build/executor/ExecutorBytecodeBuilder.js.map +1 -1
  27. package/build/executor/WETHBytecodeBuilder.d.ts +2 -2
  28. package/build/executor/WETHBytecodeBuilder.js +1 -1
  29. package/build/executor/WETHBytecodeBuilder.js.map +1 -1
  30. package/build/executor/types.d.ts +21 -0
  31. package/build/executor/types.js.map +1 -1
  32. package/build/executor/utils.d.ts +20 -0
  33. package/build/executor/utils.js +129 -0
  34. package/build/executor/utils.js.map +1 -1
  35. package/build/generic-swap-transaction-builder.d.ts +3 -0
  36. package/build/generic-swap-transaction-builder.js +94 -23
  37. package/build/generic-swap-transaction-builder.js.map +1 -1
  38. package/package.json +12 -3
  39. package/build/abi/BProtocol.json +0 -1155
  40. package/build/abi/Jarvis.json +0 -1172
  41. package/build/abi/MStableAsset.json +0 -1545
  42. package/build/abi/OneInchLp.json +0 -1304
  43. package/build/abi/Onebit.json +0 -736
  44. package/build/abi/Shell.json +0 -1294
  45. package/build/abi/TraderJoeV2Router.json +0 -50
  46. package/build/abi/wUSDM.json +0 -757
  47. package/build/abi/zrx.v2.json +0 -1967
  48. package/build/abi/zrx.v3.json +0 -3454
  49. package/build/abi/zrx.v4.json +0 -2193
  50. package/build/dex/OneInchLp.d.ts +0 -24
  51. package/build/dex/OneInchLp.js +0 -43
  52. package/build/dex/OneInchLp.js.map +0 -1
  53. package/build/dex/bProtocol/bProtocol.d.ts +0 -15
  54. package/build/dex/bProtocol/bProtocol.js +0 -56
  55. package/build/dex/bProtocol/bProtocol.js.map +0 -1
  56. package/build/dex/bProtocol/types.d.ts +0 -11
  57. package/build/dex/bProtocol/types.js +0 -8
  58. package/build/dex/bProtocol/types.js.map +0 -1
  59. package/build/dex/jarvis.d.ts +0 -56
  60. package/build/dex/jarvis.js +0 -163
  61. package/build/dex/jarvis.js.map +0 -1
  62. package/build/dex/mStable.d.ts +0 -44
  63. package/build/dex/mStable.js +0 -75
  64. package/build/dex/mStable.js.map +0 -1
  65. package/build/dex/onebit/onebit.d.ts +0 -16
  66. package/build/dex/onebit/onebit.js +0 -61
  67. package/build/dex/onebit/onebit.js.map +0 -1
  68. package/build/dex/onebit/types.d.ts +0 -14
  69. package/build/dex/onebit/types.js +0 -8
  70. package/build/dex/onebit/types.js.map +0 -1
  71. package/build/dex/se-vlr/config.d.ts +0 -3
  72. package/build/dex/se-vlr/config.js +0 -24
  73. package/build/dex/se-vlr/config.js.map +0 -1
  74. package/build/dex/se-vlr/se-vlr-pool.js +0 -70
  75. package/build/dex/se-vlr/se-vlr-pool.js.map +0 -1
  76. package/build/dex/se-vlr/se-vlr.d.ts +0 -35
  77. package/build/dex/se-vlr/se-vlr.js +0 -131
  78. package/build/dex/se-vlr/se-vlr.js.map +0 -1
  79. package/build/dex/se-vlr/types.d.ts +0 -6
  80. package/build/dex/se-vlr/types.js +0 -3
  81. package/build/dex/se-vlr/types.js.map +0 -1
  82. package/build/dex/shell.d.ts +0 -25
  83. package/build/dex/shell.js +0 -41
  84. package/build/dex/shell.js.map +0 -1
  85. package/build/dex/trader-joe-v2.d.ts +0 -40
  86. package/build/dex/trader-joe-v2.js +0 -74
  87. package/build/dex/trader-joe-v2.js.map +0 -1
  88. package/build/dex/uniswap-v3/uniswap-v3-new.d.ts +0 -94
  89. package/build/dex/uniswap-v3/uniswap-v3-new.js +0 -923
  90. package/build/dex/uniswap-v3/uniswap-v3-new.js.map +0 -1
  91. package/build/dex/usual-bond/config.d.ts +0 -3
  92. package/build/dex/usual-bond/config.js +0 -13
  93. package/build/dex/usual-bond/config.js.map +0 -1
  94. package/build/dex/usual-bond/types.d.ts +0 -7
  95. package/build/dex/usual-bond/types.js +0 -3
  96. package/build/dex/usual-bond/types.js.map +0 -1
  97. package/build/dex/usual-bond/usual-bond.d.ts +0 -35
  98. package/build/dex/usual-bond/usual-bond.js +0 -176
  99. package/build/dex/usual-bond/usual-bond.js.map +0 -1
  100. package/build/dex/wusdm/config.d.ts +0 -3
  101. package/build/dex/wusdm/config.js +0 -43
  102. package/build/dex/wusdm/config.js.map +0 -1
  103. package/build/dex/wusdm/constants.d.ts +0 -2
  104. package/build/dex/wusdm/constants.js +0 -6
  105. package/build/dex/wusdm/constants.js.map +0 -1
  106. package/build/dex/wusdm/types.d.ts +0 -18
  107. package/build/dex/wusdm/types.js +0 -11
  108. package/build/dex/wusdm/types.js.map +0 -1
  109. package/build/dex/wusdm/wusdm-pool.d.ts +0 -21
  110. package/build/dex/wusdm/wusdm-pool.js +0 -74
  111. package/build/dex/wusdm/wusdm-pool.js.map +0 -1
  112. package/build/dex/wusdm/wusdm.d.ts +0 -46
  113. package/build/dex/wusdm/wusdm.js +0 -243
  114. package/build/dex/wusdm/wusdm.js.map +0 -1
  115. package/build/dex/zerox/config.d.ts +0 -2
  116. package/build/dex/zerox/config.js +0 -33
  117. package/build/dex/zerox/config.js.map +0 -1
  118. package/build/dex/zerox/index.d.ts +0 -22
  119. package/build/dex/zerox/index.js +0 -225
  120. package/build/dex/zerox/index.js.map +0 -1
  121. package/build/dex/zerox/order.d.ts +0 -88
  122. package/build/dex/zerox/order.js +0 -53
  123. package/build/dex/zerox/order.js.map +0 -1
  124. package/build/dex/zerox/types.d.ts +0 -73
  125. package/build/dex/zerox/types.js +0 -21
  126. package/build/dex/zerox/types.js.map +0 -1
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.extractReturnAmountPosition = void 0;
4
+ exports.isSameSwap = isSameSwap;
5
+ exports.mergeMultiPriceRoutes = mergeMultiPriceRoutes;
6
+ exports.getOriginalRouteSwapIndex = getOriginalRouteSwapIndex;
4
7
  const constants_1 = require("./constants");
5
8
  const extractReturnAmountPosition = (iface, functionName, outputName = '', outputIndex = 0) => {
6
9
  const func = typeof functionName === 'string'
@@ -38,4 +41,130 @@ const extractReturnAmountPosition = (iface, functionName, outputName = '', outpu
38
41
  return position;
39
42
  };
40
43
  exports.extractReturnAmountPosition = extractReturnAmountPosition;
44
+ function isSameSwap(swap1, swap2) {
45
+ return (swap1.srcToken.toLowerCase() === swap2.srcToken.toLowerCase() &&
46
+ swap1.destToken.toLowerCase() === swap2.destToken.toLowerCase());
47
+ }
48
+ function isSameSwapExchange(se1, se2) {
49
+ if (se1.exchange !== se2.exchange)
50
+ return false;
51
+ const ids1 = se1.poolIdentifiers ?? [];
52
+ const ids2 = se2.poolIdentifiers ?? [];
53
+ if (ids1.length !== ids2.length)
54
+ return false;
55
+ return ids1.every((id, i) => id === ids2[i]);
56
+ }
57
+ function mergeSwapExchanges(swapExchanges) {
58
+ const merged = [];
59
+ for (const exchanges of swapExchanges) {
60
+ for (const se of exchanges) {
61
+ const existing = merged.find(m => isSameSwapExchange(m, se));
62
+ if (existing) {
63
+ existing.srcAmount = (BigInt(existing.srcAmount) + BigInt(se.srcAmount)).toString();
64
+ existing.destAmount = (BigInt(existing.destAmount) + BigInt(se.destAmount)).toString();
65
+ }
66
+ else {
67
+ merged.push({ ...se });
68
+ }
69
+ }
70
+ }
71
+ return merged;
72
+ }
73
+ /**
74
+ * Merges swaps from multiple routes, combining identical swaps and grouping parallel different swaps.
75
+ *
76
+ * Example 1:
77
+ * Routes: [[token1-token2, token2-token3, token3-token4], [token1-token2, token2-token4]]
78
+ * Result: [[token1-token2], [[token2-token3, token3-token4], [token2-token4]]]
79
+ *
80
+ * Example 2:
81
+ * Routes: [[token1-token2, token2-token3, token3-token4], [token1-token3, token3-token4], [token1-token5, token5-token3, token3-token4]]
82
+ * Result: [[[token1-token2, token2-token3], [token1-token3], [token1-token5, token5-token3]], [token3-token4]]
83
+ */
84
+ function mergeMultiPriceRoutes(routes) {
85
+ if (routes.length === 0)
86
+ return [];
87
+ if (routes.length === 1) {
88
+ // Single route: each swap is its own group
89
+ return routes[0].swaps.map(swap => [swap]);
90
+ }
91
+ const routeSwaps = routes.map(route => [...route.swaps]);
92
+ const result = [];
93
+ // Process from the start: find common prefix swaps
94
+ while (routeSwaps.some(swaps => swaps.length > 0)) {
95
+ const firstSwaps = routeSwaps
96
+ .filter(swaps => swaps.length > 0)
97
+ .map(swaps => swaps[0]);
98
+ if (firstSwaps.length === 0)
99
+ break;
100
+ // Check if all first swaps are the same
101
+ const allSame = firstSwaps.every(swap => isSameSwap(swap, firstSwaps[0]));
102
+ if (allSame) {
103
+ // All routes start with the same swap - merge with accumulated amounts
104
+ const mergedSwap = {
105
+ ...firstSwaps[0],
106
+ swapExchanges: mergeSwapExchanges(firstSwaps.map(s => s.swapExchanges)),
107
+ };
108
+ result.push([mergedSwap]);
109
+ routeSwaps.forEach(swaps => {
110
+ if (swaps.length > 0)
111
+ swaps.shift();
112
+ });
113
+ }
114
+ else {
115
+ // Swaps diverge - need to process from the end to find common suffix
116
+ break;
117
+ }
118
+ }
119
+ // Process from the end: find common suffix swaps
120
+ const suffixResult = [];
121
+ while (routeSwaps.some(swaps => swaps.length > 0)) {
122
+ const lastSwaps = routeSwaps
123
+ .filter(swaps => swaps.length > 0)
124
+ .map(swaps => swaps[swaps.length - 1]);
125
+ if (lastSwaps.length === 0)
126
+ break;
127
+ // Check if all last swaps are the same
128
+ const allSame = lastSwaps.every(swap => isSameSwap(swap, lastSwaps[0]));
129
+ if (allSame) {
130
+ // All routes end with the same swap - merge with accumulated amounts
131
+ const mergedSwap = {
132
+ ...lastSwaps[0],
133
+ swapExchanges: mergeSwapExchanges(lastSwaps.map(s => s.swapExchanges)),
134
+ // TODO-multi: it's possible that amounts won't result in the same amounts from merged swaps due to BigInt rounding
135
+ };
136
+ suffixResult.unshift([mergedSwap]);
137
+ routeSwaps.forEach(swaps => {
138
+ if (swaps.length > 0)
139
+ swaps.pop();
140
+ });
141
+ }
142
+ else {
143
+ // Swaps diverge - remaining middle part needs parallel grouping
144
+ break;
145
+ }
146
+ }
147
+ // Handle remaining middle part (parallel different sequences)
148
+ const remainingRoutes = routeSwaps.filter(swaps => swaps.length > 0);
149
+ if (remainingRoutes.length > 0) {
150
+ // Each remaining route's swaps form a parallel branch
151
+ result.push(remainingRoutes);
152
+ }
153
+ // Combine prefix, middle, and suffix
154
+ return [...result, ...suffixResult];
155
+ }
156
+ // for the merged swaps in multi-route, it returns the first appearance
157
+ // but should be fine
158
+ function getOriginalRouteSwapIndex(priceRoute, swapToFind) {
159
+ for (let routeIndex = 0; routeIndex < priceRoute.bestRoute.length; routeIndex++) {
160
+ const route = priceRoute.bestRoute[routeIndex];
161
+ for (let swapIndex = 0; swapIndex < route.swaps.length; swapIndex++) {
162
+ const swap = route.swaps[swapIndex];
163
+ if (isSameSwap(swap, swapToFind)) {
164
+ return { routeIndex, swapIndex };
165
+ }
166
+ }
167
+ }
168
+ return null;
169
+ }
41
170
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/executor/utils.ts"],"names":[],"mappings":";;;AACA,2CAAwE;AAEjE,MAAM,2BAA2B,GAAG,CACzC,KAAgB,EAChB,YAAuC,EACvC,UAAU,GAAG,EAAE,EACf,WAAW,GAAG,CAAC,EACP,EAAE;IACV,MAAM,IAAI,GACR,OAAO,YAAY,KAAK,QAAQ;QAC9B,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC;QACjC,CAAC,CAAC,YAAY,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAC7B,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,EAAE,IAAI,IAAI,KAAK,IAAI,CAAC,CAC1E,CAAC;IAEF,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,YAAY,YAAY,oCAAoC,CAC7D,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,IACE,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO;YAC/B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,2BAA2B;YAChF,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,8BAA8B;UACnD,CAAC;YACD,OAAO,CACL,gCAAoB;gBACpB,gCAAoB;gBACpB,WAAW,GAAG,gCAAoB,CACnC,CAAC,CAAC,4EAA4E;QACjF,CAAC;QACD,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;QACJ,CAAC;QAED,OAAO,+BAAmB,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ,GAAG,+BAAmB,CAAC;IACnC,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,OAAO,QAAQ,GAAG,KAAK,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjC,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CACb,oIAAoI,CACrI,CAAC;QACJ,CAAC;QAED,QAAQ,IAAI,gCAAoB,CAAC;QACjC,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AA1DW,QAAA,2BAA2B,+BA0DtC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/executor/utils.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import { ExecutorDetector } from './executor/ExecutorDetector';
6
6
  import { ExecutorBytecodeBuilder } from './executor/ExecutorBytecodeBuilder';
7
7
  import { IDexTxBuilder } from './dex/idex';
8
8
  import { SwapSide } from '@paraswap/core';
9
+ import { BuildSwapExchange, RouteSwaps } from './executor/types';
9
10
  export declare class GenericSwapTransactionBuilder {
10
11
  protected dexAdapterService: DexAdapterService;
11
12
  protected wExchangeNetworkToKey: Record<number, string>;
@@ -16,6 +17,8 @@ export declare class GenericSwapTransactionBuilder {
16
17
  executorDetector: ExecutorDetector;
17
18
  constructor(dexAdapterService: DexAdapterService, wExchangeNetworkToKey?: Record<number, string>);
18
19
  protected getDepositWithdrawWethCallData(srcAmountWeth: bigint, destAmountWeth: bigint, side: SwapSide, priceRoute: OptimalRate, exchangeParams: DexExchangeParamWithBooleanNeedWrapNative[]): DepositWithdrawReturn | undefined;
20
+ buildRouteSwaps(priceRoute: OptimalRate): RouteSwaps[];
21
+ buildSwapExchange: (priceRoute: OptimalRate, swap: OptimalSwap, se: OptimalSwapExchange<any>, minMaxAmount: string, side: SwapSide, bytecodeBuilder: ExecutorBytecodeBuilder) => Promise<BuildSwapExchange<any>>;
19
22
  protected buildCalls(priceRoute: OptimalRate, minMaxAmount: string, bytecodeBuilder: ExecutorBytecodeBuilder, userAddress: string): Promise<string>;
20
23
  protected _build(priceRoute: OptimalRate, minMaxAmount: string, quotedAmount: string, userAddress: Address, referrerAddress: Address | undefined, partnerAddress: Address, partnerFeePercent: string, takeSurplus: boolean, isCapSurplus: boolean, isSurplusToUser: boolean, isDirectFeeTransfer: boolean, beneficiary: Address, permit: string, deadline: string, uuid: string): Promise<{
21
24
  encoder: (...params: any[]) => string;
@@ -13,6 +13,7 @@ const weth_1 = require("./dex/weth/weth");
13
13
  const erc20_json_1 = __importDefault(require("./abi/erc20.json"));
14
14
  const ExecutorDetector_1 = require("./executor/ExecutorDetector");
15
15
  const core_1 = require("@paraswap/core");
16
+ const utils_2 = require("./executor/utils");
16
17
  const { utils: { hexlify, hexConcat, hexZeroPad }, } = ethers_1.ethers;
17
18
  class GenericSwapTransactionBuilder {
18
19
  dexAdapterService;
@@ -45,40 +46,110 @@ class GenericSwapTransactionBuilder {
45
46
  return;
46
47
  return this.dexAdapterService.getTxBuilderDexByKey(this.wExchangeNetworkToKey[this.dexAdapterService.network]).getDepositWithdrawParam(srcAmountWeth.toString(), destAmountWeth.toString(), side, core_1.ParaSwapVersion.V6);
47
48
  }
49
+ buildRouteSwaps(priceRoute) {
50
+ const singleRoutes = [];
51
+ const multiRoutes = [];
52
+ priceRoute.bestRoute.forEach(route => {
53
+ const isMultiRoute = route.swaps.some(swap => swap.isMergedSwap);
54
+ if (isMultiRoute) {
55
+ multiRoutes.push(route);
56
+ }
57
+ else {
58
+ singleRoutes.push(route);
59
+ }
60
+ });
61
+ const routes = [];
62
+ if (singleRoutes.length > 0) {
63
+ singleRoutes.forEach(route => {
64
+ routes.push({
65
+ type: 'single-route',
66
+ percent: route.percent,
67
+ swaps: route.swaps,
68
+ });
69
+ });
70
+ }
71
+ if (multiRoutes.length > 0) {
72
+ routes.push({
73
+ type: 'multi-route',
74
+ // TODO-multi: how save it is to sum percents, considering that these routes are splitted from merged swaps
75
+ percent: multiRoutes.reduce((acc, r) => acc + r.percent, 0),
76
+ swaps: (0, utils_2.mergeMultiPriceRoutes)(multiRoutes).map(route => {
77
+ if (priceRoute.mergedSwaps?.length === 0) {
78
+ throw new Error('Merged swaps are missing in price route');
79
+ }
80
+ if (route.every(swaps => Array.isArray(swaps))) {
81
+ // swaps from multi-route should not be modified
82
+ return route;
83
+ }
84
+ // swaps from single-route should be replaced from priceRoute.mergedSwaps
85
+ return route.map(swap => {
86
+ const mergedSwap = priceRoute.mergedSwaps?.find(merSwap => (0, utils_2.isSameSwap)(merSwap, swap));
87
+ if (!mergedSwap) {
88
+ throw new Error(`Merged swap not found for ${swap.srcToken} -> ${swap.destToken}`);
89
+ }
90
+ return mergedSwap;
91
+ });
92
+ }),
93
+ });
94
+ }
95
+ return routes;
96
+ }
97
+ buildSwapExchange = async (priceRoute, swap, se, minMaxAmount, side, bytecodeBuilder) => {
98
+ const { swapIndex, routeIndex } = (0, utils_2.getOriginalRouteSwapIndex)(priceRoute, swap);
99
+ const dex = this.dexAdapterService.getTxBuilderDexByKey(se.exchange);
100
+ const executorAddress = bytecodeBuilder.getAddress();
101
+ const { srcToken, destToken, srcAmount, destAmount, recipient, wethDeposit, wethWithdraw, } = this.getDexCallsParams(priceRoute, routeIndex, swap, swapIndex, se, minMaxAmount, dex, executorAddress);
102
+ let dexParams = await dex.getDexParam(srcToken, destToken, side === core_1.SwapSide.BUY ? se.srcAmount : srcAmount, // in other case we would not be able to make insert from amount on Ex3
103
+ destAmount, recipient, se.data, side, {
104
+ isGlobalSrcToken: priceRoute.srcToken.toLowerCase() === srcToken.toLowerCase(),
105
+ isGlobalDestToken: priceRoute.destToken.toLowerCase() === destToken.toLowerCase(),
106
+ }, executorAddress);
107
+ if (typeof dexParams.needWrapNative === 'function') {
108
+ dexParams.needWrapNative = dexParams.needWrapNative(priceRoute, swap, se);
109
+ }
110
+ return {
111
+ ...se,
112
+ dexParams: dexParams,
113
+ wethDeposit,
114
+ wethWithdraw,
115
+ };
116
+ };
48
117
  async buildCalls(priceRoute, minMaxAmount, bytecodeBuilder, userAddress) {
49
118
  const side = priceRoute.side;
50
- const rawDexParams = await Promise.all(priceRoute.bestRoute.flatMap((route, routeIndex) => route.swaps.flatMap((swap, swapIndex) => swap.swapExchanges.map(async (se) => {
51
- const dex = this.dexAdapterService.getTxBuilderDexByKey(se.exchange);
52
- const executorAddress = bytecodeBuilder.getAddress();
53
- const { srcToken, destToken, srcAmount, destAmount, recipient, wethDeposit, wethWithdraw, } = this.getDexCallsParams(priceRoute, routeIndex, swap, swapIndex, se, minMaxAmount, dex, executorAddress);
54
- let dexParams = await dex.getDexParam(srcToken, destToken, side === core_1.SwapSide.BUY ? se.srcAmount : srcAmount, // in other case we would not be able to make insert from amount on Ex3
55
- destAmount, recipient, se.data, side, {
56
- isGlobalSrcToken: priceRoute.srcToken.toLowerCase() === srcToken.toLowerCase(),
57
- isGlobalDestToken: priceRoute.destToken.toLowerCase() ===
58
- destToken.toLowerCase(),
59
- }, executorAddress);
60
- if (typeof dexParams.needWrapNative === 'function') {
61
- dexParams.needWrapNative = dexParams.needWrapNative(priceRoute, swap, se);
119
+ const routes = this.buildRouteSwaps(priceRoute);
120
+ const buildSwap = async (swap) => ({
121
+ ...swap,
122
+ swapExchanges: await Promise.all(swap.swapExchanges.map(se => this.buildSwapExchange(priceRoute, swap, se, minMaxAmount, side, bytecodeBuilder))),
123
+ });
124
+ const buildSwaps = async (routeSwaps) => Promise.all(routeSwaps.map(async (swaps) => {
125
+ if (Array.isArray(swaps)) {
126
+ return Promise.all(swaps.map(async (innerRouteSwaps) => Array.isArray(innerRouteSwaps)
127
+ ? Promise.all(innerRouteSwaps.map(buildSwap))
128
+ : buildSwap(innerRouteSwaps)));
62
129
  }
63
- return {
64
- dexParams: dexParams,
65
- wethDeposit,
66
- wethWithdraw,
67
- };
130
+ return buildSwap(swaps);
131
+ }));
132
+ const routesWithBuild = (await Promise.all(routes.map(async (route) => ({
133
+ ...route,
134
+ swaps: await buildSwaps(route.swaps), // TODO-multi: refactor
68
135
  }))));
69
- const { exchangeParams, srcAmountWethToDeposit, destAmountWethToWithdraw } = await rawDexParams.reduce((acc, se) => {
70
- acc.srcAmountWethToDeposit += BigInt(se.wethDeposit);
71
- acc.destAmountWethToWithdraw += BigInt(se.wethWithdraw);
72
- acc.exchangeParams.push(se.dexParams);
136
+ const allBuildSwaps = routesWithBuild
137
+ .flatMap(route => route.swaps)
138
+ .flat(3);
139
+ const flatSwapExchanges = allBuildSwaps.flatMap(swap => swap.swapExchanges);
140
+ const { srcAmountWethToDeposit, destAmountWethToWithdraw } = flatSwapExchanges.reduce((acc, se) => {
141
+ acc.srcAmountWethToDeposit += se.wethDeposit;
142
+ acc.destAmountWethToWithdraw += se.wethWithdraw;
73
143
  return acc;
74
144
  }, {
75
- exchangeParams: [],
76
145
  srcAmountWethToDeposit: 0n,
77
146
  destAmountWethToWithdraw: 0n,
78
147
  });
148
+ // TODO-multi: can exchange params order be affected by this update for single-route routes??
149
+ const exchangeParams = flatSwapExchanges.map(se => se.dexParams);
79
150
  const maybeWethCallData = this.getDepositWithdrawWethCallData(srcAmountWethToDeposit, destAmountWethToWithdraw, side, priceRoute, exchangeParams);
80
151
  const buildExchangeParams = await this.addDexExchangeApproveParams(bytecodeBuilder, priceRoute, exchangeParams, maybeWethCallData);
81
- return bytecodeBuilder.buildByteCode(priceRoute, buildExchangeParams, userAddress, maybeWethCallData);
152
+ return bytecodeBuilder.buildByteCode(priceRoute, routes, buildExchangeParams, userAddress, maybeWethCallData);
82
153
  }
83
154
  async _build(priceRoute, minMaxAmount, quotedAmount, userAddress, referrerAddress, partnerAddress, partnerFeePercent, takeSurplus, isCapSurplus, isSurplusToUser, isDirectFeeTransfer, beneficiary, permit, deadline, uuid) {
84
155
  const executorName = this.executorDetector.getExecutorByPriceRoute(priceRoute);
@@ -1 +1 @@
1
- {"version":3,"file":"generic-swap-transaction-builder.js","sourceRoot":"","sources":["../src/generic-swap-transaction-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generic-swap-transaction-builder.js","sourceRoot":"","sources":["../src/generic-swap-transaction-builder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "4.7.13-unified-pair-restriction.2",
3
+ "version": "4.7.14-multi-route.0",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -57,7 +57,7 @@
57
57
  "@ethersproject/abi": "^5.7.0",
58
58
  "@hashflow/sdk": "^2.2.7",
59
59
  "@hashflow/taker-js": "^0.4.1",
60
- "@paraswap/core": "2.4.1",
60
+ "@paraswap/core": "2.4.2-multi-route.1",
61
61
  "@types/ws": "^8.5.12",
62
62
  "async": "^3.2.4",
63
63
  "axios": "0.27.2",
@@ -81,5 +81,14 @@
81
81
  "web3-utils": "1.6.0",
82
82
  "ws": "^8.18.0"
83
83
  },
84
- "sideEffects": false
84
+ "sideEffects": false,
85
+ "cspell": {
86
+ "version": "0.2",
87
+ "ignorePaths": [],
88
+ "dictionaryDefinitions": [],
89
+ "dictionaries": [],
90
+ "words": [],
91
+ "ignoreWords": [],
92
+ "import": []
93
+ }
85
94
  }