@lagoon-protocol/lagoon-mcp 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +72 -54
- package/dist/cache/index.d.ts +4 -1
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +4 -1
- package/dist/cache/index.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/dist/core/container.js +1 -1
- package/dist/graphql/fragments/apr-breakdown.fragment.d.ts +4 -1
- package/dist/graphql/fragments/apr-breakdown.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/apr-breakdown.fragment.js +3 -0
- package/dist/graphql/fragments/apr-breakdown.fragment.js.map +1 -1
- package/dist/graphql/fragments/composition.fragment.d.ts +23 -134
- package/dist/graphql/fragments/composition.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/composition.fragment.js +9 -7
- package/dist/graphql/fragments/composition.fragment.js.map +1 -1
- package/dist/graphql/fragments/index.d.ts +1 -1
- package/dist/graphql/fragments/index.d.ts.map +1 -1
- package/dist/graphql/fragments/index.js +5 -4
- package/dist/graphql/fragments/index.js.map +1 -1
- package/dist/graphql/fragments/transaction-base.fragment.d.ts +1 -1
- package/dist/graphql/fragments/transaction-base.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/transaction-base.fragment.js +0 -1
- package/dist/graphql/fragments/transaction-base.fragment.js.map +1 -1
- package/dist/graphql/fragments/vault.fragment.d.ts +29 -1
- package/dist/graphql/fragments/vault.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/vault.fragment.js +29 -0
- package/dist/graphql/fragments/vault.fragment.js.map +1 -1
- package/dist/graphql/queries/composition.queries.d.ts +10 -28
- package/dist/graphql/queries/composition.queries.d.ts.map +1 -1
- package/dist/graphql/queries/composition.queries.js +17 -28
- package/dist/graphql/queries/composition.queries.js.map +1 -1
- package/dist/graphql/queries/discovery.queries.d.ts +50 -0
- package/dist/graphql/queries/discovery.queries.d.ts.map +1 -0
- package/dist/graphql/queries/discovery.queries.js +188 -0
- package/dist/graphql/queries/discovery.queries.js.map +1 -0
- package/dist/graphql/queries/export.queries.d.ts +5 -7
- package/dist/graphql/queries/export.queries.d.ts.map +1 -1
- package/dist/graphql/queries/export.queries.js +22 -28
- package/dist/graphql/queries/export.queries.js.map +1 -1
- package/dist/graphql/queries/index.d.ts +4 -3
- package/dist/graphql/queries/index.d.ts.map +1 -1
- package/dist/graphql/queries/index.js +5 -3
- package/dist/graphql/queries/index.js.map +1 -1
- package/dist/graphql/queries/performance.queries.d.ts +6 -4
- package/dist/graphql/queries/performance.queries.d.ts.map +1 -1
- package/dist/graphql/queries/performance.queries.js +5 -11
- package/dist/graphql/queries/performance.queries.js.map +1 -1
- package/dist/graphql/queries/portfolio.queries.d.ts +6 -12
- package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -1
- package/dist/graphql/queries/portfolio.queries.js +21 -88
- package/dist/graphql/queries/portfolio.queries.js.map +1 -1
- package/dist/graphql/queries/prediction.queries.d.ts +13 -15
- package/dist/graphql/queries/prediction.queries.d.ts.map +1 -1
- package/dist/graphql/queries/prediction.queries.js +12 -31
- package/dist/graphql/queries/prediction.queries.js.map +1 -1
- package/dist/graphql/queries/risk.queries.d.ts +3 -3
- package/dist/graphql/queries/risk.queries.d.ts.map +1 -1
- package/dist/graphql/queries/risk.queries.js +7 -22
- package/dist/graphql/queries/risk.queries.js.map +1 -1
- package/dist/graphql/queries/search.queries.d.ts.map +1 -1
- package/dist/graphql/queries/search.queries.js +6 -2
- package/dist/graphql/queries/search.queries.js.map +1 -1
- package/dist/graphql/queries/transaction.queries.d.ts +6 -26
- package/dist/graphql/queries/transaction.queries.d.ts.map +1 -1
- package/dist/graphql/queries/transaction.queries.js +227 -59
- package/dist/graphql/queries/transaction.queries.js.map +1 -1
- package/dist/graphql/queries/vault.queries.d.ts +21 -3
- package/dist/graphql/queries/vault.queries.d.ts.map +1 -1
- package/dist/graphql/queries/vault.queries.js +38 -0
- package/dist/graphql/queries/vault.queries.js.map +1 -1
- package/dist/index.js +0 -0
- package/dist/services/analytics/risk.service.d.ts +52 -33
- package/dist/services/analytics/risk.service.d.ts.map +1 -1
- package/dist/services/analytics/risk.service.js +165 -155
- package/dist/services/analytics/risk.service.js.map +1 -1
- package/dist/tools/compare-vaults.d.ts.map +1 -1
- package/dist/tools/compare-vaults.js +50 -77
- package/dist/tools/compare-vaults.js.map +1 -1
- package/dist/tools/export-data.d.ts.map +1 -1
- package/dist/tools/export-data.js +10 -16
- package/dist/tools/export-data.js.map +1 -1
- package/dist/tools/get-asset.d.ts +17 -0
- package/dist/tools/get-asset.d.ts.map +1 -0
- package/dist/tools/get-asset.js +44 -0
- package/dist/tools/get-asset.js.map +1 -0
- package/dist/tools/get-curator.d.ts +13 -0
- package/dist/tools/get-curator.d.ts.map +1 -0
- package/dist/tools/get-curator.js +81 -0
- package/dist/tools/get-curator.js.map +1 -0
- package/dist/tools/get-global-tvl.d.ts +20 -0
- package/dist/tools/get-global-tvl.d.ts.map +1 -0
- package/dist/tools/get-global-tvl.js +38 -0
- package/dist/tools/get-global-tvl.js.map +1 -0
- package/dist/tools/get-historical-state.d.ts +22 -0
- package/dist/tools/get-historical-state.d.ts.map +1 -0
- package/dist/tools/get-historical-state.js +65 -0
- package/dist/tools/get-historical-state.js.map +1 -0
- package/dist/tools/get-indexing-status.d.ts +20 -0
- package/dist/tools/get-indexing-status.d.ts.map +1 -0
- package/dist/tools/get-indexing-status.js +38 -0
- package/dist/tools/get-indexing-status.js.map +1 -0
- package/dist/tools/get-price-history.d.ts.map +1 -1
- package/dist/tools/get-price-history.js +55 -63
- package/dist/tools/get-price-history.js.map +1 -1
- package/dist/tools/get-transactions.d.ts.map +1 -1
- package/dist/tools/get-transactions.js +3 -1
- package/dist/tools/get-transactions.js.map +1 -1
- package/dist/tools/list-chains.d.ts +16 -0
- package/dist/tools/list-chains.d.ts.map +1 -0
- package/dist/tools/list-chains.js +46 -0
- package/dist/tools/list-chains.js.map +1 -0
- package/dist/tools/list-curators.d.ts +18 -0
- package/dist/tools/list-curators.d.ts.map +1 -0
- package/dist/tools/list-curators.js +49 -0
- package/dist/tools/list-curators.js.map +1 -0
- package/dist/tools/optimize-portfolio.d.ts.map +1 -1
- package/dist/tools/optimize-portfolio.js +6 -17
- package/dist/tools/optimize-portfolio.js.map +1 -1
- package/dist/tools/predict-yield.d.ts.map +1 -1
- package/dist/tools/predict-yield.js +109 -11
- package/dist/tools/predict-yield.js.map +1 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +83 -11
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/search-vaults.d.ts.map +1 -1
- package/dist/tools/search-vaults.js +9 -2
- package/dist/tools/search-vaults.js.map +1 -1
- package/dist/tools/simulate-vault.d.ts +1 -1
- package/dist/tools/user-portfolio.d.ts.map +1 -1
- package/dist/tools/user-portfolio.js +30 -51
- package/dist/tools/user-portfolio.js.map +1 -1
- package/dist/tools/vault-composition.d.ts +18 -15
- package/dist/tools/vault-composition.d.ts.map +1 -1
- package/dist/tools/vault-composition.js +71 -155
- package/dist/tools/vault-composition.js.map +1 -1
- package/dist/tools/vault-performance.d.ts.map +1 -1
- package/dist/tools/vault-performance.js +7 -19
- package/dist/tools/vault-performance.js.map +1 -1
- package/dist/types/generated.d.ts +1191 -21
- package/dist/types/generated.d.ts.map +1 -1
- package/dist/utils/comparison-metrics.d.ts +13 -1
- package/dist/utils/comparison-metrics.d.ts.map +1 -1
- package/dist/utils/comparison-metrics.js +29 -4
- package/dist/utils/comparison-metrics.js.map +1 -1
- package/dist/utils/composition-metrics.d.ts +42 -0
- package/dist/utils/composition-metrics.d.ts.map +1 -0
- package/dist/utils/composition-metrics.js +50 -0
- package/dist/utils/composition-metrics.js.map +1 -0
- package/dist/utils/csv-generator.d.ts +4 -1
- package/dist/utils/csv-generator.d.ts.map +1 -1
- package/dist/utils/csv-generator.js +8 -4
- package/dist/utils/csv-generator.js.map +1 -1
- package/dist/utils/fee-formatting.d.ts +41 -0
- package/dist/utils/fee-formatting.d.ts.map +1 -0
- package/dist/utils/fee-formatting.js +57 -0
- package/dist/utils/fee-formatting.js.map +1 -0
- package/dist/utils/operational-signals.d.ts +55 -0
- package/dist/utils/operational-signals.d.ts.map +1 -0
- package/dist/utils/operational-signals.js +105 -0
- package/dist/utils/operational-signals.js.map +1 -0
- package/dist/utils/tool-error-handler.d.ts.map +1 -1
- package/dist/utils/tool-error-handler.js +8 -6
- package/dist/utils/tool-error-handler.js.map +1 -1
- package/dist/utils/validators.d.ts +112 -3
- package/dist/utils/validators.d.ts.map +1 -1
- package/dist/utils/validators.js +108 -4
- package/dist/utils/validators.js.map +1 -1
- package/dist/utils/yield-prediction.d.ts +3 -0
- package/dist/utils/yield-prediction.d.ts.map +1 -1
- package/dist/utils/yield-prediction.js +13 -1
- package/dist/utils/yield-prediction.js.map +1 -1
- package/package.json +2 -2
- package/dist/graphql/fragments.d.ts +0 -183
- package/dist/graphql/fragments.d.ts.map +0 -1
- package/dist/graphql/fragments.js +0 -297
- package/dist/graphql/fragments.js.map +0 -1
- package/dist/graphql/queries/period-summaries.d.ts +0 -15
- package/dist/graphql/queries/period-summaries.d.ts.map +0 -1
- package/dist/graphql/queries/period-summaries.js +0 -24
- package/dist/graphql/queries/period-summaries.js.map +0 -1
- package/dist/services/analytics/protocol-overview.service.d.ts +0 -61
- package/dist/services/analytics/protocol-overview.service.d.ts.map +0 -1
- package/dist/services/analytics/protocol-overview.service.js +0 -182
- package/dist/services/analytics/protocol-overview.service.js.map +0 -1
- package/dist/tools/index.d.ts +0 -26
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -32
- package/dist/tools/index.js.map +0 -1
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
* );
|
|
20
20
|
* ```
|
|
21
21
|
*/
|
|
22
|
-
export declare const EXPORT_VAULTS_QUERY = "\n query ExportVaults($addresses: [String!]!, $chainId: Int!) {\n vaults(where: { address_in: $addresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n totalAssets\n totalAssetsUsd\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n }\n managementFee\n performanceFee\n protocolFee\n isWhitelistActivated\n whitelist\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n bundles {\n octav\n debank\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
|
|
22
|
+
export declare const EXPORT_VAULTS_QUERY = "\n query ExportVaults($addresses: [String!]!, $chainId: Int!) {\n vaults(where: { address_in: $addresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n creationDate\n inception\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n version\n syncMode\n isAsyncOnly\n isPaused\n safeLocked\n superOperatorLocked\n allowHighWaterMarkReset\n accessMode\n blacklist\n externalSanctionsList\n maxCap\n totalAssets\n totalAssetsUsd\n totalAssetsExpiration\n totalAssetsLifespan\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n securityCouncil\n superOperator\n }\n managementFee\n performanceFee\n protocolFee\n entryRate\n exitRate\n haircutRate\n upcomingManagementFee\n upcomingPerformanceFee\n feeRatesCooldown\n newRatesTimestamp\n guardrails {\n activated\n lowerRate\n upperRate\n }\n isWhitelistActivated\n whitelist\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n bundles {\n octav\n debank\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n twrrNetApr\n twrrNetAprWithoutExtraYields\n twrrGrossAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
|
|
23
23
|
/**
|
|
24
24
|
* GraphQL query for transaction export
|
|
25
25
|
*
|
|
@@ -36,11 +36,9 @@ export declare const EXPORT_VAULTS_QUERY = "\n query ExportVaults($addresses: [
|
|
|
36
36
|
* );
|
|
37
37
|
* ```
|
|
38
38
|
*/
|
|
39
|
-
export declare const EXPORT_TRANSACTIONS_QUERY = "\n query ExportTransactions($vault_in: [Address!]!, $chainId: Int!, $first: Int!) {\n transactions(\n where: { vault_in: $vault_in, chainId_eq: $chainId },\n orderBy: timestamp,\n orderDirection: desc,\n first: $first\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on SettleDeposit {\n assetsDeposited\n assetsDepositedUsd\n sharesMinted\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n ... on SettleRedeem {\n assetsWithdrawed\n assetsWithdrawedUsd\n sharesBurned\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n ... on DepositRequest {\n owner\n assets\n assetsUsd\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n ... on RedeemRequest {\n owner\n shares\n sharesUsd\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n }\n }\n }\n }\n \n fragment TransactionBaseFragment on Transaction {\n
|
|
39
|
+
export declare const EXPORT_TRANSACTIONS_QUERY = "\n query ExportTransactions($vault_in: [Address!]!, $chainId: Int!, $first: Int!) {\n transactions(\n where: { vault_in: $vault_in, chainId_eq: $chainId },\n orderBy: timestamp,\n orderDirection: desc,\n first: $first\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on SettleDeposit {\n assetsDeposited\n assetsDepositedUsd\n sharesMinted\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n ... on SettleRedeem {\n assetsWithdrawed\n assetsWithdrawedUsd\n sharesBurned\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n ... on DepositRequest {\n owner\n assets\n assetsUsd\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n ... on RedeemRequest {\n owner\n shares\n sharesUsd\n vault {\n id\n address\n symbol\n decimals\n asset {\n decimals\n }\n }\n }\n }\n }\n }\n }\n \n fragment TransactionBaseFragment on Transaction {\n type\n timestamp\n blockNumber\n hash\n logIndex\n chain {\n id\n name\n }\n }\n\n";
|
|
40
40
|
/**
|
|
41
|
-
* GraphQL query for price history export
|
|
42
|
-
*
|
|
43
|
-
* Fetches historical price data for OHLCV export.
|
|
41
|
+
* GraphQL query for price history export — typed PPS time series for one vault.
|
|
44
42
|
*
|
|
45
43
|
* Used by: export_data tool (dataType: 'price_history')
|
|
46
44
|
*
|
|
@@ -48,11 +46,11 @@ export declare const EXPORT_TRANSACTIONS_QUERY = "\n query ExportTransactions($
|
|
|
48
46
|
* ```typescript
|
|
49
47
|
* const data = await graphqlClient.request<PriceHistoryExportResponse>(
|
|
50
48
|
* EXPORT_PRICE_HISTORY_QUERY,
|
|
51
|
-
* {
|
|
49
|
+
* { vaultAddress: '0x...', chainId: 1 }
|
|
52
50
|
* );
|
|
53
51
|
* ```
|
|
54
52
|
*/
|
|
55
|
-
export declare const EXPORT_PRICE_HISTORY_QUERY = "\n query ExportPriceHistory($
|
|
53
|
+
export declare const EXPORT_PRICE_HISTORY_QUERY = "\n query ExportPriceHistory(\n $vaultAddress: Address!,\n $chainId: Int!,\n $options: TimeRangeOptions\n ) {\n vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {\n address\n symbol\n decimals\n asset {\n decimals\n }\n stateHistory {\n pricePerShareUsd(options: $options) {\n x\n y\n }\n totalAssetsUsd(options: $options) {\n x\n y\n }\n }\n }\n }\n";
|
|
56
54
|
/**
|
|
57
55
|
* GraphQL query for performance metrics export
|
|
58
56
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/export.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"export.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/export.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,ynHAS/B,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,yBAAyB,4uDAwErC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,8eAyBtC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,+aAmBpC,CAAC"}
|
|
@@ -120,9 +120,7 @@ export const EXPORT_TRANSACTIONS_QUERY = `
|
|
|
120
120
|
${TRANSACTION_BASE_FRAGMENT}
|
|
121
121
|
`;
|
|
122
122
|
/**
|
|
123
|
-
* GraphQL query for price history export
|
|
124
|
-
*
|
|
125
|
-
* Fetches historical price data for OHLCV export.
|
|
123
|
+
* GraphQL query for price history export — typed PPS time series for one vault.
|
|
126
124
|
*
|
|
127
125
|
* Used by: export_data tool (dataType: 'price_history')
|
|
128
126
|
*
|
|
@@ -130,35 +128,31 @@ export const EXPORT_TRANSACTIONS_QUERY = `
|
|
|
130
128
|
* ```typescript
|
|
131
129
|
* const data = await graphqlClient.request<PriceHistoryExportResponse>(
|
|
132
130
|
* EXPORT_PRICE_HISTORY_QUERY,
|
|
133
|
-
* {
|
|
131
|
+
* { vaultAddress: '0x...', chainId: 1 }
|
|
134
132
|
* );
|
|
135
133
|
* ```
|
|
136
134
|
*/
|
|
137
135
|
export const EXPORT_PRICE_HISTORY_QUERY = `
|
|
138
|
-
query ExportPriceHistory(
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
decimals
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
136
|
+
query ExportPriceHistory(
|
|
137
|
+
$vaultAddress: Address!,
|
|
138
|
+
$chainId: Int!,
|
|
139
|
+
$options: TimeRangeOptions
|
|
140
|
+
) {
|
|
141
|
+
vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {
|
|
142
|
+
address
|
|
143
|
+
symbol
|
|
144
|
+
decimals
|
|
145
|
+
asset {
|
|
146
|
+
decimals
|
|
147
|
+
}
|
|
148
|
+
stateHistory {
|
|
149
|
+
pricePerShareUsd(options: $options) {
|
|
150
|
+
x
|
|
151
|
+
y
|
|
152
|
+
}
|
|
153
|
+
totalAssetsUsd(options: $options) {
|
|
154
|
+
x
|
|
155
|
+
y
|
|
162
156
|
}
|
|
163
157
|
}
|
|
164
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/export.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAElF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;IAQ/B,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuErC,yBAAyB;CAC5B,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"export.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/export.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAElF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;IAQ/B,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuErC,yBAAyB;CAC5B,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;CAyBzC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;CAmBvC,CAAC"}
|
|
@@ -4,13 +4,14 @@
|
|
|
4
4
|
* Central export point for all GraphQL queries.
|
|
5
5
|
* Import from this file for convenience: `import { GET_VAULT_DATA_QUERY } from '../graphql/queries'`
|
|
6
6
|
*/
|
|
7
|
-
export { GET_VAULT_DATA_QUERY, GET_VAULT_FOR_APR_QUERY, COMPARE_VAULTS_QUERY, VAULT_FIRST_TRANSACTION_QUERY, BATCH_VAULT_FIRST_TRANSACTIONS_QUERY, type BatchVaultFirstTransactionsResponse, } from './vault.queries.js';
|
|
8
|
-
export { TRANSACTIONS_QUERY
|
|
7
|
+
export { GET_VAULT_DATA_QUERY, GET_VAULT_FOR_APR_QUERY, COMPARE_VAULTS_QUERY, VAULT_FIRST_TRANSACTION_QUERY, BATCH_VAULT_FIRST_TRANSACTIONS_QUERY, PRICE_HISTORY_QUERY, type BatchVaultFirstTransactionsResponse, } from './vault.queries.js';
|
|
8
|
+
export { TRANSACTIONS_QUERY } from './transaction.queries.js';
|
|
9
9
|
export { GET_VAULT_PERFORMANCE_QUERY, GET_PERIOD_SUMMARIES_QUERY } from './performance.queries.js';
|
|
10
|
-
export { GET_USER_PORTFOLIO_QUERY, createGetUserPortfolioQuery, type PortfolioResponseFormat, SINGLE_VAULT_OPTIMIZATION_QUERY,
|
|
10
|
+
export { GET_USER_PORTFOLIO_QUERY, createGetUserPortfolioQuery, type PortfolioResponseFormat, SINGLE_VAULT_OPTIMIZATION_QUERY, } from './portfolio.queries.js';
|
|
11
11
|
export { RISK_ANALYSIS_QUERY, BATCH_RISK_ANALYSIS_QUERY, CROSS_CHAIN_VAULTS_QUERY, } from './risk.queries.js';
|
|
12
12
|
export { YIELD_PREDICTION_QUERY, createYieldPredictionQuery, type PredictionResponseFormat, } from './prediction.queries.js';
|
|
13
13
|
export { EXPORT_VAULTS_QUERY, EXPORT_TRANSACTIONS_QUERY, EXPORT_PRICE_HISTORY_QUERY, EXPORT_PERFORMANCE_QUERY, } from './export.queries.js';
|
|
14
14
|
export { SEARCH_VAULTS_QUERY, createSearchVaultsQuery, type SearchVaultsResponseFormat, } from './search.queries.js';
|
|
15
15
|
export { GET_VAULT_COMPOSITION_QUERY } from './composition.queries.js';
|
|
16
|
+
export { GET_GLOBAL_TVL_QUERY, GET_INDEXING_STATUS_QUERY, LIST_CHAINS_QUERY, LIST_CURATORS_QUERY, GET_CURATOR_QUERY, GET_ASSET_QUERY, GET_HISTORICAL_STATE_QUERY, } from './discovery.queries.js';
|
|
16
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,EAC7B,oCAAoC,EACpC,KAAK,mCAAmC,GACzC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,EAC7B,oCAAoC,EACpC,mBAAmB,EACnB,KAAK,mCAAmC,GACzC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAGnG,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,KAAK,uBAAuB,EAC5B,+BAA+B,GAChC,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,KAAK,wBAAwB,GAC9B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAGvE,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC"}
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
* Import from this file for convenience: `import { GET_VAULT_DATA_QUERY } from '../graphql/queries'`
|
|
6
6
|
*/
|
|
7
7
|
// Vault Queries
|
|
8
|
-
export { GET_VAULT_DATA_QUERY, GET_VAULT_FOR_APR_QUERY, COMPARE_VAULTS_QUERY, VAULT_FIRST_TRANSACTION_QUERY, BATCH_VAULT_FIRST_TRANSACTIONS_QUERY, } from './vault.queries.js';
|
|
8
|
+
export { GET_VAULT_DATA_QUERY, GET_VAULT_FOR_APR_QUERY, COMPARE_VAULTS_QUERY, VAULT_FIRST_TRANSACTION_QUERY, BATCH_VAULT_FIRST_TRANSACTIONS_QUERY, PRICE_HISTORY_QUERY, } from './vault.queries.js';
|
|
9
9
|
// Transaction Queries
|
|
10
|
-
export { TRANSACTIONS_QUERY
|
|
10
|
+
export { TRANSACTIONS_QUERY } from './transaction.queries.js';
|
|
11
11
|
// Performance Queries
|
|
12
12
|
export { GET_VAULT_PERFORMANCE_QUERY, GET_PERIOD_SUMMARIES_QUERY } from './performance.queries.js';
|
|
13
13
|
// Portfolio Queries
|
|
14
|
-
export { GET_USER_PORTFOLIO_QUERY, createGetUserPortfolioQuery, SINGLE_VAULT_OPTIMIZATION_QUERY,
|
|
14
|
+
export { GET_USER_PORTFOLIO_QUERY, createGetUserPortfolioQuery, SINGLE_VAULT_OPTIMIZATION_QUERY, } from './portfolio.queries.js';
|
|
15
15
|
// Risk Queries
|
|
16
16
|
export { RISK_ANALYSIS_QUERY, BATCH_RISK_ANALYSIS_QUERY, CROSS_CHAIN_VAULTS_QUERY, } from './risk.queries.js';
|
|
17
17
|
// Prediction Queries
|
|
@@ -22,4 +22,6 @@ export { EXPORT_VAULTS_QUERY, EXPORT_TRANSACTIONS_QUERY, EXPORT_PRICE_HISTORY_QU
|
|
|
22
22
|
export { SEARCH_VAULTS_QUERY, createSearchVaultsQuery, } from './search.queries.js';
|
|
23
23
|
// Composition Queries
|
|
24
24
|
export { GET_VAULT_COMPOSITION_QUERY } from './composition.queries.js';
|
|
25
|
+
// Discovery Queries (Tier 2: thin wrappers around backend metadata endpoints)
|
|
26
|
+
export { GET_GLOBAL_TVL_QUERY, GET_INDEXING_STATUS_QUERY, LIST_CHAINS_QUERY, LIST_CURATORS_QUERY, GET_CURATOR_QUERY, GET_ASSET_QUERY, GET_HISTORICAL_STATE_QUERY, } from './discovery.queries.js';
|
|
25
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/queries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gBAAgB;AAChB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,EAC7B,oCAAoC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/queries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gBAAgB;AAChB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,EAC7B,oCAAoC,EACpC,mBAAmB,GAEpB,MAAM,oBAAoB,CAAC;AAE5B,sBAAsB;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,sBAAsB;AACtB,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEnG,oBAAoB;AACpB,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAE3B,+BAA+B,GAChC,MAAM,wBAAwB,CAAC;AAEhC,eAAe;AACf,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAE3B,qBAAqB;AACrB,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAE3B,MAAM,yBAAyB,CAAC;AAEjC,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAE7B,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;AAE7B,sBAAsB;AACtB,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAEvE,8EAA8E;AAC9E,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC"}
|
|
@@ -7,8 +7,10 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* Vault performance GraphQL query
|
|
9
9
|
*
|
|
10
|
-
* Fetches transactions
|
|
11
|
-
*
|
|
10
|
+
* Fetches TotalAssetsUpdated transactions for historical TVL time-series.
|
|
11
|
+
* Only TotalAssetsUpdated is queried because it carries totalAssetsUsd in
|
|
12
|
+
* USD. PeriodSummary records carry totalAssetsAtEnd as a raw token amount in
|
|
13
|
+
* wei, which is not USD-comparable.
|
|
12
14
|
*
|
|
13
15
|
* Used by: get_vault_performance tool
|
|
14
16
|
*
|
|
@@ -19,7 +21,7 @@
|
|
|
19
21
|
* {
|
|
20
22
|
* where: {
|
|
21
23
|
* vault_in: ['0x...'],
|
|
22
|
-
* type_in: ['TotalAssetsUpdated'
|
|
24
|
+
* type_in: ['TotalAssetsUpdated']
|
|
23
25
|
* },
|
|
24
26
|
* orderBy: 'timestamp',
|
|
25
27
|
* orderDirection: 'asc',
|
|
@@ -28,7 +30,7 @@
|
|
|
28
30
|
* );
|
|
29
31
|
* ```
|
|
30
32
|
*/
|
|
31
|
-
export declare const GET_VAULT_PERFORMANCE_QUERY = "\n query GetVaultPerformance(\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!,\n $first: Int!\n ) {\n transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: $first\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on TotalAssetsUpdated {\n totalAssetsUsd\n totalAssets\n }\n
|
|
33
|
+
export declare const GET_VAULT_PERFORMANCE_QUERY = "\n query GetVaultPerformance(\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!,\n $first: Int!\n ) {\n transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: $first\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on TotalAssetsUpdated {\n totalAssetsUsd\n totalAssets\n }\n }\n }\n pageInfo {\n ...PageInfoMinimalFragment\n }\n }\n }\n \n fragment TransactionBaseFragment on Transaction {\n type\n timestamp\n blockNumber\n hash\n logIndex\n chain {\n id\n name\n }\n }\n\n \n fragment PageInfoMinimalFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n }\n\n";
|
|
32
34
|
/**
|
|
33
35
|
* Query to fetch period summaries for a vault
|
|
34
36
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performance.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/performance.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH
|
|
1
|
+
{"version":3,"file":"performance.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/performance.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,2BAA2B,k1BA6BvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,0BAA0B,6wBAgCtC,CAAC"}
|
|
@@ -8,8 +8,10 @@ import { TRANSACTION_BASE_FRAGMENT, PAGEINFO_MINIMAL_FRAGMENT } from '../fragmen
|
|
|
8
8
|
/**
|
|
9
9
|
* Vault performance GraphQL query
|
|
10
10
|
*
|
|
11
|
-
* Fetches transactions
|
|
12
|
-
*
|
|
11
|
+
* Fetches TotalAssetsUpdated transactions for historical TVL time-series.
|
|
12
|
+
* Only TotalAssetsUpdated is queried because it carries totalAssetsUsd in
|
|
13
|
+
* USD. PeriodSummary records carry totalAssetsAtEnd as a raw token amount in
|
|
14
|
+
* wei, which is not USD-comparable.
|
|
13
15
|
*
|
|
14
16
|
* Used by: get_vault_performance tool
|
|
15
17
|
*
|
|
@@ -20,7 +22,7 @@ import { TRANSACTION_BASE_FRAGMENT, PAGEINFO_MINIMAL_FRAGMENT } from '../fragmen
|
|
|
20
22
|
* {
|
|
21
23
|
* where: {
|
|
22
24
|
* vault_in: ['0x...'],
|
|
23
|
-
* type_in: ['TotalAssetsUpdated'
|
|
25
|
+
* type_in: ['TotalAssetsUpdated']
|
|
24
26
|
* },
|
|
25
27
|
* orderBy: 'timestamp',
|
|
26
28
|
* orderDirection: 'asc',
|
|
@@ -49,14 +51,6 @@ export const GET_VAULT_PERFORMANCE_QUERY = `
|
|
|
49
51
|
totalAssetsUsd
|
|
50
52
|
totalAssets
|
|
51
53
|
}
|
|
52
|
-
... on PeriodSummary {
|
|
53
|
-
duration
|
|
54
|
-
totalAssetsAtStart
|
|
55
|
-
totalAssetsAtEnd
|
|
56
|
-
totalSupplyAtStart
|
|
57
|
-
totalSupplyAtEnd
|
|
58
|
-
netTotalSupplyAtEnd
|
|
59
|
-
}
|
|
60
54
|
}
|
|
61
55
|
}
|
|
62
56
|
pageInfo {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performance.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/performance.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE7F
|
|
1
|
+
{"version":3,"file":"performance.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/performance.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE7F;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2BvC,yBAAyB;IACzB,yBAAyB;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+BtC,yBAAyB;CAC5B,CAAC"}
|
|
@@ -16,6 +16,10 @@ export type PortfolioResponseFormat = 'list' | 'summary' | 'full';
|
|
|
16
16
|
*
|
|
17
17
|
* Used by: get_user_portfolio tool
|
|
18
18
|
*
|
|
19
|
+
* Aliases: `state.sharesUsd: usd` — backend deprecated
|
|
20
|
+
* `VaultPositionState.sharesUsd` (schema.gql:2466) in favor of `usd`. The alias
|
|
21
|
+
* keeps the downstream TS field name stable while reading the canonical field.
|
|
22
|
+
*
|
|
19
23
|
* @param responseFormat - Detail level: 'list' (~60 tokens/vault), 'summary' (~170 tokens/vault), 'full' (~600 tokens/vault)
|
|
20
24
|
* @returns GraphQL query string with appropriate fragment
|
|
21
25
|
*
|
|
@@ -64,7 +68,7 @@ export declare const GET_USER_PORTFOLIO_QUERY: string;
|
|
|
64
68
|
* );
|
|
65
69
|
* ```
|
|
66
70
|
*/
|
|
67
|
-
export declare const SINGLE_VAULT_OPTIMIZATION_QUERY = "\n query SingleVaultOptimization($vaultAddress: Address
|
|
71
|
+
export declare const SINGLE_VAULT_OPTIMIZATION_QUERY = "\n query SingleVaultOptimization(\n $vaultAddress: Address!,\n $chainId: Int!,\n $options: TimeRangeOptions\n ) {\n vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {\n ...VaultFragment\n stateHistory {\n pricePerShareUsd(options: $options) {\n x\n y\n }\n }\n }\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n creationDate\n inception\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n version\n syncMode\n isAsyncOnly\n isPaused\n safeLocked\n superOperatorLocked\n allowHighWaterMarkReset\n accessMode\n blacklist\n externalSanctionsList\n maxCap\n totalAssets\n totalAssetsUsd\n totalAssetsExpiration\n totalAssetsLifespan\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n securityCouncil\n superOperator\n }\n managementFee\n performanceFee\n protocolFee\n entryRate\n exitRate\n haircutRate\n upcomingManagementFee\n upcomingPerformanceFee\n feeRatesCooldown\n newRatesTimestamp\n guardrails {\n activated\n lowerRate\n upperRate\n }\n isWhitelistActivated\n whitelist\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n bundles {\n octav\n debank\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n twrrNetApr\n twrrNetAprWithoutExtraYields\n twrrGrossAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
|
|
68
72
|
/**
|
|
69
73
|
* GraphQL query for single vault composition data
|
|
70
74
|
*
|
|
@@ -86,15 +90,5 @@ export declare const SINGLE_VAULT_OPTIMIZATION_QUERY = "\n query SingleVaultOpt
|
|
|
86
90
|
* );
|
|
87
91
|
* ```
|
|
88
92
|
*/
|
|
89
|
-
export declare const SINGLE_VAULT_COMPOSITION_QUERY = "\n query SingleVaultComposition($
|
|
90
|
-
/**
|
|
91
|
-
* GraphQL query for portfolio optimization data (DEPRECATED)
|
|
92
|
-
*
|
|
93
|
-
* This query is deprecated in favor of SINGLE_VAULT_OPTIMIZATION_QUERY
|
|
94
|
-
* executed in parallel for each vault. Multi-vault queries cannot
|
|
95
|
-
* distinguish which transactions belong to which vault.
|
|
96
|
-
*
|
|
97
|
-
* @deprecated Use SINGLE_VAULT_OPTIMIZATION_QUERY with Promise.all instead
|
|
98
|
-
*/
|
|
99
|
-
export declare const PORTFOLIO_OPTIMIZATION_QUERY = "\n query PortfolioOptimization($vaultAddresses: [String!]!, $chainId: Int!) {\n vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n\n # Get price history for volatility calculation\n priceHistory: transactions(\n where: {\n vault_in: $vaultAddresses,\n type_in: [\"TotalAssetsUpdated\"]\n },\n orderBy: \"timestamp\",\n orderDirection: \"asc\",\n first: 1000\n ) {\n items {\n timestamp\n data {\n ... on TotalAssetsUpdated {\n pricePerShareUsd\n }\n }\n }\n }\n\n # Get APR data for return estimation\n performanceData: transactions(\n where: {\n vault_in: $vaultAddresses,\n type_in: [\"PeriodSummary\"]\n },\n orderBy: \"timestamp\",\n orderDirection: \"asc\",\n first: 1000\n ) {\n items {\n timestamp\n data {\n ... on PeriodSummary {\n linearNetApr\n }\n }\n }\n }\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n totalAssets\n totalAssetsUsd\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n }\n managementFee\n performanceFee\n protocolFee\n isWhitelistActivated\n whitelist\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n bundles {\n octav\n debank\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
|
|
93
|
+
export declare const SINGLE_VAULT_COMPOSITION_QUERY = "\n query SingleVaultComposition($address: Address!, $chainId: Int!) {\n vaultByAddress(address: $address, chainId: $chainId) {\n address\n composition {\n ...CompositionFragment\n }\n }\n }\n \n fragment CompositionFragment on CompositionData {\n totalValueInUsd\n compositions {\n protocol\n valueInUsd\n repartition\n logoUrl\n details {\n protocol\n valueInUsd\n repartition\n logoUrl\n }\n }\n tokenCompositions {\n symbol\n name\n contract\n chainKey\n valueInUsd\n repartition\n logoUrl\n details {\n symbol\n name\n contract\n chainKey\n valueInUsd\n repartition\n logoUrl\n }\n }\n }\n\n";
|
|
100
94
|
//# sourceMappingURL=portfolio.queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"portfolio.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAqBlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,2BAA2B,CACzC,cAAc,GAAE,uBAAmC,GAClD,MAAM,CAyBR;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,QAAsC,CAAC;AAE5E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,+BAA+B,+wHAiB3C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,8BAA8B,gyBAU1C,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* GraphQL queries for user portfolio operations.
|
|
5
5
|
* Includes user portfolio data and portfolio optimization queries.
|
|
6
6
|
*/
|
|
7
|
-
import { VAULT_FRAGMENT, VAULT_LIST_FRAGMENT, VAULT_SUMMARY_FRAGMENT } from '../fragments/index.js';
|
|
7
|
+
import { VAULT_FRAGMENT, VAULT_LIST_FRAGMENT, VAULT_SUMMARY_FRAGMENT, COMPOSITION_FRAGMENT, } from '../fragments/index.js';
|
|
8
8
|
/**
|
|
9
9
|
* Get fragment and fragment name based on response format for portfolio queries
|
|
10
10
|
*/
|
|
@@ -28,6 +28,10 @@ function getFragmentForPortfolioResponseFormat(responseFormat) {
|
|
|
28
28
|
*
|
|
29
29
|
* Used by: get_user_portfolio tool
|
|
30
30
|
*
|
|
31
|
+
* Aliases: `state.sharesUsd: usd` — backend deprecated
|
|
32
|
+
* `VaultPositionState.sharesUsd` (schema.gql:2466) in favor of `usd`. The alias
|
|
33
|
+
* keeps the downstream TS field name stable while reading the canonical field.
|
|
34
|
+
*
|
|
31
35
|
* @param responseFormat - Detail level: 'list' (~60 tokens/vault), 'summary' (~170 tokens/vault), 'full' (~600 tokens/vault)
|
|
32
36
|
* @returns GraphQL query string with appropriate fragment
|
|
33
37
|
*
|
|
@@ -66,7 +70,7 @@ export function createGetUserPortfolioQuery(responseFormat = 'summary') {
|
|
|
66
70
|
state {
|
|
67
71
|
assets
|
|
68
72
|
shares
|
|
69
|
-
sharesUsd
|
|
73
|
+
sharesUsd: usd
|
|
70
74
|
}
|
|
71
75
|
}
|
|
72
76
|
}
|
|
@@ -101,35 +105,17 @@ export const GET_USER_PORTFOLIO_QUERY = createGetUserPortfolioQuery('full');
|
|
|
101
105
|
* ```
|
|
102
106
|
*/
|
|
103
107
|
export const SINGLE_VAULT_OPTIMIZATION_QUERY = `
|
|
104
|
-
query SingleVaultOptimization(
|
|
108
|
+
query SingleVaultOptimization(
|
|
109
|
+
$vaultAddress: Address!,
|
|
110
|
+
$chainId: Int!,
|
|
111
|
+
$options: TimeRangeOptions
|
|
112
|
+
) {
|
|
105
113
|
vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {
|
|
106
114
|
...VaultFragment
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
where: {
|
|
112
|
-
vault_in: [$vaultAddress],
|
|
113
|
-
type_in: [TotalAssetsUpdated]
|
|
114
|
-
},
|
|
115
|
-
orderBy: timestamp,
|
|
116
|
-
orderDirection: asc,
|
|
117
|
-
first: 1000
|
|
118
|
-
) {
|
|
119
|
-
items {
|
|
120
|
-
timestamp
|
|
121
|
-
data {
|
|
122
|
-
... on TotalAssetsUpdated {
|
|
123
|
-
totalAssets
|
|
124
|
-
totalAssetsUsd
|
|
125
|
-
totalSupply
|
|
126
|
-
vault {
|
|
127
|
-
decimals
|
|
128
|
-
asset {
|
|
129
|
-
decimals
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
115
|
+
stateHistory {
|
|
116
|
+
pricePerShareUsd(options: $options) {
|
|
117
|
+
x
|
|
118
|
+
y
|
|
133
119
|
}
|
|
134
120
|
}
|
|
135
121
|
}
|
|
@@ -158,67 +144,14 @@ export const SINGLE_VAULT_OPTIMIZATION_QUERY = `
|
|
|
158
144
|
* ```
|
|
159
145
|
*/
|
|
160
146
|
export const SINGLE_VAULT_COMPOSITION_QUERY = `
|
|
161
|
-
query SingleVaultComposition($
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
* GraphQL query for portfolio optimization data (DEPRECATED)
|
|
167
|
-
*
|
|
168
|
-
* This query is deprecated in favor of SINGLE_VAULT_OPTIMIZATION_QUERY
|
|
169
|
-
* executed in parallel for each vault. Multi-vault queries cannot
|
|
170
|
-
* distinguish which transactions belong to which vault.
|
|
171
|
-
*
|
|
172
|
-
* @deprecated Use SINGLE_VAULT_OPTIMIZATION_QUERY with Promise.all instead
|
|
173
|
-
*/
|
|
174
|
-
export const PORTFOLIO_OPTIMIZATION_QUERY = `
|
|
175
|
-
query PortfolioOptimization($vaultAddresses: [String!]!, $chainId: Int!) {
|
|
176
|
-
vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {
|
|
177
|
-
items {
|
|
178
|
-
...VaultFragment
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
# Get price history for volatility calculation
|
|
183
|
-
priceHistory: transactions(
|
|
184
|
-
where: {
|
|
185
|
-
vault_in: $vaultAddresses,
|
|
186
|
-
type_in: ["TotalAssetsUpdated"]
|
|
187
|
-
},
|
|
188
|
-
orderBy: "timestamp",
|
|
189
|
-
orderDirection: "asc",
|
|
190
|
-
first: 1000
|
|
191
|
-
) {
|
|
192
|
-
items {
|
|
193
|
-
timestamp
|
|
194
|
-
data {
|
|
195
|
-
... on TotalAssetsUpdated {
|
|
196
|
-
pricePerShareUsd
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
# Get APR data for return estimation
|
|
203
|
-
performanceData: transactions(
|
|
204
|
-
where: {
|
|
205
|
-
vault_in: $vaultAddresses,
|
|
206
|
-
type_in: ["PeriodSummary"]
|
|
207
|
-
},
|
|
208
|
-
orderBy: "timestamp",
|
|
209
|
-
orderDirection: "asc",
|
|
210
|
-
first: 1000
|
|
211
|
-
) {
|
|
212
|
-
items {
|
|
213
|
-
timestamp
|
|
214
|
-
data {
|
|
215
|
-
... on PeriodSummary {
|
|
216
|
-
linearNetApr
|
|
217
|
-
}
|
|
218
|
-
}
|
|
147
|
+
query SingleVaultComposition($address: Address!, $chainId: Int!) {
|
|
148
|
+
vaultByAddress(address: $address, chainId: $chainId) {
|
|
149
|
+
address
|
|
150
|
+
composition {
|
|
151
|
+
...CompositionFragment
|
|
219
152
|
}
|
|
220
153
|
}
|
|
221
154
|
}
|
|
222
|
-
${
|
|
155
|
+
${COMPOSITION_FRAGMENT}
|
|
223
156
|
`;
|
|
224
157
|
//# sourceMappingURL=portfolio.queries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"portfolio.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAO/B;;GAEG;AACH,SAAS,qCAAqC,CAAC,cAAuC;IAIpF,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,MAAM;YACT,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;QAC9E,KAAK,SAAS;YACZ,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC;QACpF,KAAK,MAAM;YACT,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC;QACrE;YACE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACtF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,UAAU,2BAA2B,CACzC,iBAA0C,SAAS;IAEnD,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,qCAAqC,CAAC,cAAc,CAAC,CAAC;IAEzF,OAAO;;;;;;;;;mBASU,YAAY;;;;;;;;;;;MAWzB,QAAQ;GACX,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;AAE5E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;IAgB3C,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;;;;;;IAS1C,oBAAoB;CACvB,CAAC"}
|
|
@@ -5,13 +5,23 @@
|
|
|
5
5
|
* Includes historical performance data for ML-based yield prediction.
|
|
6
6
|
*/
|
|
7
7
|
/**
|
|
8
|
-
* Response format type for yield prediction
|
|
8
|
+
* Response format type for yield prediction output verbosity.
|
|
9
|
+
*
|
|
10
|
+
* Note: this only affects the formatted output produced by the tool.
|
|
11
|
+
* The GraphQL query itself always uses VAULT_FRAGMENT because the
|
|
12
|
+
* yield calculation requires vault.decimals, asset.decimals,
|
|
13
|
+
* state.pricePerShare, state.highWaterMark, state.managementFee,
|
|
14
|
+
* and state.performanceFee — none of which are present on
|
|
15
|
+
* VaultListFragment.
|
|
9
16
|
*/
|
|
10
17
|
export type PredictionResponseFormat = 'quick' | 'detailed';
|
|
11
18
|
/**
|
|
12
|
-
* Create yield prediction GraphQL query
|
|
19
|
+
* Create yield prediction GraphQL query.
|
|
20
|
+
*
|
|
21
|
+
* The `responseFormat` parameter is accepted for API compatibility but does
|
|
22
|
+
* not change the query — see PredictionResponseFormat doc for why.
|
|
13
23
|
*/
|
|
14
|
-
export declare function createYieldPredictionQuery(
|
|
24
|
+
export declare function createYieldPredictionQuery(_responseFormat?: PredictionResponseFormat): string;
|
|
15
25
|
/**
|
|
16
26
|
* GraphQL query for vault yield prediction data
|
|
17
27
|
*
|
|
@@ -21,18 +31,6 @@ export declare function createYieldPredictionQuery(responseFormat?: PredictionRe
|
|
|
21
31
|
* - TVL history (TotalAssetsUpdated) for growth tracking
|
|
22
32
|
*
|
|
23
33
|
* Used by: predict_yield tool
|
|
24
|
-
*
|
|
25
|
-
* Usage:
|
|
26
|
-
* ```typescript
|
|
27
|
-
* const data = await graphqlClient.request<YieldPredictionResponse>(
|
|
28
|
-
* YIELD_PREDICTION_QUERY,
|
|
29
|
-
* {
|
|
30
|
-
* vaultAddress: '0x...',
|
|
31
|
-
* chainId: 1,
|
|
32
|
-
* timestamp_gte: '1234567890'
|
|
33
|
-
* }
|
|
34
|
-
* );
|
|
35
|
-
* ```
|
|
36
34
|
*/
|
|
37
35
|
export declare const YIELD_PREDICTION_QUERY: string;
|
|
38
36
|
//# sourceMappingURL=prediction.queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prediction.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/prediction.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH
|
|
1
|
+
{"version":3,"file":"prediction.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/prediction.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;GASG;AACH,MAAM,MAAM,wBAAwB,GAAG,OAAO,GAAG,UAAU,CAAC;AAE5D;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,eAAe,GAAE,wBAAkC,GAClD,MAAM,CAuDR;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,QAAyC,CAAC"}
|