@paraswap/dex-lib 3.7.6 → 3.7.7-skip-approval

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 (159) hide show
  1. package/build/abi/Uncompressor.json +250 -0
  2. package/build/dex/aave-v1/aave-v1.d.ts +1 -2
  3. package/build/dex/aave-v1/aave-v1.js +0 -23
  4. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  5. package/build/dex/aave-v3/aave-v3.js +2 -1
  6. package/build/dex/aave-v3/aave-v3.js.map +1 -1
  7. package/build/dex/angle-staked-stable/angle-staked-stable.js +4 -1
  8. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
  9. package/build/dex/compound/compound.js +2 -1
  10. package/build/dex/compound/compound.js.map +1 -1
  11. package/build/dex/compound.js +1 -1
  12. package/build/dex/compound.js.map +1 -1
  13. package/build/dex/dexalot/dexalot.js +1 -1
  14. package/build/dex/dexalot/dexalot.js.map +1 -1
  15. package/build/dex/etherfi/etherfi.d.ts +26 -0
  16. package/build/dex/etherfi/etherfi.js +96 -0
  17. package/build/dex/etherfi/etherfi.js.map +1 -0
  18. package/build/dex/etherfi.js +4 -1
  19. package/build/dex/etherfi.js.map +1 -1
  20. package/build/dex/mStable.js +1 -1
  21. package/build/dex/mStable.js.map +1 -1
  22. package/build/dex/platypus/platypus.d.ts +1 -2
  23. package/build/dex/platypus/platypus.js +0 -45
  24. package/build/dex/platypus/platypus.js.map +1 -1
  25. package/build/dex/sdai/config.d.ts +11 -0
  26. package/build/dex/sdai/config.js +21 -0
  27. package/build/dex/sdai/config.js.map +1 -0
  28. package/build/dex/sdai/constants.d.ts +2 -0
  29. package/build/dex/sdai/constants.js +6 -0
  30. package/build/dex/sdai/constants.js.map +1 -0
  31. package/build/dex/sdai/scripts/validate-state.js +102 -0
  32. package/build/dex/sdai/scripts/validate-state.js.map +1 -0
  33. package/build/dex/sdai/sdai-pool.d.ts +16 -0
  34. package/build/dex/sdai/sdai-pool.js +85 -0
  35. package/build/dex/sdai/sdai-pool.js.map +1 -0
  36. package/build/dex/sdai/sdai.d.ts +51 -0
  37. package/build/dex/sdai/sdai.js +172 -0
  38. package/build/dex/sdai/sdai.js.map +1 -0
  39. package/build/dex/sdai/types.d.ts +21 -0
  40. package/build/dex/sdai/types.js +11 -0
  41. package/build/dex/sdai/types.js.map +1 -0
  42. package/build/dex/sdai/utils.d.ts +4 -0
  43. package/build/dex/sdai/utils.js +39 -0
  44. package/build/dex/sdai/utils.js.map +1 -0
  45. package/build/dex/simple-exchange.d.ts +1 -1
  46. package/build/dex/simple-exchange.js +4 -2
  47. package/build/dex/simple-exchange.js.map +1 -1
  48. package/build/dex/spark/spark.js +1 -1
  49. package/build/dex/spark/spark.js.map +1 -1
  50. package/build/dex/stable-pool.js +8 -1
  51. package/build/dex/stable-pool.js.map +1 -1
  52. package/build/dex/swaap-v1/swaap-v1.d.ts +1 -2
  53. package/build/dex/swaap-v1/swaap-v1.js +0 -14
  54. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  55. package/build/executor/Executor01BytecodeBuilder.js +1 -0
  56. package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
  57. package/build/executor/Executor02BytecodeBuilder.js +1 -0
  58. package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
  59. package/build/executor/Executor03BytecodeBuilder.js +1 -0
  60. package/build/executor/Executor03BytecodeBuilder.js.map +1 -1
  61. package/build/executor/compressor/Compressor.d.ts +23 -0
  62. package/build/executor/compressor/Compressor.js +144 -0
  63. package/build/executor/compressor/Compressor.js.map +1 -0
  64. package/build/executor/compressor/compress.d.ts +17 -0
  65. package/build/executor/compressor/compress.js +187 -0
  66. package/build/executor/compressor/compress.js.map +1 -0
  67. package/build/executor/compressor/compress_functions/addressSubstitution.d.ts +6 -0
  68. package/build/executor/compressor/compress_functions/addressSubstitution.js +29 -0
  69. package/build/executor/compressor/compress_functions/addressSubstitution.js.map +1 -0
  70. package/build/executor/compressor/compress_functions/addressSubstitutionFromObject.d.ts +10 -0
  71. package/build/executor/compressor/compress_functions/addressSubstitutionFromObject.js +40 -0
  72. package/build/executor/compressor/compress_functions/addressSubstitutionFromObject.js.map +1 -0
  73. package/build/executor/compressor/compress_functions/byteSubstitution.d.ts +11 -0
  74. package/build/executor/compressor/compress_functions/byteSubstitution.js +64 -0
  75. package/build/executor/compressor/compress_functions/byteSubstitution.js.map +1 -0
  76. package/build/executor/compressor/compress_functions/ffSubstitution.d.ts +7 -0
  77. package/build/executor/compressor/compress_functions/ffSubstitution.js +54 -0
  78. package/build/executor/compressor/compress_functions/ffSubstitution.js.map +1 -0
  79. package/build/executor/compressor/compress_functions/findLongestAndSubstitute.d.ts +8 -0
  80. package/build/executor/compressor/compress_functions/findLongestAndSubstitute.js +67 -0
  81. package/build/executor/compressor/compress_functions/findLongestAndSubstitute.js.map +1 -0
  82. package/build/executor/compressor/compress_functions/findLongestAndSubstitute_old.d.ts +8 -0
  83. package/build/executor/compressor/compress_functions/findLongestAndSubstitute_old.js +61 -0
  84. package/build/executor/compressor/compress_functions/findLongestAndSubstitute_old.js.map +1 -0
  85. package/build/executor/compressor/compress_functions/reverseAddressSubstitution.d.ts +6 -0
  86. package/build/executor/compressor/compress_functions/reverseAddressSubstitution.js +37 -0
  87. package/build/executor/compressor/compress_functions/reverseAddressSubstitution.js.map +1 -0
  88. package/build/executor/compressor/compress_functions/searchUnusedBytes.d.ts +9 -0
  89. package/build/executor/compressor/compress_functions/searchUnusedBytes.js +33 -0
  90. package/build/executor/compressor/compress_functions/searchUnusedBytes.js.map +1 -0
  91. package/build/executor/compressor/fetchSaved.js +17 -0
  92. package/build/executor/compressor/fetchSaved.js.map +1 -0
  93. package/build/executor/compressor/utils/computeCostL2.d.ts +2 -0
  94. package/build/executor/compressor/utils/computeCostL2.js +14 -0
  95. package/build/executor/compressor/utils/computeCostL2.js.map +1 -0
  96. package/build/executor/compressor/utils/findLongestDuplicatedString.d.ts +2 -0
  97. package/build/executor/compressor/utils/findLongestDuplicatedString.js +30 -0
  98. package/build/executor/compressor/utils/findLongestDuplicatedString.js.map +1 -0
  99. package/build/executor/compressor/utils/getAllIndexes.d.ts +2 -0
  100. package/build/executor/compressor/utils/getAllIndexes.js +12 -0
  101. package/build/executor/compressor/utils/getAllIndexes.js.map +1 -0
  102. package/build/executor/compressor/utils/getByteForAddress.d.ts +2 -0
  103. package/build/executor/compressor/utils/getByteForAddress.js +14 -0
  104. package/build/executor/compressor/utils/getByteForAddress.js.map +1 -0
  105. package/build/executor/compressor/utils/intTo2Bytes.d.ts +2 -0
  106. package/build/executor/compressor/utils/intTo2Bytes.js +14 -0
  107. package/build/executor/compressor/utils/intTo2Bytes.js.map +1 -0
  108. package/build/executor/compressor/utils/intTo3Bytes.d.ts +2 -0
  109. package/build/executor/compressor/utils/intTo3Bytes.js +18 -0
  110. package/build/executor/compressor/utils/intTo3Bytes.js.map +1 -0
  111. package/build/executor/compressor/utils/intToByte.d.ts +2 -0
  112. package/build/executor/compressor/utils/intToByte.js +10 -0
  113. package/build/executor/compressor/utils/intToByte.js.map +1 -0
  114. package/build/generic-swap-transaction-builder.js +2 -2
  115. package/build/generic-swap-transaction-builder.js.map +1 -1
  116. package/build/types.d.ts +1 -0
  117. package/build/utils.d.ts +1 -1
  118. package/package.json +1 -1
  119. package/src/dex/aave-v3/aave-v3-e2e.test.ts +4 -9
  120. package/src/dex/aave-v3/aave-v3.ts +5 -0
  121. package/src/dex/angle-staked-stable/angle-staked-stable.ts +8 -0
  122. package/src/dex/compound/compound.ts +5 -0
  123. package/src/dex/dexalot/dexalot.ts +1 -1
  124. package/src/dex/etherfi.ts +5 -0
  125. package/src/dex/mStable.ts +4 -0
  126. package/src/dex/simple-exchange.ts +5 -5
  127. package/src/dex/spark/spark-e2e.test.ts +3 -3
  128. package/src/dex/spark/spark.ts +4 -0
  129. package/src/executor/Executor01BytecodeBuilder.ts +1 -0
  130. package/src/executor/Executor02BytecodeBuilder.ts +1 -0
  131. package/src/executor/Executor03BytecodeBuilder.ts +1 -0
  132. package/src/executor/executor01-bytecode-builder-e2e.test.ts +25 -0
  133. package/src/executor/executor02-bytecode-builder-e2e.test.ts +29 -0
  134. package/src/generic-swap-transaction-builder.ts +2 -1
  135. package/src/types.ts +1 -0
  136. package/tests/constants-e2e.ts +9 -9
  137. package/tests/utils-e2e.ts +1 -1
  138. package/.vscode/launch.json +0 -53
  139. package/.vscode/settings.json +0 -2
  140. package/.vscode/tasks.json +0 -15
  141. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +0 -52
  142. package/build/abi/wombat/pool.json +0 -1289
  143. package/build/dex/aave-v2/tokens-avalanche.json +0 -44
  144. package/build/dex/aave-v2/tokens-mainnet.json +0 -188
  145. package/build/dex/aave-v2/tokens-polygon.json +0 -44
  146. package/build/dex/maker-psm/scripts/gem.abi.json +0 -136
  147. package/build/dex/maker-psm/scripts/validate-state.js +0 -185
  148. package/build/dex/maker-psm/scripts/validate-state.js.map +0 -1
  149. package/build/dex/maker-psm/scripts/vat.abi.json +0 -243
  150. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +0 -53
  151. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +0 -1
  152. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +0 -17
  153. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +0 -64
  154. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +0 -1
  155. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +0 -17
  156. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +0 -79
  157. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +0 -1
  158. /package/build/dex/{solidly-v3/scripts/check-event-pool-event.d.ts → sdai/scripts/validate-state.d.ts} +0 -0
  159. /package/build/{dex/maker-psm/scripts/validate-state.d.ts → executor/compressor/fetchSaved.d.ts} +0 -0
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const intTo3Bytes_1 = __importDefault(require("./intTo3Bytes"));
7
+ const getByteForAddress = (addresses, address) => {
8
+ const index = addresses.indexOf(address.toLowerCase());
9
+ if (index < 0)
10
+ return null;
11
+ return (0, intTo3Bytes_1.default)(index);
12
+ };
13
+ exports.default = getByteForAddress;
14
+ //# sourceMappingURL=getByteForAddress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getByteForAddress.js","sourceRoot":"","sources":["../../../../src/executor/compressor/utils/getByteForAddress.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AAExC,MAAM,iBAAiB,GAAG,CACxB,SAAmB,EACnB,OAAe,EACA,EAAE;IACjB,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACvD,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3B,OAAO,IAAA,qBAAW,EAAC,KAAK,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const intTo2Bytes: (int: number) => string;
2
+ export default intTo2Bytes;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const intTo2Bytes = (int) => {
4
+ let hex = int.toString(16);
5
+ if (hex.length < 2)
6
+ hex = '000' + hex;
7
+ else if (hex.length < 3)
8
+ hex = '00' + hex;
9
+ else if (hex.length < 4)
10
+ hex = '0' + hex;
11
+ return hex;
12
+ };
13
+ exports.default = intTo2Bytes;
14
+ //# sourceMappingURL=intTo2Bytes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intTo2Bytes.js","sourceRoot":"","sources":["../../../../src/executor/compressor/utils/intTo2Bytes.ts"],"names":[],"mappings":";;AAAA,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE;IAC1C,IAAI,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;SACjC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;SACrC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAEzC,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const intTo3Bytes: (int: number) => string;
2
+ export default intTo3Bytes;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const intTo3Bytes = (int) => {
4
+ let hex = int.toString(16);
5
+ if (hex.length < 2)
6
+ hex = '00000' + hex;
7
+ else if (hex.length < 3)
8
+ hex = '0000' + hex;
9
+ else if (hex.length < 4)
10
+ hex = '000' + hex;
11
+ else if (hex.length < 5)
12
+ hex = '00' + hex;
13
+ else if (hex.length < 6)
14
+ hex = '0' + hex;
15
+ return hex;
16
+ };
17
+ exports.default = intTo3Bytes;
18
+ //# sourceMappingURL=intTo3Bytes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intTo3Bytes.js","sourceRoot":"","sources":["../../../../src/executor/compressor/utils/intTo3Bytes.ts"],"names":[],"mappings":";;AAAA,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE;IAC1C,IAAI,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC;SACnC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,MAAM,GAAG,GAAG,CAAC;SACvC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;SACtC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;SACrC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAEzC,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const intToByte: (int: number) => string;
2
+ export default intToByte;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const intToByte = (int) => {
4
+ let hex = int.toString(16);
5
+ if (hex.length < 2)
6
+ hex = '0' + hex;
7
+ return hex;
8
+ };
9
+ exports.default = intToByte;
10
+ //# sourceMappingURL=intToByte.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intToByte.js","sourceRoot":"","sources":["../../../../src/executor/compressor/utils/intToByte.ts"],"names":[],"mappings":";;AAAA,MAAM,SAAS,GAAG,CAAC,GAAW,EAAU,EAAE;IACxC,IAAI,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACpC,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,kBAAe,SAAS,CAAC"}
@@ -291,7 +291,7 @@ class GenericSwapTransactionBuilder {
291
291
  wethWithdraw,
292
292
  };
293
293
  }
294
- async addDexExchangeApproveParams(bytecodeBuilder, priceRoute, dexExchangeParams, maybeWethCallData) {
294
+ async addDexExchangeApproveParams(bytecodeBuilder, priceRoute, dexExchangeParams, maybeWethCallData, skipApproval) {
295
295
  const spender = bytecodeBuilder.getAddress();
296
296
  const tokenTargetMapping = [];
297
297
  let currentExchangeParamIndex = 0;
@@ -311,7 +311,7 @@ class GenericSwapTransactionBuilder {
311
311
  ...dexExchangeParams,
312
312
  ];
313
313
  approvals.forEach((alreadyApproved, index) => {
314
- if (!alreadyApproved) {
314
+ if (!alreadyApproved && !skipApproval) {
315
315
  const [token, target] = tokenTargetMapping[index].params;
316
316
  const exchangeParamIndex = tokenTargetMapping[index].exchangeParamIndex;
317
317
  const curExchangeParam = dexExchangeParams[exchangeParamIndex];
@@ -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/build/types.d.ts CHANGED
@@ -134,6 +134,7 @@ export declare type AdapterExchangeParam = {
134
134
  };
135
135
  export declare type DexExchangeParam = {
136
136
  needWrapNative: boolean;
137
+ skipApproval?: boolean;
137
138
  wethAddress?: string;
138
139
  exchangeData: string;
139
140
  targetExchange: string;
package/build/utils.d.ts CHANGED
@@ -6,7 +6,7 @@ import { MultiResult } from './lib/multi-wrapper';
6
6
  import { Contract } from 'web3-eth-contract';
7
7
  import Web3 from 'web3';
8
8
  import { AxiosError } from 'axios';
9
- export declare const isAxiosError: (e: any) => e is AxiosError<any, any>;
9
+ export declare const isAxiosError: (e: any) => e is AxiosError<unknown, any>;
10
10
  export declare const isETHAddress: (address: string) => boolean;
11
11
  export declare const prependWithOx: (str: string) => string;
12
12
  export declare const uuidToBytes16: (uuid: string) => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "3.7.6",
3
+ "version": "3.7.7-skip-approval",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -21,7 +21,7 @@ describe('AaveV3 E2E', () => {
21
21
 
22
22
  beforeAll(async () => {
23
23
  let results: Promise<void>[] = [];
24
- for (const networkEntry in Network) {
24
+ for (const networkEntry of Object.values(Network)) {
25
25
  if (isNaN(Number(networkEntry))) {
26
26
  break;
27
27
  }
@@ -446,15 +446,10 @@ describe('AaveV3 E2E', () => {
446
446
  );
447
447
 
448
448
  const pairs = [
449
- {
450
- tokenSymbol: 'USDC',
451
- aTokenSymbol: 'aEthUSDC',
452
- amount: '10000',
453
- },
454
449
  {
455
450
  tokenSymbol: 'ETH',
456
451
  aTokenSymbol: 'aEthWETH',
457
- amount: '100000000',
452
+ amount: '1000000000000000000',
458
453
  },
459
454
  {
460
455
  tokenSymbol: 'WETH',
@@ -481,7 +476,7 @@ describe('AaveV3 E2E', () => {
481
476
  describe(`${contractMethod}`, () => {
482
477
  it(pair.aTokenSymbol + ' -> ' + pair.tokenSymbol, async () => {
483
478
  await testE2E(
484
- getTokenFromASymbol(network, pair.aTokenSymbol)!,
479
+ tokens[pair.aTokenSymbol],
485
480
  tokens[pair.tokenSymbol],
486
481
  holders[pair.aTokenSymbol],
487
482
  pair.amount,
@@ -496,7 +491,7 @@ describe('AaveV3 E2E', () => {
496
491
  it(pair.tokenSymbol + ' -> ' + pair.aTokenSymbol, async () => {
497
492
  await testE2E(
498
493
  tokens[pair.tokenSymbol],
499
- getTokenFromASymbol(network, pair.aTokenSymbol)!,
494
+ tokens[pair.aTokenSymbol],
500
495
  holders[pair.tokenSymbol],
501
496
  pair.amount,
502
497
  side,
@@ -246,6 +246,7 @@ export class AaveV3 extends SimpleExchange implements IDex<Data, Param> {
246
246
  exchangeData,
247
247
  targetExchange: swapCallee,
248
248
  returnAmountPos: undefined,
249
+ skipApproval: data.fromAToken,
249
250
  };
250
251
  }
251
252
 
@@ -308,6 +309,10 @@ export class AaveV3 extends SimpleExchange implements IDex<Data, Param> {
308
309
  destAmount,
309
310
  swapData,
310
311
  swapCallee,
312
+ undefined,
313
+ undefined,
314
+ undefined,
315
+ data.fromAToken,
311
316
  );
312
317
  }
313
318
 
@@ -215,6 +215,7 @@ export class AngleStakedStable
215
215
  this.augustusAddress,
216
216
  ],
217
217
  );
218
+ const skipApproval = srcToken.toLowerCase() !== this.config.agToken;
218
219
 
219
220
  return this.buildSimpleParamWithoutWETHConversion(
220
221
  srcToken,
@@ -223,6 +224,10 @@ export class AngleStakedStable
223
224
  destAmount,
224
225
  swapData,
225
226
  exchange,
227
+ undefined,
228
+ undefined,
229
+ undefined,
230
+ skipApproval,
226
231
  );
227
232
  }
228
233
 
@@ -254,12 +259,15 @@ export class AngleStakedStable
254
259
  ],
255
260
  );
256
261
 
262
+ const skipApproval = srcToken.toLowerCase() !== this.config.agToken;
263
+
257
264
  return {
258
265
  needWrapNative: this.needWrapNative,
259
266
  dexFuncHasRecipient: true,
260
267
  exchangeData: swapData,
261
268
  targetExchange: exchange,
262
269
  returnAmountPos: undefined,
270
+ skipApproval,
263
271
  };
264
272
  }
265
273
 
@@ -76,6 +76,10 @@ export class Compound
76
76
  destAmount,
77
77
  swapData,
78
78
  cToken,
79
+ undefined,
80
+ undefined,
81
+ undefined,
82
+ data.fromCToken,
79
83
  );
80
84
  }
81
85
 
@@ -102,6 +106,7 @@ export class Compound
102
106
  exchangeData: swapData,
103
107
  targetExchange: cToken,
104
108
  returnAmountPos: undefined,
109
+ skipApproval: data.fromCToken,
105
110
  };
106
111
  }
107
112
  }
@@ -599,7 +599,7 @@ export class Dexalot extends SimpleExchange implements IDex<DexalotData> {
599
599
  takerAmount: isSell ? optimalSwapExchange.srcAmount : undefined,
600
600
  userAddress: options.txOrigin,
601
601
  chainid: this.network,
602
- executor: this.augustusAddress,
602
+ executor: options.executionContractAddress,
603
603
  partner: options.partner,
604
604
  slippage: slippageBps,
605
605
  };
@@ -127,6 +127,7 @@ export class EtherFi
127
127
 
128
128
  // if src token is WETH, we need to withdraw from weth and pass eth value on call. For other cases, we need to approve and perform call
129
129
  const isSrcTokenWeth = this.isWETH(srcToken);
130
+ const skipApproval = this.is_weETH(srcToken) && this.is_eETH(destToken);
130
131
 
131
132
  return this.buildSimpleParamWithoutWETHConversion(
132
133
  isSrcTokenWeth ? ETHER_ADDRESS : srcToken,
@@ -148,6 +149,7 @@ export class EtherFi
148
149
  values: ['0'],
149
150
  }
150
151
  : undefined,
152
+ skipApproval,
151
153
  );
152
154
  }
153
155
 
@@ -206,6 +208,8 @@ export class EtherFi
206
208
  swapFunctionParams,
207
209
  );
208
210
 
211
+ const skipApproval = this.is_weETH(srcToken) && this.is_eETH(destToken);
212
+
209
213
  return {
210
214
  needWrapNative: this.needWrapNative,
211
215
  dexFuncHasRecipient: false,
@@ -219,6 +223,7 @@ export class EtherFi
219
223
  ])
220
224
  : undefined,
221
225
  returnAmountPos: extractReturnAmountPosition(Interface, swapFunction),
226
+ skipApproval,
222
227
  };
223
228
  }
224
229
 
@@ -142,6 +142,10 @@ export class MStable
142
142
  destAmount,
143
143
  swapData,
144
144
  data.exchange,
145
+ undefined,
146
+ undefined,
147
+ undefined,
148
+ opType === MStableFunctions.redeem,
145
149
  );
146
150
  }
147
151
  }
@@ -110,12 +110,12 @@ export class SimpleExchange {
110
110
  spender?: Address,
111
111
  networkFee: NumberAsString = '0',
112
112
  preCalls?: Omit<SimpleExchangeParam, 'networkFee'>,
113
+ skipAllowance?: boolean,
113
114
  ): Promise<SimpleExchangeParam> {
114
- const approveParam = await this.getApproveSimpleParam(
115
- src,
116
- spender || swapCallee,
117
- srcAmount,
118
- );
115
+ const approveParam = await (!skipAllowance
116
+ ? this.getApproveSimpleParam(src, spender || swapCallee, srcAmount)
117
+ : { callees: [], calldata: [], values: [], networkFee: '0' });
118
+
119
119
  const swapValue = (
120
120
  BigInt(networkFee) + (isETHAddress(src) ? BigInt(srcAmount) : 0n)
121
121
  ).toString();
@@ -27,11 +27,11 @@ function testForNetwork(
27
27
  SwapSide.SELL,
28
28
  [
29
29
  ContractMethod.simpleSwap,
30
- ContractMethod.multiSwap,
31
- ContractMethod.megaSwap,
30
+ // ContractMethod.multiSwap,
31
+ // ContractMethod.megaSwap,
32
32
  ],
33
33
  ],
34
- [SwapSide.BUY, [ContractMethod.simpleBuy, ContractMethod.buy]],
34
+ // [SwapSide.BUY, [ContractMethod.simpleBuy, ContractMethod.buy]],
35
35
  ]);
36
36
 
37
37
  describe(`${network}`, () => {
@@ -207,6 +207,10 @@ export class Spark
207
207
  destAmount,
208
208
  swapData,
209
209
  exchange,
210
+ undefined,
211
+ undefined,
212
+ undefined,
213
+ isSell && this.isDai(destToken),
210
214
  );
211
215
  }
212
216
 
@@ -268,6 +268,7 @@ export class Executor01BytecodeBuilder extends ExecutorBytecodeBuilder<
268
268
  (!isETHAddress(swap.srcToken) ||
269
269
  (isETHAddress(swap.srcToken) && index !== 0)) &&
270
270
  !curExchangeParam.transferSrcTokenBeforeSwap &&
271
+ !curExchangeParam.skipApproval &&
271
272
  curExchangeParam.approveData
272
273
  ) {
273
274
  const approveCallData = this.buildApproveCallData(
@@ -606,6 +606,7 @@ export class Executor02BytecodeBuilder extends ExecutorBytecodeBuilder<
606
606
  if (
607
607
  !isETHAddress(swap.srcToken) &&
608
608
  !curExchangeParam.transferSrcTokenBeforeSwap &&
609
+ !curExchangeParam.skipApproval &&
609
610
  curExchangeParam.approveData
610
611
  ) {
611
612
  const approveCallData = this.buildApproveCallData(
@@ -147,6 +147,7 @@ export class Executor03BytecodeBuilder extends ExecutorBytecodeBuilder<
147
147
  if (
148
148
  flags.dexes[index] % 4 !== 1 && // not sendEth
149
149
  !isETHAddress(swap.srcToken) &&
150
+ !curExchangeParam.skipApproval &&
150
151
  curExchangeParam.approveData
151
152
  ) {
152
153
  // TODO: as we give approve for MAX_UINT and approve for current targetExchange was given
@@ -102,6 +102,31 @@ describe('Executor01ByteCodeBuilder e2e tests', () => {
102
102
  const network = Network.MAINNET;
103
103
 
104
104
  describe('SimpleSwap', () => {
105
+ describe('AngleStakedStableUSD', () => {
106
+ const dexKey = 'AngleStakedStableUSD';
107
+
108
+ const tokens = Tokens[network];
109
+ const holders = Holders[network];
110
+ const provider = new StaticJsonRpcProvider(
111
+ generateConfig(network).privateHttpProvider,
112
+ network,
113
+ );
114
+
115
+ it('SimpleSwap stUSD -> USDA', async () => {
116
+ await testE2E(
117
+ tokens['stUSD'],
118
+ tokens['USDA'],
119
+ holders['stUSD'],
120
+ '1000000000000',
121
+ SwapSide.SELL,
122
+ dexKey,
123
+ ContractMethod.simpleSwap,
124
+ network,
125
+ provider,
126
+ );
127
+ });
128
+ });
129
+
105
130
  describe('UniswapV3', () => {
106
131
  const dexKey = 'UniswapV3';
107
132
 
@@ -23,6 +23,35 @@ describe('Executor02ByteCodeBuilder e2e tests', () => {
23
23
  describe('SimpleSwap', () => {
24
24
  const contractMethod = ContractMethod.simpleSwap;
25
25
 
26
+ describe('stUSD -> USDA via Angle Staked Stable USD', () => {
27
+ const dexKeys = ['AngleStakedStableUSD'];
28
+
29
+ const tokenASymbol: string = 'stUSD';
30
+ const tokenBSymbol: string = 'USDA';
31
+ const tokenAAmount: string = '60000000000000000000';
32
+
33
+ const side = SwapSide.SELL;
34
+
35
+ it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
36
+ await testE2E(
37
+ tokens[tokenASymbol],
38
+ tokens[tokenBSymbol],
39
+ holders[tokenASymbol],
40
+ tokenAAmount,
41
+ side,
42
+ dexKeys,
43
+ contractMethod,
44
+ network,
45
+ provider,
46
+ undefined,
47
+ undefined,
48
+ undefined,
49
+ 200,
50
+ 2000,
51
+ );
52
+ });
53
+ });
54
+
26
55
  describe('ETH -> SUSHI via SushiSwapV3 and UniswapV3', () => {
27
56
  const dexKeys = ['SushiSwapV3', 'UniswapV3'];
28
57
 
@@ -674,6 +674,7 @@ export class GenericSwapTransactionBuilder {
674
674
  priceRoute: OptimalRate,
675
675
  dexExchangeParams: DexExchangeParam[],
676
676
  maybeWethCallData?: DepositWithdrawReturn,
677
+ skipApproval?: boolean,
677
678
  ): Promise<DexExchangeBuildParam[]> {
678
679
  const spender = bytecodeBuilder.getAddress();
679
680
  const tokenTargetMapping: {
@@ -715,7 +716,7 @@ export class GenericSwapTransactionBuilder {
715
716
  ];
716
717
 
717
718
  approvals.forEach((alreadyApproved, index) => {
718
- if (!alreadyApproved) {
719
+ if (!alreadyApproved && !skipApproval) {
719
720
  const [token, target] = tokenTargetMapping[index].params;
720
721
  const exchangeParamIndex = tokenTargetMapping[index].exchangeParamIndex;
721
722
  const curExchangeParam = dexExchangeParams[exchangeParamIndex];
package/src/types.ts CHANGED
@@ -159,6 +159,7 @@ export type AdapterExchangeParam = {
159
159
 
160
160
  export type DexExchangeParam = {
161
161
  needWrapNative: boolean;
162
+ skipApproval?: boolean;
162
163
  wethAddress?: string;
163
164
  exchangeData: string;
164
165
  targetExchange: string;
@@ -39,6 +39,14 @@ export const Tokens: {
39
39
  address: '0x8f8221aFbB33998d8584A2B05749bA73c37a938a',
40
40
  decimals: 18,
41
41
  },
42
+ eETH: {
43
+ address: '0x35fA164735182de50811E8e2E824cFb9B6118ac2',
44
+ decimals: 18,
45
+ },
46
+ weETH: {
47
+ address: '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee',
48
+ decimals: 18,
49
+ },
42
50
  AMPL: {
43
51
  address: '0xd46ba6d942050d489dbd938a2c909a5d5039a161',
44
52
  decimals: 9,
@@ -431,14 +439,6 @@ export const Tokens: {
431
439
  address: '0x83f20f44975d03b1b09e64809b757c47f942beea',
432
440
  decimals: 18,
433
441
  },
434
- eETH: {
435
- address: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',
436
- decimals: 18,
437
- },
438
- weETH: {
439
- address: '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee',
440
- decimals: 18,
441
- },
442
442
  stataUSDT: {
443
443
  address: '0x862c57d48becb45583aeba3f489696d22466ca1b',
444
444
  decimals: 6,
@@ -1477,7 +1477,7 @@ export const Holders: {
1477
1477
  USDD: '0xf89d7b9c864f589bbf53a82105107622b35eaa40',
1478
1478
  alETH: '0x500a4f1280a0b63f47862d658b6c335cc939aaed',
1479
1479
  SHIBA: '0x73af3bcf944a6559933396c1577b257e2054d935',
1480
- aEthWETH: '0xfEA3F5b06D41Cb1526b9cAf8be63c5b37C475f23',
1480
+ aEthWETH: '0x931433324E6B0b5B04E3460ef3fb3f78dda3c721',
1481
1481
  dUSDC: '0x2FC2F705110A7F46Ce85F701d7217EF1018f01A3',
1482
1482
  PSP: '0xE5E5440a1CE69C5cf67BFFA74d185e57c31b43E5',
1483
1483
  EUROC: '0x64AE5802620398143FC7113037769175F74825Ea',
@@ -473,7 +473,7 @@ export async function testE2E(
473
473
  ? new APIParaswapSDK(network, dexKeys, '')
474
474
  : new LocalParaswapSDK(network, dexKeys, '', limitOrderProvider);
475
475
 
476
- if (paraswap.initializePricing) await paraswap.initializePricing();
476
+ await paraswap.initializePricing?.();
477
477
 
478
478
  if (sleepMs) {
479
479
  await sleep(sleepMs);
@@ -1,53 +0,0 @@
1
- {
2
- "version": "0.2.0",
3
- "configurations": [
4
- {
5
- "type": "node",
6
- "request": "launch",
7
- "name": "Current",
8
- "program": "${file}",
9
- "preLaunchTask": "npm: build",
10
- "sourceMaps": true,
11
- "smartStep": true,
12
- "internalConsoleOptions": "openOnSessionStart",
13
- "outFiles": ["${workspaceFolder}/build/**/*.js"]
14
- },
15
- {
16
- "type": "node",
17
- "request": "launch",
18
- "name": "Debug dex integration",
19
- "program": "${workspaceFolder}/node_modules/ts-node/dist/bin.js",
20
- "args": [
21
- "--project",
22
- "tsconfig.json",
23
- // "${workspaceFolder}/src/dex/algebra/scripts/validate-state.ts",
24
- "${workspaceFolder}/src/dex/camelot/camelot-pool-discovery.test.ts",
25
- // "${workspaceFolder}/src/dex/solidly-v3/scripts/check-event-pool-event.ts",
26
- // "${workspaceFolder}/scripts/dex-integration.ts",
27
- "test",
28
- "wombat"
29
- ],
30
- "console": "integratedTerminal",
31
- "internalConsoleOptions": "neverOpen",
32
- "runtimeArgs": ["--nolazy"],
33
- "sourceMaps": true,
34
- "smartStep": true,
35
- "skipFiles": ["<node_internals>/**"],
36
- "cwd": "${workspaceFolder}"
37
- },
38
- {
39
- "type": "node",
40
- "name": "Jest file",
41
- "request": "launch",
42
- "program": "${workspaceFolder}/node_modules/jest/bin/jest.js",
43
- // "program": "${workspaceFolder}/src/dex/camelot/scripts/validate-state.ts",
44
- // "args": ["src/dex/balancer-v1/balancer-v1-e2e.test.ts"],
45
- // "args": ["${relativeFile}"],
46
- "args": ["${file}"],
47
- "cwd": "${workspaceRoot}",
48
- "console": "integratedTerminal",
49
- "internalConsoleOptions": "neverOpen",
50
- "sourceMaps": true
51
- }
52
- ]
53
- }