@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.
Files changed (189) hide show
  1. package/README.md +72 -54
  2. package/dist/cache/index.d.ts +4 -1
  3. package/dist/cache/index.d.ts.map +1 -1
  4. package/dist/cache/index.js +4 -1
  5. package/dist/cache/index.js.map +1 -1
  6. package/dist/config.d.ts +1 -1
  7. package/dist/config.js +1 -1
  8. package/dist/core/container.js +1 -1
  9. package/dist/graphql/fragments/apr-breakdown.fragment.d.ts +4 -1
  10. package/dist/graphql/fragments/apr-breakdown.fragment.d.ts.map +1 -1
  11. package/dist/graphql/fragments/apr-breakdown.fragment.js +3 -0
  12. package/dist/graphql/fragments/apr-breakdown.fragment.js.map +1 -1
  13. package/dist/graphql/fragments/composition.fragment.d.ts +23 -134
  14. package/dist/graphql/fragments/composition.fragment.d.ts.map +1 -1
  15. package/dist/graphql/fragments/composition.fragment.js +9 -7
  16. package/dist/graphql/fragments/composition.fragment.js.map +1 -1
  17. package/dist/graphql/fragments/index.d.ts +1 -1
  18. package/dist/graphql/fragments/index.d.ts.map +1 -1
  19. package/dist/graphql/fragments/index.js +5 -4
  20. package/dist/graphql/fragments/index.js.map +1 -1
  21. package/dist/graphql/fragments/transaction-base.fragment.d.ts +1 -1
  22. package/dist/graphql/fragments/transaction-base.fragment.d.ts.map +1 -1
  23. package/dist/graphql/fragments/transaction-base.fragment.js +0 -1
  24. package/dist/graphql/fragments/transaction-base.fragment.js.map +1 -1
  25. package/dist/graphql/fragments/vault.fragment.d.ts +29 -1
  26. package/dist/graphql/fragments/vault.fragment.d.ts.map +1 -1
  27. package/dist/graphql/fragments/vault.fragment.js +29 -0
  28. package/dist/graphql/fragments/vault.fragment.js.map +1 -1
  29. package/dist/graphql/queries/composition.queries.d.ts +10 -28
  30. package/dist/graphql/queries/composition.queries.d.ts.map +1 -1
  31. package/dist/graphql/queries/composition.queries.js +17 -28
  32. package/dist/graphql/queries/composition.queries.js.map +1 -1
  33. package/dist/graphql/queries/discovery.queries.d.ts +50 -0
  34. package/dist/graphql/queries/discovery.queries.d.ts.map +1 -0
  35. package/dist/graphql/queries/discovery.queries.js +188 -0
  36. package/dist/graphql/queries/discovery.queries.js.map +1 -0
  37. package/dist/graphql/queries/export.queries.d.ts +5 -7
  38. package/dist/graphql/queries/export.queries.d.ts.map +1 -1
  39. package/dist/graphql/queries/export.queries.js +22 -28
  40. package/dist/graphql/queries/export.queries.js.map +1 -1
  41. package/dist/graphql/queries/index.d.ts +4 -3
  42. package/dist/graphql/queries/index.d.ts.map +1 -1
  43. package/dist/graphql/queries/index.js +5 -3
  44. package/dist/graphql/queries/index.js.map +1 -1
  45. package/dist/graphql/queries/performance.queries.d.ts +6 -4
  46. package/dist/graphql/queries/performance.queries.d.ts.map +1 -1
  47. package/dist/graphql/queries/performance.queries.js +5 -11
  48. package/dist/graphql/queries/performance.queries.js.map +1 -1
  49. package/dist/graphql/queries/portfolio.queries.d.ts +6 -12
  50. package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -1
  51. package/dist/graphql/queries/portfolio.queries.js +21 -88
  52. package/dist/graphql/queries/portfolio.queries.js.map +1 -1
  53. package/dist/graphql/queries/prediction.queries.d.ts +13 -15
  54. package/dist/graphql/queries/prediction.queries.d.ts.map +1 -1
  55. package/dist/graphql/queries/prediction.queries.js +12 -31
  56. package/dist/graphql/queries/prediction.queries.js.map +1 -1
  57. package/dist/graphql/queries/risk.queries.d.ts +3 -3
  58. package/dist/graphql/queries/risk.queries.d.ts.map +1 -1
  59. package/dist/graphql/queries/risk.queries.js +7 -22
  60. package/dist/graphql/queries/risk.queries.js.map +1 -1
  61. package/dist/graphql/queries/search.queries.d.ts.map +1 -1
  62. package/dist/graphql/queries/search.queries.js +6 -2
  63. package/dist/graphql/queries/search.queries.js.map +1 -1
  64. package/dist/graphql/queries/transaction.queries.d.ts +6 -26
  65. package/dist/graphql/queries/transaction.queries.d.ts.map +1 -1
  66. package/dist/graphql/queries/transaction.queries.js +227 -59
  67. package/dist/graphql/queries/transaction.queries.js.map +1 -1
  68. package/dist/graphql/queries/vault.queries.d.ts +21 -3
  69. package/dist/graphql/queries/vault.queries.d.ts.map +1 -1
  70. package/dist/graphql/queries/vault.queries.js +38 -0
  71. package/dist/graphql/queries/vault.queries.js.map +1 -1
  72. package/dist/index.js +0 -0
  73. package/dist/services/analytics/risk.service.d.ts +52 -33
  74. package/dist/services/analytics/risk.service.d.ts.map +1 -1
  75. package/dist/services/analytics/risk.service.js +165 -155
  76. package/dist/services/analytics/risk.service.js.map +1 -1
  77. package/dist/tools/compare-vaults.d.ts.map +1 -1
  78. package/dist/tools/compare-vaults.js +50 -77
  79. package/dist/tools/compare-vaults.js.map +1 -1
  80. package/dist/tools/export-data.d.ts.map +1 -1
  81. package/dist/tools/export-data.js +10 -16
  82. package/dist/tools/export-data.js.map +1 -1
  83. package/dist/tools/get-asset.d.ts +17 -0
  84. package/dist/tools/get-asset.d.ts.map +1 -0
  85. package/dist/tools/get-asset.js +44 -0
  86. package/dist/tools/get-asset.js.map +1 -0
  87. package/dist/tools/get-curator.d.ts +13 -0
  88. package/dist/tools/get-curator.d.ts.map +1 -0
  89. package/dist/tools/get-curator.js +81 -0
  90. package/dist/tools/get-curator.js.map +1 -0
  91. package/dist/tools/get-global-tvl.d.ts +20 -0
  92. package/dist/tools/get-global-tvl.d.ts.map +1 -0
  93. package/dist/tools/get-global-tvl.js +38 -0
  94. package/dist/tools/get-global-tvl.js.map +1 -0
  95. package/dist/tools/get-historical-state.d.ts +22 -0
  96. package/dist/tools/get-historical-state.d.ts.map +1 -0
  97. package/dist/tools/get-historical-state.js +65 -0
  98. package/dist/tools/get-historical-state.js.map +1 -0
  99. package/dist/tools/get-indexing-status.d.ts +20 -0
  100. package/dist/tools/get-indexing-status.d.ts.map +1 -0
  101. package/dist/tools/get-indexing-status.js +38 -0
  102. package/dist/tools/get-indexing-status.js.map +1 -0
  103. package/dist/tools/get-price-history.d.ts.map +1 -1
  104. package/dist/tools/get-price-history.js +55 -63
  105. package/dist/tools/get-price-history.js.map +1 -1
  106. package/dist/tools/get-transactions.d.ts.map +1 -1
  107. package/dist/tools/get-transactions.js +3 -1
  108. package/dist/tools/get-transactions.js.map +1 -1
  109. package/dist/tools/list-chains.d.ts +16 -0
  110. package/dist/tools/list-chains.d.ts.map +1 -0
  111. package/dist/tools/list-chains.js +46 -0
  112. package/dist/tools/list-chains.js.map +1 -0
  113. package/dist/tools/list-curators.d.ts +18 -0
  114. package/dist/tools/list-curators.d.ts.map +1 -0
  115. package/dist/tools/list-curators.js +49 -0
  116. package/dist/tools/list-curators.js.map +1 -0
  117. package/dist/tools/optimize-portfolio.d.ts.map +1 -1
  118. package/dist/tools/optimize-portfolio.js +6 -17
  119. package/dist/tools/optimize-portfolio.js.map +1 -1
  120. package/dist/tools/predict-yield.d.ts.map +1 -1
  121. package/dist/tools/predict-yield.js +109 -11
  122. package/dist/tools/predict-yield.js.map +1 -1
  123. package/dist/tools/registry.d.ts.map +1 -1
  124. package/dist/tools/registry.js +83 -11
  125. package/dist/tools/registry.js.map +1 -1
  126. package/dist/tools/search-vaults.d.ts.map +1 -1
  127. package/dist/tools/search-vaults.js +9 -2
  128. package/dist/tools/search-vaults.js.map +1 -1
  129. package/dist/tools/simulate-vault.d.ts +1 -1
  130. package/dist/tools/user-portfolio.d.ts.map +1 -1
  131. package/dist/tools/user-portfolio.js +30 -51
  132. package/dist/tools/user-portfolio.js.map +1 -1
  133. package/dist/tools/vault-composition.d.ts +18 -15
  134. package/dist/tools/vault-composition.d.ts.map +1 -1
  135. package/dist/tools/vault-composition.js +71 -155
  136. package/dist/tools/vault-composition.js.map +1 -1
  137. package/dist/tools/vault-performance.d.ts.map +1 -1
  138. package/dist/tools/vault-performance.js +7 -19
  139. package/dist/tools/vault-performance.js.map +1 -1
  140. package/dist/types/generated.d.ts +1191 -21
  141. package/dist/types/generated.d.ts.map +1 -1
  142. package/dist/utils/comparison-metrics.d.ts +13 -1
  143. package/dist/utils/comparison-metrics.d.ts.map +1 -1
  144. package/dist/utils/comparison-metrics.js +29 -4
  145. package/dist/utils/comparison-metrics.js.map +1 -1
  146. package/dist/utils/composition-metrics.d.ts +42 -0
  147. package/dist/utils/composition-metrics.d.ts.map +1 -0
  148. package/dist/utils/composition-metrics.js +50 -0
  149. package/dist/utils/composition-metrics.js.map +1 -0
  150. package/dist/utils/csv-generator.d.ts +4 -1
  151. package/dist/utils/csv-generator.d.ts.map +1 -1
  152. package/dist/utils/csv-generator.js +8 -4
  153. package/dist/utils/csv-generator.js.map +1 -1
  154. package/dist/utils/fee-formatting.d.ts +41 -0
  155. package/dist/utils/fee-formatting.d.ts.map +1 -0
  156. package/dist/utils/fee-formatting.js +57 -0
  157. package/dist/utils/fee-formatting.js.map +1 -0
  158. package/dist/utils/operational-signals.d.ts +55 -0
  159. package/dist/utils/operational-signals.d.ts.map +1 -0
  160. package/dist/utils/operational-signals.js +105 -0
  161. package/dist/utils/operational-signals.js.map +1 -0
  162. package/dist/utils/tool-error-handler.d.ts.map +1 -1
  163. package/dist/utils/tool-error-handler.js +8 -6
  164. package/dist/utils/tool-error-handler.js.map +1 -1
  165. package/dist/utils/validators.d.ts +112 -3
  166. package/dist/utils/validators.d.ts.map +1 -1
  167. package/dist/utils/validators.js +108 -4
  168. package/dist/utils/validators.js.map +1 -1
  169. package/dist/utils/yield-prediction.d.ts +3 -0
  170. package/dist/utils/yield-prediction.d.ts.map +1 -1
  171. package/dist/utils/yield-prediction.js +13 -1
  172. package/dist/utils/yield-prediction.js.map +1 -1
  173. package/package.json +2 -2
  174. package/dist/graphql/fragments.d.ts +0 -183
  175. package/dist/graphql/fragments.d.ts.map +0 -1
  176. package/dist/graphql/fragments.js +0 -297
  177. package/dist/graphql/fragments.js.map +0 -1
  178. package/dist/graphql/queries/period-summaries.d.ts +0 -15
  179. package/dist/graphql/queries/period-summaries.d.ts.map +0 -1
  180. package/dist/graphql/queries/period-summaries.js +0 -24
  181. package/dist/graphql/queries/period-summaries.js.map +0 -1
  182. package/dist/services/analytics/protocol-overview.service.d.ts +0 -61
  183. package/dist/services/analytics/protocol-overview.service.d.ts.map +0 -1
  184. package/dist/services/analytics/protocol-overview.service.js +0 -182
  185. package/dist/services/analytics/protocol-overview.service.js.map +0 -1
  186. package/dist/tools/index.d.ts +0 -26
  187. package/dist/tools/index.d.ts.map +0 -1
  188. package/dist/tools/index.js +0 -32
  189. package/dist/tools/index.js.map +0 -1
@@ -4,35 +4,27 @@
4
4
  * GraphQL queries for yield prediction and forecasting.
5
5
  * Includes historical performance data for ML-based yield prediction.
6
6
  */
7
- import { VAULT_FRAGMENT, VAULT_LIST_FRAGMENT } from '../fragments/index.js';
7
+ import { VAULT_FRAGMENT } from '../fragments/index.js';
8
8
  /**
9
- * Get fragment and fragment name based on response format for prediction queries
10
- */
11
- function getFragmentForPredictionResponseFormat(responseFormat) {
12
- switch (responseFormat) {
13
- case 'quick':
14
- return { fragment: VAULT_LIST_FRAGMENT, fragmentName: 'VaultListFragment' };
15
- case 'detailed':
16
- return { fragment: VAULT_FRAGMENT, fragmentName: 'VaultFragment' };
17
- default:
18
- return { fragment: VAULT_LIST_FRAGMENT, fragmentName: 'VaultListFragment' };
19
- }
20
- }
21
- /**
22
- * Create yield prediction GraphQL query with dynamic fragment selection
9
+ * Create yield prediction GraphQL query.
10
+ *
11
+ * The `responseFormat` parameter is accepted for API compatibility but does
12
+ * not change the query — see PredictionResponseFormat doc for why.
23
13
  */
24
- export function createYieldPredictionQuery(responseFormat = 'quick') {
25
- const { fragment, fragmentName } = getFragmentForPredictionResponseFormat(responseFormat);
14
+ export function createYieldPredictionQuery(_responseFormat = 'quick') {
26
15
  return `
27
16
  query YieldPrediction($vaultAddress: Address!, $chainId: Int!) {
28
17
  vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {
29
- ...${fragmentName}
18
+ ...VaultFragment
30
19
  }
31
20
 
32
21
  # Get historical performance data
22
+ # chainId_eq is required: vault addresses are reused across chains; without
23
+ # it the merged time series jumps between chains' state and APR explodes.
33
24
  performanceHistory: transactions(
34
25
  where: {
35
26
  vault_in: [$vaultAddress],
27
+ chainId_eq: $chainId,
36
28
  type_in: [PeriodSummary]
37
29
  },
38
30
  orderBy: timestamp,
@@ -55,6 +47,7 @@ export function createYieldPredictionQuery(responseFormat = 'quick') {
55
47
  tvlHistory: transactions(
56
48
  where: {
57
49
  vault_in: [$vaultAddress],
50
+ chainId_eq: $chainId,
58
51
  type_in: [TotalAssetsUpdated]
59
52
  },
60
53
  orderBy: timestamp,
@@ -71,7 +64,7 @@ export function createYieldPredictionQuery(responseFormat = 'quick') {
71
64
  }
72
65
  }
73
66
  }
74
- ${fragment}
67
+ ${VAULT_FRAGMENT}
75
68
  `;
76
69
  }
77
70
  /**
@@ -83,18 +76,6 @@ export function createYieldPredictionQuery(responseFormat = 'quick') {
83
76
  * - TVL history (TotalAssetsUpdated) for growth tracking
84
77
  *
85
78
  * Used by: predict_yield tool
86
- *
87
- * Usage:
88
- * ```typescript
89
- * const data = await graphqlClient.request<YieldPredictionResponse>(
90
- * YIELD_PREDICTION_QUERY,
91
- * {
92
- * vaultAddress: '0x...',
93
- * chainId: 1,
94
- * timestamp_gte: '1234567890'
95
- * }
96
- * );
97
- * ```
98
79
  */
99
80
  export const YIELD_PREDICTION_QUERY = createYieldPredictionQuery('detailed');
100
81
  //# sourceMappingURL=prediction.queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prediction.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/prediction.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAO5E;;GAEG;AACH,SAAS,sCAAsC,CAAC,cAAwC;IAItF,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;QAC9E,KAAK,UAAU;YACb,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC;QACrE;YACE,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;IAChF,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CACxC,iBAA2C,OAAO;IAElD,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,sCAAsC,CAAC,cAAc,CAAC,CAAC;IAE1F,OAAO;;;aAGI,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA6CnB,QAAQ;GACX,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"prediction.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/prediction.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAcvD;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,kBAA4C,OAAO;IAEnD,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAoDH,cAAc;GACjB,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,UAAU,CAAC,CAAC"}
@@ -33,7 +33,7 @@
33
33
  * );
34
34
  * ```
35
35
  */
36
- export declare const RISK_ANALYSIS_QUERY = "\n query RiskAnalysis(\n $vaultAddress: Address!,\n $chainId: Int!,\n $curatorId: String!,\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!\n ) {\n vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {\n ...VaultFragment\n }\n\n # Get all vaults for concentration risk calculation\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get curator's other vaults for reputation analysis\n curatorVaults: vaults(where: { chainId_eq: $chainId, curatorIds_contains: $curatorId }) {\n items {\n address\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get price history for volatility analysis\n priceHistory: transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: 100\n ) {\n items {\n timestamp\n data {\n ... on TotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n totalSupply\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";
36
+ export declare const RISK_ANALYSIS_QUERY = "\n query RiskAnalysis(\n $vaultAddress: Address!,\n $chainId: Int!,\n $curatorId: String!,\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 # Get all vaults for concentration risk calculation\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get curator's other vaults for reputation analysis\n curatorVaults: vaults(where: { chainId_eq: $chainId, curatorIds_contains: $curatorId }) {\n items {\n address\n state {\n totalAssetsUsd\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";
37
37
  /**
38
38
  * GraphQL query for batch vault risk analysis data
39
39
  *
@@ -58,7 +58,7 @@ export declare const RISK_ANALYSIS_QUERY = "\n query RiskAnalysis(\n $vaultA
58
58
  * );
59
59
  * ```
60
60
  */
61
- export declare const BATCH_RISK_ANALYSIS_QUERY = "\n query BatchRiskAnalysis(\n $vaultAddresses: [String!]!,\n $chainId: Int!\n ) {\n # Get all requested vaults in single query\n vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n\n # Get all vaults on chain for concentration risk calculation (shared context)\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\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";
61
+ export declare const BATCH_RISK_ANALYSIS_QUERY = "\n query BatchRiskAnalysis(\n $vaultAddresses: [String!]!,\n $chainId: Int!\n ) {\n # Get all requested vaults in single query\n vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n\n # Get all vaults on chain for concentration risk calculation (shared context)\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\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";
62
62
  /**
63
63
  * GraphQL query for cross-chain batch risk analysis
64
64
  *
@@ -68,5 +68,5 @@ export declare const BATCH_RISK_ANALYSIS_QUERY = "\n query BatchRiskAnalysis(\n
68
68
  *
69
69
  * Used by: analyze_risks tool when chainIds array is provided
70
70
  */
71
- export declare const CROSS_CHAIN_VAULTS_QUERY = "\n query CrossChainVaults(\n $vaultAddresses: [String!]!,\n $chainId: Int!\n ) {\n vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\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";
71
+ export declare const CROSS_CHAIN_VAULTS_QUERY = "\n query CrossChainVaults(\n $vaultAddresses: [String!]!,\n $chainId: Int!\n ) {\n vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\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";
72
72
  //# sourceMappingURL=risk.queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"risk.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,mBAAmB,+7HAoD/B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,yBAAyB,8wGAsBrC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,0oGAoBpC,CAAC"}
1
+ {"version":3,"file":"risk.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,mBAAmB,6vIAqC/B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,yBAAyB,+7HAsBrC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,2zHAoBpC,CAAC"}
@@ -39,12 +39,16 @@ export const RISK_ANALYSIS_QUERY = `
39
39
  $vaultAddress: Address!,
40
40
  $chainId: Int!,
41
41
  $curatorId: String!,
42
- $where: TransactionFilterInput!,
43
- $orderBy: TransactionOrderBy!,
44
- $orderDirection: OrderDirection!
42
+ $options: TimeRangeOptions
45
43
  ) {
46
44
  vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {
47
45
  ...VaultFragment
46
+ stateHistory {
47
+ pricePerShareUsd(options: $options) {
48
+ x
49
+ y
50
+ }
51
+ }
48
52
  }
49
53
 
50
54
  # Get all vaults for concentration risk calculation
@@ -65,25 +69,6 @@ export const RISK_ANALYSIS_QUERY = `
65
69
  }
66
70
  }
67
71
  }
68
-
69
- # Get price history for volatility analysis
70
- priceHistory: transactions(
71
- where: $where,
72
- orderBy: $orderBy,
73
- orderDirection: $orderDirection,
74
- first: 100
75
- ) {
76
- items {
77
- timestamp
78
- data {
79
- ... on TotalAssetsUpdated {
80
- totalAssets
81
- totalAssetsUsd
82
- totalSupply
83
- }
84
- }
85
- }
86
- }
87
72
  }
88
73
  ${VAULT_FRAGMENT}
89
74
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"risk.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmD/B,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;IAqBrC,cAAc;CACjB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;IAmBpC,cAAc;CACjB,CAAC"}
1
+ {"version":3,"file":"risk.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoC/B,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;IAqBrC,cAAc;CACjB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;IAmBpC,cAAc;CACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"search.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/search.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,GAAE,0BAAmC,GAClD,MAAM,CA6BR;AAqBD;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,QAAkC,CAAC"}
1
+ {"version":3,"file":"search.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/search.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,GAAE,0BAAmC,GAClD,MAAM,CAiCR;AAqBD;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,QAAkC,CAAC"}
@@ -55,14 +55,18 @@ export function createSearchVaultsQuery(responseFormat = 'list') {
55
55
  $skip: Int!,
56
56
  $orderBy: VaultOrderBy!,
57
57
  $orderDirection: OrderDirection!,
58
- $where: VaultFilterInput
58
+ $where: VaultFilterInput,
59
+ $search: String,
60
+ $entityIds: [String!]
59
61
  ) {
60
62
  vaults(
61
63
  first: $first,
62
64
  skip: $skip,
63
65
  orderBy: $orderBy,
64
66
  orderDirection: $orderDirection,
65
- where: $where
67
+ where: $where,
68
+ search: $search,
69
+ entityIds: $entityIds
66
70
  ) {
67
71
  items {
68
72
  ...${fragmentName}
@@ -1 +1 @@
1
- {"version":3,"file":"search.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/search.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAOhF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,uBAAuB,CACrC,iBAA6C,MAAM;IAEnD,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAC;IAEhF,OAAO;;;;;;;;;;;;;;;;eAgBM,YAAY;;;;;;;MAOrB,QAAQ;MACR,yBAAyB;GAC5B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,4BAA4B,CAAC,cAA0C;IAI9E,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,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;IAChF,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"search.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/search.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAOhF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,uBAAuB,CACrC,iBAA6C,MAAM;IAEnD,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAC;IAEhF,OAAO;;;;;;;;;;;;;;;;;;;;eAoBM,YAAY;;;;;;;MAOrB,QAAQ;MACR,yBAAyB;GAC5B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,4BAA4B,CAAC,cAA0C;IAI9E,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,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;IAChF,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC"}
@@ -17,6 +17,11 @@
17
17
  *
18
18
  * Used by: get_transactions tool
19
19
  *
20
+ * Aliases: AccessModeUpdated.newMode and SyncModeUpdated.newMode return
21
+ * different enum types (AccessMode! vs SyncMode!) — they're aliased to
22
+ * `newAccessMode` and `newSyncMode`/`oldSyncMode` so both can appear in the
23
+ * same selection set without a GraphQL field-conflict error.
24
+ *
20
25
  * Usage:
21
26
  * ```typescript
22
27
  * const response = await graphqlClient.request<TransactionsResponse>(
@@ -31,30 +36,5 @@
31
36
  * );
32
37
  * ```
33
38
  */
34
- export declare const TRANSACTIONS_QUERY = "\n query GetTransactions(\n $first: Int!\n $skip: Int!\n $where: TransactionFilterInput\n $orderBy: TransactionOrderBy!\n $orderDirection: OrderDirection\n ) {\n transactions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on SettleDeposit {\n epochId\n settledId\n totalAssets\n totalAssetsUsd\n totalSupply\n assetsDeposited\n assetsDepositedUsd\n sharesMinted\n vault {\n id\n address\n symbol\n }\n }\n ... on SettleRedeem {\n epochId\n settledId\n totalAssets\n totalAssetsUsd\n totalSupply\n assetsWithdrawed\n assetsWithdrawedUsd\n sharesBurned\n vault {\n id\n address\n symbol\n }\n }\n ... on DepositRequest {\n controller\n owner\n requestId\n sender\n assets\n assetsUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on RedeemRequest {\n controller\n owner\n requestId\n sender\n shares\n sharesUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on NewTotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n totalSupply\n vault {\n id\n address\n symbol\n }\n }\n ... on TotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n totalSupply\n vault {\n id\n address\n symbol\n }\n }\n ... on PeriodSummary {\n duration\n netTotalSupplyAtEnd\n totalAssetsAtEnd\n totalAssetsAtStart\n totalSupplyAtEnd\n totalSupplyAtStart\n vault {\n id\n address\n symbol\n }\n }\n ... on DepositSync {\n owner\n sender\n shares\n assets\n assetsUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on DepositRequestCanceled {\n controller\n requestId\n vault {\n id\n address\n symbol\n }\n }\n ... on RatesUpdated {\n newRates {\n performanceRate\n managementRate\n }\n vault {\n id\n address\n symbol\n }\n }\n ... on StateUpdated {\n state\n vault {\n id\n address\n symbol\n }\n }\n }\n }\n pageInfo {\n ...PageInfoFullFragment\n }\n }\n }\n \n fragment TransactionBaseFragment on Transaction {\n id\n type\n timestamp\n blockNumber\n hash\n logIndex\n chain {\n id\n name\n }\n }\n\n \n fragment PageInfoFullFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n count\n limit\n skip\n totalCount\n }\n\n";
35
- /**
36
- * GraphQL query for historical price data
37
- *
38
- * Fetches TotalAssetsUpdated transactions to build price history time-series.
39
- * Provides OHLCV (Open, High, Low, Close, Volume) data for price analysis.
40
- *
41
- * Used by: get_price_history tool
42
- *
43
- * Usage:
44
- * ```typescript
45
- * const data = await graphqlClient.request<PriceHistoryResponse>(
46
- * PRICE_HISTORY_QUERY,
47
- * {
48
- * where: {
49
- * vault_in: ['0x...'],
50
- * type_in: ['TotalAssetsUpdated']
51
- * },
52
- * orderBy: 'timestamp',
53
- * orderDirection: 'asc',
54
- * first: 2000
55
- * }
56
- * );
57
- * ```
58
- */
59
- export declare const PRICE_HISTORY_QUERY = "\n query GetPriceHistory(\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 totalAssets\n totalAssetsUsd\n totalSupply\n vault {\n id\n address\n symbol\n }\n }\n }\n }\n pageInfo {\n ...PageInfoMinimalFragment\n }\n }\n }\n \n fragment TransactionBaseFragment on Transaction {\n id\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";
39
+ export declare const TRANSACTIONS_QUERY = "\n query GetTransactions(\n $first: Int!\n $skip: Int!\n $where: TransactionFilterInput\n $orderBy: TransactionOrderBy!\n $orderDirection: OrderDirection\n ) {\n transactions(\n first: $first\n skip: $skip\n where: $where\n orderBy: $orderBy\n orderDirection: $orderDirection\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on SettleDeposit {\n epochId\n settledId\n totalAssets\n totalAssetsUsd\n totalSupply\n assetsDeposited\n assetsDepositedUsd\n sharesMinted\n vault {\n id\n address\n symbol\n }\n }\n ... on SettleRedeem {\n epochId\n settledId\n totalAssets\n totalAssetsUsd\n totalSupply\n assetsWithdrawed\n assetsWithdrawedUsd\n sharesBurned\n vault {\n id\n address\n symbol\n }\n }\n ... on DepositRequest {\n controller\n owner\n requestId\n sender\n assets\n assetsUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on RedeemRequest {\n controller\n owner\n requestId\n sender\n shares\n sharesUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on NewTotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on TotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on PeriodSummary {\n duration\n netTotalSupplyAtEnd\n totalAssetsAtEnd\n totalAssetsAtStart\n totalSupplyAtEnd\n totalSupplyAtStart\n vault {\n id\n address\n symbol\n }\n }\n ... on DepositSync {\n owner\n sender\n shares\n assets\n assetsUsd\n vault {\n id\n address\n symbol\n }\n }\n ... on DepositRequestCanceled {\n controller\n requestId\n vault {\n id\n address\n symbol\n }\n }\n ... on RatesUpdated {\n newRates {\n performanceRate\n managementRate\n entryRate\n exitRate\n haircutRate\n }\n vault {\n id\n address\n symbol\n }\n }\n ... on StateUpdated {\n state\n vault {\n id\n address\n symbol\n }\n }\n ... on Deposit {\n owner\n sender\n assets\n shares\n vault {\n id\n address\n symbol\n }\n }\n ... on Withdraw {\n owner\n sender\n receiver\n assets\n shares\n vault {\n id\n address\n symbol\n }\n }\n ... on WithdrawSync {\n owner\n sender\n receiver\n assets\n shares\n vault {\n id\n address\n symbol\n }\n }\n ... on RedeemRequestCanceled {\n controller\n requestId\n requestedAmount\n vault {\n id\n address\n symbol\n }\n }\n ... on FeeTaken {\n feeType\n shares\n managerShares\n protocolShares\n rate\n contextId\n vault {\n id\n address\n symbol\n }\n }\n ... on HaircutTaken {\n owner\n shares\n rate\n vault {\n id\n address\n symbol\n }\n }\n ... on PreMint {\n sender\n receiver\n assets\n shares\n vault {\n id\n address\n symbol\n }\n }\n ... on AccessModeUpdated {\n newAccessMode: newMode\n vault {\n id\n address\n symbol\n }\n }\n ... on AsyncOnlyActivated {\n vault {\n id\n address\n symbol\n }\n }\n ... on NameUpdated {\n previousName\n newName\n vault {\n id\n address\n symbol\n }\n }\n ... on SymbolUpdated {\n previousSymbol\n newSymbol\n vault {\n id\n address\n symbol\n }\n }\n ... on MaxCapUpdated {\n previousMaxCap\n maxCap\n vault {\n id\n address\n symbol\n }\n }\n ... on SyncModeUpdated {\n oldSyncMode: oldMode\n newSyncMode: newMode\n vault {\n id\n address\n symbol\n }\n }\n ... on SafeUpdated {\n oldSafe\n newSafe\n vault {\n id\n address\n symbol\n }\n }\n ... on SecurityCouncilUpdated {\n oldSecurityCouncil\n newSecurityCouncil\n vault {\n id\n address\n symbol\n }\n }\n ... on SuperOperatorUpdated {\n oldSuperOperator\n newSuperOperator\n vault {\n id\n address\n symbol\n }\n }\n ... on TotalAssetsExpirationUpdated {\n oldExpiration\n newExpiration\n vault {\n id\n address\n symbol\n }\n }\n ... on ProxyDeployed {\n deployer\n factoryAddress\n proxy\n vault {\n id\n address\n symbol\n }\n }\n ... on BlacklistUpdated {\n account\n blacklisted\n vault {\n id\n address\n symbol\n }\n }\n ... on WhitelistUpdated {\n account\n authorized\n vault {\n id\n address\n symbol\n }\n }\n ... on ExternalSanctionsListUpdated {\n oldExternalSanctionList\n newExternalSanctionList\n vault {\n id\n address\n symbol\n }\n }\n ... on GuardrailsUpdated {\n oldLowerRate\n newLowerRate\n oldUpperRate\n newUpperRate\n vault {\n id\n address\n symbol\n }\n }\n ... on GuardrailsStatusUpdated {\n activated\n vault {\n id\n address\n symbol\n }\n }\n }\n }\n pageInfo {\n ...PageInfoFullFragment\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 PageInfoFullFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n count\n limit\n skip\n totalCount\n }\n\n";
60
40
  //# sourceMappingURL=transaction.queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/transaction.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,kBAAkB,4oHA4J9B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,mBAAmB,k9BAmC/B,CAAC"}
1
+ {"version":3,"file":"transaction.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/transaction.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,kBAAkB,66QA2X9B,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * GraphQL queries for transaction data operations.
5
5
  * Includes transaction history and price history queries.
6
6
  */
7
- import { TRANSACTION_BASE_FRAGMENT, PAGEINFO_FULL_FRAGMENT, PAGEINFO_MINIMAL_FRAGMENT, } from '../fragments/index.js';
7
+ import { TRANSACTION_BASE_FRAGMENT, PAGEINFO_FULL_FRAGMENT } from '../fragments/index.js';
8
8
  /**
9
9
  * GraphQL query for fetching vault transactions with all union type variants
10
10
  *
@@ -18,6 +18,11 @@ import { TRANSACTION_BASE_FRAGMENT, PAGEINFO_FULL_FRAGMENT, PAGEINFO_MINIMAL_FRA
18
18
  *
19
19
  * Used by: get_transactions tool
20
20
  *
21
+ * Aliases: AccessModeUpdated.newMode and SyncModeUpdated.newMode return
22
+ * different enum types (AccessMode! vs SyncMode!) — they're aliased to
23
+ * `newAccessMode` and `newSyncMode`/`oldSyncMode` so both can appear in the
24
+ * same selection set without a GraphQL field-conflict error.
25
+ *
21
26
  * Usage:
22
27
  * ```typescript
23
28
  * const response = await graphqlClient.request<TransactionsResponse>(
@@ -109,7 +114,6 @@ export const TRANSACTIONS_QUERY = `
109
114
  ... on NewTotalAssetsUpdated {
110
115
  totalAssets
111
116
  totalAssetsUsd
112
- totalSupply
113
117
  vault {
114
118
  id
115
119
  address
@@ -119,7 +123,6 @@ export const TRANSACTIONS_QUERY = `
119
123
  ... on TotalAssetsUpdated {
120
124
  totalAssets
121
125
  totalAssetsUsd
122
- totalSupply
123
126
  vault {
124
127
  id
125
128
  address
@@ -164,6 +167,9 @@ export const TRANSACTIONS_QUERY = `
164
167
  newRates {
165
168
  performanceRate
166
169
  managementRate
170
+ entryRate
171
+ exitRate
172
+ haircutRate
167
173
  }
168
174
  vault {
169
175
  id
@@ -179,60 +185,222 @@ export const TRANSACTIONS_QUERY = `
179
185
  symbol
180
186
  }
181
187
  }
182
- }
183
- }
184
- pageInfo {
185
- ...PageInfoFullFragment
186
- }
187
- }
188
- }
189
- ${TRANSACTION_BASE_FRAGMENT}
190
- ${PAGEINFO_FULL_FRAGMENT}
191
- `;
192
- /**
193
- * GraphQL query for historical price data
194
- *
195
- * Fetches TotalAssetsUpdated transactions to build price history time-series.
196
- * Provides OHLCV (Open, High, Low, Close, Volume) data for price analysis.
197
- *
198
- * Used by: get_price_history tool
199
- *
200
- * Usage:
201
- * ```typescript
202
- * const data = await graphqlClient.request<PriceHistoryResponse>(
203
- * PRICE_HISTORY_QUERY,
204
- * {
205
- * where: {
206
- * vault_in: ['0x...'],
207
- * type_in: ['TotalAssetsUpdated']
208
- * },
209
- * orderBy: 'timestamp',
210
- * orderDirection: 'asc',
211
- * first: 2000
212
- * }
213
- * );
214
- * ```
215
- */
216
- export const PRICE_HISTORY_QUERY = `
217
- query GetPriceHistory(
218
- $where: TransactionFilterInput!,
219
- $orderBy: TransactionOrderBy!,
220
- $orderDirection: OrderDirection!,
221
- $first: Int!
222
- ) {
223
- transactions(
224
- where: $where,
225
- orderBy: $orderBy,
226
- orderDirection: $orderDirection,
227
- first: $first
228
- ) {
229
- items {
230
- ...TransactionBaseFragment
231
- data {
232
- ... on TotalAssetsUpdated {
233
- totalAssets
234
- totalAssetsUsd
235
- totalSupply
188
+ ... on Deposit {
189
+ owner
190
+ sender
191
+ assets
192
+ shares
193
+ vault {
194
+ id
195
+ address
196
+ symbol
197
+ }
198
+ }
199
+ ... on Withdraw {
200
+ owner
201
+ sender
202
+ receiver
203
+ assets
204
+ shares
205
+ vault {
206
+ id
207
+ address
208
+ symbol
209
+ }
210
+ }
211
+ ... on WithdrawSync {
212
+ owner
213
+ sender
214
+ receiver
215
+ assets
216
+ shares
217
+ vault {
218
+ id
219
+ address
220
+ symbol
221
+ }
222
+ }
223
+ ... on RedeemRequestCanceled {
224
+ controller
225
+ requestId
226
+ requestedAmount
227
+ vault {
228
+ id
229
+ address
230
+ symbol
231
+ }
232
+ }
233
+ ... on FeeTaken {
234
+ feeType
235
+ shares
236
+ managerShares
237
+ protocolShares
238
+ rate
239
+ contextId
240
+ vault {
241
+ id
242
+ address
243
+ symbol
244
+ }
245
+ }
246
+ ... on HaircutTaken {
247
+ owner
248
+ shares
249
+ rate
250
+ vault {
251
+ id
252
+ address
253
+ symbol
254
+ }
255
+ }
256
+ ... on PreMint {
257
+ sender
258
+ receiver
259
+ assets
260
+ shares
261
+ vault {
262
+ id
263
+ address
264
+ symbol
265
+ }
266
+ }
267
+ ... on AccessModeUpdated {
268
+ newAccessMode: newMode
269
+ vault {
270
+ id
271
+ address
272
+ symbol
273
+ }
274
+ }
275
+ ... on AsyncOnlyActivated {
276
+ vault {
277
+ id
278
+ address
279
+ symbol
280
+ }
281
+ }
282
+ ... on NameUpdated {
283
+ previousName
284
+ newName
285
+ vault {
286
+ id
287
+ address
288
+ symbol
289
+ }
290
+ }
291
+ ... on SymbolUpdated {
292
+ previousSymbol
293
+ newSymbol
294
+ vault {
295
+ id
296
+ address
297
+ symbol
298
+ }
299
+ }
300
+ ... on MaxCapUpdated {
301
+ previousMaxCap
302
+ maxCap
303
+ vault {
304
+ id
305
+ address
306
+ symbol
307
+ }
308
+ }
309
+ ... on SyncModeUpdated {
310
+ oldSyncMode: oldMode
311
+ newSyncMode: newMode
312
+ vault {
313
+ id
314
+ address
315
+ symbol
316
+ }
317
+ }
318
+ ... on SafeUpdated {
319
+ oldSafe
320
+ newSafe
321
+ vault {
322
+ id
323
+ address
324
+ symbol
325
+ }
326
+ }
327
+ ... on SecurityCouncilUpdated {
328
+ oldSecurityCouncil
329
+ newSecurityCouncil
330
+ vault {
331
+ id
332
+ address
333
+ symbol
334
+ }
335
+ }
336
+ ... on SuperOperatorUpdated {
337
+ oldSuperOperator
338
+ newSuperOperator
339
+ vault {
340
+ id
341
+ address
342
+ symbol
343
+ }
344
+ }
345
+ ... on TotalAssetsExpirationUpdated {
346
+ oldExpiration
347
+ newExpiration
348
+ vault {
349
+ id
350
+ address
351
+ symbol
352
+ }
353
+ }
354
+ ... on ProxyDeployed {
355
+ deployer
356
+ factoryAddress
357
+ proxy
358
+ vault {
359
+ id
360
+ address
361
+ symbol
362
+ }
363
+ }
364
+ ... on BlacklistUpdated {
365
+ account
366
+ blacklisted
367
+ vault {
368
+ id
369
+ address
370
+ symbol
371
+ }
372
+ }
373
+ ... on WhitelistUpdated {
374
+ account
375
+ authorized
376
+ vault {
377
+ id
378
+ address
379
+ symbol
380
+ }
381
+ }
382
+ ... on ExternalSanctionsListUpdated {
383
+ oldExternalSanctionList
384
+ newExternalSanctionList
385
+ vault {
386
+ id
387
+ address
388
+ symbol
389
+ }
390
+ }
391
+ ... on GuardrailsUpdated {
392
+ oldLowerRate
393
+ newLowerRate
394
+ oldUpperRate
395
+ newUpperRate
396
+ vault {
397
+ id
398
+ address
399
+ symbol
400
+ }
401
+ }
402
+ ... on GuardrailsStatusUpdated {
403
+ activated
236
404
  vault {
237
405
  id
238
406
  address
@@ -242,11 +410,11 @@ export const PRICE_HISTORY_QUERY = `
242
410
  }
243
411
  }
244
412
  pageInfo {
245
- ...PageInfoMinimalFragment
413
+ ...PageInfoFullFragment
246
414
  }
247
415
  }
248
416
  }
249
417
  ${TRANSACTION_BASE_FRAGMENT}
250
- ${PAGEINFO_MINIMAL_FRAGMENT}
418
+ ${PAGEINFO_FULL_FRAGMENT}
251
419
  `;
252
420
  //# sourceMappingURL=transaction.queries.js.map