@paraswap/dex-lib 2.14.6 → 2.14.7

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 (53) hide show
  1. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  2. package/.idea/misc.xml +6 -0
  3. package/.idea/modules.xml +8 -0
  4. package/.idea/vcs.xml +6 -0
  5. package/.vscode/launch.json +21 -0
  6. package/build/dex/aave-v3/tokens/arbitrum.json +50 -0
  7. package/build/dex/aave-v3/tokens/avalanche.json +50 -0
  8. package/build/dex/aave-v3/tokens/fantom.json +62 -0
  9. package/build/dex/aave-v3/tokens/mainnet.json +44 -0
  10. package/build/dex/aave-v3/tokens/optimism.json +50 -0
  11. package/build/dex/aave-v3/tokens/polygon.json +98 -0
  12. package/build/dex/balancer-v2/VirtualBoostedPool.d.ts +79 -0
  13. package/build/dex/balancer-v2/VirtualBoostedPool.js +382 -0
  14. package/build/dex/balancer-v2/VirtualBoostedPool.js.map +1 -0
  15. package/build/dex/test-aave-v3/config.d.ts +4 -0
  16. package/build/dex/test-aave-v3/config.js +15 -0
  17. package/build/dex/test-aave-v3/config.js.map +1 -0
  18. package/build/dex/test-aave-v3/test-aave-v3-pool.d.ts +39 -0
  19. package/build/dex/test-aave-v3/test-aave-v3-pool.js +63 -0
  20. package/build/dex/test-aave-v3/test-aave-v3-pool.js.map +1 -0
  21. package/build/dex/test-aave-v3/test-aave-v3.d.ts +37 -0
  22. package/build/dex/test-aave-v3/test-aave-v3.js +126 -0
  23. package/build/dex/test-aave-v3/test-aave-v3.js.map +1 -0
  24. package/build/dex/test-aave-v3/types.d.ts +6 -0
  25. package/build/dex/{maverick → test-aave-v3}/types.js.map +1 -1
  26. package/build/lib/fetcher/fetcher.js +7 -2
  27. package/build/lib/fetcher/fetcher.js.map +1 -1
  28. package/package.json +1 -1
  29. package/src/dex/generic-rfq/generic-rfq-e2e.test.ts +26 -10
  30. package/src/lib/fetcher/fetcher.ts +11 -6
  31. package/tests/utils-e2e.ts +13 -13
  32. package/build/abi/maverick/pool.json +0 -913
  33. package/build/abi/maverick/router.json +0 -703
  34. package/build/dex/maverick/config.d.ts +0 -4
  35. package/build/dex/maverick/config.js +0 -20
  36. package/build/dex/maverick/config.js.map +0 -1
  37. package/build/dex/maverick/maverick-math/maverick-pool-math.d.ts +0 -67
  38. package/build/dex/maverick/maverick-math/maverick-pool-math.js +0 -406
  39. package/build/dex/maverick/maverick-math/maverick-pool-math.js.map +0 -1
  40. package/build/dex/maverick/maverick-math/maverick-sol-math.d.ts +0 -17
  41. package/build/dex/maverick/maverick-math/maverick-sol-math.js +0 -139
  42. package/build/dex/maverick/maverick-math/maverick-sol-math.js.map +0 -1
  43. package/build/dex/maverick/maverick-pool.d.ts +0 -41
  44. package/build/dex/maverick/maverick-pool.js +0 -130
  45. package/build/dex/maverick/maverick-pool.js.map +0 -1
  46. package/build/dex/maverick/maverick.d.ts +0 -42
  47. package/build/dex/maverick/maverick.js +0 -174
  48. package/build/dex/maverick/maverick.js.map +0 -1
  49. package/build/dex/maverick/subgraph-queries.d.ts +0 -4
  50. package/build/dex/maverick/subgraph-queries.js +0 -114
  51. package/build/dex/maverick/subgraph-queries.js.map +0 -1
  52. package/build/dex/maverick/types.d.ts +0 -46
  53. /package/build/dex/{maverick → test-aave-v3}/types.js +0 -0
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.TestAaveV3 = void 0;
27
+ const CALLDATA_GAS_COST = __importStar(require("../../calldata-gas-cost"));
28
+ const utils_1 = require("../../utils");
29
+ const simple_exchange_1 = require("../simple-exchange");
30
+ const config_1 = require("./config");
31
+ const test_aave_v3_pool_1 = require("./test-aave-v3-pool");
32
+ class TestAaveV3 extends simple_exchange_1.SimpleExchange {
33
+ constructor(network, dexKey, dexHelper, adapters = config_1.Adapters[network] || {}) {
34
+ super(dexHelper, dexKey);
35
+ this.network = network;
36
+ this.dexKey = dexKey;
37
+ this.dexHelper = dexHelper;
38
+ this.adapters = adapters;
39
+ this.hasConstantPriceLargeAmounts = false;
40
+ // TODO: set true here if protocols works only with wrapped asset
41
+ this.needWrapNative = true;
42
+ this.isFeeOnTransferSupported = false;
43
+ this.logger = dexHelper.getLogger(dexKey);
44
+ this.eventPools = new test_aave_v3_pool_1.TestAaveV3EventPool(dexKey, network, dexHelper, this.logger);
45
+ }
46
+ // Initialize pricing is called once in the start of
47
+ // pricing service. It is intended to setup the integration
48
+ // for pricing requests. It is optional for a DEX to
49
+ // implement this function
50
+ async initializePricing(blockNumber) {
51
+ // TODO: complete me!
52
+ }
53
+ // Returns the list of contract adapters (name and index)
54
+ // for a buy/sell. Return null if there are no adapters.
55
+ getAdapters(side) {
56
+ return this.adapters[side] ? this.adapters[side] : null;
57
+ }
58
+ // Returns list of pool identifiers that can be used
59
+ // for a given swap. poolIdentifiers must be unique
60
+ // across DEXes. It is recommended to use
61
+ // ${dexKey}_${poolAddress} as a poolIdentifier
62
+ async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
63
+ // TODO: complete me!
64
+ return [];
65
+ }
66
+ // Returns pool prices for amounts.
67
+ // If limitPools is defined only pools in limitPools
68
+ // should be used. If limitPools is undefined then
69
+ // any pools can be used.
70
+ async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
71
+ // TODO: complete me!
72
+ return null;
73
+ }
74
+ // Returns estimated gas cost of calldata for this DEX in multiSwap
75
+ getCalldataGasCost(poolPrices) {
76
+ // TODO: update if there is any payload in getAdapterParam
77
+ return CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
78
+ }
79
+ // Encode params required by the exchange adapter
80
+ // Used for multiSwap, buy & megaSwap
81
+ // Hint: abiCoder.encodeParameter() could be useful
82
+ getAdapterParam(srcToken, destToken, srcAmount, destAmount, data, side) {
83
+ // TODO: complete me!
84
+ const { exchange } = data;
85
+ // Encode here the payload for adapter
86
+ const payload = '';
87
+ return {
88
+ targetExchange: exchange,
89
+ payload,
90
+ networkFee: '0',
91
+ };
92
+ }
93
+ // Encode call data used by simpleSwap like routers
94
+ // Used for simpleSwap & simpleBuy
95
+ // Hint: this.buildSimpleParamWithoutWETHConversion
96
+ // could be useful
97
+ async getSimpleParam(srcToken, destToken, srcAmount, destAmount, data, side) {
98
+ // TODO: complete me!
99
+ const { exchange } = data;
100
+ // Encode here the transaction arguments
101
+ const swapData = '';
102
+ return this.buildSimpleParamWithoutWETHConversion(srcToken, srcAmount, destToken, destAmount, swapData, exchange);
103
+ }
104
+ // This is called once before getTopPoolsForToken is
105
+ // called for multiple tokens. This can be helpful to
106
+ // update common state required for calculating
107
+ // getTopPoolsForToken. It is optional for a DEX
108
+ // to implement this
109
+ async updatePoolState() {
110
+ // TODO: complete me!
111
+ }
112
+ // Returns list of top pools based on liquidity. Max
113
+ // limit number pools should be returned.
114
+ async getTopPoolsForToken(tokenAddress, limit) {
115
+ //TODO: complete me!
116
+ return [];
117
+ }
118
+ // This is optional function in case if your implementation has acquired any resources
119
+ // you need to release for graceful shutdown. For example, it may be any interval timer
120
+ releaseResources() {
121
+ // TODO: complete me!
122
+ }
123
+ }
124
+ exports.TestAaveV3 = TestAaveV3;
125
+ TestAaveV3.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.TestAaveV3Config);
126
+ //# sourceMappingURL=test-aave-v3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-aave-v3.js","sourceRoot":"","sources":["../../../src/dex/test-aave-v3/test-aave-v3.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Address } from '../../types';
2
+ export declare type PoolState = {};
3
+ export declare type TestAaveV3Data = {
4
+ exchange: Address;
5
+ };
6
+ export declare type DexParams = {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/maverick/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/test-aave-v3/types.ts"],"names":[],"mappings":""}
@@ -51,8 +51,13 @@ class Fetcher {
51
51
  const failures = results
52
52
  .map((_, i) => i)
53
53
  .filter(i => results[i] instanceof Error);
54
- results.map(result => {
55
- this.logger.info('Results Data:', JSON.stringify(result.data, null, 4).substring(0, 500));
54
+ results
55
+ .filter(result => !(result instanceof Error))
56
+ .map(result => {
57
+ debugger;
58
+ this.logger.info('Results Data:', JSON.stringify(result.data)
59
+ .replace(/(?:\r\n|\r|\n)/g, ' ')
60
+ .substring(0, 1000));
56
61
  });
57
62
  failures.forEach(i => {
58
63
  this.logger.warn(`failed polling ${this.requests[i].info.requestOptions.url} ${results[i]}`);
@@ -1 +1 @@
1
- {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../../src/lib/fetcher/fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../../src/lib/fetcher/fetcher.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": "2.14.6",
3
+ "version": "2.14.7",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -5,9 +5,15 @@ import { ethers } from 'ethers';
5
5
  import { Network, ContractMethod, SwapSide, MAX_UINT } from '../../constants';
6
6
  import { generateConfig } from '../../config';
7
7
  import { newTestE2E, getEnv } from '../../../tests/utils-e2e';
8
- import { SmartTokens, GENERIC_ADDR1 } from '../../../tests/constants-e2e';
8
+ import {
9
+ SmartTokens,
10
+ GENERIC_ADDR1,
11
+ Tokens,
12
+ } from '../../../tests/constants-e2e';
9
13
  import { RFQConfig } from './types';
10
14
  import { testConfig } from './e2e-test-config';
15
+ import { SmartToken } from '../../../tests/smart-tokens';
16
+ import { Token } from '../../types';
11
17
 
12
18
  const PK_KEY = process.env.TEST_PK_KEY;
13
19
 
@@ -85,22 +91,32 @@ const dexKey = 'YOUR_NAME';
85
91
  describe(`GenericRFQ ${dexKey} E2E`, () => {
86
92
  for (const [_network, testCases] of Object.entries(testConfig)) {
87
93
  const network = parseInt(_network, 10);
94
+ const tokens = Tokens[network];
88
95
  const smartTokens = SmartTokens[network];
89
96
  const config = generateConfig(network);
90
97
 
91
98
  config.rfqConfigs[dexKey] = buildConfigForGenericRFQ();
92
99
  describe(`${Network[network]}`, () => {
93
100
  for (const testCase of testCases) {
94
- if (!smartTokens.hasOwnProperty(testCase.srcToken)) {
95
- throw new Error(`Please add "addBalance" and "addAllowance" functions for ${testCase.srcToken} on ${Network[network]} (in constants-e2e.ts).`);
96
- }
97
- if (!smartTokens.hasOwnProperty(testCase.destToken)){
98
- throw new Error(`Please add "addBalance" and "addAllowance" functions for ${testCase.destToken} on ${Network[network]} (in constants-e2e.ts).`);
99
- }
100
- const srcToken = smartTokens[testCase.srcToken];
101
- const destToken = smartTokens[testCase.destToken];
101
+ let srcToken: Token | SmartToken, destToken: Token | SmartToken;
102
+
103
+ if (SKIP_TENDERLY) {
104
+ srcToken = tokens[testCase.srcToken];
105
+ destToken = tokens[testCase.destToken];
106
+ } else {
107
+ if (!smartTokens.hasOwnProperty(testCase.srcToken)) {
108
+ throw new Error(
109
+ `Please add "addBalance" and "addAllowance" functions for ${testCase.srcToken} on ${Network[network]} (in constants-e2e.ts).`,
110
+ );
111
+ }
112
+ if (!smartTokens.hasOwnProperty(testCase.destToken)) {
113
+ throw new Error(
114
+ `Please add "addBalance" and "addAllowance" functions for ${testCase.destToken} on ${Network[network]} (in constants-e2e.ts).`,
115
+ );
116
+ }
117
+ srcToken = smartTokens[testCase.srcToken];
118
+ destToken = smartTokens[testCase.destToken];
102
119
 
103
- if (!SKIP_TENDERLY) {
104
120
  srcToken.addBalance(testAccount.address, MAX_UINT);
105
121
  srcToken.addAllowance(
106
122
  testAccount.address,
@@ -76,12 +76,17 @@ export default class Fetcher<T> {
76
76
  .map((_, i) => i)
77
77
  .filter(i => results[i] instanceof Error);
78
78
 
79
- results.map(result => {
80
- this.logger.info(
81
- 'Results Data:',
82
- JSON.stringify((result as any).data, null, 4).substring(0, 500),
83
- );
84
- });
79
+ results
80
+ .filter(result => !(result instanceof Error))
81
+ .map(result => {
82
+ debugger;
83
+ this.logger.info(
84
+ 'Results Data:',
85
+ JSON.stringify((result as any).data)
86
+ .replace(/(?:\r\n|\r|\n)/g, ' ')
87
+ .substring(0, 1000),
88
+ );
89
+ });
85
90
  failures.forEach(i => {
86
91
  this.logger.warn(
87
92
  `failed polling ${this.requests[i].info.requestOptions.url} ${results[i]}`,
@@ -282,8 +282,8 @@ export async function testE2E(
282
282
 
283
283
  export type TestParamE2E = {
284
284
  config: Config;
285
- srcToken: SmartToken;
286
- destToken: SmartToken;
285
+ srcToken: Token | SmartToken;
286
+ destToken: Token | SmartToken;
287
287
  senderAddress: Address;
288
288
  thirdPartyAddress?: Address;
289
289
  _amount: string;
@@ -372,12 +372,12 @@ export async function newTestE2E({
372
372
  stateOverrides: {},
373
373
  };
374
374
 
375
- destToken.addBalance(GIFTER_ADDRESS, MAX_UINT);
376
- destToken.applyOverrides(stateOverrides);
375
+ (destToken as SmartToken).addBalance(GIFTER_ADDRESS, MAX_UINT);
376
+ (destToken as SmartToken).applyOverrides(stateOverrides);
377
377
 
378
378
  const giftTx = makeFakeTransferToSenderAddress(
379
379
  thirdPartyAddress,
380
- destToken.token,
380
+ (destToken as SmartToken).token,
381
381
  swapSide === SwapSide.SELL
382
382
  ? twiceAmount.toString()
383
383
  : (BigInt(MAX_UINT) / 4n).toString(),
@@ -402,8 +402,8 @@ export async function newTestE2E({
402
402
  }
403
403
  try {
404
404
  const priceRoute = await paraswap.getPrices(
405
- srcToken.token,
406
- destToken.token,
405
+ skipTenderly ? (srcToken as Token) : (srcToken as SmartToken).token,
406
+ skipTenderly ? (destToken as Token) : (destToken as SmartToken).token,
407
407
  amount,
408
408
  swapSide,
409
409
  contractMethod,
@@ -432,11 +432,11 @@ export async function newTestE2E({
432
432
  networkID: `${network}`,
433
433
  stateOverrides: {},
434
434
  };
435
- srcToken.applyOverrides(stateOverrides);
436
- destToken.applyOverrides(stateOverrides);
435
+ (srcToken as SmartToken).applyOverrides(stateOverrides);
436
+ (destToken as SmartToken).applyOverrides(stateOverrides);
437
437
 
438
438
  if (swapSide === SwapSide.SELL) {
439
- srcToken
439
+ (srcToken as SmartToken)
440
440
  .addBalance(senderAddress, twiceAmount.toString())
441
441
  .addAllowance(
442
442
  senderAddress,
@@ -444,7 +444,7 @@ export async function newTestE2E({
444
444
  amount.toString(),
445
445
  );
446
446
  } else {
447
- srcToken
447
+ (srcToken as SmartToken)
448
448
  .addBalance(senderAddress, MAX_UINT)
449
449
  .addAllowance(
450
450
  senderAddress,
@@ -453,8 +453,8 @@ export async function newTestE2E({
453
453
  );
454
454
  }
455
455
 
456
- srcToken.applyOverrides(stateOverrides);
457
- destToken.applyOverrides(stateOverrides);
456
+ (srcToken as SmartToken).applyOverrides(stateOverrides);
457
+ (destToken as SmartToken).applyOverrides(stateOverrides);
458
458
 
459
459
  const swapTx = await (ts as TenderlySimulation).simulate(
460
460
  swapParams,