@steerprotocol/sdk 1.30.0 → 1.30.2
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/cjs/base/VaultClient.js +69 -40
- package/dist/cjs/base/VaultClient.js.map +1 -1
- package/dist/cjs/index.js +3 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/SubgraphVaultClient.js +69 -5
- package/dist/cjs/utils/SubgraphVaultClient.js.map +1 -1
- package/dist/cjs/utils/subgraph-types.js.map +1 -1
- package/dist/esm/base/VaultClient.js +69 -40
- package/dist/esm/base/VaultClient.js.map +1 -1
- package/dist/esm/index.js +2 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/SubgraphVaultClient.js +69 -5
- package/dist/esm/utils/SubgraphVaultClient.js.map +1 -1
- package/dist/esm/utils/subgraph-types.js.map +1 -1
- package/dist/types/base/VaultClient.d.ts +17 -0
- package/dist/types/base/VaultClient.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/utils/SubgraphVaultClient.d.ts +6 -0
- package/dist/types/utils/SubgraphVaultClient.d.ts.map +1 -1
- package/dist/types/utils/subgraph-types.d.ts +9 -0
- package/dist/types/utils/subgraph-types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/base/VaultClient.ts +88 -40
- package/src/index.ts +2 -4
- package/src/utils/SubgraphVaultClient.ts +76 -5
- package/src/utils/subgraph-types.ts +10 -0
|
@@ -33,6 +33,14 @@ const FIND_ALL_VAULTS = (batchSize = 1000, timestamp) => {
|
|
|
33
33
|
admin
|
|
34
34
|
executionBundle
|
|
35
35
|
}
|
|
36
|
+
positions(first: 1, orderBy: timestamp, orderDirection: desc) {
|
|
37
|
+
id
|
|
38
|
+
upperTick
|
|
39
|
+
lowerTick
|
|
40
|
+
relativeWeight
|
|
41
|
+
}
|
|
42
|
+
fees0
|
|
43
|
+
fees1
|
|
36
44
|
beaconName
|
|
37
45
|
payloadIpfs
|
|
38
46
|
deployer
|
|
@@ -67,6 +75,14 @@ const FIND_ALL_VAULTS = (batchSize = 1000, timestamp) => {
|
|
|
67
75
|
admin
|
|
68
76
|
executionBundle
|
|
69
77
|
}
|
|
78
|
+
positions(first: 1, orderBy: timestamp, orderDirection: desc) {
|
|
79
|
+
id
|
|
80
|
+
upperTick
|
|
81
|
+
lowerTick
|
|
82
|
+
relativeWeight
|
|
83
|
+
}
|
|
84
|
+
fees0
|
|
85
|
+
fees1
|
|
70
86
|
beaconName
|
|
71
87
|
payloadIpfs
|
|
72
88
|
deployer
|
|
@@ -100,6 +116,14 @@ const FIND_ALL_VAULTS_BY_PROTOCOL = (batchSize = 1000, timestamp, beaconNames) =
|
|
|
100
116
|
totalLPTokensIssued
|
|
101
117
|
createdAt
|
|
102
118
|
feeTier
|
|
119
|
+
positions(first: 1, orderBy: timestamp, orderDirection: desc) {
|
|
120
|
+
id
|
|
121
|
+
upperTick
|
|
122
|
+
lowerTick
|
|
123
|
+
relativeWeight
|
|
124
|
+
}
|
|
125
|
+
fees0
|
|
126
|
+
fees1
|
|
103
127
|
strategyToken {
|
|
104
128
|
id
|
|
105
129
|
name
|
|
@@ -143,6 +167,14 @@ const FIND_ALL_VAULTS_BY_PROTOCOL = (batchSize = 1000, timestamp, beaconNames) =
|
|
|
143
167
|
admin
|
|
144
168
|
executionBundle
|
|
145
169
|
}
|
|
170
|
+
positions(first: 1, orderBy: timestamp, orderDirection: desc) {
|
|
171
|
+
id
|
|
172
|
+
upperTick
|
|
173
|
+
lowerTick
|
|
174
|
+
relativeWeight
|
|
175
|
+
}
|
|
176
|
+
fees0
|
|
177
|
+
fees1
|
|
146
178
|
beaconName
|
|
147
179
|
payloadIpfs
|
|
148
180
|
deployer
|
|
@@ -160,8 +192,8 @@ export class SubgraphVaultClient {
|
|
|
160
192
|
* Transform subgraph vault data to match VaultClient interface
|
|
161
193
|
*/
|
|
162
194
|
transformSubgraphVaultToVaultNode(vault, chainId, aprMap) {
|
|
163
|
-
// Get the chain enum from chainId
|
|
164
195
|
const feeApr = aprMap.get(vault.id) ? aprMap.get(vault.id) : undefined;
|
|
196
|
+
const tickRange = this.computeTickRange(vault.positions ?? []);
|
|
165
197
|
return {
|
|
166
198
|
id: vault.id,
|
|
167
199
|
chainId,
|
|
@@ -171,8 +203,18 @@ export class SubgraphVaultClient {
|
|
|
171
203
|
protocolBaseType: this.getProtocolBaseType(vault.beaconName),
|
|
172
204
|
name: vault.name || '',
|
|
173
205
|
feeApr: feeApr ? parseFloat(feeApr.toString()) : undefined,
|
|
174
|
-
stakingApr: undefined,
|
|
175
|
-
merklApr: undefined,
|
|
206
|
+
stakingApr: undefined,
|
|
207
|
+
merklApr: undefined,
|
|
208
|
+
positions: (vault.positions ?? []).map((p) => ({
|
|
209
|
+
id: p.id,
|
|
210
|
+
upperTick: parseInt(p.upperTick, 10),
|
|
211
|
+
lowerTick: parseInt(p.lowerTick, 10),
|
|
212
|
+
relativeWeight: p.relativeWeight,
|
|
213
|
+
})),
|
|
214
|
+
tickRange,
|
|
215
|
+
fees: vault.fees0 !== undefined && vault.fees1 !== undefined
|
|
216
|
+
? { fees0: vault.fees0, fees1: vault.fees1 }
|
|
217
|
+
: undefined,
|
|
176
218
|
pool: {
|
|
177
219
|
id: vault.pool,
|
|
178
220
|
poolAddress: vault.pool,
|
|
@@ -185,7 +227,7 @@ export class SubgraphVaultClient {
|
|
|
185
227
|
token0: {
|
|
186
228
|
id: vault.token0,
|
|
187
229
|
symbol: vault.token0Symbol,
|
|
188
|
-
name: vault.token0Symbol,
|
|
230
|
+
name: vault.token0Symbol,
|
|
189
231
|
decimals: parseInt(vault.token0Decimals),
|
|
190
232
|
address: vault.token0,
|
|
191
233
|
chainId,
|
|
@@ -193,13 +235,35 @@ export class SubgraphVaultClient {
|
|
|
193
235
|
token1: {
|
|
194
236
|
id: vault.token1,
|
|
195
237
|
symbol: vault.token1Symbol,
|
|
196
|
-
name: vault.token1Symbol,
|
|
238
|
+
name: vault.token1Symbol,
|
|
197
239
|
decimals: parseInt(vault.token1Decimals),
|
|
198
240
|
address: vault.token1,
|
|
199
241
|
chainId,
|
|
200
242
|
},
|
|
201
243
|
};
|
|
202
244
|
}
|
|
245
|
+
/**
|
|
246
|
+
* Compute the tick range across all vault positions.
|
|
247
|
+
* Returns the minimum lowerTick and maximum upperTick, giving the full
|
|
248
|
+
* span of liquidity currently deployed by the vault strategy.
|
|
249
|
+
*/
|
|
250
|
+
computeTickRange(positions) {
|
|
251
|
+
if (!positions.length)
|
|
252
|
+
return undefined;
|
|
253
|
+
let minLowerTick = Infinity;
|
|
254
|
+
let maxUpperTick = -Infinity;
|
|
255
|
+
for (const pos of positions) {
|
|
256
|
+
const lower = parseInt(pos.lowerTick, 10);
|
|
257
|
+
const upper = parseInt(pos.upperTick, 10);
|
|
258
|
+
if (!isNaN(lower) && lower < minLowerTick)
|
|
259
|
+
minLowerTick = lower;
|
|
260
|
+
if (!isNaN(upper) && upper > maxUpperTick)
|
|
261
|
+
maxUpperTick = upper;
|
|
262
|
+
}
|
|
263
|
+
if (minLowerTick === Infinity || maxUpperTick === -Infinity)
|
|
264
|
+
return undefined;
|
|
265
|
+
return { minLowerTick, maxUpperTick };
|
|
266
|
+
}
|
|
203
267
|
/**
|
|
204
268
|
* Get protocol base type from beacon name
|
|
205
269
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubgraphVaultClient.js","sourceRoot":"","sources":["../../../src/utils/SubgraphVaultClient.ts"],"names":[],"mappings":"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","sourcesContent":["import { Address } from 'viem';\nimport { VaultEdge, VaultNode, VaultsConnection } from '../base/VaultClient';\nimport { getProtocolTypeByBeacon } from '../const';\nimport { Protocol } from '../const/chain';\nimport {\n LpPriceResponse,\n SubgraphResponse,\n SubgraphVaultDetails,\n SubgraphVaultDetailsWithLpData,\n VaultFetchOptions,\n} from './subgraph-types';\n\n/**\n * GraphQL queries for fetching vault data from Steer subgraphs\n */\nconst FIND_ALL_VAULTS = (batchSize: number = 1000, timestamp?: string) => {\n if (timestamp) {\n return `query {\n vaults(first: ${batchSize}, where: { createdAt_lte: \"${timestamp}\" }, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n }\n\n return `query {\n vaults(first: ${batchSize}, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n};\n\nconst FIND_ALL_VAULTS_BY_PROTOCOL = (\n batchSize: number = 1000,\n timestamp?: string,\n beaconNames?: string[]\n) => {\n if (!beaconNames || beaconNames.length === 0) {\n throw new Error('At least one beacon name is required');\n }\n\n // Format beaconNames for GraphQL _in filter\n const beaconNamesList = beaconNames.map((b) => `\"${b}\"`).join(', ');\n const beaconNameFilter = `beaconName_in: [${beaconNamesList}]`;\n\n if (timestamp) {\n return `query {\n vaults(first: ${batchSize}, where: { createdAt_lte: \"${timestamp}\", ${beaconNameFilter} }, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n }\n\n return `query {\n vaults(first: ${batchSize}, where: { ${beaconNameFilter} }, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n};\n\n/**\n * Utility class for fetching vault data from Steer subgraphs\n */\nexport class SubgraphVaultClient {\n private readonly SENTIO_API_KEY =\n typeof process !== 'undefined' ? process.env?.SENTIO_API_KEY : undefined;\n\n /**\n * Transform subgraph vault data to match VaultClient interface\n */\n private transformSubgraphVaultToVaultNode(\n vault: SubgraphVaultDetailsWithLpData,\n chainId: number,\n aprMap: Map<string, number>\n ): VaultNode {\n // Get the chain enum from chainId\n const feeApr = aprMap.get(vault.id) ? aprMap.get(vault.id) : undefined;\n return {\n id: vault.id,\n chainId,\n vaultAddress: vault.id,\n protocol: getProtocolTypeByBeacon(vault.beaconName) || Protocol.Uniswap,\n beaconName: vault.beaconName,\n protocolBaseType: this.getProtocolBaseType(vault.beaconName),\n name: vault.name || '',\n feeApr: feeApr ? parseFloat(feeApr.toString()) : undefined,\n stakingApr: undefined, // Not available in subgraph\n merklApr: undefined, // Not available in subgraph\n pool: {\n id: vault.pool,\n poolAddress: vault.pool,\n feeTier: vault.feeTier,\n tick: undefined,\n liquidity: undefined,\n volumeUSD: undefined,\n totalValueLockedUSD: vault.lpPriceData?.vault.usd.totalValue?.toString(),\n },\n token0: {\n id: vault.token0,\n symbol: vault.token0Symbol,\n name: vault.token0Symbol, // Using symbol as name since name is not available\n decimals: parseInt(vault.token0Decimals),\n address: vault.token0,\n chainId,\n },\n token1: {\n id: vault.token1,\n symbol: vault.token1Symbol,\n name: vault.token1Symbol, // Using symbol as name since name is not available\n decimals: parseInt(vault.token1Decimals),\n address: vault.token1,\n chainId,\n },\n };\n }\n\n /**\n * Get protocol base type from beacon name\n */\n private getProtocolBaseType(beaconName: string): string {\n if (beaconName.includes('uniswap')) {\n return 'UniswapV3';\n }\n const protocol = getProtocolTypeByBeacon(beaconName);\n if (protocol) {\n return protocol === Protocol.Blackhole ? 'Algebra Integral' : protocol;\n }\n if (beaconName.includes('Stryke')) {\n return 'Stryke';\n }\n return 'UniswapV3'; // Default\n }\n\n /**\n * Create a mock LP price response for vaults without LP data\n */\n private createMockLpPriceData(vault: SubgraphVaultDetails): LpPriceResponse {\n return {\n vault: {\n address: vault.id as Address,\n token0: vault.token0 as Address,\n token1: vault.token1 as Address,\n balances: {\n token0: vault.token0Balance,\n token1: vault.token1Balance,\n totalSupply: vault.totalLPTokensIssued,\n token0Formatted: vault.token0Balance,\n token1Formatted: vault.token1Balance,\n totalSupplyFormatted: vault.totalLPTokensIssued,\n },\n usd: {\n lpValue: 0,\n totalValue: 0,\n token0Price: 0,\n token0Value: 0,\n token1Price: 0,\n token1Value: 0,\n },\n token0Symbol: vault.token0Symbol,\n token1Symbol: vault.token1Symbol,\n token0Decimals: vault.token0Decimals,\n token1Decimals: vault.token1Decimals,\n },\n routes: {\n token0ToUsd: [],\n token1ToUsd: [],\n },\n };\n }\n\n /**\n * Fetch vault data from subgraph\n */\n public async getAllVaultsFromSubgraph(\n options: VaultFetchOptions\n ): Promise<SubgraphVaultDetailsWithLpData[]> {\n const { subgraphUrl, showCurrentProtocol = false, beaconNames, batchSize = 1000 } = options;\n\n const allVaults: SubgraphVaultDetailsWithLpData[] = [];\n\n try {\n // First get the latest vault to get the most recent timestamp\n const latestVaultResponse = await fetch(subgraphUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...(subgraphUrl.includes('sentio') && this.SENTIO_API_KEY\n ? { 'api-key': this.SENTIO_API_KEY }\n : {}),\n },\n body: JSON.stringify({\n query: !showCurrentProtocol\n ? FIND_ALL_VAULTS(1)\n : FIND_ALL_VAULTS_BY_PROTOCOL(1, undefined, beaconNames),\n variables: {},\n }),\n });\n\n const latestVaultData: SubgraphResponse<SubgraphVaultDetails> =\n await latestVaultResponse.json();\n let lastTimestamp = latestVaultData?.data?.vaults?.[0]?.createdAt;\n\n if (!lastTimestamp) {\n return [];\n }\n\n let hasMoreData = true;\n while (hasMoreData) {\n const response = await fetch(subgraphUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...(subgraphUrl.includes('sentio') && this.SENTIO_API_KEY\n ? { 'api-key': this.SENTIO_API_KEY }\n : {}),\n },\n body: JSON.stringify({\n query: !showCurrentProtocol\n ? FIND_ALL_VAULTS(batchSize, lastTimestamp)\n : FIND_ALL_VAULTS_BY_PROTOCOL(batchSize, lastTimestamp, beaconNames),\n variables: {},\n }),\n });\n\n const responseData: SubgraphResponse<SubgraphVaultDetails> = await response.json();\n const vaults = responseData?.data?.vaults || [];\n\n if (!vaults.length) {\n hasMoreData = false;\n continue;\n }\n\n // Filter out duplicates based on vault ID\n const newVaults = vaults.filter(\n (vault: SubgraphVaultDetails) => !allVaults.some((existing) => existing.id === vault.id)\n );\n\n if (!newVaults.length) {\n hasMoreData = false;\n continue;\n }\n\n // For now, attach mock LP data to each vault\n // In a real implementation, you would fetch LP price data here\n const vaultsWithLpData: SubgraphVaultDetailsWithLpData[] = newVaults.map((vault) => ({\n ...vault,\n lpPriceData: this.createMockLpPriceData(vault),\n }));\n\n allVaults.push(...vaultsWithLpData);\n const lastVaultTimestamp = vaults[vaults.length - 1]?.createdAt;\n if (!lastVaultTimestamp) {\n hasMoreData = false;\n continue;\n }\n lastTimestamp = lastVaultTimestamp;\n }\n\n // Filter deprecated vaults if needed\n // Note: In a real implementation, you would fetch deprecation data\n // For now, we return all vaults\n return allVaults;\n } catch (error) {\n console.error('Error fetching vaults from subgraph:', error);\n throw error;\n }\n }\n\n /**\n * Transform subgraph vault data to VaultsConnection format\n */\n public transformToVaultsConnection(\n vaults: SubgraphVaultDetailsWithLpData[],\n chainId: number,\n first: number = 50,\n aprMap: Map<string, number>,\n after?: string | null\n ): VaultsConnection {\n // Sort vaults by creation time (newest first)\n const sortedVaults = vaults.sort((a, b) => parseInt(b.createdAt) - parseInt(a.createdAt));\n\n // Apply pagination\n let startIndex = 0;\n if (after) {\n const afterIndex = sortedVaults.findIndex((vault) => vault.id === after);\n startIndex = afterIndex + 1;\n }\n\n const paginatedVaults = sortedVaults.slice(startIndex, startIndex + first);\n const hasNextPage = startIndex + first < sortedVaults.length;\n const endCursor =\n paginatedVaults.length > 0 ? paginatedVaults[paginatedVaults.length - 1].id : null;\n\n const edges: VaultEdge[] = paginatedVaults.map((vault) => ({\n cursor: vault.id,\n node: this.transformSubgraphVaultToVaultNode(vault, chainId, aprMap),\n }));\n\n return {\n edges,\n pageInfo: {\n hasNextPage,\n endCursor,\n },\n totalCount: sortedVaults.length,\n };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SubgraphVaultClient.js","sourceRoot":"","sources":["../../../src/utils/SubgraphVaultClient.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAU1C;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,YAAoB,IAAI,EAAE,SAAkB,EAAE,EAAE;IACvE,IAAI,SAAS,EAAE,CAAC;QACd,OAAO;sBACW,SAAS,8BAA8B,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuChE,CAAC;IACL,CAAC;IAED,OAAO;oBACW,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuCzB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAClC,YAAoB,IAAI,EACxB,SAAkB,EAClB,WAAsB,EACtB,EAAE;IACF,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,4CAA4C;IAC5C,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,mBAAmB,eAAe,GAAG,CAAC;IAE/D,IAAI,SAAS,EAAE,CAAC;QACd,OAAO;sBACW,SAAS,8BAA8B,SAAS,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuCtF,CAAC;IACL,CAAC;IAED,OAAO;oBACW,SAAS,cAAc,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuCvD,CAAC;AACL,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAAhC;QACmB,mBAAc,GAC7B,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAwR7E,CAAC;IAtRC;;OAEG;IACK,iCAAiC,CACvC,KAAqC,EACrC,OAAe,EACf,MAA2B;QAE3B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvE,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAE/D,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,OAAO;YACP,YAAY,EAAE,KAAK,CAAC,EAAE;YACtB,QAAQ,EAAE,uBAAuB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,OAAO;YACvE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC;YAC5D,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1D,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,SAAS;YACnB,SAAS,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7C,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;gBACpC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;gBACpC,cAAc,EAAE,CAAC,CAAC,cAAc;aACjC,CAAC,CAAC;YACH,SAAS;YACT,IAAI,EACF,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;gBACpD,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;gBAC5C,CAAC,CAAC,SAAS;YACf,IAAI,EAAE;gBACJ,EAAE,EAAE,KAAK,CAAC,IAAI;gBACd,WAAW,EAAE,KAAK,CAAC,IAAI;gBACvB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,SAAS;gBACpB,SAAS,EAAE,SAAS;gBACpB,mBAAmB,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE;aACzE;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,KAAK,CAAC,MAAM;gBAChB,MAAM,EAAE,KAAK,CAAC,YAAY;gBAC1B,IAAI,EAAE,KAAK,CAAC,YAAY;gBACxB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC;gBACxC,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,OAAO;aACR;YACD,MAAM,EAAE;gBACN,EAAE,EAAE,KAAK,CAAC,MAAM;gBAChB,MAAM,EAAE,KAAK,CAAC,YAAY;gBAC1B,IAAI,EAAE,KAAK,CAAC,YAAY;gBACxB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC;gBACxC,OAAO,EAAE,KAAK,CAAC,MAAM;gBACrB,OAAO;aACR;SACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,gBAAgB,CACtB,SAAkC;QAElC,IAAI,CAAC,SAAS,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAExC,IAAI,YAAY,GAAG,QAAQ,CAAC;QAC5B,IAAI,YAAY,GAAG,CAAC,QAAQ,CAAC;QAE7B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,YAAY;gBAAE,YAAY,GAAG,KAAK,CAAC;YAChE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,YAAY;gBAAE,YAAY,GAAG,KAAK,CAAC;QAClE,CAAC;QAED,IAAI,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAE9E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,UAAkB;QAC5C,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzE,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,WAAW,CAAC,CAAC,UAAU;IAChC,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,KAA2B;QACvD,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EAAE,KAAK,CAAC,EAAa;gBAC5B,MAAM,EAAE,KAAK,CAAC,MAAiB;gBAC/B,MAAM,EAAE,KAAK,CAAC,MAAiB;gBAC/B,QAAQ,EAAE;oBACR,MAAM,EAAE,KAAK,CAAC,aAAa;oBAC3B,MAAM,EAAE,KAAK,CAAC,aAAa;oBAC3B,WAAW,EAAE,KAAK,CAAC,mBAAmB;oBACtC,eAAe,EAAE,KAAK,CAAC,aAAa;oBACpC,eAAe,EAAE,KAAK,CAAC,aAAa;oBACpC,oBAAoB,EAAE,KAAK,CAAC,mBAAmB;iBAChD;gBACD,GAAG,EAAE;oBACH,OAAO,EAAE,CAAC;oBACV,UAAU,EAAE,CAAC;oBACb,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,CAAC;iBACf;gBACD,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC;YACD,MAAM,EAAE;gBACN,WAAW,EAAE,EAAE;gBACf,WAAW,EAAE,EAAE;aAChB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,wBAAwB,CACnC,OAA0B;QAE1B,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,KAAK,EAAE,WAAW,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAE5F,MAAM,SAAS,GAAqC,EAAE,CAAC;QAEvD,IAAI,CAAC;YACH,8DAA8D;YAC9D,MAAM,mBAAmB,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE;gBACnD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc;wBACvD,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE;wBACpC,CAAC,CAAC,EAAE,CAAC;iBACR;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,CAAC,mBAAmB;wBACzB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;wBACpB,CAAC,CAAC,2BAA2B,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC;oBAC1D,SAAS,EAAE,EAAE;iBACd,CAAC;aACH,CAAC,CAAC;YAEH,MAAM,eAAe,GACnB,MAAM,mBAAmB,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,aAAa,GAAG,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;YAElE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,WAAW,GAAG,IAAI,CAAC;YACvB,OAAO,WAAW,EAAE,CAAC;gBACnB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE;oBACxC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc;4BACvD,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE;4BACpC,CAAC,CAAC,EAAE,CAAC;qBACR;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,CAAC,mBAAmB;4BACzB,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC;4BAC3C,CAAC,CAAC,2BAA2B,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,CAAC;wBACtE,SAAS,EAAE,EAAE;qBACd,CAAC;iBACH,CAAC,CAAC;gBAEH,MAAM,YAAY,GAA2C,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnF,MAAM,MAAM,GAAG,YAAY,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC;gBAEhD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBACnB,WAAW,GAAG,KAAK,CAAC;oBACpB,SAAS;gBACX,CAAC;gBAED,0CAA0C;gBAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAC7B,CAAC,KAA2B,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CACzF,CAAC;gBAEF,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;oBACtB,WAAW,GAAG,KAAK,CAAC;oBACpB,SAAS;gBACX,CAAC;gBAED,6CAA6C;gBAC7C,+DAA+D;gBAC/D,MAAM,gBAAgB,GAAqC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACnF,GAAG,KAAK;oBACR,WAAW,EAAE,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;iBAC/C,CAAC,CAAC,CAAC;gBAEJ,SAAS,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;gBACpC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC;gBAChE,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,WAAW,GAAG,KAAK,CAAC;oBACpB,SAAS;gBACX,CAAC;gBACD,aAAa,GAAG,kBAAkB,CAAC;YACrC,CAAC;YAED,qCAAqC;YACrC,mEAAmE;YACnE,gCAAgC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACI,2BAA2B,CAChC,MAAwC,EACxC,OAAe,EACf,QAAgB,EAAE,EAClB,MAA2B,EAC3B,KAAqB;QAErB,8CAA8C;QAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAE1F,mBAAmB;QACnB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;YACzE,UAAU,GAAG,UAAU,GAAG,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC,CAAC;QAC3E,MAAM,WAAW,GAAG,UAAU,GAAG,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC;QAC7D,MAAM,SAAS,GACb,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAErF,MAAM,KAAK,GAAgB,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,EAAE,KAAK,CAAC,EAAE;YAChB,IAAI,EAAE,IAAI,CAAC,iCAAiC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;SACrE,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,KAAK;YACL,QAAQ,EAAE;gBACR,WAAW;gBACX,SAAS;aACV;YACD,UAAU,EAAE,YAAY,CAAC,MAAM;SAChC,CAAC;IACJ,CAAC;CACF","sourcesContent":["import { Address } from 'viem';\nimport { VaultEdge, VaultNode, VaultsConnection } from '../base/VaultClient';\nimport { getProtocolTypeByBeacon } from '../const';\nimport { Protocol } from '../const/chain';\nimport {\n LpPriceResponse,\n SubgraphResponse,\n SubgraphVaultDetails,\n SubgraphVaultDetailsWithLpData,\n SubgraphVaultPosition,\n VaultFetchOptions,\n} from './subgraph-types';\n\n/**\n * GraphQL queries for fetching vault data from Steer subgraphs\n */\nconst FIND_ALL_VAULTS = (batchSize: number = 1000, timestamp?: string) => {\n if (timestamp) {\n return `query {\n vaults(first: ${batchSize}, where: { createdAt_lte: \"${timestamp}\" }, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n positions(first: 1, orderBy: timestamp, orderDirection: desc) {\n id\n upperTick\n lowerTick\n relativeWeight\n }\n fees0\n fees1\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n }\n\n return `query {\n vaults(first: ${batchSize}, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n positions(first: 1, orderBy: timestamp, orderDirection: desc) {\n id\n upperTick\n lowerTick\n relativeWeight\n }\n fees0\n fees1\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n};\n\nconst FIND_ALL_VAULTS_BY_PROTOCOL = (\n batchSize: number = 1000,\n timestamp?: string,\n beaconNames?: string[]\n) => {\n if (!beaconNames || beaconNames.length === 0) {\n throw new Error('At least one beacon name is required');\n }\n\n // Format beaconNames for GraphQL _in filter\n const beaconNamesList = beaconNames.map((b) => `\"${b}\"`).join(', ');\n const beaconNameFilter = `beaconName_in: [${beaconNamesList}]`;\n\n if (timestamp) {\n return `query {\n vaults(first: ${batchSize}, where: { createdAt_lte: \"${timestamp}\", ${beaconNameFilter} }, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n positions(first: 1, orderBy: timestamp, orderDirection: desc) {\n id\n upperTick\n lowerTick\n relativeWeight\n }\n fees0\n fees1\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n }\n\n return `query {\n vaults(first: ${batchSize}, where: { ${beaconNameFilter} }, orderBy: createdAt, orderDirection: desc) {\n id\n name\n token0\n token1\n pool\n weeklyFeeAPR\n token0Symbol\n token0Decimals\n token1Symbol\n token1Decimals\n totalValueLockedToken0\n totalValueLockedToken1\n token0Balance\n token1Balance\n totalLPTokensIssued\n createdAt\n feeTier\n strategyToken {\n id\n name\n creator {\n id\n }\n admin\n executionBundle\n }\n positions(first: 1, orderBy: timestamp, orderDirection: desc) {\n id\n upperTick\n lowerTick\n relativeWeight\n }\n fees0\n fees1\n beaconName\n payloadIpfs\n deployer\n }\n }`;\n};\n\n/**\n * Utility class for fetching vault data from Steer subgraphs\n */\nexport class SubgraphVaultClient {\n private readonly SENTIO_API_KEY =\n typeof process !== 'undefined' ? process.env?.SENTIO_API_KEY : undefined;\n\n /**\n * Transform subgraph vault data to match VaultClient interface\n */\n private transformSubgraphVaultToVaultNode(\n vault: SubgraphVaultDetailsWithLpData,\n chainId: number,\n aprMap: Map<string, number>\n ): VaultNode {\n const feeApr = aprMap.get(vault.id) ? aprMap.get(vault.id) : undefined;\n\n const tickRange = this.computeTickRange(vault.positions ?? []);\n\n return {\n id: vault.id,\n chainId,\n vaultAddress: vault.id,\n protocol: getProtocolTypeByBeacon(vault.beaconName) || Protocol.Uniswap,\n beaconName: vault.beaconName,\n protocolBaseType: this.getProtocolBaseType(vault.beaconName),\n name: vault.name || '',\n feeApr: feeApr ? parseFloat(feeApr.toString()) : undefined,\n stakingApr: undefined,\n merklApr: undefined,\n positions: (vault.positions ?? []).map((p) => ({\n id: p.id,\n upperTick: parseInt(p.upperTick, 10),\n lowerTick: parseInt(p.lowerTick, 10),\n relativeWeight: p.relativeWeight,\n })),\n tickRange,\n fees:\n vault.fees0 !== undefined && vault.fees1 !== undefined\n ? { fees0: vault.fees0, fees1: vault.fees1 }\n : undefined,\n pool: {\n id: vault.pool,\n poolAddress: vault.pool,\n feeTier: vault.feeTier,\n tick: undefined,\n liquidity: undefined,\n volumeUSD: undefined,\n totalValueLockedUSD: vault.lpPriceData?.vault.usd.totalValue?.toString(),\n },\n token0: {\n id: vault.token0,\n symbol: vault.token0Symbol,\n name: vault.token0Symbol,\n decimals: parseInt(vault.token0Decimals),\n address: vault.token0,\n chainId,\n },\n token1: {\n id: vault.token1,\n symbol: vault.token1Symbol,\n name: vault.token1Symbol,\n decimals: parseInt(vault.token1Decimals),\n address: vault.token1,\n chainId,\n },\n };\n }\n\n /**\n * Compute the tick range across all vault positions.\n * Returns the minimum lowerTick and maximum upperTick, giving the full\n * span of liquidity currently deployed by the vault strategy.\n */\n private computeTickRange(\n positions: SubgraphVaultPosition[]\n ): VaultNode['tickRange'] {\n if (!positions.length) return undefined;\n\n let minLowerTick = Infinity;\n let maxUpperTick = -Infinity;\n\n for (const pos of positions) {\n const lower = parseInt(pos.lowerTick, 10);\n const upper = parseInt(pos.upperTick, 10);\n if (!isNaN(lower) && lower < minLowerTick) minLowerTick = lower;\n if (!isNaN(upper) && upper > maxUpperTick) maxUpperTick = upper;\n }\n\n if (minLowerTick === Infinity || maxUpperTick === -Infinity) return undefined;\n\n return { minLowerTick, maxUpperTick };\n }\n\n /**\n * Get protocol base type from beacon name\n */\n private getProtocolBaseType(beaconName: string): string {\n if (beaconName.includes('uniswap')) {\n return 'UniswapV3';\n }\n const protocol = getProtocolTypeByBeacon(beaconName);\n if (protocol) {\n return protocol === Protocol.Blackhole ? 'Algebra Integral' : protocol;\n }\n if (beaconName.includes('Stryke')) {\n return 'Stryke';\n }\n return 'UniswapV3'; // Default\n }\n\n /**\n * Create a mock LP price response for vaults without LP data\n */\n private createMockLpPriceData(vault: SubgraphVaultDetails): LpPriceResponse {\n return {\n vault: {\n address: vault.id as Address,\n token0: vault.token0 as Address,\n token1: vault.token1 as Address,\n balances: {\n token0: vault.token0Balance,\n token1: vault.token1Balance,\n totalSupply: vault.totalLPTokensIssued,\n token0Formatted: vault.token0Balance,\n token1Formatted: vault.token1Balance,\n totalSupplyFormatted: vault.totalLPTokensIssued,\n },\n usd: {\n lpValue: 0,\n totalValue: 0,\n token0Price: 0,\n token0Value: 0,\n token1Price: 0,\n token1Value: 0,\n },\n token0Symbol: vault.token0Symbol,\n token1Symbol: vault.token1Symbol,\n token0Decimals: vault.token0Decimals,\n token1Decimals: vault.token1Decimals,\n },\n routes: {\n token0ToUsd: [],\n token1ToUsd: [],\n },\n };\n }\n\n /**\n * Fetch vault data from subgraph\n */\n public async getAllVaultsFromSubgraph(\n options: VaultFetchOptions\n ): Promise<SubgraphVaultDetailsWithLpData[]> {\n const { subgraphUrl, showCurrentProtocol = false, beaconNames, batchSize = 1000 } = options;\n\n const allVaults: SubgraphVaultDetailsWithLpData[] = [];\n\n try {\n // First get the latest vault to get the most recent timestamp\n const latestVaultResponse = await fetch(subgraphUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...(subgraphUrl.includes('sentio') && this.SENTIO_API_KEY\n ? { 'api-key': this.SENTIO_API_KEY }\n : {}),\n },\n body: JSON.stringify({\n query: !showCurrentProtocol\n ? FIND_ALL_VAULTS(1)\n : FIND_ALL_VAULTS_BY_PROTOCOL(1, undefined, beaconNames),\n variables: {},\n }),\n });\n\n const latestVaultData: SubgraphResponse<SubgraphVaultDetails> =\n await latestVaultResponse.json();\n let lastTimestamp = latestVaultData?.data?.vaults?.[0]?.createdAt;\n\n if (!lastTimestamp) {\n return [];\n }\n\n let hasMoreData = true;\n while (hasMoreData) {\n const response = await fetch(subgraphUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n ...(subgraphUrl.includes('sentio') && this.SENTIO_API_KEY\n ? { 'api-key': this.SENTIO_API_KEY }\n : {}),\n },\n body: JSON.stringify({\n query: !showCurrentProtocol\n ? FIND_ALL_VAULTS(batchSize, lastTimestamp)\n : FIND_ALL_VAULTS_BY_PROTOCOL(batchSize, lastTimestamp, beaconNames),\n variables: {},\n }),\n });\n\n const responseData: SubgraphResponse<SubgraphVaultDetails> = await response.json();\n const vaults = responseData?.data?.vaults || [];\n\n if (!vaults.length) {\n hasMoreData = false;\n continue;\n }\n\n // Filter out duplicates based on vault ID\n const newVaults = vaults.filter(\n (vault: SubgraphVaultDetails) => !allVaults.some((existing) => existing.id === vault.id)\n );\n\n if (!newVaults.length) {\n hasMoreData = false;\n continue;\n }\n\n // For now, attach mock LP data to each vault\n // In a real implementation, you would fetch LP price data here\n const vaultsWithLpData: SubgraphVaultDetailsWithLpData[] = newVaults.map((vault) => ({\n ...vault,\n lpPriceData: this.createMockLpPriceData(vault),\n }));\n\n allVaults.push(...vaultsWithLpData);\n const lastVaultTimestamp = vaults[vaults.length - 1]?.createdAt;\n if (!lastVaultTimestamp) {\n hasMoreData = false;\n continue;\n }\n lastTimestamp = lastVaultTimestamp;\n }\n\n // Filter deprecated vaults if needed\n // Note: In a real implementation, you would fetch deprecation data\n // For now, we return all vaults\n return allVaults;\n } catch (error) {\n console.error('Error fetching vaults from subgraph:', error);\n throw error;\n }\n }\n\n /**\n * Transform subgraph vault data to VaultsConnection format\n */\n public transformToVaultsConnection(\n vaults: SubgraphVaultDetailsWithLpData[],\n chainId: number,\n first: number = 50,\n aprMap: Map<string, number>,\n after?: string | null\n ): VaultsConnection {\n // Sort vaults by creation time (newest first)\n const sortedVaults = vaults.sort((a, b) => parseInt(b.createdAt) - parseInt(a.createdAt));\n\n // Apply pagination\n let startIndex = 0;\n if (after) {\n const afterIndex = sortedVaults.findIndex((vault) => vault.id === after);\n startIndex = afterIndex + 1;\n }\n\n const paginatedVaults = sortedVaults.slice(startIndex, startIndex + first);\n const hasNextPage = startIndex + first < sortedVaults.length;\n const endCursor =\n paginatedVaults.length > 0 ? paginatedVaults[paginatedVaults.length - 1].id : null;\n\n const edges: VaultEdge[] = paginatedVaults.map((vault) => ({\n cursor: vault.id,\n node: this.transformSubgraphVaultToVaultNode(vault, chainId, aprMap),\n }));\n\n return {\n edges,\n pageInfo: {\n hasNextPage,\n endCursor,\n },\n totalCount: sortedVaults.length,\n };\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph-types.js","sourceRoot":"","sources":["../../../src/utils/subgraph-types.ts"],"names":[],"mappings":"","sourcesContent":["import { Address } from 'viem';\n\n/**\n * Types for Steer subgraph responses\n */\n\nexport interface SubgraphVaultDetails {\n id: string;\n name: string;\n token0: string;\n token1: string;\n pool: string;\n weeklyFeeAPR: string;\n token0Symbol: string;\n token0Decimals: string;\n token1Symbol: string;\n token1Decimals: string;\n totalValueLockedToken0: string;\n totalValueLockedToken1: string;\n token0Balance: string;\n token1Balance: string;\n totalLPTokensIssued: string;\n createdAt: string;\n feeTier: string;\n strategyToken: {\n id: string;\n name: string;\n creator: {\n id: string;\n };\n admin: string;\n executionBundle: string;\n };\n beaconName: string;\n payloadIpfs: string;\n deployer: string;\n}\n\n\nexport interface RouteShortcut {\n poolIds: string[]\n tokenPath: string[]\n}\n\nexport interface FormattedRoute {\n path: string\n pricesPerHop: string\n finalPrice: string\n finalPriceRaw: number\n volumeScore: string\n poolVolumes: string\n shortcut: RouteShortcut\n}\nexport interface LpPriceResponse {\n vault: {\n address: Address;\n token0: Address;\n token1: Address;\n balances: {\n token0: string;\n token1: string;\n totalSupply: string;\n token0Formatted: string;\n token1Formatted: string;\n totalSupplyFormatted: string;\n };\n usd: {\n lpValue: number;\n totalValue: number;\n token0Price: number;\n token0Value: number;\n token1Price: number;\n token1Value: number;\n };\n token0Symbol: string;\n token1Symbol: string;\n token0Decimals: string;\n token1Decimals: string;\n };\n routes: {\n token0ToUsd: FormattedRoute[];\n token1ToUsd: FormattedRoute[];\n };\n}\n\nexport interface SubgraphVaultDetailsWithLpData extends SubgraphVaultDetails {\n lpPriceData?: LpPriceResponse;\n}\n\nexport interface SubgraphResponse<T> {\n data: {\n vaults: T[];\n };\n}\n\nexport interface DeprecationData {\n id: string;\n visible: boolean;\n}\n\nexport interface VaultFetchOptions {\n subgraphUrl: string;\n chainId: number;\n showDeprecated?: boolean;\n showCurrentProtocol?: boolean;\n beaconNames?: string[];\n batchSize?: number;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"subgraph-types.js","sourceRoot":"","sources":["../../../src/utils/subgraph-types.ts"],"names":[],"mappings":"","sourcesContent":["import { Address } from 'viem';\n\n/**\n * Types for Steer subgraph responses\n */\n\nexport interface SubgraphVaultPosition {\n id: string;\n upperTick: string;\n lowerTick: string;\n relativeWeight: string;\n}\n\nexport interface SubgraphVaultDetails {\n id: string;\n name: string;\n token0: string;\n token1: string;\n pool: string;\n weeklyFeeAPR: string;\n token0Symbol: string;\n token0Decimals: string;\n token1Symbol: string;\n token1Decimals: string;\n totalValueLockedToken0: string;\n totalValueLockedToken1: string;\n token0Balance: string;\n token1Balance: string;\n totalLPTokensIssued: string;\n createdAt: string;\n feeTier: string;\n strategyToken: {\n id: string;\n name: string;\n creator: {\n id: string;\n };\n admin: string;\n executionBundle: string;\n };\n positions: SubgraphVaultPosition[];\n fees0: string;\n fees1: string;\n beaconName: string;\n payloadIpfs: string;\n deployer: string;\n}\n\n\nexport interface RouteShortcut {\n poolIds: string[]\n tokenPath: string[]\n}\n\nexport interface FormattedRoute {\n path: string\n pricesPerHop: string\n finalPrice: string\n finalPriceRaw: number\n volumeScore: string\n poolVolumes: string\n shortcut: RouteShortcut\n}\nexport interface LpPriceResponse {\n vault: {\n address: Address;\n token0: Address;\n token1: Address;\n balances: {\n token0: string;\n token1: string;\n totalSupply: string;\n token0Formatted: string;\n token1Formatted: string;\n totalSupplyFormatted: string;\n };\n usd: {\n lpValue: number;\n totalValue: number;\n token0Price: number;\n token0Value: number;\n token1Price: number;\n token1Value: number;\n };\n token0Symbol: string;\n token1Symbol: string;\n token0Decimals: string;\n token1Decimals: string;\n };\n routes: {\n token0ToUsd: FormattedRoute[];\n token1ToUsd: FormattedRoute[];\n };\n}\n\nexport interface SubgraphVaultDetailsWithLpData extends SubgraphVaultDetails {\n lpPriceData?: LpPriceResponse;\n}\n\nexport interface SubgraphResponse<T> {\n data: {\n vaults: T[];\n };\n}\n\nexport interface DeprecationData {\n id: string;\n visible: boolean;\n}\n\nexport interface VaultFetchOptions {\n subgraphUrl: string;\n chainId: number;\n showDeprecated?: boolean;\n showCurrentProtocol?: boolean;\n beaconNames?: string[];\n batchSize?: number;\n}\n"]}
|
|
@@ -37,6 +37,23 @@ export interface VaultNode {
|
|
|
37
37
|
feeApr?: number;
|
|
38
38
|
stakingApr?: number;
|
|
39
39
|
merklApr?: number;
|
|
40
|
+
/** Raw positions from the subgraph. Only available when sourced from subgraph. */
|
|
41
|
+
positions?: {
|
|
42
|
+
id: string;
|
|
43
|
+
upperTick: number;
|
|
44
|
+
lowerTick: number;
|
|
45
|
+
relativeWeight: string;
|
|
46
|
+
}[];
|
|
47
|
+
/** Computed tick range across all current positions (min lower / max upper). Only available when sourced from subgraph. */
|
|
48
|
+
tickRange?: {
|
|
49
|
+
minLowerTick: number;
|
|
50
|
+
maxUpperTick: number;
|
|
51
|
+
};
|
|
52
|
+
/** Cumulative fees collected by the vault. Only available when sourced from subgraph. */
|
|
53
|
+
fees?: {
|
|
54
|
+
fees0: string;
|
|
55
|
+
fees1: string;
|
|
56
|
+
};
|
|
40
57
|
pool: {
|
|
41
58
|
poolAddress: string;
|
|
42
59
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VaultClient.d.ts","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VaultClient.d.ts","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export
|
|
3
|
-
export { SubgraphVaultClient } from './utils/SubgraphVaultClient';
|
|
1
|
+
export * from './utils/subgraph-types.js';
|
|
2
|
+
export { SubgraphVaultClient } from './utils/SubgraphVaultClient.js';
|
|
4
3
|
export * from './base/SmartRewards.js';
|
|
5
4
|
export * from './client.js';
|
|
6
5
|
export * from './types.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oCAAoC,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,cAAc,kBAAkB,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG"}
|
|
@@ -9,6 +9,12 @@ export declare class SubgraphVaultClient {
|
|
|
9
9
|
* Transform subgraph vault data to match VaultClient interface
|
|
10
10
|
*/
|
|
11
11
|
private transformSubgraphVaultToVaultNode;
|
|
12
|
+
/**
|
|
13
|
+
* Compute the tick range across all vault positions.
|
|
14
|
+
* Returns the minimum lowerTick and maximum upperTick, giving the full
|
|
15
|
+
* span of liquidity currently deployed by the vault strategy.
|
|
16
|
+
*/
|
|
17
|
+
private computeTickRange;
|
|
12
18
|
/**
|
|
13
19
|
* Get protocol base type from beacon name
|
|
14
20
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubgraphVaultClient.d.ts","sourceRoot":"","sources":["../../../src/utils/SubgraphVaultClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,EAIL,8BAA8B,
|
|
1
|
+
{"version":3,"file":"SubgraphVaultClient.d.ts","sourceRoot":"","sources":["../../../src/utils/SubgraphVaultClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,EAIL,8BAA8B,EAE9B,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAiM1B;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAC4C;IAE3E;;OAEG;IACH,OAAO,CAAC,iCAAiC;IA2DzC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAkC7B;;OAEG;IACU,wBAAwB,CACnC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,8BAA8B,EAAE,CAAC;IA6F5C;;OAEG;IACI,2BAA2B,CAChC,MAAM,EAAE,8BAA8B,EAAE,EACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,YAAK,EAClB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GACpB,gBAAgB;CA8BpB"}
|
|
@@ -2,6 +2,12 @@ import { Address } from 'viem';
|
|
|
2
2
|
/**
|
|
3
3
|
* Types for Steer subgraph responses
|
|
4
4
|
*/
|
|
5
|
+
export interface SubgraphVaultPosition {
|
|
6
|
+
id: string;
|
|
7
|
+
upperTick: string;
|
|
8
|
+
lowerTick: string;
|
|
9
|
+
relativeWeight: string;
|
|
10
|
+
}
|
|
5
11
|
export interface SubgraphVaultDetails {
|
|
6
12
|
id: string;
|
|
7
13
|
name: string;
|
|
@@ -29,6 +35,9 @@ export interface SubgraphVaultDetails {
|
|
|
29
35
|
admin: string;
|
|
30
36
|
executionBundle: string;
|
|
31
37
|
};
|
|
38
|
+
positions: SubgraphVaultPosition[];
|
|
39
|
+
fees0: string;
|
|
40
|
+
fees1: string;
|
|
32
41
|
beaconName: string;
|
|
33
42
|
payloadIpfs: string;
|
|
34
43
|
deployer: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph-types.d.ts","sourceRoot":"","sources":["../../../src/utils/subgraph-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subgraph-types.d.ts","sourceRoot":"","sources":["../../../src/utils/subgraph-types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/base/VaultClient.ts
CHANGED
|
@@ -105,6 +105,23 @@ export interface VaultNode {
|
|
|
105
105
|
feeApr?: number;
|
|
106
106
|
stakingApr?: number;
|
|
107
107
|
merklApr?: number;
|
|
108
|
+
/** Raw positions from the subgraph. Only available when sourced from subgraph. */
|
|
109
|
+
positions?: {
|
|
110
|
+
id: string;
|
|
111
|
+
upperTick: number;
|
|
112
|
+
lowerTick: number;
|
|
113
|
+
relativeWeight: string;
|
|
114
|
+
}[];
|
|
115
|
+
/** Computed tick range across all current positions (min lower / max upper). Only available when sourced from subgraph. */
|
|
116
|
+
tickRange?: {
|
|
117
|
+
minLowerTick: number;
|
|
118
|
+
maxUpperTick: number;
|
|
119
|
+
};
|
|
120
|
+
/** Cumulative fees collected by the vault. Only available when sourced from subgraph. */
|
|
121
|
+
fees?: {
|
|
122
|
+
fees0: string;
|
|
123
|
+
fees1: string;
|
|
124
|
+
};
|
|
108
125
|
pool: {
|
|
109
126
|
poolAddress: string;
|
|
110
127
|
id: string;
|
|
@@ -774,7 +791,11 @@ export class VaultClient extends SubgraphClient {
|
|
|
774
791
|
// Prefer API APR data, but use subgraph if API doesn't have it
|
|
775
792
|
feeApr: existing.node.feeApr ?? edge.node.feeApr,
|
|
776
793
|
stakingApr: existing.node.stakingApr ?? edge.node.stakingApr,
|
|
777
|
-
merklApr: existing.node.merklApr ?? edge.node.merklApr
|
|
794
|
+
merklApr: existing.node.merklApr ?? edge.node.merklApr,
|
|
795
|
+
// Subgraph-only fields: always take from subgraph when available
|
|
796
|
+
positions: existing.node.positions ?? edge.node.positions,
|
|
797
|
+
tickRange: existing.node.tickRange ?? edge.node.tickRange,
|
|
798
|
+
fees: existing.node.fees ?? edge.node.fees,
|
|
778
799
|
}
|
|
779
800
|
};
|
|
780
801
|
vaultMap.set(key, merged);
|
|
@@ -889,46 +910,73 @@ export class VaultClient extends SubgraphClient {
|
|
|
889
910
|
});
|
|
890
911
|
|
|
891
912
|
// Transform to VaultEdge array with APR data
|
|
892
|
-
const vaultEdges: VaultEdge[] = subgraphVaults.map((vault, index) =>
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
id:
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
liquidity: undefined,
|
|
911
|
-
volumeUSD: undefined,
|
|
912
|
-
totalValueLockedUSD: undefined
|
|
913
|
-
},
|
|
914
|
-
token0: {
|
|
915
|
-
id: vault.token0,
|
|
916
|
-
symbol: vault.token0Symbol,
|
|
917
|
-
name: vault.token0Symbol, // Use symbol as name since subgraph doesn't provide name
|
|
918
|
-
decimals: parseInt(vault.token0Decimals) || 18,
|
|
919
|
-
address: vault.token0,
|
|
920
|
-
chainId: chainId
|
|
921
|
-
},
|
|
922
|
-
token1: {
|
|
923
|
-
id: vault.token1,
|
|
924
|
-
symbol: vault.token1Symbol,
|
|
925
|
-
name: vault.token1Symbol, // Use symbol as name since subgraph doesn't provide name
|
|
926
|
-
decimals: parseInt(vault.token1Decimals) || 18,
|
|
927
|
-
address: vault.token1,
|
|
928
|
-
chainId: chainId
|
|
929
|
-
}
|
|
913
|
+
const vaultEdges: VaultEdge[] = subgraphVaults.map((vault, index) => {
|
|
914
|
+
// Parse positions and compute tick range
|
|
915
|
+
const positions = vault.positions?.map(pos => ({
|
|
916
|
+
id: pos.id,
|
|
917
|
+
upperTick: parseInt(pos.upperTick),
|
|
918
|
+
lowerTick: parseInt(pos.lowerTick),
|
|
919
|
+
relativeWeight: pos.relativeWeight
|
|
920
|
+
}));
|
|
921
|
+
|
|
922
|
+
// Compute tick range from positions
|
|
923
|
+
let tickRange: { minLowerTick: number; maxUpperTick: number } | undefined;
|
|
924
|
+
if (positions && positions.length > 0) {
|
|
925
|
+
const lowerTicks = positions.map(p => p.lowerTick);
|
|
926
|
+
const upperTicks = positions.map(p => p.upperTick);
|
|
927
|
+
tickRange = {
|
|
928
|
+
minLowerTick: Math.min(...lowerTicks),
|
|
929
|
+
maxUpperTick: Math.max(...upperTicks)
|
|
930
|
+
};
|
|
930
931
|
}
|
|
931
|
-
|
|
932
|
+
|
|
933
|
+
return {
|
|
934
|
+
cursor: `subgraph_${chainId}_${index}`,
|
|
935
|
+
node: {
|
|
936
|
+
id: vault.id,
|
|
937
|
+
chainId: chainId,
|
|
938
|
+
vaultAddress: vault.id,
|
|
939
|
+
protocol: vault.beaconName || '',
|
|
940
|
+
beaconName: vault.beaconName || '',
|
|
941
|
+
protocolBaseType: vault.beaconName || '',
|
|
942
|
+
name: `${vault.token0Symbol}/${vault.token1Symbol}`,
|
|
943
|
+
feeApr: aprMap.get(vault.id.toLowerCase()),
|
|
944
|
+
stakingApr: undefined,
|
|
945
|
+
merklApr: undefined,
|
|
946
|
+
positions,
|
|
947
|
+
tickRange,
|
|
948
|
+
fees: vault.fees0 && vault.fees1 ? {
|
|
949
|
+
fees0: vault.fees0,
|
|
950
|
+
fees1: vault.fees1
|
|
951
|
+
} : undefined,
|
|
952
|
+
pool: {
|
|
953
|
+
id: vault.pool || '',
|
|
954
|
+
poolAddress: vault.pool || '',
|
|
955
|
+
feeTier: vault.feeTier || '',
|
|
956
|
+
tick: undefined,
|
|
957
|
+
liquidity: undefined,
|
|
958
|
+
volumeUSD: undefined,
|
|
959
|
+
totalValueLockedUSD: undefined
|
|
960
|
+
},
|
|
961
|
+
token0: {
|
|
962
|
+
id: vault.token0,
|
|
963
|
+
symbol: vault.token0Symbol,
|
|
964
|
+
name: vault.token0Symbol, // Use symbol as name since subgraph doesn't provide name
|
|
965
|
+
decimals: parseInt(vault.token0Decimals) || 18,
|
|
966
|
+
address: vault.token0,
|
|
967
|
+
chainId: chainId
|
|
968
|
+
},
|
|
969
|
+
token1: {
|
|
970
|
+
id: vault.token1,
|
|
971
|
+
symbol: vault.token1Symbol,
|
|
972
|
+
name: vault.token1Symbol, // Use symbol as name since subgraph doesn't provide name
|
|
973
|
+
decimals: parseInt(vault.token1Decimals) || 18,
|
|
974
|
+
address: vault.token1,
|
|
975
|
+
chainId: chainId
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
};
|
|
979
|
+
});
|
|
932
980
|
|
|
933
981
|
return {
|
|
934
982
|
data: vaultEdges,
|
package/src/index.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
|
|
3
|
-
export * from './utils/subgraph-types';
|
|
4
|
-
export { SubgraphVaultClient } from './utils/SubgraphVaultClient';
|
|
1
|
+
export * from './utils/subgraph-types.js';
|
|
2
|
+
export { SubgraphVaultClient } from './utils/SubgraphVaultClient.js';
|
|
5
3
|
export * from './base/SmartRewards.js';
|
|
6
4
|
export * from './client.js';
|
|
7
5
|
export * from './types.js';
|