@paraswap/dex-lib 4.7.3 → 4.7.5-pt-fixes.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 +4 -0
- package/build/config.js.map +1 -1
- package/build/dex/algebra-integral/config.js +1 -1
- package/build/dex/balancer-v2/balancer-v2.d.ts +1 -1
- package/build/dex/balancer-v2/balancer-v2.js +40 -37
- package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
- package/build/dex/balancer-v2/constants.d.ts +1 -0
- package/build/dex/balancer-v2/constants.js +2 -1
- package/build/dex/balancer-v2/constants.js.map +1 -1
- package/build/dex/bebop/bebop.d.ts +1 -1
- package/build/dex/bebop/bebop.js +47 -23
- package/build/dex/bebop/bebop.js.map +1 -1
- package/build/dex/bebop/config.js +18 -1
- package/build/dex/bebop/config.js.map +1 -1
- package/build/dex/bebop/types.d.ts +2 -0
- package/build/dex/curve-v1/config.js +21 -21
- package/build/dex/curve-v1/config.js.map +1 -1
- package/build/dex/curve-v1/curve-v1.d.ts +3 -1
- package/build/dex/curve-v1/curve-v1.js +26 -1
- package/build/dex/curve-v1/curve-v1.js.map +1 -1
- package/build/dex/curve-v1/types.d.ts +6 -0
- package/build/dex/erc4626/erc-4626-pool.js +15 -8
- package/build/dex/erc4626/erc-4626-pool.js.map +1 -1
- package/build/dex/uniswap-v4/liquidity.d.ts +9 -0
- package/build/dex/uniswap-v4/liquidity.js +74 -0
- package/build/dex/uniswap-v4/liquidity.js.map +1 -0
- package/build/dex/uniswap-v4/subgraph.js +6 -0
- package/build/dex/uniswap-v4/subgraph.js.map +1 -1
- package/build/dex/uniswap-v4/types.d.ts +3 -0
- package/build/dex/uniswap-v4/uniswap-v4-pool-manager.d.ts +5 -1
- package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js +86 -0
- package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js.map +1 -1
- package/build/dex/uniswap-v4/uniswap-v4.d.ts +1 -1
- package/build/dex/uniswap-v4/uniswap-v4.js +47 -36
- package/build/dex/uniswap-v4/uniswap-v4.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc-4626-pool.js","sourceRoot":"","sources":["../../../src/dex/erc4626/erc-4626-pool.ts"],"names":[],"mappings":";;;AAAA,+EAA0E;AAO1E,iDAAqE;AAGrE,MAAa,gBAAiB,SAAQ,mDAAyC;IAOjE;IACF;IACA;IACA;IAEA;IACA;IACA;IACA;IAdV,UAAU,CAAoB;IAE9B,YACE,UAAkB,EAClB,OAAgB,EAChB,QAAgB,EACN,SAAqB,EACvB,KAAc,EACd,KAAc,EACd,gBAA2B,EACnC,MAAc,EACN,YAAoB,EACpB,aAAqB,EACrB,aAAqB,EACrB,kBAA2B,KAAK;QAExC,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAVrC,cAAS,GAAT,SAAS,CAAY;QACvB,UAAK,GAAL,KAAK,CAAS;QACd,UAAK,GAAL,KAAK,CAAS;QACd,qBAAgB,GAAhB,gBAAgB,CAAW;QAE3B,iBAAY,GAAZ,YAAY,CAAQ;QACpB,kBAAa,GAAb,aAAa,CAAQ;QACrB,kBAAa,GAAb,aAAa,CAAQ;QACrB,oBAAe,GAAf,eAAe,CAAiB;QAGxC,IAAI,CAAC,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACtE,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,KAAqC,EACrC,GAAkB,EAClB,WAAkC;QAElC,IAAI,CAAC;YACH,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"erc-4626-pool.js","sourceRoot":"","sources":["../../../src/dex/erc4626/erc-4626-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PoolState } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Calculates the total current amount of token0 and token1 in the entire pool
|
|
4
|
+
* by "walking" the initialized tick list.
|
|
5
|
+
*/
|
|
6
|
+
export declare function calculateTotalPoolLiquidity(poolState: PoolState): {
|
|
7
|
+
totalAmount0: bigint;
|
|
8
|
+
totalAmount1: bigint;
|
|
9
|
+
};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateTotalPoolLiquidity = calculateTotalPoolLiquidity;
|
|
4
|
+
const TickMath_1 = require("../uniswap-v3/contract-math/TickMath");
|
|
5
|
+
const Q96 = BigInt(2) ** BigInt(96);
|
|
6
|
+
/**
|
|
7
|
+
* Calculates the amount of token0 and token1 for a given liquidity,
|
|
8
|
+
* current price, and tick range.
|
|
9
|
+
*/
|
|
10
|
+
function getAmountsForLiquidity(currentSqrtPriceX96, tickLower, tickUpper, liquidity) {
|
|
11
|
+
const sqrtPriceLowerX96 = TickMath_1.TickMath.getSqrtRatioAtTick(tickLower);
|
|
12
|
+
const sqrtPriceUpperX96 = TickMath_1.TickMath.getSqrtRatioAtTick(tickUpper);
|
|
13
|
+
let amount0 = 0n;
|
|
14
|
+
let amount1 = 0n;
|
|
15
|
+
// Scenario 1: Price is *above* the range (Range is 100% Token1)
|
|
16
|
+
if (currentSqrtPriceX96 >= sqrtPriceUpperX96) {
|
|
17
|
+
amount1 = (liquidity * (sqrtPriceUpperX96 - sqrtPriceLowerX96)) / Q96;
|
|
18
|
+
}
|
|
19
|
+
// Scenario 2: Price is *below* the range (Range is 100% Token0)
|
|
20
|
+
else if (currentSqrtPriceX96 < sqrtPriceLowerX96) {
|
|
21
|
+
const numerator = liquidity * (sqrtPriceUpperX96 - sqrtPriceLowerX96);
|
|
22
|
+
const denominator = (sqrtPriceLowerX96 * sqrtPriceUpperX96) / Q96;
|
|
23
|
+
amount0 = numerator / denominator;
|
|
24
|
+
}
|
|
25
|
+
// Scenario 3: Price is *inside* the range (Active)
|
|
26
|
+
else {
|
|
27
|
+
// Token0 (Price -> Upper)
|
|
28
|
+
const num0 = liquidity * (sqrtPriceUpperX96 - currentSqrtPriceX96);
|
|
29
|
+
const den0 = (currentSqrtPriceX96 * sqrtPriceUpperX96) / Q96;
|
|
30
|
+
amount0 = num0 / den0;
|
|
31
|
+
// Token1 (Lower -> Price)
|
|
32
|
+
amount1 = (liquidity * (currentSqrtPriceX96 - sqrtPriceLowerX96)) / Q96;
|
|
33
|
+
}
|
|
34
|
+
return { amount0, amount1 };
|
|
35
|
+
}
|
|
36
|
+
// --- Main Calculation Function ---
|
|
37
|
+
/**
|
|
38
|
+
* Calculates the total current amount of token0 and token1 in the entire pool
|
|
39
|
+
* by "walking" the initialized tick list.
|
|
40
|
+
*/
|
|
41
|
+
function calculateTotalPoolLiquidity(poolState) {
|
|
42
|
+
const currentSqrtPriceX96 = poolState.slot0.sqrtPriceX96;
|
|
43
|
+
// 1. Get all initialized ticks and sort them numerically
|
|
44
|
+
const sortedTickIndexes = Object.keys(poolState.ticks)
|
|
45
|
+
.map(BigInt)
|
|
46
|
+
.sort((a, b) => (a - b > 0n ? 1 : -1));
|
|
47
|
+
let totalAmount0 = 0n;
|
|
48
|
+
let totalAmount1 = 0n;
|
|
49
|
+
let runningLiquidity = 0n;
|
|
50
|
+
let lastTickProcessed = BigInt(TickMath_1.TickMath.MIN_TICK);
|
|
51
|
+
// 2. Iterate through each tick slice
|
|
52
|
+
for (const tickIndex of sortedTickIndexes) {
|
|
53
|
+
if (tickIndex < lastTickProcessed)
|
|
54
|
+
continue; // Should not happen if sorted, but good check
|
|
55
|
+
const tickLower = lastTickProcessed;
|
|
56
|
+
const tickUpper = tickIndex;
|
|
57
|
+
// Calculate amounts for the slice *before* this tick
|
|
58
|
+
const { amount0, amount1 } = getAmountsForLiquidity(currentSqrtPriceX96, tickLower, tickUpper, runningLiquidity);
|
|
59
|
+
totalAmount0 += amount0;
|
|
60
|
+
totalAmount1 += amount1;
|
|
61
|
+
// 3. "Cross" the tick: update runningLiquidity for the *next* slice
|
|
62
|
+
const tickInfo = poolState.ticks[String(tickIndex)];
|
|
63
|
+
runningLiquidity += tickInfo.liquidityNet;
|
|
64
|
+
lastTickProcessed = tickIndex;
|
|
65
|
+
}
|
|
66
|
+
// 4. Calculate amounts for the final slice (from the last tick to MAX_TICK)
|
|
67
|
+
const { amount0, amount1 } = getAmountsForLiquidity(currentSqrtPriceX96, lastTickProcessed, BigInt(TickMath_1.TickMath.MAX_TICK), runningLiquidity);
|
|
68
|
+
totalAmount0 += amount0;
|
|
69
|
+
totalAmount1 += amount1;
|
|
70
|
+
return { totalAmount0, totalAmount1 };
|
|
71
|
+
}
|
|
72
|
+
// const { totalAmount0, totalAmount1 } =
|
|
73
|
+
// calculateTotalPoolLiquidity(MOCK_POOL_STATE);
|
|
74
|
+
//# sourceMappingURL=liquidity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"liquidity.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/liquidity.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,6 +64,9 @@ async function queryAvailablePoolsForToken(dexHelper, logger, dexKey, subgraphUr
|
|
|
64
64
|
address: id
|
|
65
65
|
decimals
|
|
66
66
|
}
|
|
67
|
+
fee: feeTier
|
|
68
|
+
tickSpacing
|
|
69
|
+
hooks
|
|
67
70
|
}
|
|
68
71
|
pools1: pools(
|
|
69
72
|
where: {
|
|
@@ -87,6 +90,9 @@ async function queryAvailablePoolsForToken(dexHelper, logger, dexKey, subgraphUr
|
|
|
87
90
|
address: id
|
|
88
91
|
decimals
|
|
89
92
|
}
|
|
93
|
+
fee: feeTier
|
|
94
|
+
tickSpacing
|
|
95
|
+
hooks
|
|
90
96
|
}
|
|
91
97
|
}
|
|
92
98
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/subgraph.ts"],"names":[],"mappings":";;AAOA,8CA8DC;AAED,
|
|
1
|
+
{"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/subgraph.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InitializeStateOptions, StatefulEventSubscriber } from '../../stateful-event-subscriber';
|
|
2
|
-
import { DexParams, Pool, PoolManagerState } from './types';
|
|
2
|
+
import { DexParams, Pool, PoolManagerState, SubgraphConnectorPool } from './types';
|
|
3
3
|
import { Address, Log, Logger } from '../../types';
|
|
4
4
|
import { Interface } from 'ethers/lib/utils';
|
|
5
5
|
import { IDexHelper } from '../../dex-helper';
|
|
@@ -7,6 +7,7 @@ import { AsyncOrSync, DeepReadonly } from 'ts-essentials';
|
|
|
7
7
|
import { LogDescription } from '@ethersproject/abi/lib.esm';
|
|
8
8
|
import { FactoryState } from '../uniswap-v3/types';
|
|
9
9
|
import { UniswapV4Pool } from './uniswap-v4-pool';
|
|
10
|
+
import { PoolState } from './types';
|
|
10
11
|
export declare class UniswapV4PoolManager extends StatefulEventSubscriber<PoolManagerState> {
|
|
11
12
|
readonly dexHelper: IDexHelper;
|
|
12
13
|
private readonly network;
|
|
@@ -20,6 +21,7 @@ export declare class UniswapV4PoolManager extends StatefulEventSubscriber<PoolMa
|
|
|
20
21
|
logDecoder: (log: Log) => any;
|
|
21
22
|
stateViewIface: Interface;
|
|
22
23
|
poolManagerIface: Interface;
|
|
24
|
+
stateMulticallIface: Interface;
|
|
23
25
|
private wethAddress;
|
|
24
26
|
private poolsCacheKey;
|
|
25
27
|
constructor(dexHelper: IDexHelper, parentName: string, network: number, config: DexParams, logger: Logger, mapKey?: string);
|
|
@@ -31,4 +33,6 @@ export declare class UniswapV4PoolManager extends StatefulEventSubscriber<PoolMa
|
|
|
31
33
|
private queryAllAvailablePools;
|
|
32
34
|
handleInitializeEvent(event: LogDescription, log: Log): Promise<PoolManagerState>;
|
|
33
35
|
private isPoolWithUnconventionalFees;
|
|
36
|
+
private getBitmapRange;
|
|
37
|
+
generateMultiplePoolStates(pools: SubgraphConnectorPool[], blockNumber: number): Promise<(PoolState | null)[]>;
|
|
34
38
|
}
|
|
@@ -14,6 +14,9 @@ const constants_1 = require("../../constants");
|
|
|
14
14
|
const constants_2 = require("./constants");
|
|
15
15
|
const uniswap_v4_pool_1 = require("./uniswap-v4-pool");
|
|
16
16
|
const config_1 = require("./config");
|
|
17
|
+
const decoders_1 = require("../../lib/decoders");
|
|
18
|
+
const state_multicall_abi_json_1 = __importDefault(require("../../abi/uniswap-v4/state-multicall.abi.json"));
|
|
19
|
+
const constants_3 = require("./constants");
|
|
17
20
|
class UniswapV4PoolManager extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
18
21
|
dexHelper;
|
|
19
22
|
network;
|
|
@@ -25,6 +28,7 @@ class UniswapV4PoolManager extends stateful_event_subscriber_1.StatefulEventSubs
|
|
|
25
28
|
logDecoder;
|
|
26
29
|
stateViewIface;
|
|
27
30
|
poolManagerIface;
|
|
31
|
+
stateMulticallIface;
|
|
28
32
|
wethAddress;
|
|
29
33
|
poolsCacheKey = 'pools_cache';
|
|
30
34
|
constructor(dexHelper, parentName, network, config, logger, mapKey = '') {
|
|
@@ -35,6 +39,7 @@ class UniswapV4PoolManager extends stateful_event_subscriber_1.StatefulEventSubs
|
|
|
35
39
|
this.logger = logger;
|
|
36
40
|
this.stateViewIface = new utils_1.Interface(state_view_abi_json_1.default);
|
|
37
41
|
this.poolManagerIface = new utils_1.Interface(pool_manager_abi_json_1.default);
|
|
42
|
+
this.stateMulticallIface = new utils_1.Interface(state_multicall_abi_json_1.default);
|
|
38
43
|
this.addressesSubscribed = [this.config.poolManager];
|
|
39
44
|
this.wethAddress =
|
|
40
45
|
this.dexHelper.config.data.wrappedNativeTokenAddress.toLowerCase();
|
|
@@ -196,6 +201,87 @@ class UniswapV4PoolManager extends stateful_event_subscriber_1.StatefulEventSubs
|
|
|
196
201
|
isPoolWithUnconventionalFees(fee) {
|
|
197
202
|
return +fee % 100 !== 0;
|
|
198
203
|
}
|
|
204
|
+
getBitmapRange() {
|
|
205
|
+
const networkId = this.dexHelper.config.data.network;
|
|
206
|
+
const tickBitMapToUse = constants_3.TICK_BITMAP_TO_USE_BY_CHAIN[networkId] ?? constants_3.TICK_BITMAP_TO_USE;
|
|
207
|
+
const tickBitMapBuffer = constants_3.TICK_BITMAP_BUFFER_BY_CHAIN[networkId] ?? constants_3.TICK_BITMAP_BUFFER;
|
|
208
|
+
return tickBitMapToUse + tickBitMapBuffer;
|
|
209
|
+
}
|
|
210
|
+
async generateMultiplePoolStates(pools, blockNumber) {
|
|
211
|
+
const poolStates = [];
|
|
212
|
+
if (pools.length === 0) {
|
|
213
|
+
return [];
|
|
214
|
+
}
|
|
215
|
+
const multicallTargets = pools.map(pool => {
|
|
216
|
+
const poolKey = {
|
|
217
|
+
currency0: pool.token0.address,
|
|
218
|
+
currency1: pool.token1.address,
|
|
219
|
+
fee: pool.fee,
|
|
220
|
+
tickSpacing: parseInt(pool.tickSpacing),
|
|
221
|
+
hooks: pool.hooks,
|
|
222
|
+
};
|
|
223
|
+
const callData = this.stateMulticallIface.encodeFunctionData('getFullStateWithRelativeBitmaps', [
|
|
224
|
+
this.config.poolManager,
|
|
225
|
+
poolKey,
|
|
226
|
+
this.getBitmapRange(),
|
|
227
|
+
this.getBitmapRange(),
|
|
228
|
+
]);
|
|
229
|
+
return {
|
|
230
|
+
target: this.config.stateMulticall,
|
|
231
|
+
callData,
|
|
232
|
+
decodeFunction: (result) => {
|
|
233
|
+
const [, toDecode] = (0, decoders_1.extractSuccessAndValue)(result);
|
|
234
|
+
return this.stateMulticallIface.decodeFunctionResult('getFullStateWithRelativeBitmaps', toDecode);
|
|
235
|
+
},
|
|
236
|
+
};
|
|
237
|
+
});
|
|
238
|
+
const results = await this.dexHelper.multiWrapper.tryAggregate(false, multicallTargets, blockNumber, 50, // state multicall is heavy, use smaller batches
|
|
239
|
+
false);
|
|
240
|
+
pools.forEach((pool, index) => {
|
|
241
|
+
try {
|
|
242
|
+
const stateResult = results[index].returnData[0];
|
|
243
|
+
const ticksResults = {};
|
|
244
|
+
stateResult.ticks.forEach((tick) => {
|
|
245
|
+
if (tick.value.liquidityGross > 0n) {
|
|
246
|
+
ticksResults[tick.index.toString()] = {
|
|
247
|
+
liquidityGross: BigInt(tick.value.liquidityGross),
|
|
248
|
+
liquidityNet: BigInt(tick.value.liquidityNet),
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
const tickBitMapResults = {};
|
|
253
|
+
stateResult.tickBitmap.forEach((bitmap) => {
|
|
254
|
+
tickBitMapResults[bitmap.index.toString()] = BigInt(bitmap.value);
|
|
255
|
+
});
|
|
256
|
+
const poolState = {
|
|
257
|
+
id: pool.id,
|
|
258
|
+
token0: pool.token0.address.toLowerCase(),
|
|
259
|
+
token1: pool.token1.address.toLowerCase(),
|
|
260
|
+
fee: pool.fee,
|
|
261
|
+
hooks: pool.hooks,
|
|
262
|
+
feeGrowthGlobal0X128: BigInt(stateResult.feeGrowthGlobal0X128),
|
|
263
|
+
feeGrowthGlobal1X128: BigInt(stateResult.feeGrowthGlobal1X128),
|
|
264
|
+
liquidity: BigInt(stateResult.liquidity),
|
|
265
|
+
slot0: {
|
|
266
|
+
sqrtPriceX96: BigInt(stateResult.slot0.sqrtPriceX96),
|
|
267
|
+
tick: BigInt(stateResult.slot0.tick),
|
|
268
|
+
protocolFee: BigInt(stateResult.slot0.protocolFee),
|
|
269
|
+
lpFee: BigInt(stateResult.slot0.lpFee),
|
|
270
|
+
},
|
|
271
|
+
tickSpacing: parseInt(pool.tickSpacing),
|
|
272
|
+
ticks: ticksResults,
|
|
273
|
+
tickBitmap: tickBitMapResults,
|
|
274
|
+
isValid: true,
|
|
275
|
+
};
|
|
276
|
+
poolStates.push(poolState);
|
|
277
|
+
}
|
|
278
|
+
catch (error) {
|
|
279
|
+
this.logger.error(`Failed to generate state for pool ${pool.id}: ${error}`);
|
|
280
|
+
poolStates.push(null);
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
return poolStates;
|
|
284
|
+
}
|
|
199
285
|
}
|
|
200
286
|
exports.UniswapV4PoolManager = UniswapV4PoolManager;
|
|
201
287
|
//# sourceMappingURL=uniswap-v4-pool-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uniswap-v4-pool-manager.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/uniswap-v4-pool-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uniswap-v4-pool-manager.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/uniswap-v4-pool-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ export declare class UniswapV4 extends SimpleExchange implements IDex<UniswapV4D
|
|
|
36
36
|
name: string;
|
|
37
37
|
index: number;
|
|
38
38
|
}[] | null;
|
|
39
|
-
getTopPoolsForToken(
|
|
39
|
+
getTopPoolsForToken(_tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
|
|
40
40
|
queryPriceFromRpc(zeroForOne: boolean, amounts: bigint[], pool: Pool, side: SwapSide, blockNumber: number): Promise<bigint[]>;
|
|
41
41
|
getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: UniswapV4Data, side: SwapSide): DexExchangeParam;
|
|
42
42
|
getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: UniswapV4Data, side: SwapSide): AdapterExchangeParam;
|
|
@@ -51,9 +51,9 @@ const uniswap_v4_pool_manager_1 = require("./uniswap-v4-pool-manager");
|
|
|
51
51
|
const uniswap_v4_pool_math_1 = require("./contract-math/uniswap-v4-pool-math");
|
|
52
52
|
const core_1 = require("@paraswap/core");
|
|
53
53
|
const subgraph_1 = require("./subgraph");
|
|
54
|
-
const lodash_1 = __importDefault(require("lodash"));
|
|
55
54
|
const constants_2 = require("./constants");
|
|
56
55
|
const uniswap_v3_1 = require("../uniswap-v3/uniswap-v3");
|
|
56
|
+
const liquidity_1 = require("./liquidity");
|
|
57
57
|
class UniswapV4 extends simple_exchange_1.SimpleExchange {
|
|
58
58
|
network;
|
|
59
59
|
dexHelper;
|
|
@@ -230,46 +230,57 @@ class UniswapV4 extends simple_exchange_1.SimpleExchange {
|
|
|
230
230
|
getAdapters(side) {
|
|
231
231
|
return null;
|
|
232
232
|
}
|
|
233
|
-
async getTopPoolsForToken(
|
|
234
|
-
let
|
|
235
|
-
if ((0, utils_1.isETHAddress)(
|
|
236
|
-
|
|
233
|
+
async getTopPoolsForToken(_tokenAddress, limit) {
|
|
234
|
+
let tokenAddress = _tokenAddress.toLowerCase();
|
|
235
|
+
if ((0, utils_1.isETHAddress)(tokenAddress))
|
|
236
|
+
tokenAddress = constants_1.NULL_ADDRESS;
|
|
237
237
|
const poolIds = config_1.UniswapV4PoolsList[this.network]?.map(p => p.id);
|
|
238
|
-
const { pools0, pools1 } = await (0, subgraph_1.queryAvailablePoolsForToken)(this.dexHelper, this.logger, this.dexKey, config_1.UniswapV4Config[this.dexKey][this.network].subgraphURL,
|
|
238
|
+
const { pools0, pools1 } = await (0, subgraph_1.queryAvailablePoolsForToken)(this.dexHelper, this.logger, this.dexKey, config_1.UniswapV4Config[this.dexKey][this.network].subgraphURL, tokenAddress, limit, poolIds);
|
|
239
239
|
if (!(pools0 || pools1)) {
|
|
240
240
|
this.logger.error(`Error_${this.dexKey}_Subgraph: couldn't fetch the pools from the subgraph`);
|
|
241
241
|
return [];
|
|
242
242
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
]
|
|
254
|
-
|
|
255
|
-
}
|
|
256
|
-
const
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
243
|
+
if (pools0.length === 0 && pools1.length === 0) {
|
|
244
|
+
return [];
|
|
245
|
+
}
|
|
246
|
+
const blockNumber = await this.dexHelper.provider.getBlockNumber();
|
|
247
|
+
const pools = pools0.concat(pools1);
|
|
248
|
+
const poolStates = await this.poolManager.generateMultiplePoolStates(pools, blockNumber);
|
|
249
|
+
const validPoolStates = poolStates.filter(t => t !== null);
|
|
250
|
+
const tokenAmounts = [];
|
|
251
|
+
for (const poolState of validPoolStates) {
|
|
252
|
+
const { totalAmount0, totalAmount1 } = (0, liquidity_1.calculateTotalPoolLiquidity)(poolState);
|
|
253
|
+
tokenAmounts.push([poolState.token0, totalAmount0]);
|
|
254
|
+
tokenAmounts.push([poolState.token1, totalAmount1]);
|
|
255
|
+
}
|
|
256
|
+
const usdTokenAmounts = await this.dexHelper.getUsdTokenAmounts(tokenAmounts);
|
|
257
|
+
const allTokens = pools.map(pool => [pool.token0, pool.token1]).flat();
|
|
258
|
+
const liquidityPools = [];
|
|
259
|
+
for (let i = 0; i < validPoolStates.length; i++) {
|
|
260
|
+
const poolState = validPoolStates[i];
|
|
261
|
+
const isToken0 = poolState.token0 === tokenAddress;
|
|
262
|
+
const connector = isToken0 ? poolState.token1 : poolState.token0;
|
|
263
|
+
const connectorToken = allTokens.find(t => t.address === connector);
|
|
264
|
+
const token0UsdAmount = usdTokenAmounts[i * 2];
|
|
265
|
+
const token1UsdAmount = usdTokenAmounts[i * 2 + 1];
|
|
266
|
+
liquidityPools.push({
|
|
267
|
+
exchange: this.dexKey,
|
|
268
|
+
address: poolState.id, // should be safe to put pool id here
|
|
269
|
+
connectorTokens: [
|
|
270
|
+
{
|
|
271
|
+
address: connectorToken.address,
|
|
272
|
+
decimals: Number(connectorToken.decimals),
|
|
273
|
+
liquidityUSD: isToken0
|
|
274
|
+
? (token1UsdAmount * constants_2.UNISWAPV4_EFFICIENCY_FACTOR)
|
|
275
|
+
: (token0UsdAmount * constants_2.UNISWAPV4_EFFICIENCY_FACTOR),
|
|
276
|
+
},
|
|
277
|
+
],
|
|
278
|
+
liquidityUSD: (isToken0 ? token0UsdAmount : token1UsdAmount) *
|
|
279
|
+
constants_2.UNISWAPV4_EFFICIENCY_FACTOR,
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
liquidityPools.sort((a, b) => b.liquidityUSD - a.liquidityUSD);
|
|
283
|
+
return liquidityPools.slice(0, limit);
|
|
273
284
|
}
|
|
274
285
|
async queryPriceFromRpc(zeroForOne, amounts, pool, side, blockNumber) {
|
|
275
286
|
const funcName = side === core_1.SwapSide.SELL
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uniswap-v4.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/uniswap-v4.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uniswap-v4.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v4/uniswap-v4.ts"],"names":[],"mappings":"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"}
|