@xspswap/smart-order-router 1.1.4 → 1.1.6
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/main/providers/caching/route/model/cached-routes.d.ts +2 -3
- package/build/main/providers/caching/route/model/cached-routes.js +4 -4
- package/build/main/providers/caching/route/route-caching-provider.d.ts +1 -2
- package/build/main/providers/caching/route/route-caching-provider.js +11 -6
- package/build/main/providers/caching-gas-provider.d.ts +1 -1
- package/build/main/providers/caching-gas-provider.js +1 -1
- package/build/main/providers/caching-token-list-provider.d.ts +1 -2
- package/build/main/providers/caching-token-list-provider.js +1 -2
- package/build/main/providers/caching-token-provider.d.ts +1 -2
- package/build/main/providers/caching-token-provider.js +7 -6
- package/build/main/providers/eth-estimate-gas-provider.d.ts +1 -1
- package/build/main/providers/eth-estimate-gas-provider.js +1 -1
- package/build/main/providers/multicall-uniswap-provider.d.ts +1 -1
- package/build/main/providers/multicall-uniswap-provider.js +3 -3
- package/build/main/providers/on-chain-gas-price-provider.d.ts +1 -1
- package/build/main/providers/on-chain-quote-provider.d.ts +1 -1
- package/build/main/providers/on-chain-quote-provider.js +24 -13
- package/build/main/providers/simulation-provider.d.ts +2 -2
- package/build/main/providers/simulation-provider.js +6 -6
- package/build/main/providers/swap-router-provider.d.ts +1 -2
- package/build/main/providers/swap-router-provider.js +3 -2
- package/build/main/providers/tenderly-simulation-provider.d.ts +1 -1
- package/build/main/providers/tenderly-simulation-provider.js +8 -7
- package/build/main/providers/token-provider.d.ts +9 -14
- package/build/main/providers/token-provider.js +32 -46
- package/build/main/providers/token-validator-provider.d.ts +1 -2
- package/build/main/providers/token-validator-provider.js +3 -2
- package/build/main/providers/uri-subgraph-provider.d.ts +1 -1
- package/build/main/providers/uri-subgraph-provider.js +1 -1
- package/build/main/providers/v2/caching-pool-provider.d.ts +5 -3
- package/build/main/providers/v2/caching-pool-provider.js +5 -3
- package/build/main/providers/v2/caching-subgraph-provider.d.ts +1 -1
- package/build/main/providers/v2/pool-provider.d.ts +13 -4
- package/build/main/providers/v2/pool-provider.js +12 -10
- package/build/main/providers/v2/quote-provider.js +2 -2
- package/build/main/providers/v2/static-subgraph-provider.d.ts +1 -2
- package/build/main/providers/v2/static-subgraph-provider.js +9 -21
- package/build/main/providers/v2/subgraph-provider.d.ts +1 -2
- package/build/main/providers/v2/subgraph-provider.js +1 -1
- package/build/main/providers/v2-fathom/constants.d.ts +2 -0
- package/build/main/providers/v2-fathom/constants.js +6 -0
- package/build/main/providers/v2-fathom/static-subgraph-provider.d.ts +22 -0
- package/build/main/providers/v2-fathom/static-subgraph-provider.js +169 -0
- package/build/main/providers/v2-fathom/subgraph-provider.d.ts +34 -0
- package/build/main/providers/v2-fathom/subgraph-provider.js +130 -0
- package/build/main/providers/v2-fathom/utils.d.ts +2 -0
- package/build/main/providers/v2-fathom/utils.js +14 -0
- package/build/main/providers/v3/caching-pool-provider.d.ts +5 -3
- package/build/main/providers/v3/caching-pool-provider.js +5 -3
- package/build/main/providers/v3/caching-subgraph-provider.d.ts +1 -1
- package/build/main/providers/v3/pool-provider.d.ts +5 -3
- package/build/main/providers/v3/pool-provider.js +14 -8
- package/build/main/providers/v3/static-subgraph-provider-v3-uni.d.ts +29 -0
- package/build/main/providers/v3/static-subgraph-provider-v3-uni.js +209 -0
- package/build/main/providers/v3/static-subgraph-provider.d.ts +1 -2
- package/build/main/providers/v3/static-subgraph-provider.js +43 -91
- package/build/main/providers/v3/subgraph-provider.d.ts +1 -2
- package/build/main/providers/v3/subgraph-provider.js +2 -2
- package/build/main/routers/alpha-router/alpha-router.d.ts +25 -6
- package/build/main/routers/alpha-router/alpha-router.js +100 -38
- package/build/main/routers/alpha-router/config.d.ts +1 -1
- package/build/main/routers/alpha-router/entities/route-with-valid-quote.d.ts +9 -7
- package/build/main/routers/alpha-router/entities/route-with-valid-quote.js +8 -8
- package/build/main/routers/alpha-router/functions/best-swap-route.d.ts +1 -2
- package/build/main/routers/alpha-router/functions/best-swap-route.js +1 -1
- package/build/main/routers/alpha-router/functions/compute-all-routes.d.ts +4 -3
- package/build/main/routers/alpha-router/functions/compute-all-routes.js +6 -6
- package/build/main/routers/alpha-router/functions/get-candidate-pools.d.ts +7 -5
- package/build/main/routers/alpha-router/functions/get-candidate-pools.js +19 -17
- package/build/main/routers/alpha-router/gas-models/gas-model.d.ts +1 -2
- package/build/main/routers/alpha-router/gas-models/gas-model.js +4 -4
- package/build/main/routers/alpha-router/gas-models/mixedRoute/mixed-route-heuristic-gas-model.js +4 -4
- package/build/main/routers/alpha-router/gas-models/v2/v2-heuristic-gas-model.js +13 -12
- package/build/main/routers/alpha-router/gas-models/v3/gas-costs.d.ts +1 -1
- package/build/main/routers/alpha-router/gas-models/v3/gas-costs.js +11 -11
- package/build/main/routers/alpha-router/gas-models/v3/v3-heuristic-gas-model.js +4 -5
- package/build/main/routers/alpha-router/quoters/base-quoter.d.ts +5 -3
- package/build/main/routers/alpha-router/quoters/base-quoter.js +3 -2
- package/build/main/routers/alpha-router/quoters/mixed-quoter.d.ts +4 -3
- package/build/main/routers/alpha-router/quoters/mixed-quoter.js +80 -14
- package/build/main/routers/alpha-router/quoters/v2-quoter.d.ts +4 -3
- package/build/main/routers/alpha-router/quoters/v2-quoter.js +9 -4
- package/build/main/routers/alpha-router/quoters/v3-quoter.d.ts +5 -4
- package/build/main/routers/alpha-router/quoters/v3-quoter.js +9 -10
- package/build/main/routers/legacy-router/bases.d.ts +1 -2
- package/build/main/routers/legacy-router/bases.js +7 -6
- package/build/main/routers/legacy-router/legacy-router.d.ts +1 -2
- package/build/main/routers/legacy-router/legacy-router.js +5 -5
- package/build/main/routers/router.d.ts +7 -4
- package/build/main/routers/router.js +8 -8
- package/build/main/tsconfig.tsbuildinfo +1 -1
- package/build/main/util/addresses.d.ts +0 -21
- package/build/main/util/addresses.js +6 -59
- package/build/main/util/chains.d.ts +2 -11
- package/build/main/util/chains.js +18 -37
- package/build/main/util/gas-factory-helpers.d.ts +2 -3
- package/build/main/util/gas-factory-helpers.js +10 -6
- package/build/main/util/methodParameters.d.ts +2 -2
- package/build/main/util/methodParameters.js +5 -5
- package/build/main/util/protocols.d.ts +2 -0
- package/build/main/util/protocols.js +14 -2
- package/build/main/util/routes.js +19 -10
- package/build/module/providers/caching/route/model/cached-routes.d.ts +2 -3
- package/build/module/providers/caching/route/model/cached-routes.js +4 -4
- package/build/module/providers/caching/route/route-caching-provider.d.ts +1 -2
- package/build/module/providers/caching/route/route-caching-provider.js +12 -7
- package/build/module/providers/caching-gas-provider.d.ts +1 -1
- package/build/module/providers/caching-gas-provider.js +1 -1
- package/build/module/providers/caching-token-list-provider.d.ts +1 -2
- package/build/module/providers/caching-token-list-provider.js +1 -2
- package/build/module/providers/caching-token-provider.d.ts +1 -2
- package/build/module/providers/caching-token-provider.js +8 -7
- package/build/module/providers/eth-estimate-gas-provider.d.ts +1 -1
- package/build/module/providers/eth-estimate-gas-provider.js +1 -1
- package/build/module/providers/multicall-uniswap-provider.d.ts +1 -1
- package/build/module/providers/multicall-uniswap-provider.js +3 -3
- package/build/module/providers/on-chain-gas-price-provider.d.ts +1 -1
- package/build/module/providers/on-chain-quote-provider.d.ts +1 -1
- package/build/module/providers/on-chain-quote-provider.js +27 -16
- package/build/module/providers/simulation-provider.d.ts +2 -2
- package/build/module/providers/simulation-provider.js +6 -6
- package/build/module/providers/swap-router-provider.d.ts +1 -2
- package/build/module/providers/swap-router-provider.js +3 -2
- package/build/module/providers/tenderly-simulation-provider.d.ts +1 -1
- package/build/module/providers/tenderly-simulation-provider.js +8 -7
- package/build/module/providers/token-provider.d.ts +9 -14
- package/build/module/providers/token-provider.js +20 -33
- package/build/module/providers/token-validator-provider.d.ts +1 -2
- package/build/module/providers/token-validator-provider.js +4 -3
- package/build/module/providers/uri-subgraph-provider.d.ts +1 -1
- package/build/module/providers/uri-subgraph-provider.js +1 -1
- package/build/module/providers/v2/caching-pool-provider.d.ts +5 -3
- package/build/module/providers/v2/caching-pool-provider.js +5 -3
- package/build/module/providers/v2/caching-subgraph-provider.d.ts +1 -1
- package/build/module/providers/v2/pool-provider.d.ts +13 -4
- package/build/module/providers/v2/pool-provider.js +12 -10
- package/build/module/providers/v2/quote-provider.js +2 -2
- package/build/module/providers/v2/static-subgraph-provider.d.ts +1 -2
- package/build/module/providers/v2/static-subgraph-provider.js +8 -20
- package/build/module/providers/v2/subgraph-provider.d.ts +1 -2
- package/build/module/providers/v2/subgraph-provider.js +1 -1
- package/build/module/providers/v2-fathom/constants.d.ts +2 -0
- package/build/module/providers/v2-fathom/constants.js +3 -0
- package/build/module/providers/v2-fathom/static-subgraph-provider.d.ts +22 -0
- package/build/module/providers/v2-fathom/static-subgraph-provider.js +162 -0
- package/build/module/providers/v2-fathom/subgraph-provider.d.ts +34 -0
- package/build/module/providers/v2-fathom/subgraph-provider.js +131 -0
- package/build/module/providers/v2-fathom/utils.d.ts +2 -0
- package/build/module/providers/v2-fathom/utils.js +10 -0
- package/build/module/providers/v3/caching-pool-provider.d.ts +5 -3
- package/build/module/providers/v3/caching-pool-provider.js +5 -3
- package/build/module/providers/v3/caching-subgraph-provider.d.ts +1 -1
- package/build/module/providers/v3/pool-provider.d.ts +5 -3
- package/build/module/providers/v3/pool-provider.js +14 -8
- package/build/module/providers/v3/static-subgraph-provider-v3-uni.d.ts +29 -0
- package/build/module/providers/v3/static-subgraph-provider-v3-uni.js +202 -0
- package/build/module/providers/v3/static-subgraph-provider.d.ts +1 -2
- package/build/module/providers/v3/static-subgraph-provider.js +42 -90
- package/build/module/providers/v3/subgraph-provider.d.ts +1 -2
- package/build/module/providers/v3/subgraph-provider.js +2 -2
- package/build/module/routers/alpha-router/alpha-router.d.ts +25 -6
- package/build/module/routers/alpha-router/alpha-router.js +102 -40
- package/build/module/routers/alpha-router/config.d.ts +1 -1
- package/build/module/routers/alpha-router/entities/route-with-valid-quote.d.ts +9 -7
- package/build/module/routers/alpha-router/entities/route-with-valid-quote.js +8 -8
- package/build/module/routers/alpha-router/functions/best-swap-route.d.ts +1 -2
- package/build/module/routers/alpha-router/functions/best-swap-route.js +1 -1
- package/build/module/routers/alpha-router/functions/compute-all-routes.d.ts +4 -3
- package/build/module/routers/alpha-router/functions/compute-all-routes.js +6 -6
- package/build/module/routers/alpha-router/functions/get-candidate-pools.d.ts +7 -5
- package/build/module/routers/alpha-router/functions/get-candidate-pools.js +21 -19
- package/build/module/routers/alpha-router/gas-models/gas-model.d.ts +1 -2
- package/build/module/routers/alpha-router/gas-models/gas-model.js +3 -3
- package/build/module/routers/alpha-router/gas-models/mixedRoute/mixed-route-heuristic-gas-model.js +4 -4
- package/build/module/routers/alpha-router/gas-models/v2/v2-heuristic-gas-model.js +14 -13
- package/build/module/routers/alpha-router/gas-models/v3/gas-costs.d.ts +1 -1
- package/build/module/routers/alpha-router/gas-models/v3/gas-costs.js +8 -8
- package/build/module/routers/alpha-router/gas-models/v3/v3-heuristic-gas-model.js +5 -6
- package/build/module/routers/alpha-router/quoters/base-quoter.d.ts +5 -3
- package/build/module/routers/alpha-router/quoters/base-quoter.js +3 -2
- package/build/module/routers/alpha-router/quoters/mixed-quoter.d.ts +4 -3
- package/build/module/routers/alpha-router/quoters/mixed-quoter.js +81 -15
- package/build/module/routers/alpha-router/quoters/v2-quoter.d.ts +4 -3
- package/build/module/routers/alpha-router/quoters/v2-quoter.js +9 -4
- package/build/module/routers/alpha-router/quoters/v3-quoter.d.ts +5 -4
- package/build/module/routers/alpha-router/quoters/v3-quoter.js +9 -10
- package/build/module/routers/legacy-router/bases.d.ts +1 -2
- package/build/module/routers/legacy-router/bases.js +8 -7
- package/build/module/routers/legacy-router/legacy-router.d.ts +1 -2
- package/build/module/routers/legacy-router/legacy-router.js +6 -6
- package/build/module/routers/router.d.ts +7 -4
- package/build/module/routers/router.js +8 -8
- package/build/module/tsconfig.module.tsbuildinfo +1 -1
- package/build/module/util/addresses.d.ts +0 -21
- package/build/module/util/addresses.js +3 -66
- package/build/module/util/chains.d.ts +2 -11
- package/build/module/util/chains.js +13 -32
- package/build/module/util/gas-factory-helpers.d.ts +2 -3
- package/build/module/util/gas-factory-helpers.js +12 -8
- package/build/module/util/methodParameters.d.ts +2 -2
- package/build/module/util/methodParameters.js +7 -7
- package/build/module/util/protocols.d.ts +2 -0
- package/build/module/util/protocols.js +11 -1
- package/build/module/util/routes.js +20 -11
- package/package.json +1 -1
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BigNumber } from '@ethersproject/bignumber';
|
|
2
|
+
import { ChainId, FactoryConfig, Token } from '@x-swap-protocol/sdk-core';
|
|
2
3
|
import { Pair } from '@x-swap-protocol/v2-sdk';
|
|
3
4
|
import { Options as RetryOptions } from 'async-retry';
|
|
4
|
-
import { ChainId } from '../../util';
|
|
5
5
|
import { IMulticallProvider } from '../multicall-provider';
|
|
6
6
|
import { ProviderConfig } from '../provider';
|
|
7
|
+
export type IReserves = {
|
|
8
|
+
reserve0: BigNumber;
|
|
9
|
+
reserve1: BigNumber;
|
|
10
|
+
blockTimestampLast: number;
|
|
11
|
+
};
|
|
7
12
|
/**
|
|
8
13
|
* Provider for getting V2 pools.
|
|
9
14
|
*
|
|
@@ -42,14 +47,18 @@ export declare class V2PoolProvider implements IV2PoolProvider {
|
|
|
42
47
|
protected chainId: ChainId;
|
|
43
48
|
protected multicall2Provider: IMulticallProvider;
|
|
44
49
|
protected retryOptions: V2PoolRetryOptions;
|
|
50
|
+
protected factory?: FactoryConfig | undefined;
|
|
51
|
+
protected name?: string | undefined;
|
|
45
52
|
private POOL_ADDRESS_CACHE;
|
|
46
53
|
/**
|
|
47
54
|
* Creates an instance of V2PoolProvider.
|
|
48
55
|
* @param chainId The chain id to use.
|
|
49
56
|
* @param multicall2Provider The multicall provider to use to get the pools.
|
|
50
|
-
* @param retryOptions The retry options for each call to the multicall.
|
|
57
|
+
* @param [retryOptions] The retry options for each call to the multicall.
|
|
58
|
+
* @param {FactoryConfig} [factory] specific factory.
|
|
59
|
+
* @param name name of the provider.
|
|
51
60
|
*/
|
|
52
|
-
constructor(chainId: ChainId, multicall2Provider: IMulticallProvider, retryOptions?:
|
|
61
|
+
constructor(chainId: ChainId, multicall2Provider: IMulticallProvider, retryOptions: V2PoolRetryOptions, factory?: FactoryConfig | undefined, name?: string | undefined);
|
|
53
62
|
getPools(tokenPairs: [Token, Token][], providerConfig?: ProviderConfig): Promise<V2PoolAccessor>;
|
|
54
63
|
getPoolAddress(tokenA: Token, tokenB: Token): {
|
|
55
64
|
poolAddress: string;
|
|
@@ -16,16 +16,16 @@ class V2PoolProvider {
|
|
|
16
16
|
* Creates an instance of V2PoolProvider.
|
|
17
17
|
* @param chainId The chain id to use.
|
|
18
18
|
* @param multicall2Provider The multicall provider to use to get the pools.
|
|
19
|
-
* @param retryOptions The retry options for each call to the multicall.
|
|
19
|
+
* @param [retryOptions] The retry options for each call to the multicall.
|
|
20
|
+
* @param {FactoryConfig} [factory] specific factory.
|
|
21
|
+
* @param name name of the provider.
|
|
20
22
|
*/
|
|
21
|
-
constructor(chainId, multicall2Provider, retryOptions
|
|
22
|
-
retries: 2,
|
|
23
|
-
minTimeout: 50,
|
|
24
|
-
maxTimeout: 500,
|
|
25
|
-
}) {
|
|
23
|
+
constructor(chainId, multicall2Provider, retryOptions, factory, name) {
|
|
26
24
|
this.chainId = chainId;
|
|
27
25
|
this.multicall2Provider = multicall2Provider;
|
|
28
26
|
this.retryOptions = retryOptions;
|
|
27
|
+
this.factory = factory;
|
|
28
|
+
this.name = name;
|
|
29
29
|
// Computing pool addresses is slow as it requires hashing, encoding etc.
|
|
30
30
|
// Addresses never change so can always be cached.
|
|
31
31
|
this.POOL_ADDRESS_CACHE = {};
|
|
@@ -60,7 +60,7 @@ class V2PoolProvider {
|
|
|
60
60
|
}
|
|
61
61
|
const [token0, token1] = sortedTokenPairs[i];
|
|
62
62
|
const { reserve0, reserve1 } = reservesResult.result;
|
|
63
|
-
const pool = new v2_sdk_1.Pair(util_1.CurrencyAmount.fromRawAmount(token0, reserve0.toString()), util_1.CurrencyAmount.fromRawAmount(token1, reserve1.toString()));
|
|
63
|
+
const pool = new v2_sdk_1.Pair(util_1.CurrencyAmount.fromRawAmount(token0, reserve0.toString()), util_1.CurrencyAmount.fromRawAmount(token1, reserve1.toString()), this.factory);
|
|
64
64
|
const poolAddress = sortedPoolAddresses[i];
|
|
65
65
|
poolAddressToPool[poolAddress] = pool;
|
|
66
66
|
}
|
|
@@ -84,12 +84,14 @@ class V2PoolProvider {
|
|
|
84
84
|
const [token0, token1] = tokenA.sortsBefore(tokenB)
|
|
85
85
|
? [tokenA, tokenB]
|
|
86
86
|
: [tokenB, tokenA];
|
|
87
|
-
const cacheKey = `${this.chainId}
|
|
87
|
+
const cacheKey = `${this.chainId}/` +
|
|
88
|
+
(this.factory ? 'Fathom' : 'XSwap') +
|
|
89
|
+
`/${token0.address}/${token1.address}`;
|
|
88
90
|
const cachedAddress = this.POOL_ADDRESS_CACHE[cacheKey];
|
|
89
91
|
if (cachedAddress) {
|
|
90
92
|
return { poolAddress: cachedAddress, token0, token1 };
|
|
91
93
|
}
|
|
92
|
-
const poolAddress = v2_sdk_1.Pair.getAddress(token0, token1);
|
|
94
|
+
const poolAddress = v2_sdk_1.Pair.getAddress(token0, token1, this.factory);
|
|
93
95
|
this.POOL_ADDRESS_CACHE[cacheKey] = poolAddress;
|
|
94
96
|
return { poolAddress, token0, token1 };
|
|
95
97
|
}
|
|
@@ -107,4 +109,4 @@ class V2PoolProvider {
|
|
|
107
109
|
}
|
|
108
110
|
}
|
|
109
111
|
exports.V2PoolProvider = V2PoolProvider;
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9vbC1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wcm92aWRlcnMvdjIvcG9vbC1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFFQSxvREFBK0M7QUFDL0MsOERBQTZEO0FBQzdELG9EQUF1QjtBQUV2Qiw4RkFBMkY7QUFDM0YscUNBQTRDO0FBQzVDLHdDQUFxQztBQUNyQyw4Q0FBaUQ7QUFrRGpELE1BQWEsY0FBYztJQUt6Qjs7Ozs7OztPQU9HO0lBQ0gsWUFDWSxPQUFnQixFQUNoQixrQkFBc0MsRUFDdEMsWUFBZ0MsRUFDaEMsT0FBdUIsRUFDdkIsSUFBYTtRQUpiLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUFDaEMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBUztRQWpCekIseUVBQXlFO1FBQ3pFLGtEQUFrRDtRQUMxQyx1QkFBa0IsR0FBOEIsRUFBRSxDQUFDO0lBZ0J4RCxDQUFDO0lBRUcsS0FBSyxDQUFDLFFBQVEsQ0FDbkIsVUFBNEIsRUFDNUIsY0FBK0I7UUFFL0IsTUFBTSxjQUFjLEdBQWdCLElBQUksR0FBRyxFQUFVLENBQUM7UUFDdEQsTUFBTSxnQkFBZ0IsR0FBMEIsRUFBRSxDQUFDO1FBQ25ELE1BQU0sbUJBQW1CLEdBQWEsRUFBRSxDQUFDO1FBRXpDLEtBQUssTUFBTSxTQUFTLElBQUksVUFBVSxFQUFFO1lBQ2xDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDO1lBRW5DLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQ3pELE1BQU0sRUFDTixNQUFNLENBQ1AsQ0FBQztZQUVGLElBQUksY0FBYyxDQUFDLEdBQUcs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
|
|
@@ -4,10 +4,10 @@ exports.V2QuoteProvider = void 0;
|
|
|
4
4
|
const bignumber_1 = require("@ethersproject/bignumber");
|
|
5
5
|
const sdk_core_1 = require("@x-swap-protocol/sdk-core");
|
|
6
6
|
const v2_sdk_1 = require("@x-swap-protocol/v2-sdk");
|
|
7
|
+
const utils_1 = require("ethers/lib/utils");
|
|
7
8
|
const amounts_1 = require("../../util/amounts");
|
|
8
9
|
const log_1 = require("../../util/log");
|
|
9
10
|
const routes_1 = require("../../util/routes");
|
|
10
|
-
const utils_1 = require("ethers/lib/utils");
|
|
11
11
|
/**
|
|
12
12
|
* Computes quotes for V2 off-chain. Quotes are computed using the balances
|
|
13
13
|
* of the pools within each route provided.
|
|
@@ -102,4 +102,4 @@ class V2QuoteProvider {
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
exports.V2QuoteProvider = V2QuoteProvider;
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVvdGUtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3YyL3F1b3RlLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdEQUFxRDtBQUNyRCx3REFBc0Q7QUFDdEQsb0RBR2lDO0FBQ2pDLDRDQUE4QztBQUc5QyxnREFBb0Q7QUFDcEQsd0NBQXFDO0FBQ3JDLDhDQUFrRDtBQXNCbEQ7Ozs7OztHQU1HO0FBQ0gsTUFBYSxlQUFlO0lBQzFCLHlEQUF5RDtJQUN6RCxnQkFBZSxDQUFDO0lBQ2hCLHdEQUF3RDtJQUVqRCxLQUFLLENBQUMsb0JBQW9CLENBQy9CLFNBQTJCLEVBQzNCLE1BQWlCO1FBRWpCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLG9CQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLEtBQUssQ0FBQyxxQkFBcUIsQ0FDaEMsVUFBNEIsRUFDNUIsTUFBaUI7UUFFakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsb0JBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRU8sS0FBSyxDQUFDLFNBQVMsQ0FDckIsT0FBeUIsRUFDekIsTUFBaUIsRUFDakIsU0FBb0I7UUFFcEIsTUFBTSxnQkFBZ0IsR0FBd0IsRUFBRSxDQUFDO1FBRWpELE1BQU0sU0FBUyxHQUFhLEVBQUUsQ0FBQztRQUMvQixLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRTtZQUMxQixNQUFNLFlBQVksR0FBb0IsRUFBRSxDQUFDO1lBRXpDLElBQUksaUNBQWlDLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLElBQUksOEJBQThCLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZDLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUM1QixJQUFJO29CQUNGLElBQUksU0FBUyxJQUFJ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
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { Token } from '@x-swap-protocol/sdk-core';
|
|
2
|
-
import { ChainId } from '../../util/chains';
|
|
1
|
+
import { ChainId, Token } from '@x-swap-protocol/sdk-core';
|
|
3
2
|
import { IV2SubgraphProvider, V2SubgraphPool } from './subgraph-provider';
|
|
4
3
|
export declare const V2_XDC_ADDITIONAL_BASES: {
|
|
5
4
|
[tokenAddress: string]: Token[];
|
|
@@ -4,36 +4,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.StaticV2SubgraphProvider = exports.V2_XDC_ADDITIONAL_BASES = void 0;
|
|
7
|
+
const sdk_core_1 = require("@x-swap-protocol/sdk-core");
|
|
7
8
|
const v2_sdk_1 = require("@x-swap-protocol/v2-sdk");
|
|
8
9
|
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
-
const chains_1 = require("../../util/chains");
|
|
10
10
|
const log_1 = require("../../util/log");
|
|
11
11
|
const token_provider_1 = require("../token-provider");
|
|
12
12
|
const BASES_TO_CHECK_TRADES_AGAINST = {
|
|
13
|
-
[
|
|
14
|
-
[
|
|
13
|
+
[sdk_core_1.ChainId.XDC]: [sdk_core_1.WETH9[sdk_core_1.ChainId.XDC]],
|
|
14
|
+
[sdk_core_1.ChainId.APOTHEM]: [],
|
|
15
15
|
};
|
|
16
16
|
const ADDITIONAL_BASES = {
|
|
17
|
-
[
|
|
18
|
-
[token_provider_1.WXDC_XDC.address]: [
|
|
19
|
-
|
|
20
|
-
token_provider_1.XSP_XDC,
|
|
21
|
-
token_provider_1.USDT_XDC,
|
|
22
|
-
token_provider_1.PLI_XDC,
|
|
23
|
-
token_provider_1.BIC_XDC,
|
|
24
|
-
token_provider_1.PRNT_XDC,
|
|
25
|
-
],
|
|
26
|
-
[token_provider_1.XTT_XDC.address]: [token_provider_1.WXDC_XDC, token_provider_1.XSP_XDC],
|
|
27
|
-
[token_provider_1.XSP_XDC.address]: [token_provider_1.WXDC_XDC, token_provider_1.XTT_XDC, token_provider_1.PLI_XDC],
|
|
28
|
-
[token_provider_1.USDT_XDC.address]: [token_provider_1.WXDC_XDC, token_provider_1.BIC_XDC, token_provider_1.SRX_XDC],
|
|
29
|
-
[token_provider_1.BIC_XDC.address]: [token_provider_1.WXDC_XDC, token_provider_1.USDT_XDC],
|
|
17
|
+
[sdk_core_1.ChainId.XDC]: {
|
|
18
|
+
[token_provider_1.WXDC_XDC.address]: [token_provider_1.XSP_XDC, token_provider_1.PLI_XDC],
|
|
19
|
+
[token_provider_1.XSP_XDC.address]: [token_provider_1.WXDC_XDC],
|
|
30
20
|
[token_provider_1.PLI_XDC.address]: [token_provider_1.WXDC_XDC],
|
|
31
|
-
[token_provider_1.WTK_XDC.address]: [token_provider_1.WXDC_XDC],
|
|
32
|
-
[token_provider_1.PRNT_XDC.address]: [token_provider_1.WXDC_XDC],
|
|
33
21
|
},
|
|
34
|
-
[
|
|
22
|
+
[sdk_core_1.ChainId.APOTHEM]: {},
|
|
35
23
|
};
|
|
36
|
-
exports.V2_XDC_ADDITIONAL_BASES = ADDITIONAL_BASES[
|
|
24
|
+
exports.V2_XDC_ADDITIONAL_BASES = ADDITIONAL_BASES[sdk_core_1.ChainId.XDC];
|
|
37
25
|
let paths = [];
|
|
38
26
|
const recFinder = (path, used, lastToken, dest, hops) => {
|
|
39
27
|
const hop = path.length;
|
|
@@ -176,4 +164,4 @@ class StaticV2SubgraphProvider {
|
|
|
176
164
|
}
|
|
177
165
|
}
|
|
178
166
|
exports.StaticV2SubgraphProvider = StaticV2SubgraphProvider;
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXN1YmdyYXBoLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy92Mi9zdGF0aWMtc3ViZ3JhcGgtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0RBQWtFO0FBQ2xFLG9EQUErQztBQUMvQyxvREFBdUI7QUFFdkIsd0NBQXFDO0FBQ3JDLHNEQUErRDtBQVEvRCxNQUFNLDZCQUE2QixHQUFtQjtJQUNwRCxDQUFDLGtCQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxnQkFBSyxDQUFDLGtCQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQyxrQkFBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUU7Q0FDdEIsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBRWxCO0lBQ0YsQ0FBQyxrQkFBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ2IsQ0FBQyx5QkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsd0JBQU8sRUFBRSx3QkFBTyxDQUFDO1FBQ3RDLENBQUMsd0JBQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLHlCQUFRLENBQUM7UUFDN0IsQ0FBQyx3QkFBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMseUJBQVEsQ0FBQztLQUM5QjtJQUNELENBQUMsa0JBQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO0NBQ3RCLENBQUM7QUFDVyxRQUFBLHVCQUF1QixHQUFHLGdCQUFnQixDQUFDLGtCQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFckUsSUFBSSxLQUFLLEdBQXVCLEVBQUUsQ0FBQztBQUVuQyxNQUFNLFNBQVMsR0FBRyxDQUNoQixJQUFzQixFQUN0QixJQUFvQyxFQUNwQyxTQUFnQixFQUNoQixJQUFXLEVBQ1gsSUFBWSxFQUNaLEVBQUU7SUFDRixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBRXhCLElB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
|
|
@@ -127,4 +127,4 @@ class V2SubgraphProvider {
|
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
exports.V2SubgraphProvider = V2SubgraphProvider;
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViZ3JhcGgtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvdmlkZXJzL3YyL3N1YmdyYXBoLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLDhEQUFnQztBQUNoQyxrRUFBb0M7QUFDcEMscURBQXFEO0FBQ3JELG9EQUF1QjtBQUV2Qix3Q0FBcUM7QUErQnJDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUV4QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsQ0FBQywrQ0FBK0M7QUFnQnZFLE1BQWEsa0JBQWtCO0lBRzdCLFlBQ1UsT0FBZ0IsRUFDaEIsV0FBbUIsRUFDbkIsVUFBVSxDQUFDLEVBQ1gsVUFBVSxNQUFNLEVBQ2hCLFdBQVcsSUFBSSxFQUNmLFdBQVcsU0FBUztRQUxwQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ25CLFlBQU8sR0FBUCxPQUFPLENBQUk7UUFDWCxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQU87UUFDZixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBRTVCLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7U0FDbEU7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksK0JBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQ25CLFFBQWdCLEVBQ2hCLFNBQWlCLEVBQ2pCLGNBQStCO1FBRS9CLElBQUksV0FBVyxHQUFHLENBQUEsY0FBYyxhQUFkLGNBQWMsdUJBQWQsY0FBYyxDQUFFLFdBQVc7WUFDM0MsQ0FBQyxDQUFDLE1BQU0sY0FBYyxDQUFDLFdBQVc7WUFDbEMsQ0FBQyxDQUFDLFNB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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FATHOM_FACTORY_ADDRESS = exports.FATHOM_INIT_CODE_HASH = void 0;
|
|
4
|
+
exports.FATHOM_INIT_CODE_HASH = '0xa6d23746864049fd29713adbbf145eeecdddd2f9a91be053c057394dd5d7d9ad';
|
|
5
|
+
exports.FATHOM_FACTORY_ADDRESS = '0x9fAb572F75008A42c6aF80b36Ab20C76a38ABc4B';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy92Mi1mYXRob20vY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFhLFFBQUEscUJBQXFCLEdBQ2hDLG9FQUFvRSxDQUFDO0FBQzFELFFBQUEsc0JBQXNCLEdBQ2pDLDRDQUE0QyxDQUFDIn0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ChainId, Token } from '@x-swap-protocol/sdk-core';
|
|
2
|
+
import { IV2SubgraphProvider, V2SubgraphPool } from './subgraph-provider';
|
|
3
|
+
export declare const FATHOM_V2_XDC_ADDITIONAL_BASES: {
|
|
4
|
+
[tokenAddress: string]: Token[];
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Provider that does not get data from an external source and instead returns
|
|
8
|
+
* a hardcoded list of Subgraph pools.
|
|
9
|
+
*
|
|
10
|
+
* Since the pools are hardcoded, the liquidity/price values are dummys and should not
|
|
11
|
+
* be depended on.
|
|
12
|
+
*
|
|
13
|
+
* Useful for instances where other data sources are unavailable. E.g. subgraph not available.
|
|
14
|
+
*
|
|
15
|
+
* @export
|
|
16
|
+
* @class StaticV2SubgraphProvider
|
|
17
|
+
*/
|
|
18
|
+
export declare class StaticV2FathomSubgraphProvider implements IV2SubgraphProvider {
|
|
19
|
+
private chainId;
|
|
20
|
+
constructor(chainId: ChainId);
|
|
21
|
+
getPools(tokenIn?: Token, tokenOut?: Token): Promise<V2SubgraphPool[]>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.StaticV2FathomSubgraphProvider = exports.FATHOM_V2_XDC_ADDITIONAL_BASES = void 0;
|
|
7
|
+
const sdk_core_1 = require("@x-swap-protocol/sdk-core");
|
|
8
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
+
const log_1 = require("../../util/log");
|
|
10
|
+
const token_provider_1 = require("../token-provider");
|
|
11
|
+
const utils_1 = require("./utils");
|
|
12
|
+
const BASES_TO_CHECK_TRADES_AGAINST = {
|
|
13
|
+
[sdk_core_1.ChainId.XDC]: [token_provider_1.WXDC_XDC, token_provider_1.FXD_XDC],
|
|
14
|
+
[sdk_core_1.ChainId.APOTHEM]: [],
|
|
15
|
+
};
|
|
16
|
+
const ADDITIONAL_BASES = {
|
|
17
|
+
[sdk_core_1.ChainId.XDC]: {
|
|
18
|
+
[token_provider_1.WXDC_XDC.address]: [token_provider_1.USDT_XDC, token_provider_1.FXD_XDC],
|
|
19
|
+
[token_provider_1.FXD_XDC.address]: [token_provider_1.WXDC_XDC, token_provider_1.USDT_XDC, token_provider_1.EURS_XDC],
|
|
20
|
+
[token_provider_1.USDT_XDC.address]: [token_provider_1.WXDC_XDC, token_provider_1.FXD_XDC],
|
|
21
|
+
[token_provider_1.EURS_XDC.address]: [token_provider_1.FXD_XDC],
|
|
22
|
+
[token_provider_1.PLI_XDC.address]: [token_provider_1.WXDC_XDC],
|
|
23
|
+
},
|
|
24
|
+
[sdk_core_1.ChainId.APOTHEM]: {},
|
|
25
|
+
};
|
|
26
|
+
exports.FATHOM_V2_XDC_ADDITIONAL_BASES = ADDITIONAL_BASES[sdk_core_1.ChainId.XDC];
|
|
27
|
+
let paths = [];
|
|
28
|
+
const recFinder = (path, used, lastToken, dest, hops) => {
|
|
29
|
+
const hop = path.length;
|
|
30
|
+
if (hop < hops) {
|
|
31
|
+
if (!lastToken) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const additional = exports.FATHOM_V2_XDC_ADDITIONAL_BASES[lastToken.address];
|
|
35
|
+
if (additional) {
|
|
36
|
+
for (const ad of additional) {
|
|
37
|
+
const adToken = ad;
|
|
38
|
+
const newPair = [lastToken, adToken];
|
|
39
|
+
const newPath = [...path, newPair];
|
|
40
|
+
if (adToken.address === dest.address) {
|
|
41
|
+
paths.push(newPath);
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
if (!used[adToken.address]) {
|
|
45
|
+
recFinder(newPath, Object.assign(Object.assign({}, used), { [adToken.address]: true }), adToken, dest, hops);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Provider that does not get data from an external source and instead returns
|
|
53
|
+
* a hardcoded list of Subgraph pools.
|
|
54
|
+
*
|
|
55
|
+
* Since the pools are hardcoded, the liquidity/price values are dummys and should not
|
|
56
|
+
* be depended on.
|
|
57
|
+
*
|
|
58
|
+
* Useful for instances where other data sources are unavailable. E.g. subgraph not available.
|
|
59
|
+
*
|
|
60
|
+
* @export
|
|
61
|
+
* @class StaticV2SubgraphProvider
|
|
62
|
+
*/
|
|
63
|
+
class StaticV2FathomSubgraphProvider {
|
|
64
|
+
constructor(chainId) {
|
|
65
|
+
this.chainId = chainId;
|
|
66
|
+
}
|
|
67
|
+
async getPools(tokenIn, tokenOut) {
|
|
68
|
+
paths = [];
|
|
69
|
+
log_1.log.info('In static subgraph provider for V2');
|
|
70
|
+
const bases = BASES_TO_CHECK_TRADES_AGAINST[this.chainId];
|
|
71
|
+
const basePairs = lodash_1.default.flatMap(bases, (base) => bases.map((otherBase) => [base, otherBase]));
|
|
72
|
+
let pairs = [];
|
|
73
|
+
if (tokenIn && tokenOut) {
|
|
74
|
+
const additionalIn = ADDITIONAL_BASES[this.chainId][tokenIn.address];
|
|
75
|
+
const additionalOut = ADDITIONAL_BASES[this.chainId][tokenOut.address];
|
|
76
|
+
if (!additionalIn || !additionalOut) {
|
|
77
|
+
basePairs.push([tokenIn, tokenOut]);
|
|
78
|
+
if (additionalIn) {
|
|
79
|
+
basePairs.push(...additionalIn.map((v) => [tokenIn, v]));
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
basePairs.push(...bases.map((base) => [tokenIn, base]));
|
|
83
|
+
}
|
|
84
|
+
if (additionalOut) {
|
|
85
|
+
basePairs.push(...additionalOut.map((v) => [tokenOut, v]));
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
basePairs.push(...bases.map((base) => [tokenOut, base]));
|
|
89
|
+
}
|
|
90
|
+
pairs = (0, lodash_1.default)(basePairs)
|
|
91
|
+
.filter((tokens) => Boolean(tokens[0] && tokens[1]))
|
|
92
|
+
.filter(([tokenA, tokenB]) => tokenA.address !== tokenB.address && !tokenA.equals(tokenB))
|
|
93
|
+
.flatMap(([tokenA, tokenB]) => {
|
|
94
|
+
const additionalA = ADDITIONAL_BASES[this.chainId][tokenA.address];
|
|
95
|
+
// const additionalB = ADDITIONAL_BASES[this.chainId][tokenB.address];
|
|
96
|
+
if (additionalA) {
|
|
97
|
+
const additionalPool = additionalA.filter((v) => v.address.toLowerCase() === tokenB.address.toLowerCase());
|
|
98
|
+
const res = additionalPool.map((v) => {
|
|
99
|
+
return [tokenA, v];
|
|
100
|
+
});
|
|
101
|
+
return res;
|
|
102
|
+
}
|
|
103
|
+
return [[tokenA, tokenB]];
|
|
104
|
+
})
|
|
105
|
+
.value();
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
recFinder([], { [tokenIn.address]: true }, tokenIn, tokenOut, 5);
|
|
109
|
+
// console.log(
|
|
110
|
+
// paths.map((path) =>
|
|
111
|
+
// path
|
|
112
|
+
// .map(
|
|
113
|
+
// (p) => `(${p[0].symbol} - ${p[1].symbol} : ${p[2] / 10000}% )`
|
|
114
|
+
// )
|
|
115
|
+
// .join(' --> ')
|
|
116
|
+
// )
|
|
117
|
+
// );
|
|
118
|
+
const uniquePairs = {};
|
|
119
|
+
paths.forEach((path) => {
|
|
120
|
+
path.forEach((pool) => {
|
|
121
|
+
const id = `${pool[0].address}-${pool[1].address}`;
|
|
122
|
+
uniquePairs[id] = pool;
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
const direct = tokenIn && tokenOut ? [[tokenIn, tokenOut]] : [];
|
|
126
|
+
pairs = [...Object.values(uniquePairs), ...direct];
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
// pairs = _(basePairs)
|
|
130
|
+
// .filter((tokens): tokens is [Token, Token] =>
|
|
131
|
+
// Boolean(tokens[0] && tokens[1])
|
|
132
|
+
// )
|
|
133
|
+
// .filter(
|
|
134
|
+
// ([tokenA, tokenB]) =>
|
|
135
|
+
// tokenA.address !== tokenB.address && !tokenA.equals(tokenB)
|
|
136
|
+
// )
|
|
137
|
+
// .value();
|
|
138
|
+
const poolAddressSet = new Set();
|
|
139
|
+
const subgraphPools = (0, lodash_1.default)(pairs)
|
|
140
|
+
.map(([tokenA, tokenB]) => {
|
|
141
|
+
const poolAddress = (0, utils_1.getFathomPoolAddress)(tokenA, tokenB);
|
|
142
|
+
if (poolAddressSet.has(poolAddress)) {
|
|
143
|
+
return undefined;
|
|
144
|
+
}
|
|
145
|
+
poolAddressSet.add(poolAddress);
|
|
146
|
+
const [token0, token1] = tokenA.sortsBefore(tokenB)
|
|
147
|
+
? [tokenA, tokenB]
|
|
148
|
+
: [tokenB, tokenA];
|
|
149
|
+
return {
|
|
150
|
+
id: poolAddress,
|
|
151
|
+
liquidity: '100',
|
|
152
|
+
token0: {
|
|
153
|
+
id: token0.address,
|
|
154
|
+
},
|
|
155
|
+
token1: {
|
|
156
|
+
id: token1.address,
|
|
157
|
+
},
|
|
158
|
+
supply: 100,
|
|
159
|
+
reserve: 100,
|
|
160
|
+
reserveUSD: 100,
|
|
161
|
+
};
|
|
162
|
+
})
|
|
163
|
+
.compact()
|
|
164
|
+
.value();
|
|
165
|
+
return subgraphPools;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
exports.StaticV2FathomSubgraphProvider = StaticV2FathomSubgraphProvider;
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLXN1YmdyYXBoLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Byb3ZpZGVycy92Mi1mYXRob20vc3RhdGljLXN1YmdyYXBoLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUEyRDtBQUMzRCxvREFBdUI7QUFFdkIsd0NBQXFDO0FBQ3JDLHNEQU0yQjtBQUczQixtQ0FBK0M7QUFNL0MsTUFBTSw2QkFBNkIsR0FBbUI7SUFDcEQsQ0FBQyxrQkFBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMseUJBQVEsRUFBRSx3QkFBTyxDQUFDO0lBQ2xDLENBQUMsa0JBQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO0NBQ3RCLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUVsQjtJQUNGLENBQUMsa0JBQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNiLENBQUMseUJBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLHlCQUFRLEVBQUUsd0JBQU8sQ0FBQztRQUN2QyxDQUFDLHdCQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyx5QkFBUSxFQUFFLHlCQUFRLEVBQUUseUJBQVEsQ0FBQztRQUNqRCxDQUFDLHlCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyx5QkFBUSxFQUFFLHdCQUFPLENBQUM7UUFDdkMsQ0FBQyx5QkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsd0JBQU8sQ0FBQztRQUM3QixDQUFDLHdCQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyx5QkFBUSxDQUFDO0tBQzlCO0lBQ0QsQ0FBQyxrQkFBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUU7Q0FDdEIsQ0FBQztBQUNXLFFBQUEsOEJBQThCLEdBQUcsZ0JBQWdCLENBQUMsa0JBQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUU1RSxJQUFJLEtBQUssR0FBdUIsRUFBRSxDQUFDO0FBRW5D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
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ChainId, Token } from '@x-swap-protocol/sdk-core';
|
|
2
|
+
import { ProviderConfig } from '../provider';
|
|
3
|
+
export interface V2SubgraphPool {
|
|
4
|
+
id: string;
|
|
5
|
+
token0: {
|
|
6
|
+
id: string;
|
|
7
|
+
};
|
|
8
|
+
token1: {
|
|
9
|
+
id: string;
|
|
10
|
+
};
|
|
11
|
+
supply: number;
|
|
12
|
+
reserve: number;
|
|
13
|
+
reserveUSD: number;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Provider for getting V2 pools from the Subgraph
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface IV2SubgraphProvider
|
|
20
|
+
*/
|
|
21
|
+
export interface IV2SubgraphProvider {
|
|
22
|
+
getPools(tokenIn?: Token, tokenOut?: Token, providerConfig?: ProviderConfig): Promise<V2SubgraphPool[]>;
|
|
23
|
+
}
|
|
24
|
+
export declare class V2SubgraphProvider implements IV2SubgraphProvider {
|
|
25
|
+
private chainId;
|
|
26
|
+
private subgraphUrl;
|
|
27
|
+
private retries;
|
|
28
|
+
private timeout;
|
|
29
|
+
private rollback;
|
|
30
|
+
private pageSize;
|
|
31
|
+
private client;
|
|
32
|
+
constructor(chainId: ChainId, subgraphUrl: string, retries?: number, timeout?: number, rollback?: boolean, pageSize?: number);
|
|
33
|
+
getPools(_tokenIn?: Token, _tokenOut?: Token, providerConfig?: ProviderConfig): Promise<V2SubgraphPool[]>;
|
|
34
|
+
}
|