@paraswap/dex-lib 4.6.28-plasma.1 → 4.6.29-ekubo-tenderly.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.
- package/build/config.js +0 -28
- package/build/config.js.map +1 -1
- package/build/constants.d.ts +0 -1
- package/build/constants.js +0 -1
- package/build/constants.js.map +1 -1
- package/build/dex/aave-v3/config.js +0 -6
- package/build/dex/aave-v3/config.js.map +1 -1
- package/build/dex/balancer-v3/config.js +0 -15
- package/build/dex/balancer-v3/config.js.map +1 -1
- package/build/dex/curve-v1-factory/constants.d.ts +0 -3
- package/build/dex/curve-v1-factory/constants.js +1 -9
- package/build/dex/curve-v1-factory/constants.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js +3 -10
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
- package/build/dex/curve-v1-stable-ng/config.js +0 -21
- package/build/dex/curve-v1-stable-ng/config.js.map +1 -1
- package/build/dex/ekubo/ekubo.js +1 -0
- package/build/dex/ekubo/ekubo.js.map +1 -1
- package/build/dex/erc4626/config.js +0 -21
- package/build/dex/erc4626/config.js.map +1 -1
- package/build/dex/fluid-dex/config.js +0 -7
- package/build/dex/fluid-dex/config.js.map +1 -1
- package/build/dex/idle-dao/idle-dao.d.ts +1 -0
- package/build/dex/idle-dao/idle-dao.js +23 -11
- package/build/dex/idle-dao/idle-dao.js.map +1 -1
- package/build/dex/maker-psm/maker-psm.d.ts +4 -41
- package/build/dex/maker-psm/maker-psm.js +40 -143
- package/build/dex/maker-psm/maker-psm.js.map +1 -1
- package/build/dex/uniswap-v3/config.js +0 -13
- package/build/dex/uniswap-v3/config.js.map +1 -1
- package/build/dex/weth/config.js +0 -5
- package/build/dex/weth/config.js.map +1 -1
- package/build/dex/wombat/types.d.ts +1 -0
- package/build/dex/wombat/wombat-pool.d.ts +6 -2
- package/build/dex/wombat/wombat-pool.js +101 -67
- package/build/dex/wombat/wombat-pool.js.map +1 -1
- package/build/dex/wombat/wombat-quoter.d.ts +1 -0
- package/build/dex/wombat/wombat-quoter.js +13 -1
- package/build/dex/wombat/wombat-quoter.js.map +1 -1
- package/build/dex/wombat/wombat.js +6 -11
- package/build/dex/wombat/wombat.js.map +1 -1
- package/build/types.d.ts +1 -1
- package/package.json +2 -2
- package/build/abi/PendleRouterStatic.json +0 -19
- package/build/abi/apex-defi/ApexDefiFactory.abi.json +0 -1749
- package/build/abi/apex-defi/ApexDefiRouter.abi.json +0 -1120
- package/build/abi/apex-defi/ApexDefiToken.abi.json +0 -229
- package/build/abi/apex-defi/ApexDefiWrapper.abi.json +0 -92
- package/build/abi/apex-defi/ApexDefiWrapperFactory.abi.json +0 -1107
- package/build/abi/pangolin-v3/PangolinV3StateMulticall.abi.json +0 -796
- package/build/abi/pendle/pendle-deployer.abi.json +0 -520
- package/build/abi/pendle/pendle-oracle.abi.json +0 -413
- package/build/abi/ring-v2/few-wrapped-token.json +0 -587
- package/build/abi/ring-v2/ring-v2-factory.json +0 -125
- package/build/abi/ring-v2/ring-v2-pool.json +0 -461
- package/build/abi/ring-v2/ring-v2-router.json +0 -332
- package/build/abi/stabull/stabull-curve.json +0 -738
- package/build/abi/stabull/stabull-router.json +0 -76
- package/build/abi/uniswap-v4/hooks/cabalcoin-hook.abi.json +0 -682
- package/build/abi/uniswap-v4/hooks/fee-hook.abi.json +0 -1335
- package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.d.ts +0 -29
- package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js +0 -153
- package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js.map +0 -1
- package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.d.ts +0 -40
- package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js +0 -323
- package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js.map +0 -1
- package/build/dex/aave-pt-to-underlying/config.d.ts +0 -3
- package/build/dex/aave-pt-to-underlying/config.js +0 -24
- package/build/dex/aave-pt-to-underlying/config.js.map +0 -1
- package/build/dex/aave-pt-to-underlying/constants.d.ts +0 -2
- package/build/dex/aave-pt-to-underlying/constants.js +0 -6
- package/build/dex/aave-pt-to-underlying/constants.js.map +0 -1
- package/build/dex/aave-pt-to-underlying/types.d.ts +0 -24
- package/build/dex/aave-pt-to-underlying/types.js +0 -3
- package/build/dex/aave-pt-to-underlying/types.js.map +0 -1
- package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.d.ts +0 -39
- package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js +0 -244
- package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js.map +0 -1
- package/build/dex/aave-pt-to-usdc/config.d.ts +0 -3
- package/build/dex/aave-pt-to-usdc/config.js +0 -47
- package/build/dex/aave-pt-to-usdc/config.js.map +0 -1
- package/build/dex/aave-pt-to-usdc/constants.d.ts +0 -2
- package/build/dex/aave-pt-to-usdc/constants.js +0 -6
- package/build/dex/aave-pt-to-usdc/constants.js.map +0 -1
- package/build/dex/aave-pt-to-usdc/types.d.ts +0 -22
- package/build/dex/aave-pt-to-usdc/types.js +0 -3
- package/build/dex/aave-pt-to-usdc/types.js.map +0 -1
- package/build/dex/apex-defi/apex-defi-factory.d.ts +0 -26
- package/build/dex/apex-defi/apex-defi-factory.js +0 -53
- package/build/dex/apex-defi/apex-defi-factory.js.map +0 -1
- package/build/dex/apex-defi/apex-defi-pool.d.ts +0 -55
- package/build/dex/apex-defi/apex-defi-pool.js +0 -247
- package/build/dex/apex-defi/apex-defi-pool.js.map +0 -1
- package/build/dex/apex-defi/apex-defi-wrapper-factory.d.ts +0 -57
- package/build/dex/apex-defi/apex-defi-wrapper-factory.js +0 -250
- package/build/dex/apex-defi/apex-defi-wrapper-factory.js.map +0 -1
- package/build/dex/apex-defi/apex-defi.d.ts +0 -97
- package/build/dex/apex-defi/apex-defi.js +0 -1021
- package/build/dex/apex-defi/apex-defi.js.map +0 -1
- package/build/dex/apex-defi/config.d.ts +0 -4
- package/build/dex/apex-defi/config.js +0 -138
- package/build/dex/apex-defi/config.js.map +0 -1
- package/build/dex/apex-defi/types.d.ts +0 -32
- package/build/dex/apex-defi/types.js +0 -3
- package/build/dex/apex-defi/types.js.map +0 -1
- package/build/dex/apex-defi/utils.d.ts +0 -46
- package/build/dex/apex-defi/utils.js +0 -133
- package/build/dex/apex-defi/utils.js.map +0 -1
- package/build/dex/miro-migrator/miro-migrator-state.d.ts +0 -27
- package/build/dex/miro-migrator/miro-migrator-state.js +0 -89
- package/build/dex/miro-migrator/miro-migrator-state.js.map +0 -1
- package/build/dex/stabull/config.d.ts +0 -3
- package/build/dex/stabull/config.js +0 -177
- package/build/dex/stabull/config.js.map +0 -1
- package/build/dex/stabull/stabull-pool.d.ts +0 -46
- package/build/dex/stabull/stabull-pool.js +0 -113
- package/build/dex/stabull/stabull-pool.js.map +0 -1
- package/build/dex/stabull/stabull.d.ts +0 -55
- package/build/dex/stabull/stabull.js +0 -286
- package/build/dex/stabull/stabull.js.map +0 -1
- package/build/dex/stabull/types.d.ts +0 -21
- package/build/dex/stabull/types.js +0 -3
- package/build/dex/stabull/types.js.map +0 -1
- package/build/dex/uniswap-v3/forks/pangolin-v3/utils.d.ts +0 -4
- package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js +0 -56
- package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js.map +0 -1
- package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.d.ts +0 -7
- package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js +0 -28
- package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js.map +0 -1
- package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.d.ts +0 -0
- package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js +0 -2
- package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js.map +0 -1
- package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.d.ts +0 -7
- package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js +0 -28
- package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js.map +0 -1
- package/build/dex/uniswap-v4/hooks/fee-hook/types.d.ts +0 -0
- package/build/dex/uniswap-v4/hooks/fee-hook/types.js +0 -2
- package/build/dex/uniswap-v4/hooks/fee-hook/types.js.map +0 -1
- package/build/dex/uniswap-v4/hooks/index.d.ts +0 -2
- package/build/dex/uniswap-v4/hooks/index.js +0 -8
- package/build/dex/uniswap-v4/hooks/index.js.map +0 -1
- package/build/dex/usdc-transmuter/usdc-transmuter-pool.d.ts +0 -26
- package/build/dex/usdc-transmuter/usdc-transmuter-pool.js +0 -75
- package/build/dex/usdc-transmuter/usdc-transmuter-pool.js.map +0 -1
- package/build/dex/usual/usual-usdc-usdc.d.ts +0 -17
- package/build/dex/usual/usual-usdc-usdc.js +0 -59
- package/build/dex/usual/usual-usdc-usdc.js.map +0 -1
- package/build/dex/yo/config.d.ts +0 -3
- package/build/dex/yo/config.js +0 -21
- package/build/dex/yo/config.js.map +0 -1
- package/build/dex/yo/types.d.ts +0 -13
- package/build/dex/yo/types.js +0 -3
- package/build/dex/yo/types.js.map +0 -1
- package/build/dex/yo/yo-pool.d.ts +0 -13
- package/build/dex/yo/yo-pool.js +0 -26
- package/build/dex/yo/yo-pool.js.map +0 -1
- package/build/dex/yo/yo.d.ts +0 -39
- package/build/dex/yo/yo.js +0 -248
- package/build/dex/yo/yo.js.map +0 -1
- package/build/implementations/api-paraswap-sdk.d.ts +0 -25
- package/build/implementations/api-paraswap-sdk.js +0 -102
- package/build/implementations/api-paraswap-sdk.js.map +0 -1
|
@@ -10,7 +10,6 @@ const stateful_event_subscriber_1 = require("../../stateful-event-subscriber");
|
|
|
10
10
|
const pool_v2_json_1 = __importDefault(require("../../abi/wombat/pool-v2.json"));
|
|
11
11
|
const pool_v3_json_1 = __importDefault(require("../../abi/wombat/pool-v3.json"));
|
|
12
12
|
const asset_json_1 = __importDefault(require("../../abi/wombat/asset.json"));
|
|
13
|
-
const utils_2 = require("./utils");
|
|
14
13
|
const CLEAR_RPC_CALL_COUNT_INTERVAL = 1000 * 60 * 5; // 5 minutes
|
|
15
14
|
class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
16
15
|
network;
|
|
@@ -30,6 +29,7 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
30
29
|
paused: false,
|
|
31
30
|
ampFactor: 0n,
|
|
32
31
|
haircutRate: 0n,
|
|
32
|
+
withdrawalHaircutRate: 0n,
|
|
33
33
|
startCovRatio: 0n,
|
|
34
34
|
endCovRatio: 0n,
|
|
35
35
|
},
|
|
@@ -46,6 +46,8 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
46
46
|
// admin-actions handlers
|
|
47
47
|
this.handlers['SetAmpFactor'] = this.handleSetAmpFactor.bind(this);
|
|
48
48
|
this.handlers['SetHaircutRate'] = this.handleSetHaircutRate.bind(this);
|
|
49
|
+
this.handlers['SetWithdrawalHaircutRate'] =
|
|
50
|
+
this.handleSetWithdrawalHaircutRate.bind(this);
|
|
49
51
|
this.handlers['AssetAdded'] = this.handleAssetAdded.bind(this);
|
|
50
52
|
this.handlers['AssetRemoved'] = this.handleAssetRemoved.bind(this);
|
|
51
53
|
this.handlers['FillPool'] = this.handleFillPool.bind(this);
|
|
@@ -53,7 +55,7 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
53
55
|
this.handlers['Unpaused'] = this.handleUnpaused.bind(this);
|
|
54
56
|
this.handlers['PausedAsset'] = this.handlePausedAsset.bind(this);
|
|
55
57
|
this.handlers['UnpausedAsset'] = this.handleUnpausedAsset.bind(this);
|
|
56
|
-
this.eventRefetched = ['Deposit', 'Withdraw'];
|
|
58
|
+
this.eventRefetched = ['Deposit', 'Withdraw', 'TransferTipBucket'];
|
|
57
59
|
setInterval(() => {
|
|
58
60
|
this.rpcCallCount = 0;
|
|
59
61
|
}, CLEAR_RPC_CALL_COUNT_INTERVAL);
|
|
@@ -126,6 +128,7 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
126
128
|
this.logger.warn(`WombatPool generateState excessive RPC call. Name: ${this.name}. Called ${this.rpcCallCount} times during ${CLEAR_RPC_CALL_COUNT_INTERVAL / 1000}s interval`);
|
|
127
129
|
}
|
|
128
130
|
let multiCallInputs = [];
|
|
131
|
+
const isV3Pool = this.poolInterface === WombatPool.poolV3Interface;
|
|
129
132
|
// 1.A generate pool params requests
|
|
130
133
|
// paused
|
|
131
134
|
multiCallInputs.push({
|
|
@@ -142,6 +145,12 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
142
145
|
target: this.poolAddress,
|
|
143
146
|
callData: this.poolInterface.encodeFunctionData('haircutRate'),
|
|
144
147
|
});
|
|
148
|
+
if (isV3Pool) {
|
|
149
|
+
multiCallInputs.push({
|
|
150
|
+
target: this.poolAddress,
|
|
151
|
+
callData: this.poolInterface.encodeFunctionData('withdrawalHaircutRate'),
|
|
152
|
+
});
|
|
153
|
+
}
|
|
145
154
|
// startCovRatio
|
|
146
155
|
multiCallInputs.push({
|
|
147
156
|
target: this.poolAddress,
|
|
@@ -169,6 +178,9 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
169
178
|
const paused = Boolean(this.poolInterface.decodeFunctionResult('paused', returnData[i++])[0]);
|
|
170
179
|
const ampFactor = BigInt(this.poolInterface.decodeFunctionResult('ampFactor', returnData[i++])[0]);
|
|
171
180
|
const haircutRate = BigInt(this.poolInterface.decodeFunctionResult('haircutRate', returnData[i++])[0]);
|
|
181
|
+
const withdrawalHaircutRate = isV3Pool
|
|
182
|
+
? BigInt(this.poolInterface.decodeFunctionResult('withdrawalHaircutRate', returnData[i++])[0])
|
|
183
|
+
: 0n;
|
|
172
184
|
const startCovRatio = BigInt(this.poolInterface.decodeFunctionResult('startCovRatio', returnData[i++])[0]);
|
|
173
185
|
const endCovRatio = BigInt(this.poolInterface.decodeFunctionResult('endCovRatio', returnData[i++])[0]);
|
|
174
186
|
const tokens = this.poolInterface
|
|
@@ -179,6 +191,7 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
179
191
|
paused,
|
|
180
192
|
ampFactor,
|
|
181
193
|
haircutRate,
|
|
194
|
+
withdrawalHaircutRate,
|
|
182
195
|
startCovRatio,
|
|
183
196
|
endCovRatio,
|
|
184
197
|
},
|
|
@@ -211,68 +224,35 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
211
224
|
}
|
|
212
225
|
return poolState;
|
|
213
226
|
}
|
|
227
|
+
async getOrGenerateState(blockNumber) {
|
|
228
|
+
let state = this.getState(blockNumber);
|
|
229
|
+
if (!state) {
|
|
230
|
+
state = await this.generateState(blockNumber);
|
|
231
|
+
this.setState(state, blockNumber);
|
|
232
|
+
this.logger.info(`Empty state, generated state for pool ${this.poolAddress} at block ${blockNumber}`);
|
|
233
|
+
}
|
|
234
|
+
return {
|
|
235
|
+
...state,
|
|
236
|
+
underlyingAddresses: Array.from(state.underlyingAddresses),
|
|
237
|
+
};
|
|
238
|
+
}
|
|
214
239
|
handleSwap(event, state, log) {
|
|
215
240
|
const fromTokenAddress = event.args.fromToken.toString().toLowerCase();
|
|
216
|
-
const fromAmount = BigInt(event.args.fromAmount.toString());
|
|
217
241
|
const toTokenAddress = event.args.toToken.toString().toLowerCase();
|
|
218
|
-
const toAmount = BigInt(event.args.toAmount.toString());
|
|
219
242
|
if (!state.underlyingAddresses.includes(fromTokenAddress) ||
|
|
220
243
|
!state.underlyingAddresses.includes(toTokenAddress)) {
|
|
221
244
|
return null;
|
|
222
245
|
}
|
|
223
|
-
|
|
224
|
-
const fromAmountInt256 = (0, utils_2.convertUint256ToInt256)(fromAmount);
|
|
225
|
-
if (fromAmountInt256 > 0) {
|
|
226
|
-
idealToAmount = (0, utils_2.wdiv)(toAmount, utils_2.WAD - state.params.haircutRate);
|
|
227
|
-
}
|
|
228
|
-
else {
|
|
229
|
-
this.logger.warn(`pool ${this.poolAddress} swap from a negative amount ${fromAmountInt256} at block ${log.blockNumber} should not happen`);
|
|
230
|
-
const haircut = (0, utils_2.wmul)(-fromAmount, state.params.haircutRate);
|
|
231
|
-
idealToAmount = toAmount + haircut;
|
|
232
|
-
}
|
|
233
|
-
const fromAmountInWad = (0, utils_2.toWad)(fromAmount, BigInt(state.asset[fromTokenAddress].underlyingTokenDecimals));
|
|
234
|
-
const toAmountInWad = (0, utils_2.toWad)(idealToAmount, BigInt(state.asset[toTokenAddress].underlyingTokenDecimals));
|
|
235
|
-
return {
|
|
236
|
-
...state,
|
|
237
|
-
asset: {
|
|
238
|
-
...state.asset,
|
|
239
|
-
[fromTokenAddress]: {
|
|
240
|
-
...state.asset[fromTokenAddress],
|
|
241
|
-
cash: state.asset[fromTokenAddress].cash + fromAmountInWad,
|
|
242
|
-
},
|
|
243
|
-
[toTokenAddress]: {
|
|
244
|
-
...state.asset[toTokenAddress],
|
|
245
|
-
cash: state.asset[toTokenAddress].cash - toAmountInWad,
|
|
246
|
-
},
|
|
247
|
-
},
|
|
248
|
-
};
|
|
246
|
+
return this.refreshAssetStates(state, [fromTokenAddress, toTokenAddress], log.blockNumber);
|
|
249
247
|
}
|
|
250
|
-
handleSwapV2(event, state,
|
|
248
|
+
handleSwapV2(event, state, log) {
|
|
251
249
|
const fromTokenAddress = event.args.fromToken.toString().toLowerCase();
|
|
252
|
-
const fromAmount = BigInt(event.args.fromAmount.toString());
|
|
253
250
|
const toTokenAddress = event.args.toToken.toString().toLowerCase();
|
|
254
|
-
const toAmount = BigInt(event.args.toAmount.toString());
|
|
255
|
-
const toTokenFee = BigInt(event.args.toTokenFee.toString());
|
|
256
251
|
if (!state.underlyingAddresses.includes(fromTokenAddress) ||
|
|
257
252
|
!state.underlyingAddresses.includes(toTokenAddress)) {
|
|
258
253
|
return null;
|
|
259
254
|
}
|
|
260
|
-
|
|
261
|
-
const toAmountInWad = (0, utils_2.toWad)(toAmount + toTokenFee, BigInt(state.asset[toTokenAddress].underlyingTokenDecimals));
|
|
262
|
-
return {
|
|
263
|
-
...state,
|
|
264
|
-
asset: {
|
|
265
|
-
...state.asset,
|
|
266
|
-
[fromTokenAddress]: {
|
|
267
|
-
...state.asset[fromTokenAddress],
|
|
268
|
-
cash: state.asset[fromTokenAddress].cash + fromAmountInWad,
|
|
269
|
-
},
|
|
270
|
-
[toTokenAddress]: {
|
|
271
|
-
...state.asset[toTokenAddress],
|
|
272
|
-
cash: state.asset[toTokenAddress].cash - toAmountInWad,
|
|
273
|
-
},
|
|
274
|
-
},
|
|
275
|
-
};
|
|
255
|
+
return this.refreshAssetStates(state, [fromTokenAddress, toTokenAddress], log.blockNumber);
|
|
276
256
|
}
|
|
277
257
|
handleSetAmpFactor(event, state, _log) {
|
|
278
258
|
const ampFactor = BigInt(event.args.value.toString());
|
|
@@ -294,6 +274,16 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
294
274
|
},
|
|
295
275
|
};
|
|
296
276
|
}
|
|
277
|
+
handleSetWithdrawalHaircutRate(event, state, _log) {
|
|
278
|
+
const withdrawalHaircutRate = BigInt(event.args.value.toString());
|
|
279
|
+
return {
|
|
280
|
+
...state,
|
|
281
|
+
params: {
|
|
282
|
+
...state.params,
|
|
283
|
+
withdrawalHaircutRate,
|
|
284
|
+
},
|
|
285
|
+
};
|
|
286
|
+
}
|
|
297
287
|
async handleAssetAdded(event, state, log) {
|
|
298
288
|
const token = event.args.token.toString().toLowerCase();
|
|
299
289
|
const asset = event.args.asset.toString().toLowerCase();
|
|
@@ -325,31 +315,21 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
325
315
|
if (!state.underlyingAddresses.includes(token)) {
|
|
326
316
|
return null;
|
|
327
317
|
}
|
|
318
|
+
const { [token]: _, ...remainingAssets } = state.asset;
|
|
328
319
|
return {
|
|
329
320
|
...state,
|
|
330
321
|
underlyingAddresses: state.underlyingAddresses.filter(underlyingAddress => underlyingAddress !== token),
|
|
331
322
|
asset: {
|
|
332
|
-
...
|
|
333
|
-
[token]: undefined,
|
|
323
|
+
...remainingAssets,
|
|
334
324
|
},
|
|
335
325
|
};
|
|
336
326
|
}
|
|
337
|
-
async handleFillPool(event, state,
|
|
327
|
+
async handleFillPool(event, state, log) {
|
|
338
328
|
const token = event.args.token.toString().toLowerCase();
|
|
339
|
-
const amount = BigInt(event.args.amount.toString());
|
|
340
329
|
if (!state.underlyingAddresses.includes(token)) {
|
|
341
330
|
return null;
|
|
342
331
|
}
|
|
343
|
-
return
|
|
344
|
-
...state,
|
|
345
|
-
asset: {
|
|
346
|
-
...state.asset,
|
|
347
|
-
[token]: {
|
|
348
|
-
...state.asset[token],
|
|
349
|
-
cash: state.asset[token].cash + amount,
|
|
350
|
-
},
|
|
351
|
-
},
|
|
352
|
-
};
|
|
332
|
+
return this.refreshAssetStates(state, [token], log.blockNumber);
|
|
353
333
|
}
|
|
354
334
|
async handlePaused(event, state, _log) {
|
|
355
335
|
return {
|
|
@@ -370,7 +350,7 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
370
350
|
};
|
|
371
351
|
}
|
|
372
352
|
async handlePausedAsset(event, state, _log) {
|
|
373
|
-
const token = event.args.token.toString();
|
|
353
|
+
const token = event.args.token.toString().toLowerCase();
|
|
374
354
|
if (!state.underlyingAddresses.includes(token)) {
|
|
375
355
|
return null;
|
|
376
356
|
}
|
|
@@ -386,7 +366,7 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
386
366
|
};
|
|
387
367
|
}
|
|
388
368
|
async handleUnpausedAsset(event, state, _log) {
|
|
389
|
-
const token = event.args.token.toString();
|
|
369
|
+
const token = event.args.token.toString().toLowerCase();
|
|
390
370
|
if (!state.underlyingAddresses.includes(token)) {
|
|
391
371
|
return null;
|
|
392
372
|
}
|
|
@@ -396,11 +376,65 @@ class WombatPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
|
396
376
|
...state.asset,
|
|
397
377
|
[token]: {
|
|
398
378
|
...state.asset[token],
|
|
399
|
-
paused:
|
|
379
|
+
paused: false,
|
|
400
380
|
},
|
|
401
381
|
},
|
|
402
382
|
};
|
|
403
383
|
}
|
|
384
|
+
async refreshAssetStates(state, tokens, blockNumber) {
|
|
385
|
+
const uniqueTokens = Array.from(new Set(tokens
|
|
386
|
+
.map(token => token.toLowerCase())
|
|
387
|
+
.filter(token => !!state.asset[token])));
|
|
388
|
+
if (!uniqueTokens.length) {
|
|
389
|
+
return state;
|
|
390
|
+
}
|
|
391
|
+
const assetAddresses = uniqueTokens.map(token => state.asset[token].address);
|
|
392
|
+
const balances = await this.fetchAssetBalances(assetAddresses, blockNumber);
|
|
393
|
+
const updatedAssets = { ...state.asset };
|
|
394
|
+
uniqueTokens.forEach((token, index) => {
|
|
395
|
+
const existingAsset = state.asset[token];
|
|
396
|
+
const { cash, liability, relativePrice } = balances[index];
|
|
397
|
+
updatedAssets[token] = {
|
|
398
|
+
...existingAsset,
|
|
399
|
+
cash,
|
|
400
|
+
liability,
|
|
401
|
+
relativePrice,
|
|
402
|
+
};
|
|
403
|
+
});
|
|
404
|
+
return {
|
|
405
|
+
...state,
|
|
406
|
+
asset: updatedAssets,
|
|
407
|
+
};
|
|
408
|
+
}
|
|
409
|
+
async fetchAssetBalances(assets, blockNumber) {
|
|
410
|
+
const multiCallInputs = [];
|
|
411
|
+
const methods = ['cash', 'liability', 'getRelativePrice'];
|
|
412
|
+
for (const asset of assets) {
|
|
413
|
+
for (const method of methods) {
|
|
414
|
+
multiCallInputs.push({
|
|
415
|
+
target: asset,
|
|
416
|
+
callData: WombatPool.assetInterface.encodeFunctionData(method),
|
|
417
|
+
});
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
const returnData = await this.dexHelper.multiContract.methods
|
|
421
|
+
.tryAggregate(false, multiCallInputs)
|
|
422
|
+
.call({}, blockNumber);
|
|
423
|
+
const balances = [];
|
|
424
|
+
for (let i = 0; i < assets.length * methods.length; i += methods.length) {
|
|
425
|
+
const cash = returnData[i].success
|
|
426
|
+
? BigInt(WombatPool.assetInterface.decodeFunctionResult('cash', returnData[i].returnData)[0])
|
|
427
|
+
: 0n;
|
|
428
|
+
const liability = returnData[i + 1].success
|
|
429
|
+
? BigInt(WombatPool.assetInterface.decodeFunctionResult('liability', returnData[i + 1].returnData)[0])
|
|
430
|
+
: 0n;
|
|
431
|
+
const relativePrice = returnData[i + 2].success
|
|
432
|
+
? BigInt(WombatPool.assetInterface.decodeFunctionResult('getRelativePrice', returnData[i + 2].returnData)[0])
|
|
433
|
+
: undefined;
|
|
434
|
+
balances.push({ cash, liability, relativePrice });
|
|
435
|
+
}
|
|
436
|
+
return balances;
|
|
437
|
+
}
|
|
404
438
|
async getAssetState(pool, assets, tokens, blockNumber) {
|
|
405
439
|
const assetStates = [];
|
|
406
440
|
const multiCallInputs = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wombat-pool.js","sourceRoot":"","sources":["../../../src/dex/wombat/wombat-pool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wombat-pool.js","sourceRoot":"","sources":["../../../src/dex/wombat/wombat-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { AssetState, PoolParams } from './types';
|
|
|
2
2
|
export declare class WombatQuoter {
|
|
3
3
|
private readonly ampFactor;
|
|
4
4
|
private readonly haircutRate;
|
|
5
|
+
private readonly withdrawalHaircutRate;
|
|
5
6
|
private readonly startCovRatio;
|
|
6
7
|
private readonly endCovRatio;
|
|
7
8
|
constructor(poolParams: PoolParams);
|
|
@@ -5,11 +5,13 @@ const utils_1 = require("./utils");
|
|
|
5
5
|
class WombatQuoter {
|
|
6
6
|
ampFactor;
|
|
7
7
|
haircutRate;
|
|
8
|
+
withdrawalHaircutRate;
|
|
8
9
|
startCovRatio;
|
|
9
10
|
endCovRatio;
|
|
10
11
|
constructor(poolParams) {
|
|
11
12
|
this.ampFactor = poolParams.ampFactor;
|
|
12
13
|
this.haircutRate = poolParams.haircutRate;
|
|
14
|
+
this.withdrawalHaircutRate = poolParams.withdrawalHaircutRate;
|
|
13
15
|
this.startCovRatio = poolParams.startCovRatio;
|
|
14
16
|
this.endCovRatio = poolParams.endCovRatio;
|
|
15
17
|
}
|
|
@@ -88,6 +90,9 @@ class WombatQuoter {
|
|
|
88
90
|
_quoteFrom(fromAsset, toAsset, fromAmount) {
|
|
89
91
|
if (fromAmount < 0n) {
|
|
90
92
|
fromAmount = (0, utils_1.wdiv)(fromAmount, utils_1.WAD - this.haircutRate);
|
|
93
|
+
if (this.withdrawalHaircutRate > 0n) {
|
|
94
|
+
fromAmount = (0, utils_1.wdiv)(fromAmount, utils_1.WAD - this.withdrawalHaircutRate);
|
|
95
|
+
}
|
|
91
96
|
}
|
|
92
97
|
let fromCash = fromAsset.cash;
|
|
93
98
|
const toCash = toAsset.cash;
|
|
@@ -106,12 +111,19 @@ class WombatQuoter {
|
|
|
106
111
|
}
|
|
107
112
|
let actualToAmount, haircut;
|
|
108
113
|
if (fromAmount > 0) {
|
|
109
|
-
|
|
114
|
+
const baseHaircut = (0, utils_1.wmul)(idealToAmount, this.haircutRate);
|
|
115
|
+
const withdrawalHaircut = this.withdrawalHaircutRate > 0n
|
|
116
|
+
? (0, utils_1.wmul)(idealToAmount - baseHaircut, this.withdrawalHaircutRate)
|
|
117
|
+
: 0n;
|
|
118
|
+
haircut = baseHaircut + withdrawalHaircut;
|
|
110
119
|
actualToAmount = idealToAmount - haircut;
|
|
111
120
|
}
|
|
112
121
|
else {
|
|
113
122
|
actualToAmount = idealToAmount;
|
|
114
123
|
haircut = (0, utils_1.wmul)(-fromAmount, this.haircutRate);
|
|
124
|
+
if (this.withdrawalHaircutRate > 0n) {
|
|
125
|
+
haircut += (0, utils_1.wmul)(-fromAmount, this.withdrawalHaircutRate);
|
|
126
|
+
}
|
|
115
127
|
}
|
|
116
128
|
return { actualToAmount, haircut };
|
|
117
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wombat-quoter.js","sourceRoot":"","sources":["../../../src/dex/wombat/wombat-quoter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"wombat-quoter.js","sourceRoot":"","sources":["../../../src/dex/wombat/wombat-quoter.ts"],"names":[],"mappings":"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"}
|
|
@@ -141,15 +141,10 @@ class Wombat extends simple_exchange_1.SimpleExchange {
|
|
|
141
141
|
if (srcTokenAddress === destTokenAddress)
|
|
142
142
|
return null;
|
|
143
143
|
const pools = (await this.findPools(srcTokenAddress, destTokenAddress, blockNumber)).filter(poolAddress => !limitPools || limitPools.includes(this.getPoolIdentifier(poolAddress)));
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
let state = await this.pools[poolAddress].getState(blockNumber);
|
|
147
|
-
if (!state) {
|
|
148
|
-
this.logger.warn(`State of pool ${poolAddress} is null in getPricesVolume, skipping...`);
|
|
149
|
-
continue;
|
|
150
|
-
}
|
|
144
|
+
const poolPrices = await Promise.all(pools.map(async (poolAddress) => {
|
|
145
|
+
const state = await this.pools[poolAddress].getOrGenerateState(blockNumber);
|
|
151
146
|
const [unit, ...prices] = this.computePrices(srcTokenAddress, destTokenAddress, [(0, utils_1.getBigIntPow)(srcToken.decimals), ...amounts], side, state);
|
|
152
|
-
|
|
147
|
+
return {
|
|
153
148
|
prices,
|
|
154
149
|
unit,
|
|
155
150
|
data: {
|
|
@@ -160,9 +155,9 @@ class Wombat extends simple_exchange_1.SimpleExchange {
|
|
|
160
155
|
/** @todo specify gas cost */
|
|
161
156
|
gasCost: 260 * 1000,
|
|
162
157
|
poolIdentifiers: [this.getPoolIdentifier(poolAddress)],
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
return
|
|
158
|
+
};
|
|
159
|
+
}));
|
|
160
|
+
return poolPrices;
|
|
166
161
|
}
|
|
167
162
|
// take PoolState to compute price
|
|
168
163
|
computePrices(srcTokenAddress, destTokenAddress, amounts, side, state) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wombat.js","sourceRoot":"","sources":["../../../src/dex/wombat/wombat.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAA+C;AAC/C,yCAA0D;AAc1D,2EAA6D;AAC7D,uCAAkE;AAIlE,wDAG4B;AAC5B,qCAAkD;AAClD,iFAAoD;AACpD,6EAAmD;AACnD,sEAA4C;AAC5C,mDAA+C;AAC/C,6CAAyC;
|
|
1
|
+
{"version":3,"file":"wombat.js","sourceRoot":"","sources":["../../../src/dex/wombat/wombat.ts"],"names":[],"mappings":"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"}
|
package/build/types.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paraswap/dex-lib",
|
|
3
|
-
"version": "4.6.
|
|
3
|
+
"version": "4.6.29-ekubo-tenderly.0",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"types": "build/index.d.ts",
|
|
6
6
|
"repository": "https://github.com/paraswap/paraswap-dex-lib",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@balancer-labs/balancer-maths": "^0.0.36",
|
|
55
55
|
"@balancer-labs/sor": "4.1.3",
|
|
56
|
-
"@bgd-labs/aave-address-book": "4.
|
|
56
|
+
"@bgd-labs/aave-address-book": "4.15.1",
|
|
57
57
|
"@ethersproject/abi": "^5.7.0",
|
|
58
58
|
"@hashflow/sdk": "^2.2.7",
|
|
59
59
|
"@hashflow/taker-js": "^0.4.1",
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"inputs": [
|
|
4
|
-
{ "internalType": "address", "name": "market", "type": "address" },
|
|
5
|
-
{ "internalType": "uint256", "name": "exactPtIn", "type": "uint256" },
|
|
6
|
-
{ "internalType": "address", "name": "tokenOut", "type": "address" }
|
|
7
|
-
],
|
|
8
|
-
"name": "swapExactPtForTokenStatic",
|
|
9
|
-
"outputs": [
|
|
10
|
-
{ "internalType": "uint256", "name": "netTokenOut", "type": "uint256" },
|
|
11
|
-
{ "internalType": "uint256", "name": "netSyToRedeem", "type": "uint256" },
|
|
12
|
-
{ "internalType": "uint256", "name": "netSyFee", "type": "uint256" },
|
|
13
|
-
{ "internalType": "uint256", "name": "priceImpact", "type": "uint256" },
|
|
14
|
-
{ "internalType": "uint256", "name": "exchangeRateAfter", "type": "uint256" }
|
|
15
|
-
],
|
|
16
|
-
"stateMutability": "view",
|
|
17
|
-
"type": "function"
|
|
18
|
-
}
|
|
19
|
-
]
|