@stake-dao/reader 0.4.51 → 0.4.52
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/dist/esm/abis/passiveVaultsMulticall.js +56 -0
- package/dist/esm/abis/passiveVaultsMulticall.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/strategies/passive/fetch.js +73 -0
- package/dist/esm/strategies/passive/fetch.js.map +1 -0
- package/dist/esm/strategies/passive/httpCalls.js +35 -0
- package/dist/esm/strategies/passive/httpCalls.js.map +1 -0
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/votemarket/curve/fetchUserVlCvxClaimable.js +10 -9
- package/dist/esm/votemarket/curve/fetchUserVlCvxClaimable.js.map +1 -1
- package/dist/types/abis/passiveVaultsMulticall.d.ts +33 -0
- package/dist/types/abis/passiveVaultsMulticall.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/strategies/passive/fetch.d.ts +161 -0
- package/dist/types/strategies/passive/fetch.d.ts.map +1 -0
- package/dist/types/strategies/passive/httpCalls.d.ts +8 -0
- package/dist/types/strategies/passive/httpCalls.d.ts.map +1 -0
- package/dist/types/votemarket/curve/fetchUserVlCvxClaimable.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/abis/passiveVaultsMulticall.ts +56 -0
- package/src/index.ts +3 -0
- package/src/strategies/passive/fetch.ts +97 -0
- package/src/strategies/passive/httpCalls.ts +42 -0
- package/src/votemarket/curve/fetchUserVlCvxClaimable.ts +15 -10
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
const passiveVaultsMulticall = [
|
|
2
|
+
{
|
|
3
|
+
constant: true,
|
|
4
|
+
inputs: [],
|
|
5
|
+
name: 'totalSupply',
|
|
6
|
+
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
7
|
+
payable: false,
|
|
8
|
+
stateMutability: 'view',
|
|
9
|
+
type: 'function',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
constant: true,
|
|
13
|
+
inputs: [],
|
|
14
|
+
name: 'getPricePerFullShare',
|
|
15
|
+
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
16
|
+
payable: false,
|
|
17
|
+
stateMutability: 'view',
|
|
18
|
+
type: 'function',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
constant: true,
|
|
22
|
+
inputs: [{ internalType: 'address', name: 'account', type: 'address' }],
|
|
23
|
+
name: 'balanceOf',
|
|
24
|
+
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
25
|
+
payable: false,
|
|
26
|
+
stateMutability: 'view',
|
|
27
|
+
type: 'function',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
constant: true,
|
|
31
|
+
inputs: [],
|
|
32
|
+
name: 'withdrawalFee',
|
|
33
|
+
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
34
|
+
payable: false,
|
|
35
|
+
stateMutability: 'view',
|
|
36
|
+
type: 'function',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
constant: true,
|
|
40
|
+
inputs: [],
|
|
41
|
+
name: 'performanceFee',
|
|
42
|
+
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
43
|
+
payable: false,
|
|
44
|
+
stateMutability: 'view',
|
|
45
|
+
type: 'function',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'working_balances',
|
|
49
|
+
outputs: [{ type: 'uint256', name: '' }],
|
|
50
|
+
inputs: [{ type: 'address', name: 'arg0' }],
|
|
51
|
+
stateMutability: 'view',
|
|
52
|
+
type: 'function',
|
|
53
|
+
},
|
|
54
|
+
];
|
|
55
|
+
export default passiveVaultsMulticall;
|
|
56
|
+
//# sourceMappingURL=passiveVaultsMulticall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passiveVaultsMulticall.js","sourceRoot":"","sources":["../../../src/abis/passiveVaultsMulticall.ts"],"names":[],"mappings":"AAAA,MAAM,sBAAsB,GAAG;IAC7B;QACE,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACvE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC3C,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAED,eAAe,sBAAsB,CAAA"}
|
package/dist/esm/index.js
CHANGED
|
@@ -37,6 +37,8 @@ export { buildPancakeSwapStrategies } from './strategies/pancakeswap/build.js';
|
|
|
37
37
|
export { buildPancakeSwapErc20Strategies } from './strategies/pancakeswap/buildErc20.js';
|
|
38
38
|
export { computePositionData } from './strategies/pancakeswap/fetch/pancakePositions.js';
|
|
39
39
|
export { getPancakeV3Positions } from './strategies/pancakeswap/fetch/getPancakeV3Positions.js';
|
|
40
|
+
// Passive
|
|
41
|
+
export { fetchPassive } from './strategies/passive/fetch.js';
|
|
40
42
|
// Pendle
|
|
41
43
|
export { fetchPendle } from './strategies/pendle/fetch.js';
|
|
42
44
|
export { buildPendleStrategies } from './strategies/pendle/build.js';
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,cAAc;AACd,+DAA+D;AAC/D,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAC5E,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGrE,gEAAgE;AAChE,WAAW;AACX,+DAA+D;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,gEAAgE;AAChE,eAAe;AACf,gEAAgE;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AAEjH,gEAAgE;AAChE,iBAAiB;AAEjB,cAAc,6BAA6B,CAAA;AAE3C,QAAQ;AACR,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAA;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAA;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AAEtG,QAAQ;AACR,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAExD,WAAW;AACX,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,QAAQ;AACR,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAE9D,cAAc;AACd,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,wCAAwC,CAAA;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAA;AAE/F,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,SAAS;AACT,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAErF,qBAAqB;AACrB,+DAA+D;AAE/D,gEAAgE;AAChE,kBAAkB;AAElB,UAAU;AACV,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAG/D,QAAQ;AACR,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AAEnF,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAA;AAErF,SAAS;AAET,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAE/E,eAAe;AAEf,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAA;AAEvF,sBAAsB;AACtB,+DAA+D;AAE/D,gEAAgE;AAChE,qBAAqB;AAErB,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AAGnE,yBAAyB;AACzB,+DAA+D;AAE/D,gEAAgE;AAChE,YAAY;AAEZ,QAAQ;AACR,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,YAAY;AACZ,+DAA+D"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { formatUnits } from 'viem';
|
|
2
|
+
import multicallPassiveVaultsAbi from '../../abis/passiveVaultsMulticall.js';
|
|
3
|
+
import { contract, passiveStrats } from '@stake-dao/constants';
|
|
4
|
+
import { multicall } from '../../utils.js';
|
|
5
|
+
import { mainnet } from 'viem/chains';
|
|
6
|
+
import { getPassiveHttpCalls } from './httpCalls.js';
|
|
7
|
+
import { getBoost } from '../utils/boost.js';
|
|
8
|
+
const vaultCalls = (vaultAddress, strategyAddress, gaugeAddress, chainId) => [
|
|
9
|
+
{ address: vaultAddress, name: 'totalSupply' },
|
|
10
|
+
{ address: vaultAddress, name: 'getPricePerFullShare' },
|
|
11
|
+
{ address: strategyAddress, name: 'performanceFee' },
|
|
12
|
+
{ address: strategyAddress, name: 'withdrawalFee' },
|
|
13
|
+
chainId === mainnet.id && { address: gaugeAddress, name: 'balanceOf', params: [contract('convexCrvLocker')] },
|
|
14
|
+
chainId === mainnet.id && {
|
|
15
|
+
address: gaugeAddress,
|
|
16
|
+
name: 'working_balances',
|
|
17
|
+
params: [contract('convexCrvLocker')],
|
|
18
|
+
},
|
|
19
|
+
].filter((c) => c && typeof c !== 'undefined');
|
|
20
|
+
export const fetchPassive = async ({ provider, chainId }) => {
|
|
21
|
+
const passive = passiveStrats.strats.filter((s) => s.chainId === chainId);
|
|
22
|
+
const apisData = await getPassiveHttpCalls(chainId);
|
|
23
|
+
const rawData = await multicall(provider, passive.flatMap((s) => vaultCalls(s.vault.address, s.vault.strategy, s.gaugeAddress, chainId)), multicallPassiveVaultsAbi);
|
|
24
|
+
let currentRawIndex = 0;
|
|
25
|
+
const parsedStratsData = passive.map((s) => {
|
|
26
|
+
const curveApiRaw = apisData.curveApiData.map((apiResult) => apiResult.value.find((pool) => pool.lpTokenAddress.toLowerCase() === s.lpToken.address.toLowerCase()));
|
|
27
|
+
const indexOfData = curveApiRaw.findIndex((e) => e);
|
|
28
|
+
const curveApiData = curveApiRaw[indexOfData];
|
|
29
|
+
const subgraphData = apisData.curveSubgraphData.find((el) => el.address === curveApiData.address);
|
|
30
|
+
const lpPriceInUsd = curveApiData.usdTotal / Number(formatUnits(BigInt(curveApiData.totalSupply), 18));
|
|
31
|
+
const totalSupply = Number(formatUnits(rawData[currentRawIndex].result, s.lpToken.decimals));
|
|
32
|
+
const conversionRate = Number(formatUnits(rawData[currentRawIndex + 1].result, s.lpToken.decimals));
|
|
33
|
+
const totalSupplyInLpToken = totalSupply * conversionRate;
|
|
34
|
+
const tvl = totalSupplyInLpToken * lpPriceInUsd;
|
|
35
|
+
const perfFee = rawData[currentRawIndex + 2].result;
|
|
36
|
+
const withdrawalFee = rawData[currentRawIndex + 3].result;
|
|
37
|
+
const boost = chainId === 1 ? getBoost('curve', rawData[currentRawIndex + 4].result, rawData[currentRawIndex + 5].result) : 1;
|
|
38
|
+
const aprWithBoost = curveApiData.gaugeCrvApy?.[0] && boost ? curveApiData.gaugeCrvApy[0] * boost : 0;
|
|
39
|
+
currentRawIndex += vaultCalls('', '', '', chainId).length;
|
|
40
|
+
const apy = subgraphData.latestWeeklyApy ? Number(subgraphData.latestWeeklyApy) + aprWithBoost : 0;
|
|
41
|
+
return {
|
|
42
|
+
...s,
|
|
43
|
+
tradingApy: subgraphData.latestWeeklyApy,
|
|
44
|
+
minApy: curveApiData.gaugeCrvApy ? curveApiData.gaugeCrvApy[0] : 0,
|
|
45
|
+
maxApy: curveApiData.gaugeCrvApy ? curveApiData.gaugeCrvApy[1] : 0,
|
|
46
|
+
lpPriceInUsd,
|
|
47
|
+
tvl,
|
|
48
|
+
apr: {
|
|
49
|
+
boost,
|
|
50
|
+
current: {
|
|
51
|
+
total: apy,
|
|
52
|
+
details: [{ label: 'Trading Fees + Rewards (APY)', value: [apy] }],
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
stratsData: {
|
|
56
|
+
boost,
|
|
57
|
+
accumulatedFees: '0',
|
|
58
|
+
keeperFee: '0',
|
|
59
|
+
veSDTFee: '0',
|
|
60
|
+
accumulatorFee: '0',
|
|
61
|
+
claimerFee: '0',
|
|
62
|
+
perfFee: formatUnits(perfFee, 0),
|
|
63
|
+
withdrawalFee: formatUnits(withdrawalFee, 0),
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
});
|
|
67
|
+
return {
|
|
68
|
+
deployed: parsedStratsData,
|
|
69
|
+
notDeployed: [],
|
|
70
|
+
fetched: true,
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../../src/strategies/passive/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAElC,OAAO,yBAAyB,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAO5C,MAAM,UAAU,GAAG,CAAC,YAAoB,EAAE,eAAuB,EAAE,YAAoB,EAAE,OAAe,EAAE,EAAE,CAC1G;IACE,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE;IAC9C,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,sBAAsB,EAAE;IACvD,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,EAAE;IACpD,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE;IACnD,OAAO,KAAK,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,EAAE;IAC7G,OAAO,KAAK,OAAO,CAAC,EAAE,IAAI;QACxB,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;KACtC;CACF,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,WAAW,CAAC,CAAA;AAEhD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAiB,EAAE,EAAE;IACzE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAA;IACzE,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAEnD,MAAM,OAAO,GAAQ,MAAM,SAAS,CAClC,QAAQ,EACR,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,EAC9F,yBAAyB,CAC1B,CAAA;IAED,IAAI,eAAe,GAAG,CAAC,CAAA;IACvB,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC1D,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CACtG,CAAA;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QACnD,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;QAE7C,MAAM,YAAY,GAAG,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,KAAK,YAAY,CAAC,OAAO,CAAC,CAAA;QAEjG,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAEtG,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC5F,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;QACnG,MAAM,oBAAoB,GAAG,WAAW,GAAG,cAAc,CAAA;QACzD,MAAM,GAAG,GAAG,oBAAoB,GAAG,YAAY,CAAA;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;QACnD,MAAM,aAAa,GAAG,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;QACzD,MAAM,KAAK,GACT,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACjH,MAAM,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAErG,eAAe,IAAI,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,MAAM,CAAA;QAEzD,MAAM,GAAG,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;QAElG,OAAO;YACL,GAAG,CAAC;YACJ,UAAU,EAAE,YAAY,CAAC,eAAe;YACxC,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClE,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClE,YAAY;YACZ,GAAG;YACH,GAAG,EAAE;gBACH,KAAK;gBACL,OAAO,EAAE;oBACP,KAAK,EAAE,GAAG;oBACV,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;iBACnE;aACF;YACD,UAAU,EAAE;gBACV,KAAK;gBACL,eAAe,EAAE,GAAG;gBACpB,SAAS,EAAE,GAAG;gBACd,QAAQ,EAAE,GAAG;gBACb,cAAc,EAAE,GAAG;gBACnB,UAAU,EAAE,GAAG;gBACf,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChC,aAAa,EAAE,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC;aAC7C;SACF,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,OAAO;QACL,QAAQ,EAAE,gBAAgB;QAC1B,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,IAAI;KACd,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { CURVE_API_URL } from '../curve/endpoints.js';
|
|
2
|
+
export const getPassiveHttpCalls = async (chainId) => {
|
|
3
|
+
switch (chainId) {
|
|
4
|
+
case 1: {
|
|
5
|
+
const ethHttpCalls = [
|
|
6
|
+
// Curve Apis
|
|
7
|
+
(await fetch(`${CURVE_API_URL}/getPools/ethereum/main`)).json(),
|
|
8
|
+
(await fetch(`${CURVE_API_URL}/getSubgraphData/ethereum`)).json(),
|
|
9
|
+
];
|
|
10
|
+
const ethHttpResponses = await Promise.all(ethHttpCalls);
|
|
11
|
+
const ethCurveMain = ethHttpResponses[0].data.poolData;
|
|
12
|
+
const ethCurveSubgraph = ethHttpResponses[1].data.poolList;
|
|
13
|
+
return {
|
|
14
|
+
curveSubgraphData: ethCurveSubgraph,
|
|
15
|
+
curveApiData: [{ type: 'main', value: ethCurveMain }],
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
case 137: {
|
|
19
|
+
const polygonHttpCalls = [
|
|
20
|
+
// Curve Apis
|
|
21
|
+
(await fetch(`${CURVE_API_URL}/getPools/polygon/main`)).json(),
|
|
22
|
+
(await fetch(`${CURVE_API_URL}/getSubgraphData/polygon`)).json(),
|
|
23
|
+
];
|
|
24
|
+
const polygonHttpResponses = await Promise.all(polygonHttpCalls);
|
|
25
|
+
const polygonCurveMain = polygonHttpResponses[0].data.poolData;
|
|
26
|
+
const polygonCurveSubgraph = polygonHttpResponses[1].data.poolList;
|
|
27
|
+
return {
|
|
28
|
+
curveSubgraphData: polygonCurveSubgraph,
|
|
29
|
+
curveApiData: [{ type: 'main', value: polygonCurveMain }],
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return { curveSubgraphData: undefined, curveApiData: [] };
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=httpCalls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpCalls.js","sourceRoot":"","sources":["../../../../src/strategies/passive/httpCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAC3D,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,CAAC,CAAC,CAAC,CAAC;YACP,MAAM,YAAY,GAAG;gBACnB,aAAa;gBACb,CAAC,MAAM,KAAK,CAAC,GAAG,aAAa,yBAAyB,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC/D,CAAC,MAAM,KAAK,CAAC,GAAG,aAAa,2BAA2B,CAAC,CAAC,CAAC,IAAI,EAAE;aAClE,CAAA;YAED,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YAExD,MAAM,YAAY,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YACtD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YAE1D,OAAO;gBACL,iBAAiB,EAAE,gBAAgB;gBACnC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;aACtD,CAAA;QACH,CAAC;QACD,KAAK,GAAG,CAAC,CAAC,CAAC;YACT,MAAM,gBAAgB,GAAG;gBACvB,aAAa;gBACb,CAAC,MAAM,KAAK,CAAC,GAAG,aAAa,wBAAwB,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC9D,CAAC,MAAM,KAAK,CAAC,GAAG,aAAa,0BAA0B,CAAC,CAAC,CAAC,IAAI,EAAE;aACjE,CAAA;YAED,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;YAEhE,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YAC9D,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;YAElE,OAAO;gBACL,iBAAiB,EAAE,oBAAoB;gBACvC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;aAC1D,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,EAAE,CAAA;AAC3D,CAAC,CAAA"}
|