@paraswap/dex-lib 4.1.11-erc-4626.0 → 4.1.11-erc-4626.2

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.
@@ -753,5 +753,39 @@
753
753
  "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
754
754
  "stateMutability": "nonpayable",
755
755
  "type": "function"
756
+ },
757
+ {
758
+ "anonymous": false,
759
+ "inputs": [
760
+ {
761
+ "indexed": true,
762
+ "name": "dst",
763
+ "type": "address"
764
+ },
765
+ {
766
+ "indexed": false,
767
+ "name": "wad",
768
+ "type": "uint256"
769
+ }
770
+ ],
771
+ "name": "Deposit",
772
+ "type": "event"
773
+ },
774
+ {
775
+ "anonymous": false,
776
+ "inputs": [
777
+ {
778
+ "indexed": true,
779
+ "name": "src",
780
+ "type": "address"
781
+ },
782
+ {
783
+ "indexed": false,
784
+ "name": "wad",
785
+ "type": "uint256"
786
+ }
787
+ ],
788
+ "name": "Withdrawal",
789
+ "type": "event"
756
790
  }
757
791
  ]
@@ -27,19 +27,25 @@ class ERC4626EventPool extends stateful_event_subscriber_1.StatefulEventSubscrib
27
27
  this.logDecoder = (log) => this.wrapperInterface.parseLog(log);
28
28
  }
29
29
  async processLog(state, log, blockHeader) {
30
- const event = this.logDecoder(log);
31
- if (log.topics[0] === this.transferTopic &&
32
- log.address.toLowerCase() === this.asset &&
33
- event.args.to.toLowerCase() === this.vault) {
34
- return this.handleAssetTransferToVault(event, state, log);
30
+ try {
31
+ const event = this.logDecoder(log);
32
+ if (log.topics[0] === this.transferTopic &&
33
+ log.address.toLowerCase() === this.asset &&
34
+ event.args.to.toLowerCase() === this.vault) {
35
+ return this.handleAssetTransferToVault(event, state, log);
36
+ }
37
+ if (log.topics[0] === this.depositTopic) {
38
+ return this.handleDeposit(event, state, log);
39
+ }
40
+ if (log.topics[0] === this.withdrawTopic) {
41
+ return this.handleWithdraw(event, state, log);
42
+ }
43
+ return null;
35
44
  }
36
- if (log.topics[0] === this.depositTopic) {
37
- return this.handleDeposit(event, state, log);
45
+ catch (error) {
46
+ this.logger.error(`Error processing log: ${log}, error: ${error}`);
47
+ return null;
38
48
  }
39
- if (log.topics[0] === this.withdrawTopic) {
40
- return this.handleWithdraw(event, state, log);
41
- }
42
- return null;
43
49
  }
44
50
  async generateState(blockNumber = 'latest') {
45
51
  const calls = [
@@ -1 +1 @@
1
- {"version":3,"file":"erc-4626-pool.js","sourceRoot":"","sources":["../../../src/dex/erc4626/erc-4626-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"erc-4626-pool.js","sourceRoot":"","sources":["../../../src/dex/erc4626/erc-4626-pool.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,6 @@ const bigint_constants_1 = require("../../bigint-constants");
47
47
  const erc_4626_pool_1 = require("./erc-4626-pool");
48
48
  const abi_1 = require("@ethersproject/abi");
49
49
  const ERC4626_json_1 = __importDefault(require("../../abi/ERC4626.json"));
50
- const erc20_json_1 = __importDefault(require("../../abi/erc20.json"));
51
50
  const constants_2 = require("./constants");
52
51
  const utils_2 = require("../../executor/utils");
53
52
  class ERC4626 extends simple_exchange_1.SimpleExchange {
@@ -63,12 +62,7 @@ class ERC4626 extends simple_exchange_1.SimpleExchange {
63
62
  static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.ERC4626Config);
64
63
  eventPool;
65
64
  logger;
66
- constructor(network, dexKey, dexHelper, vault = config_1.ERC4626Config[dexKey][network].vault, asset = config_1.ERC4626Config[dexKey][network].asset, erc4626Interface = new abi_1.Interface([
67
- // Vault abi
68
- ...ERC4626_json_1.default,
69
- // asset abi (specifically to handle Transfer to vault event)
70
- ...erc20_json_1.default,
71
- ])) {
65
+ constructor(network, dexKey, dexHelper, vault = config_1.ERC4626Config[dexKey][network].vault, asset = config_1.ERC4626Config[dexKey][network].asset, erc4626Interface = new abi_1.Interface(ERC4626_json_1.default)) {
72
66
  super(dexHelper, dexKey);
73
67
  this.network = network;
74
68
  this.dexKey = dexKey;
@@ -144,7 +138,13 @@ class ERC4626 extends simple_exchange_1.SimpleExchange {
144
138
  unit: bigint_constants_1.BI_POWS[18],
145
139
  prices: amounts.map(amount => calcFunction(amount, state)),
146
140
  gasCost: isWrap ? 60000 : 70000,
147
- data: { exchange: `${this.vault}` },
141
+ data: {
142
+ exchange: `${this.vault}`,
143
+ state: {
144
+ totalShares: state.totalShares.toString(),
145
+ totalAssets: state.totalAssets.toString(),
146
+ },
147
+ },
148
148
  poolAddresses: [this.vault],
149
149
  exchange: this.dexKey,
150
150
  },
@@ -1 +1 @@
1
- {"version":3,"file":"erc4626.js","sourceRoot":"","sources":["../../../src/dex/erc4626/erc4626.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"erc4626.js","sourceRoot":"","sources":["../../../src/dex/erc4626/erc4626.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,10 @@ export type ERC4626PoolState = {
5
5
  };
6
6
  export type ERC4626Data = {
7
7
  exchange: string;
8
+ state: {
9
+ totalShares: string;
10
+ totalAssets: string;
11
+ };
8
12
  };
9
13
  export declare enum ERC4626Functions {
10
14
  deposit = "deposit",
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/erc4626/types.ts"],"names":[],"mappings":";;;AAWA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,iCAAa,CAAA;AACf,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/erc4626/types.ts"],"names":[],"mappings":";;;AAeA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,iCAAa,CAAA;AACf,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "4.1.11-erc-4626.0",
3
+ "version": "4.1.11-erc-4626.2",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -753,5 +753,39 @@
753
753
  "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
754
754
  "stateMutability": "nonpayable",
755
755
  "type": "function"
756
+ },
757
+ {
758
+ "anonymous": false,
759
+ "inputs": [
760
+ {
761
+ "indexed": true,
762
+ "name": "dst",
763
+ "type": "address"
764
+ },
765
+ {
766
+ "indexed": false,
767
+ "name": "wad",
768
+ "type": "uint256"
769
+ }
770
+ ],
771
+ "name": "Deposit",
772
+ "type": "event"
773
+ },
774
+ {
775
+ "anonymous": false,
776
+ "inputs": [
777
+ {
778
+ "indexed": true,
779
+ "name": "src",
780
+ "type": "address"
781
+ },
782
+ {
783
+ "indexed": false,
784
+ "name": "wad",
785
+ "type": "uint256"
786
+ }
787
+ ],
788
+ "name": "Withdrawal",
789
+ "type": "event"
756
790
  }
757
791
  ]
@@ -36,21 +36,26 @@ export class ERC4626EventPool extends StatefulEventSubscriber<ERC4626PoolState>
36
36
  log: Readonly<Log>,
37
37
  blockHeader: Readonly<BlockHeader>,
38
38
  ): Promise<DeepReadonly<ERC4626PoolState> | null> {
39
- const event = this.logDecoder(log);
40
- if (
41
- log.topics[0] === this.transferTopic &&
42
- log.address.toLowerCase() === this.asset &&
43
- event.args.to.toLowerCase() === this.vault
44
- ) {
45
- return this.handleAssetTransferToVault(event, state, log);
39
+ try {
40
+ const event = this.logDecoder(log);
41
+ if (
42
+ log.topics[0] === this.transferTopic &&
43
+ log.address.toLowerCase() === this.asset &&
44
+ event.args.to.toLowerCase() === this.vault
45
+ ) {
46
+ return this.handleAssetTransferToVault(event, state, log);
47
+ }
48
+ if (log.topics[0] === this.depositTopic) {
49
+ return this.handleDeposit(event, state, log);
50
+ }
51
+ if (log.topics[0] === this.withdrawTopic) {
52
+ return this.handleWithdraw(event, state, log);
53
+ }
54
+ return null;
55
+ } catch (error) {
56
+ this.logger.error(`Error processing log: ${log}, error: ${error}`);
57
+ return null;
46
58
  }
47
- if (log.topics[0] === this.depositTopic) {
48
- return this.handleDeposit(event, state, log);
49
- }
50
- if (log.topics[0] === this.withdrawTopic) {
51
- return this.handleWithdraw(event, state, log);
52
- }
53
- return null;
54
59
  }
55
60
 
56
61
  async generateState(
@@ -7,7 +7,6 @@ import { ERC4626Config } from './config';
7
7
  import { Network } from '../../constants';
8
8
  import { DummyDexHelper } from '../../dex-helper/index';
9
9
  import ERC4626_ABI from '../../abi/ERC4626.json';
10
- import ERC20ABI from '../../abi/erc20.json';
11
10
  import { DEPOSIT_TOPIC, TRANSFER_TOPIC, WITHDRAW_TOPIC } from './constants';
12
11
  import { testEventSubscriber } from '../../../tests/utils-events';
13
12
  import { ERC4626PoolState } from './types';
@@ -83,12 +82,7 @@ describe('Wusdm', function () {
83
82
  const wUSDMAddress = ERC4626Config[dexKey][network].vault;
84
83
  const USDMAddress = ERC4626Config[dexKey][network].asset;
85
84
 
86
- const wUSDMIface: Interface = new Interface([
87
- // Vault abi
88
- ...ERC4626_ABI,
89
- // asset abi (specifically to handle Transfer to vault event)
90
- ...ERC20ABI,
91
- ]);
85
+ const wUSDMIface: Interface = new Interface(ERC4626_ABI);
92
86
 
93
87
  const blockNumbers = Array.from(
94
88
  new Set(
@@ -28,7 +28,6 @@ import { BI_POWS } from '../../bigint-constants';
28
28
  import { ERC4626EventPool } from './erc-4626-pool';
29
29
  import { Interface } from '@ethersproject/abi';
30
30
  import ERC4626_ABI from '../../abi/ERC4626.json';
31
- import ERC20ABI from '../../abi/erc20.json';
32
31
  import { DEPOSIT_TOPIC, TRANSFER_TOPIC, WITHDRAW_TOPIC } from './constants';
33
32
  import { extractReturnAmountPosition } from '../../executor/utils';
34
33
 
@@ -52,12 +51,7 @@ export class ERC4626
52
51
  readonly dexHelper: IDexHelper,
53
52
  readonly vault: string = ERC4626Config[dexKey][network].vault,
54
53
  readonly asset: string = ERC4626Config[dexKey][network].asset,
55
- readonly erc4626Interface: Interface = new Interface([
56
- // Vault abi
57
- ...ERC4626_ABI,
58
- // asset abi (specifically to handle Transfer to vault event)
59
- ...ERC20ABI,
60
- ]),
54
+ readonly erc4626Interface: Interface = new Interface(ERC4626_ABI),
61
55
  ) {
62
56
  super(dexHelper, dexKey);
63
57
  this.logger = dexHelper.getLogger(dexKey);
@@ -163,7 +157,13 @@ export class ERC4626
163
157
  unit: BI_POWS[18],
164
158
  prices: amounts.map(amount => calcFunction(amount, state)),
165
159
  gasCost: isWrap ? 60000 : 70000,
166
- data: { exchange: `${this.vault}` },
160
+ data: {
161
+ exchange: `${this.vault}`,
162
+ state: {
163
+ totalShares: state.totalShares.toString(),
164
+ totalAssets: state.totalAssets.toString(),
165
+ },
166
+ },
167
167
  poolAddresses: [this.vault],
168
168
  exchange: this.dexKey,
169
169
  },
@@ -7,6 +7,10 @@ export type ERC4626PoolState = {
7
7
 
8
8
  export type ERC4626Data = {
9
9
  exchange: string;
10
+ state: {
11
+ totalShares: string;
12
+ totalAssets: string;
13
+ };
10
14
  };
11
15
 
12
16
  export enum ERC4626Functions {