@paraswap/dex-lib 5.1.13 → 5.1.14-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.
@@ -83,6 +83,14 @@ exports.ERC4626Config = {
83
83
  asset: '0xb1e25689d55734fd3fffc939c4c3eb52dff8a794', // OS
84
84
  },
85
85
  },
86
+ sftUSD: {
87
+ [constants_1.Network.MAINNET]: {
88
+ vault: '0xeb48218a4c35C814C7678cBcae88C6Ee037F7625', // sftUSD
89
+ asset: '0xF7D85EC4E7710f71992752eac2111312e73E9C9C', // ftUSD
90
+ backingToken: '0xB44a9C40EFc05Eb014EfFEac3CBed6A31F8cB87f', // ftftUSD
91
+ decimals: 6,
92
+ },
93
+ },
86
94
  wsuperOETHb: {
87
95
  [constants_1.Network.BASE]: {
88
96
  vault: '0x7fcd174e80f264448ebee8c88a7c4476aaf58ea6', // wsuperOETHb
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/erc4626/config.ts"],"names":[],"mappings":";;;AAEA,+CAA0C;AAE7B,QAAA,aAAa,GAAgC;IACxD,oCAAoC;IACpC,IAAI,EAAE;QACJ,CAAC,mBAAO,CAAC,MAAM,CAAC,EAAE;YAChB,KAAK,EAAE,4CAA4C,EAAE,OAAO;YAC5D,KAAK,EAAE,4CAA4C,EAAE,QAAQ;SAC9D;KACF;IACD,KAAK,EAAE;QACL,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,KAAK,EAAE,4CAA4C,EAAE,OAAO;SAC7D;KACF;IACD,KAAK,EAAE;QACL,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,KAAK,EAAE,4CAA4C,EAAE,OAAO;YAC5D,eAAe,EAAE,IAAI;SACtB;KACF;IACD,KAAK,EAAE;QACL,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,KAAK,EAAE,4CAA4C,EAAE,OAAO;YAC5D,gBAAgB,EAAE,IAAI;SACvB;KACF;IACD,KAAK,EAAE;QACL,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,KAAK,EAAE,4CAA4C,EAAE,OAAO;YAC5D,QAAQ,EAAE,CAAC;YACX,gBAAgB,EAAE,IAAI;SACvB;KACF;IACD,MAAM,EAAE;QACN,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C,EAAE,SAAS;YAC9D,KAAK,EAAE,4CAA4C,EAAE,OAAO;SAC7D;KACF;IACD,MAAM,EAAE;QACN,CAAC,mBAAO,CAAC,MAAM,CAAC,EAAE;YAChB,KAAK,EAAE,4CAA4C,EAAE,SAAS;YAC9D,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,QAAQ,EAAE,CAAC;SACZ;KACF;IACD,MAAM,EAAE;QACN,CAAC,mBAAO,CAAC,MAAM,CAAC,EAAE;YAChB,KAAK,EAAE,4CAA4C,EAAE,SAAS;YAC9D,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,QAAQ,EAAE,CAAC;SACZ;KACF;IACD,UAAU,EAAE;QACV,CAAC,mBAAO,CAAC,MAAM,CAAC,EAAE;YAChB,KAAK,EAAE,4CAA4C,EAAE,aAAa;YAClE,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,QAAQ,EAAE,CAAC;SACZ;KACF;IACD,KAAK,EAAE;QACL,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,KAAK,EAAE,4CAA4C,EAAE,OAAO;SAC7D;KACF;IACD,KAAK,EAAE;QACL,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C,EAAE,QAAQ;YAC7D,KAAK,EAAE,4CAA4C,EAAE,OAAO;SAC7D;KACF;IACD,GAAG,EAAE;QACH,CAAC,mBAAO,CAAC,KAAK,CAAC,EAAE;YACf,KAAK,EAAE,4CAA4C,EAAE,MAAM;YAC3D,KAAK,EAAE,4CAA4C,EAAE,KAAK;SAC3D;KACF;IACD,WAAW,EAAE;QACX,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,KAAK,EAAE,4CAA4C,EAAE,cAAc;YACnE,KAAK,EAAE,4CAA4C,EAAE,aAAa;SACnE;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/erc4626/config.ts"],"names":[],"mappings":"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"}
@@ -14,12 +14,15 @@ export declare class ERC4626EventPool extends StatefulEventSubscriber<ERC4626Poo
14
14
  private withdrawTopic;
15
15
  private transferTopic;
16
16
  private cooldownEnabled;
17
+ private backingToken?;
17
18
  logDecoder: (log: Log) => any;
18
- constructor(parentName: string, network: Network, poolName: string, dexHelper: IDexHelper, vault: Address, asset: Address, wrapperInterface: Interface, logger: Logger, depositTopic: string, withdrawTopic: string, transferTopic: string, cooldownEnabled?: boolean);
19
+ private assetsToken;
20
+ constructor(parentName: string, network: Network, poolName: string, dexHelper: IDexHelper, vault: Address, asset: Address, wrapperInterface: Interface, logger: Logger, depositTopic: string, withdrawTopic: string, transferTopic: string, cooldownEnabled?: boolean, backingToken?: Address | undefined);
19
21
  protected processLog(state: DeepReadonly<ERC4626PoolState>, log: Readonly<Log>, blockHeader: Readonly<BlockHeader>): Promise<DeepReadonly<ERC4626PoolState> | null>;
20
22
  generateState(blockNumber?: number | 'latest'): Promise<DeepReadonly<ERC4626PoolState>>;
21
23
  getOrGenerateState(blockNumber: number): Promise<ERC4626PoolState>;
22
24
  handleDeposit(event: any, state: DeepReadonly<ERC4626PoolState>, _: Readonly<Log>): Promise<DeepReadonly<ERC4626PoolState>>;
23
25
  handleAssetTransferToVault(event: any, state: DeepReadonly<ERC4626PoolState>, _: Readonly<Log>): Promise<DeepReadonly<ERC4626PoolState>>;
26
+ handleAssetTransferFromVault(event: any, state: DeepReadonly<ERC4626PoolState>, _: Readonly<Log>): Promise<DeepReadonly<ERC4626PoolState>>;
24
27
  handleWithdraw(event: any, state: DeepReadonly<ERC4626PoolState>, _: Readonly<Log>): Promise<DeepReadonly<ERC4626PoolState>>;
25
28
  }
@@ -12,8 +12,12 @@ class ERC4626EventPool extends stateful_event_subscriber_1.StatefulEventSubscrib
12
12
  withdrawTopic;
13
13
  transferTopic;
14
14
  cooldownEnabled;
15
+ backingToken;
15
16
  logDecoder;
16
- constructor(parentName, network, poolName, dexHelper, vault, asset, wrapperInterface, logger, depositTopic, withdrawTopic, transferTopic, cooldownEnabled = false) {
17
+ // token whose vault balance backs `totalAssets`: `asset` for vaults holding it
18
+ // directly, `backingToken` for vaults that immediately convert deposits
19
+ assetsToken;
20
+ constructor(parentName, network, poolName, dexHelper, vault, asset, wrapperInterface, logger, depositTopic, withdrawTopic, transferTopic, cooldownEnabled = false, backingToken) {
17
21
  super(parentName, poolName, dexHelper, logger);
18
22
  this.dexHelper = dexHelper;
19
23
  this.vault = vault;
@@ -23,7 +27,9 @@ class ERC4626EventPool extends stateful_event_subscriber_1.StatefulEventSubscrib
23
27
  this.withdrawTopic = withdrawTopic;
24
28
  this.transferTopic = transferTopic;
25
29
  this.cooldownEnabled = cooldownEnabled;
26
- this.addressesSubscribed = [vault, asset];
30
+ this.backingToken = backingToken;
31
+ this.addressesSubscribed = [vault, backingToken ?? asset];
32
+ this.assetsToken = (backingToken ?? asset).toLowerCase();
27
33
  this.vault = vault.toLowerCase();
28
34
  this.asset = asset.toLowerCase();
29
35
  this.logDecoder = (log) => this.wrapperInterface.parseLog(log);
@@ -32,13 +38,16 @@ class ERC4626EventPool extends stateful_event_subscriber_1.StatefulEventSubscrib
32
38
  const topic0 = log.topics[0];
33
39
  try {
34
40
  if (topic0 === this.transferTopic) {
35
- if (log.address.toLowerCase() !== this.asset) {
41
+ if (log.address.toLowerCase() !== this.assetsToken) {
36
42
  return null;
37
43
  }
38
44
  const event = this.logDecoder(log);
39
45
  if (event.args.to.toLowerCase() === this.vault) {
40
46
  return this.handleAssetTransferToVault(event, state, log);
41
47
  }
48
+ if (this.backingToken && event.args.from.toLowerCase() === this.vault) {
49
+ return this.handleAssetTransferFromVault(event, state, log);
50
+ }
42
51
  return null;
43
52
  }
44
53
  if (topic0 === this.depositTopic) {
@@ -105,10 +114,20 @@ class ERC4626EventPool extends stateful_event_subscriber_1.StatefulEventSubscrib
105
114
  totalAssets: state.totalAssets + BigInt(event.args.value),
106
115
  };
107
116
  }
117
+ async handleAssetTransferFromVault(event, state, _) {
118
+ return {
119
+ ...state,
120
+ totalAssets: state.totalAssets - BigInt(event.args.value),
121
+ };
122
+ }
108
123
  async handleWithdraw(event, state, _) {
109
124
  return {
110
125
  ...state,
111
- totalAssets: BigInt(state.totalAssets) - BigInt(event.args.assets),
126
+ // with a backing token, `totalAssets` follows its balance, and `Withdraw.assets`
127
+ // can be net of fees taken from the redeemed amount
128
+ totalAssets: this.backingToken
129
+ ? state.totalAssets
130
+ : BigInt(state.totalAssets) - BigInt(event.args.assets),
112
131
  totalShares: BigInt(state.totalShares) - BigInt(event.args.shares),
113
132
  };
114
133
  }
@@ -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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"}
@@ -15,6 +15,7 @@ export declare class ERC4626 extends SimpleExchange implements IDex<ERC4626Data,
15
15
  readonly cooldownEnabled: boolean;
16
16
  readonly decimals: number;
17
17
  readonly withdrawDisabled: boolean;
18
+ readonly backingToken: string | undefined;
18
19
  readonly erc4626Interface: Interface;
19
20
  readonly hasConstantPriceLargeAmounts = true;
20
21
  readonly isFeeOnTransferSupported = false;
@@ -25,7 +26,7 @@ export declare class ERC4626 extends SimpleExchange implements IDex<ERC4626Data,
25
26
  }[];
26
27
  readonly eventPool: ERC4626EventPool;
27
28
  logger: Logger;
28
- constructor(network: Network, dexKey: string, dexHelper: IDexHelper, vault?: string, asset?: string, cooldownEnabled?: boolean, decimals?: number, withdrawDisabled?: boolean, erc4626Interface?: Interface);
29
+ constructor(network: Network, dexKey: string, dexHelper: IDexHelper, vault?: string, asset?: string, cooldownEnabled?: boolean, decimals?: number, withdrawDisabled?: boolean, backingToken?: string | undefined, erc4626Interface?: Interface);
29
30
  getAdapters(side: SwapSide): {
30
31
  name: string;
31
32
  index: number;
@@ -49,6 +49,7 @@ const abi_1 = require("@ethersproject/abi");
49
49
  const ERC4626_json_1 = __importDefault(require("../../abi/ERC4626.json"));
50
50
  const constants_2 = require("./constants");
51
51
  const utils_2 = require("../../executor/utils");
52
+ const bytes_1 = require("@ethersproject/bytes");
52
53
  class ERC4626 extends simple_exchange_1.SimpleExchange {
53
54
  network;
54
55
  dexKey;
@@ -58,6 +59,7 @@ class ERC4626 extends simple_exchange_1.SimpleExchange {
58
59
  cooldownEnabled;
59
60
  decimals;
60
61
  withdrawDisabled;
62
+ backingToken;
61
63
  erc4626Interface;
62
64
  hasConstantPriceLargeAmounts = true;
63
65
  isFeeOnTransferSupported = false;
@@ -67,7 +69,8 @@ class ERC4626 extends simple_exchange_1.SimpleExchange {
67
69
  logger;
68
70
  constructor(network, dexKey, dexHelper, vault = config_1.ERC4626Config[dexKey][network].vault, asset = config_1.ERC4626Config[dexKey][network].asset, cooldownEnabled = config_1.ERC4626Config[dexKey][network]
69
71
  .cooldownEnabled || false, decimals = config_1.ERC4626Config[dexKey][network].decimals || 18, withdrawDisabled = config_1.ERC4626Config[dexKey][network]
70
- .withdrawDisabled || false, erc4626Interface = new abi_1.Interface(ERC4626_json_1.default)) {
72
+ .withdrawDisabled || false, backingToken = config_1.ERC4626Config[dexKey][network]
73
+ .backingToken, erc4626Interface = new abi_1.Interface(ERC4626_json_1.default)) {
71
74
  super(dexHelper, dexKey);
72
75
  this.network = network;
73
76
  this.dexKey = dexKey;
@@ -77,9 +80,10 @@ class ERC4626 extends simple_exchange_1.SimpleExchange {
77
80
  this.cooldownEnabled = cooldownEnabled;
78
81
  this.decimals = decimals;
79
82
  this.withdrawDisabled = withdrawDisabled;
83
+ this.backingToken = backingToken;
80
84
  this.erc4626Interface = erc4626Interface;
81
85
  this.logger = dexHelper.getLogger(dexKey);
82
- this.eventPool = new erc_4626_pool_1.ERC4626EventPool(this.dexKey, this.network, `${this.vault}_${this.asset}`, dexHelper, this.vault, this.asset, this.erc4626Interface, this.logger, constants_2.DEPOSIT_TOPIC, constants_2.WITHDRAW_TOPIC, constants_2.TRANSFER_TOPIC, cooldownEnabled);
86
+ this.eventPool = new erc_4626_pool_1.ERC4626EventPool(this.dexKey, this.network, `${this.vault}_${this.asset}`, dexHelper, this.vault, this.asset, this.erc4626Interface, this.logger, constants_2.DEPOSIT_TOPIC, constants_2.WITHDRAW_TOPIC, constants_2.TRANSFER_TOPIC, cooldownEnabled, backingToken);
83
87
  }
84
88
  getAdapters(side) {
85
89
  return null;
@@ -239,11 +243,23 @@ class ERC4626 extends simple_exchange_1.SimpleExchange {
239
243
  else {
240
244
  swapData = this.erc4626Interface.encodeFunctionData(isSell ? types_1.ERC4626Functions.redeem : types_1.ERC4626Functions.withdraw, [isSell ? srcAmount : destAmount, recipient, executorAddress]);
241
245
  }
246
+ // The executor overwrites the word it locates by searching the calldata for the quoted
247
+ // srcAmount with the amount it actually holds. On BUY the only amount encoded is the
248
+ // exact output one, so for a vault trading at 1:1 the search lands on it and the swap
249
+ // mints/withdraws the whole slippage-buffered input instead of what was quoted. Append
250
+ // a scratch word (trailing calldata is ignored when the call is decoded) and point the
251
+ // executor at that instead.
252
+ let insertFromAmountPos;
253
+ if (!isSell && BigInt(srcAmount) === BigInt(destAmount)) {
254
+ insertFromAmountPos = (0, bytes_1.hexDataLength)(swapData);
255
+ swapData = (0, bytes_1.hexConcat)([swapData, (0, bytes_1.hexZeroPad)('0x', 32)]);
256
+ }
242
257
  return {
243
258
  needWrapNative: this.needWrapNative,
244
259
  dexFuncHasRecipient: true,
245
260
  exchangeData: swapData,
246
261
  targetExchange: exchange,
262
+ insertFromAmountPos,
247
263
  returnAmountPos: isSell
248
264
  ? (0, utils_2.extractReturnAmountPosition)(this.erc4626Interface, this.isAsset(srcToken)
249
265
  ? types_1.ERC4626Functions.deposit
@@ -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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"}
@@ -23,4 +23,5 @@ export type ERC4626Params = {
23
23
  cooldownEnabled?: boolean;
24
24
  decimals?: number;
25
25
  withdrawDisabled?: boolean;
26
+ backingToken?: Address;
26
27
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "5.1.13",
3
+ "version": "5.1.14-0",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",