@steerprotocol/sdk 1.30.4 → 1.30.5

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 (355) hide show
  1. package/dist/cjs/const/amm/configs/ammConfig.js +33 -34
  2. package/dist/cjs/const/amm/configs/ammConfig.js.map +1 -1
  3. package/dist/cjs/const/amm/configs/protocols/index.js +0 -39
  4. package/dist/cjs/const/amm/configs/protocols/index.js.map +1 -1
  5. package/dist/cjs/const/stabilityVaults/index.js +1 -1
  6. package/dist/cjs/const/stabilityVaults/index.js.map +1 -1
  7. package/dist/esm/base/FeeManagerClient.js +26 -22
  8. package/dist/esm/base/FeeManagerClient.js.map +1 -1
  9. package/dist/esm/base/PoolClient.js +19 -15
  10. package/dist/esm/base/PoolClient.js.map +1 -1
  11. package/dist/esm/base/SmartRewardClient.js +10 -6
  12. package/dist/esm/base/SmartRewardClient.js.map +1 -1
  13. package/dist/esm/base/SmartRewards.js +11 -7
  14. package/dist/esm/base/SmartRewards.js.map +1 -1
  15. package/dist/esm/base/StakingClient.js +18 -14
  16. package/dist/esm/base/StakingClient.js.map +1 -1
  17. package/dist/esm/base/SubgraphClient.js +8 -4
  18. package/dist/esm/base/SubgraphClient.js.map +1 -1
  19. package/dist/esm/base/VaultClient.js +55 -37
  20. package/dist/esm/base/VaultClient.js.map +1 -1
  21. package/dist/esm/base/vault/deposit/index.js +42 -38
  22. package/dist/esm/base/vault/deposit/index.js.map +1 -1
  23. package/dist/esm/base/vault/deposit/types.js +2 -1
  24. package/dist/esm/base/vault/single-asset/calculateLimitPrice.js +39 -32
  25. package/dist/esm/base/vault/single-asset/calculateLimitPrice.js.map +1 -1
  26. package/dist/esm/base/vault/single-asset/calculateSwapAmount.js +8 -5
  27. package/dist/esm/base/vault/single-asset/calculateSwapAmount.js.map +1 -1
  28. package/dist/esm/base/vault/single-asset/estimateLpTokens.js +12 -7
  29. package/dist/esm/base/vault/single-asset/estimateLpTokens.js.map +1 -1
  30. package/dist/esm/base/vault/single-asset/index.js +32 -6
  31. package/dist/esm/base/vault/single-asset/index.js.map +1 -1
  32. package/dist/esm/base/vault/single-asset/simulateSwap.js +30 -24
  33. package/dist/esm/base/vault/single-asset/simulateSwap.js.map +1 -1
  34. package/dist/esm/base/vault/single-asset/singleAssetDeposit.js +33 -29
  35. package/dist/esm/base/vault/single-asset/singleAssetDeposit.js.map +1 -1
  36. package/dist/esm/base/vault/single-asset/types.js +5 -2
  37. package/dist/esm/base/vault/single-asset/types.js.map +1 -1
  38. package/dist/esm/base/vault/utils.js +16 -7
  39. package/dist/esm/base/vault/utils.js.map +1 -1
  40. package/dist/esm/base/vault/withdraw/index.js +10 -6
  41. package/dist/esm/base/vault/withdraw/index.js.map +1 -1
  42. package/dist/esm/base/vault/withdraw/types.js +2 -1
  43. package/dist/esm/client.js +15 -11
  44. package/dist/esm/client.js.map +1 -1
  45. package/dist/esm/const/abis/UniswapPool.js +4 -1
  46. package/dist/esm/const/abis/UniswapPool.js.map +1 -1
  47. package/dist/esm/const/abis/erc1155.js +4 -1
  48. package/dist/esm/const/abis/erc1155.js.map +1 -1
  49. package/dist/esm/const/abis/erc20.js +4 -1
  50. package/dist/esm/const/abis/erc20.js.map +1 -1
  51. package/dist/esm/const/abis/erc721.js +4 -1
  52. package/dist/esm/const/abis/erc721.js.map +1 -1
  53. package/dist/esm/const/abis/feeManager.js +4 -1
  54. package/dist/esm/const/abis/feeManager.js.map +1 -1
  55. package/dist/esm/const/abis/index.js +24 -8
  56. package/dist/esm/const/abis/index.js.map +1 -1
  57. package/dist/esm/const/abis/quoter.js +9 -6
  58. package/dist/esm/const/abis/quoter.js.map +1 -1
  59. package/dist/esm/const/abis/singleTokenDeposit.js +4 -1
  60. package/dist/esm/const/abis/singleTokenDeposit.js.map +1 -1
  61. package/dist/esm/const/abis/vaultFees.js +4 -1
  62. package/dist/esm/const/abis/vaultFees.js.map +1 -1
  63. package/dist/esm/const/amm/configs/ammConfig.js +98 -95
  64. package/dist/esm/const/amm/configs/ammConfig.js.map +1 -1
  65. package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js +12 -8
  66. package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js.map +1 -1
  67. package/dist/esm/const/amm/configs/protocols/aerodrome.js +12 -8
  68. package/dist/esm/const/amm/configs/protocols/aerodrome.js.map +1 -1
  69. package/dist/esm/const/amm/configs/protocols/arthswap.js +14 -10
  70. package/dist/esm/const/amm/configs/protocols/arthswap.js.map +1 -1
  71. package/dist/esm/const/amm/configs/protocols/baseswap.js +11 -7
  72. package/dist/esm/const/amm/configs/protocols/baseswap.js.map +1 -1
  73. package/dist/esm/const/amm/configs/protocols/basex.js +12 -8
  74. package/dist/esm/const/amm/configs/protocols/basex.js.map +1 -1
  75. package/dist/esm/const/amm/configs/protocols/beam.js +11 -7
  76. package/dist/esm/const/amm/configs/protocols/beam.js.map +1 -1
  77. package/dist/esm/const/amm/configs/protocols/beamswap.js +11 -7
  78. package/dist/esm/const/amm/configs/protocols/beamswap.js.map +1 -1
  79. package/dist/esm/const/amm/configs/protocols/blackhole.js +12 -8
  80. package/dist/esm/const/amm/configs/protocols/blackhole.js.map +1 -1
  81. package/dist/esm/const/amm/configs/protocols/camelot.js +17 -13
  82. package/dist/esm/const/amm/configs/protocols/camelot.js.map +1 -1
  83. package/dist/esm/const/amm/configs/protocols/crust.js +11 -7
  84. package/dist/esm/const/amm/configs/protocols/crust.js.map +1 -1
  85. package/dist/esm/const/amm/configs/protocols/cypher.js +13 -9
  86. package/dist/esm/const/amm/configs/protocols/cypher.js.map +1 -1
  87. package/dist/esm/const/amm/configs/protocols/dodo.js +11 -7
  88. package/dist/esm/const/amm/configs/protocols/dodo.js.map +1 -1
  89. package/dist/esm/const/amm/configs/protocols/dragonswap.js +11 -7
  90. package/dist/esm/const/amm/configs/protocols/dragonswap.js.map +1 -1
  91. package/dist/esm/const/amm/configs/protocols/eddy.js +11 -7
  92. package/dist/esm/const/amm/configs/protocols/eddy.js.map +1 -1
  93. package/dist/esm/const/amm/configs/protocols/equilibre.js +11 -7
  94. package/dist/esm/const/amm/configs/protocols/equilibre.js.map +1 -1
  95. package/dist/esm/const/amm/configs/protocols/fenix.js +11 -7
  96. package/dist/esm/const/amm/configs/protocols/fenix.js.map +1 -1
  97. package/dist/esm/const/amm/configs/protocols/forge.js +13 -9
  98. package/dist/esm/const/amm/configs/protocols/forge.js.map +1 -1
  99. package/dist/esm/const/amm/configs/protocols/fusionx.js +12 -8
  100. package/dist/esm/const/amm/configs/protocols/fusionx.js.map +1 -1
  101. package/dist/esm/const/amm/configs/protocols/glyph.js +13 -9
  102. package/dist/esm/const/amm/configs/protocols/glyph.js.map +1 -1
  103. package/dist/esm/const/amm/configs/protocols/henjin.js +11 -7
  104. package/dist/esm/const/amm/configs/protocols/henjin.js.map +1 -1
  105. package/dist/esm/const/amm/configs/protocols/hercules.js +11 -7
  106. package/dist/esm/const/amm/configs/protocols/hercules.js.map +1 -1
  107. package/dist/esm/const/amm/configs/protocols/horiza.js +13 -9
  108. package/dist/esm/const/amm/configs/protocols/horiza.js.map +1 -1
  109. package/dist/esm/const/amm/configs/protocols/index.js +56 -79
  110. package/dist/esm/const/amm/configs/protocols/index.js.map +1 -1
  111. package/dist/esm/const/amm/configs/protocols/katana.js +10 -6
  112. package/dist/esm/const/amm/configs/protocols/katana.js.map +1 -1
  113. package/dist/esm/const/amm/configs/protocols/katanaIntegral.js +10 -6
  114. package/dist/esm/const/amm/configs/protocols/katanaIntegral.js.map +1 -1
  115. package/dist/esm/const/amm/configs/protocols/kim.js +15 -11
  116. package/dist/esm/const/amm/configs/protocols/kim.js.map +1 -1
  117. package/dist/esm/const/amm/configs/protocols/kinetix.js +14 -10
  118. package/dist/esm/const/amm/configs/protocols/kinetix.js.map +1 -1
  119. package/dist/esm/const/amm/configs/protocols/kodiak.js +14 -10
  120. package/dist/esm/const/amm/configs/protocols/kodiak.js.map +1 -1
  121. package/dist/esm/const/amm/configs/protocols/kyo.js +12 -8
  122. package/dist/esm/const/amm/configs/protocols/kyo.js.map +1 -1
  123. package/dist/esm/const/amm/configs/protocols/linehub.js +11 -7
  124. package/dist/esm/const/amm/configs/protocols/linehub.js.map +1 -1
  125. package/dist/esm/const/amm/configs/protocols/lynex.js +13 -9
  126. package/dist/esm/const/amm/configs/protocols/lynex.js.map +1 -1
  127. package/dist/esm/const/amm/configs/protocols/machinex.js +13 -9
  128. package/dist/esm/const/amm/configs/protocols/machinex.js.map +1 -1
  129. package/dist/esm/const/amm/configs/protocols/maia.js +13 -9
  130. package/dist/esm/const/amm/configs/protocols/maia.js.map +1 -1
  131. package/dist/esm/const/amm/configs/protocols/metavault.js +16 -12
  132. package/dist/esm/const/amm/configs/protocols/metavault.js.map +1 -1
  133. package/dist/esm/const/amm/configs/protocols/nest.js +12 -8
  134. package/dist/esm/const/amm/configs/protocols/nest.js.map +1 -1
  135. package/dist/esm/const/amm/configs/protocols/novaswap.js +11 -7
  136. package/dist/esm/const/amm/configs/protocols/novaswap.js.map +1 -1
  137. package/dist/esm/const/amm/configs/protocols/ocelex.js +11 -7
  138. package/dist/esm/const/amm/configs/protocols/ocelex.js.map +1 -1
  139. package/dist/esm/const/amm/configs/protocols/pancakeswap.js +17 -13
  140. package/dist/esm/const/amm/configs/protocols/pancakeswap.js.map +1 -1
  141. package/dist/esm/const/amm/configs/protocols/poolshark.js +11 -7
  142. package/dist/esm/const/amm/configs/protocols/poolshark.js.map +1 -1
  143. package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js +12 -8
  144. package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js.map +1 -1
  145. package/dist/esm/const/amm/configs/protocols/quickswap-integral.js +17 -13
  146. package/dist/esm/const/amm/configs/protocols/quickswap-integral.js.map +1 -1
  147. package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js +20 -16
  148. package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js.map +1 -1
  149. package/dist/esm/const/amm/configs/protocols/quickswap.js +18 -14
  150. package/dist/esm/const/amm/configs/protocols/quickswap.js.map +1 -1
  151. package/dist/esm/const/amm/configs/protocols/retro.js +13 -9
  152. package/dist/esm/const/amm/configs/protocols/retro.js.map +1 -1
  153. package/dist/esm/const/amm/configs/protocols/sailor.js +11 -7
  154. package/dist/esm/const/amm/configs/protocols/sailor.js.map +1 -1
  155. package/dist/esm/const/amm/configs/protocols/shadow.js +13 -9
  156. package/dist/esm/const/amm/configs/protocols/shadow.js.map +1 -1
  157. package/dist/esm/const/amm/configs/protocols/silverswap.js +15 -11
  158. package/dist/esm/const/amm/configs/protocols/silverswap.js.map +1 -1
  159. package/dist/esm/const/amm/configs/protocols/spark-integral.js +12 -8
  160. package/dist/esm/const/amm/configs/protocols/spark-integral.js.map +1 -1
  161. package/dist/esm/const/amm/configs/protocols/spark.js +11 -7
  162. package/dist/esm/const/amm/configs/protocols/spark.js.map +1 -1
  163. package/dist/esm/const/amm/configs/protocols/spark32.js +11 -7
  164. package/dist/esm/const/amm/configs/protocols/spark32.js.map +1 -1
  165. package/dist/esm/const/amm/configs/protocols/spookyswap.js +11 -7
  166. package/dist/esm/const/amm/configs/protocols/spookyswap.js.map +1 -1
  167. package/dist/esm/const/amm/configs/protocols/stellaswap.js +13 -9
  168. package/dist/esm/const/amm/configs/protocols/stellaswap.js.map +1 -1
  169. package/dist/esm/const/amm/configs/protocols/supswap.js +11 -7
  170. package/dist/esm/const/amm/configs/protocols/supswap.js.map +1 -1
  171. package/dist/esm/const/amm/configs/protocols/sushi.js +73 -69
  172. package/dist/esm/const/amm/configs/protocols/sushi.js.map +1 -1
  173. package/dist/esm/const/amm/configs/protocols/swapmode.js +11 -7
  174. package/dist/esm/const/amm/configs/protocols/swapmode.js.map +1 -1
  175. package/dist/esm/const/amm/configs/protocols/swapsicle.js +11 -7
  176. package/dist/esm/const/amm/configs/protocols/swapsicle.js.map +1 -1
  177. package/dist/esm/const/amm/configs/protocols/thena.js +13 -9
  178. package/dist/esm/const/amm/configs/protocols/thena.js.map +1 -1
  179. package/dist/esm/const/amm/configs/protocols/thick.js +12 -8
  180. package/dist/esm/const/amm/configs/protocols/thick.js.map +1 -1
  181. package/dist/esm/const/amm/configs/protocols/thickv2.js +12 -8
  182. package/dist/esm/const/amm/configs/protocols/thickv2.js.map +1 -1
  183. package/dist/esm/const/amm/configs/protocols/thruster.js +12 -8
  184. package/dist/esm/const/amm/configs/protocols/thruster.js.map +1 -1
  185. package/dist/esm/const/amm/configs/protocols/uniswap.js +83 -79
  186. package/dist/esm/const/amm/configs/protocols/uniswap.js.map +1 -1
  187. package/dist/esm/const/amm/configs/protocols/wasabee.js +11 -7
  188. package/dist/esm/const/amm/configs/protocols/wasabee.js.map +1 -1
  189. package/dist/esm/const/amm/index.js +19 -3
  190. package/dist/esm/const/amm/index.js.map +1 -1
  191. package/dist/esm/const/amm/utils/beacon.js +76 -70
  192. package/dist/esm/const/amm/utils/beacon.js.map +1 -1
  193. package/dist/esm/const/amm/utils/contracts.js +26 -16
  194. package/dist/esm/const/amm/utils/contracts.js.map +1 -1
  195. package/dist/esm/const/amm/utils/index.js +46 -22
  196. package/dist/esm/const/amm/utils/index.js.map +1 -1
  197. package/dist/esm/const/amm/utils/protocol.js +24 -16
  198. package/dist/esm/const/amm/utils/protocol.js.map +1 -1
  199. package/dist/esm/const/api.js +7 -3
  200. package/dist/esm/const/api.js.map +1 -1
  201. package/dist/esm/const/capabilities.js +20 -15
  202. package/dist/esm/const/capabilities.js.map +1 -1
  203. package/dist/esm/const/chain.js +12 -9
  204. package/dist/esm/const/chain.js.map +1 -1
  205. package/dist/esm/const/deployments/abis.js +4 -1
  206. package/dist/esm/const/deployments/abis.js.map +1 -1
  207. package/dist/esm/const/deployments/apechain.js +4 -1
  208. package/dist/esm/const/deployments/apechain.js.map +1 -1
  209. package/dist/esm/const/deployments/arbitrum.js +4 -1
  210. package/dist/esm/const/deployments/arbitrum.js.map +1 -1
  211. package/dist/esm/const/deployments/arbitrumgoerli.js +4 -1
  212. package/dist/esm/const/deployments/arbitrumgoerli.js.map +1 -1
  213. package/dist/esm/const/deployments/astar.js +4 -1
  214. package/dist/esm/const/deployments/astar.js.map +1 -1
  215. package/dist/esm/const/deployments/astarzkevm.js +4 -1
  216. package/dist/esm/const/deployments/astarzkevm.js.map +1 -1
  217. package/dist/esm/const/deployments/avalanche.js +4 -1
  218. package/dist/esm/const/deployments/avalanche.js.map +1 -1
  219. package/dist/esm/const/deployments/bartiotest.js +4 -1
  220. package/dist/esm/const/deployments/bartiotest.js.map +1 -1
  221. package/dist/esm/const/deployments/base.js +4 -1
  222. package/dist/esm/const/deployments/base.js.map +1 -1
  223. package/dist/esm/const/deployments/bera.js +4 -1
  224. package/dist/esm/const/deployments/bera.js.map +1 -1
  225. package/dist/esm/const/deployments/berachainbartio.js +4 -1
  226. package/dist/esm/const/deployments/berachainbartio.js.map +1 -1
  227. package/dist/esm/const/deployments/blast.js +4 -1
  228. package/dist/esm/const/deployments/blast.js.map +1 -1
  229. package/dist/esm/const/deployments/bsc.js +4 -1
  230. package/dist/esm/const/deployments/bsc.js.map +1 -1
  231. package/dist/esm/const/deployments/celo.js +4 -1
  232. package/dist/esm/const/deployments/celo.js.map +1 -1
  233. package/dist/esm/const/deployments/core.js +4 -1
  234. package/dist/esm/const/deployments/core.js.map +1 -1
  235. package/dist/esm/const/deployments/eth.js +4 -1
  236. package/dist/esm/const/deployments/eth.js.map +1 -1
  237. package/dist/esm/const/deployments/evmos.js +4 -1
  238. package/dist/esm/const/deployments/evmos.js.map +1 -1
  239. package/dist/esm/const/deployments/fantom.js +4 -1
  240. package/dist/esm/const/deployments/fantom.js.map +1 -1
  241. package/dist/esm/const/deployments/filecoin.js +4 -1
  242. package/dist/esm/const/deployments/filecoin.js.map +1 -1
  243. package/dist/esm/const/deployments/flare.js +4 -1
  244. package/dist/esm/const/deployments/flare.js.map +1 -1
  245. package/dist/esm/const/deployments/goerli.js +4 -1
  246. package/dist/esm/const/deployments/goerli.js.map +1 -1
  247. package/dist/esm/const/deployments/hemi.js +4 -1
  248. package/dist/esm/const/deployments/hemi.js.map +1 -1
  249. package/dist/esm/const/deployments/hyperevm.js +4 -1
  250. package/dist/esm/const/deployments/hyperevm.js.map +1 -1
  251. package/dist/esm/const/deployments/index.js +99 -48
  252. package/dist/esm/const/deployments/index.js.map +1 -1
  253. package/dist/esm/const/deployments/katana.js +4 -1
  254. package/dist/esm/const/deployments/katana.js.map +1 -1
  255. package/dist/esm/const/deployments/kava.js +4 -1
  256. package/dist/esm/const/deployments/kava.js.map +1 -1
  257. package/dist/esm/const/deployments/linea.js +4 -1
  258. package/dist/esm/const/deployments/linea.js.map +1 -1
  259. package/dist/esm/const/deployments/localhost.js +4 -1
  260. package/dist/esm/const/deployments/localhost.js.map +1 -1
  261. package/dist/esm/const/deployments/manta.js +4 -1
  262. package/dist/esm/const/deployments/manta.js.map +1 -1
  263. package/dist/esm/const/deployments/mantle.js +4 -1
  264. package/dist/esm/const/deployments/mantle.js.map +1 -1
  265. package/dist/esm/const/deployments/metis.js +4 -1
  266. package/dist/esm/const/deployments/metis.js.map +1 -1
  267. package/dist/esm/const/deployments/mode.js +4 -1
  268. package/dist/esm/const/deployments/mode.js.map +1 -1
  269. package/dist/esm/const/deployments/moonbeam.js +4 -1
  270. package/dist/esm/const/deployments/moonbeam.js.map +1 -1
  271. package/dist/esm/const/deployments/mumbai.js +4 -1
  272. package/dist/esm/const/deployments/mumbai.js.map +1 -1
  273. package/dist/esm/const/deployments/nibiru.js +4 -1
  274. package/dist/esm/const/deployments/nibiru.js.map +1 -1
  275. package/dist/esm/const/deployments/okxtestnet.js +4 -1
  276. package/dist/esm/const/deployments/okxtestnet.js.map +1 -1
  277. package/dist/esm/const/deployments/optimism.js +4 -1
  278. package/dist/esm/const/deployments/optimism.js.map +1 -1
  279. package/dist/esm/const/deployments/optimismgoerli.js +4 -1
  280. package/dist/esm/const/deployments/optimismgoerli.js.map +1 -1
  281. package/dist/esm/const/deployments/peaq.js +4 -1
  282. package/dist/esm/const/deployments/peaq.js.map +1 -1
  283. package/dist/esm/const/deployments/polygon.js +4 -1
  284. package/dist/esm/const/deployments/polygon.js.map +1 -1
  285. package/dist/esm/const/deployments/polyzkevm.js +4 -1
  286. package/dist/esm/const/deployments/polyzkevm.js.map +1 -1
  287. package/dist/esm/const/deployments/pyzkevm.js +4 -1
  288. package/dist/esm/const/deployments/pyzkevm.js.map +1 -1
  289. package/dist/esm/const/deployments/ronin.js +4 -1
  290. package/dist/esm/const/deployments/ronin.js.map +1 -1
  291. package/dist/esm/const/deployments/rootstock.js +4 -1
  292. package/dist/esm/const/deployments/rootstock.js.map +1 -1
  293. package/dist/esm/const/deployments/saga.js +4 -1
  294. package/dist/esm/const/deployments/saga.js.map +1 -1
  295. package/dist/esm/const/deployments/scroll.js +4 -1
  296. package/dist/esm/const/deployments/scroll.js.map +1 -1
  297. package/dist/esm/const/deployments/sei.js +4 -1
  298. package/dist/esm/const/deployments/sei.js.map +1 -1
  299. package/dist/esm/const/deployments/soneium.js +4 -1
  300. package/dist/esm/const/deployments/soneium.js.map +1 -1
  301. package/dist/esm/const/deployments/sonic.js +4 -1
  302. package/dist/esm/const/deployments/sonic.js.map +1 -1
  303. package/dist/esm/const/deployments/taiko.js +4 -1
  304. package/dist/esm/const/deployments/taiko.js.map +1 -1
  305. package/dist/esm/const/deployments/tataratestnet.js +4 -1
  306. package/dist/esm/const/deployments/tataratestnet.js.map +1 -1
  307. package/dist/esm/const/deployments/telos.js +4 -1
  308. package/dist/esm/const/deployments/telos.js.map +1 -1
  309. package/dist/esm/const/deployments/thundercore.js +4 -1
  310. package/dist/esm/const/deployments/thundercore.js.map +1 -1
  311. package/dist/esm/const/deployments/uni.js +4 -1
  312. package/dist/esm/const/deployments/uni.js.map +1 -1
  313. package/dist/esm/const/deployments/xlayer.js +4 -1
  314. package/dist/esm/const/deployments/xlayer.js.map +1 -1
  315. package/dist/esm/const/deployments/zeta.js +4 -1
  316. package/dist/esm/const/deployments/zeta.js.map +1 -1
  317. package/dist/esm/const/deployments/zircuit.js +4 -1
  318. package/dist/esm/const/deployments/zircuit.js.map +1 -1
  319. package/dist/esm/const/deployments/zklinknova.js +4 -1
  320. package/dist/esm/const/deployments/zklinknova.js.map +1 -1
  321. package/dist/esm/const/index.js +28 -12
  322. package/dist/esm/const/index.js.map +1 -1
  323. package/dist/esm/const/network.js +232 -223
  324. package/dist/esm/const/network.js.map +1 -1
  325. package/dist/esm/const/protocol.js +97 -83
  326. package/dist/esm/const/protocol.js.map +1 -1
  327. package/dist/esm/const/quoter.js +53 -42
  328. package/dist/esm/const/quoter.js.map +1 -1
  329. package/dist/esm/const/stabilityVaults/index.js +17 -1
  330. package/dist/esm/const/stabilityVaults/index.js.map +1 -1
  331. package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js +15 -10
  332. package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js.map +1 -1
  333. package/dist/esm/const/subgraph.js +60 -56
  334. package/dist/esm/const/subgraph.js.map +1 -1
  335. package/dist/esm/const/thegraph.js +5 -1
  336. package/dist/esm/const/thegraph.js.map +1 -1
  337. package/dist/esm/index.js +31 -12
  338. package/dist/esm/index.js.map +1 -1
  339. package/dist/esm/scripts/processDeployments.js +15 -10
  340. package/dist/esm/scripts/processDeployments.js.map +1 -1
  341. package/dist/esm/types.js +2 -1
  342. package/dist/esm/utils/PoolQueryAdapter.js +44 -38
  343. package/dist/esm/utils/PoolQueryAdapter.js.map +1 -1
  344. package/dist/esm/utils/SubgraphVaultClient.js +10 -6
  345. package/dist/esm/utils/SubgraphVaultClient.js.map +1 -1
  346. package/dist/esm/utils/subgraph-types.js +2 -1
  347. package/dist/types/const/amm/configs/ammConfig.d.ts.map +1 -1
  348. package/dist/types/const/amm/configs/protocols/index.d.ts +0 -39
  349. package/dist/types/const/amm/configs/protocols/index.d.ts.map +1 -1
  350. package/dist/types/const/stabilityVaults/index.d.ts +1 -1
  351. package/dist/types/const/stabilityVaults/index.d.ts.map +1 -1
  352. package/package.json +1 -1
  353. package/src/const/amm/configs/ammConfig.ts +2 -3
  354. package/src/const/amm/configs/protocols/index.ts +1 -40
  355. package/src/const/stabilityVaults/index.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../src/const/subgraph.ts"],"names":[],"mappings":"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","sourcesContent":["import { SteerSupportedChains } from \"../types.js\";\nimport { Chain, ChainId } from \"./chain.js\";\n\n\n\n/**\n * Interface representing network-specific data and configuration\n */\nexport interface NetworkData {\n /** Chain ID of the network */\n chainId: number;\n /** Symbol of the wrapped native token */\n wrappedNativeToken: string;\n /** Address of the network's native token wrapper contract */\n address: string;\n /** Optional network name */\n name?: string;\n}\n\n\n/**\n * URL for accessing deprecated bundle information\n */\nexport const deprecatedBundlesURL = \"https://api.steer.finance/deprecated-bundles\"\n\n \n/**\n * Configuration mapping of supported chains to their respective subgraph endpoints.\n * Each chain has a dedicated subgraph URL for querying protocol data.\n * Updated each chains for ormi and thegraph\n*/\nexport const steerSubgraphConfig: {\n [protocol in SteerSupportedChains]: string\n} = {\n [Chain.Polygon]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-polygon/prod/gn\",\n [Chain.BSC]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GLDP56fPGDz3MtmhtfTkz5CxWiqiNLACVrsJ9RqQeL4U\",\n [Chain.Optimism]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GgW1EwNARL3dyo3acQ3VhraQQ66MHT7QnYuGcQc5geDG\",\n [Chain.Arbitrum]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-arbitrum/prod/gn\",\n [Chain.Evmos]:\n \"https://subgraph.satsuma-prod.com/769a117cc018/steer/steer-protocol-evmos/api\",\n [Chain.Thundercore]:\n \"https://subgraph.steer.finance/thundercore/subgraphs/name/steerprotocol/steer-thundercore\",\n [Chain.Metis]:\n \"https://api.metis.0xgraph.xyz/api/public/b88b5696-b69d-46be-b212-5c55a9b1492f/subgraphs/steer-protocol-metis/prod/gn\",\n [Chain.Base]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-base/prod/gn\",\n [Chain.Avalanche]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GZotTj3rQJ8ZqVyodtK8TcnKcUxMgeF7mCJHGPYbu8dA\",\n [Chain.PolygonzkEVM]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-polygon-zkevm/prod/gn\",\n [Chain.Celo]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/BPaFHyfVrhv3pdjGodpQcWggAg1Bcrvc9SFc2t2BXeho\",\n [Chain.Kava]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-kava/prod/gn\",\n [Chain.Linea]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-linea/prod/gn\",\n [Chain.Scroll]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/822PfgbgBzC98Huwf37uxvF9YGZMA5nDeETpstkR55Sn\",\n [Chain.Manta]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-manta/prod/gn\",\n [Chain.Astar]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar/prod/gn\",\n [Chain.Fantom]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/9uyX2WDuaxmcYh11ehUhU68M9uSCp5FXVQV2w4LqbpbV\",\n [Chain.OkxTestnet]:\n \"https://subgraph.steer.finance/steer-x1-testnet/subgraphs/name/steerprotocol/steer-okxtestnet\",\n [Chain.Mantle]:\n \"https://subgraph-api.mantle.xyz/subgraphs/name/steerprotocol/steer-protocol-mantle\",\n [Chain.AstarZkevm]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar-zkevm/1.1.1/gn\",\n [Chain.Blast]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-blast/prod/gn\",\n [Chain.Mode]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mode/prod/gn\",\n [Chain.Telos]:\n \"https://telos.api.ormilabs.com/api/public/39892398-bfdd-48ac-b776-77ad8a5b4b9e/subgraphs/steer-protocol-telos/prod/gn\",\n [Chain.XLayer]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3\",\n [Chain.Taiko]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-taiko/prod/gn\",\n [Chain.Rootstock]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/H3pANqbMVTiFCUXHjXYr2mHbXvn5my5o66Gxbwcg7Aqm\",\n [Chain.ZklinkNova]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zklink-nova/1.0.1/gn\",\n [Chain.Flare]:\n \"https://api.goldsky.com/api/public/project_cm2k9xbkz4qg901vs51bm5uau/subgraphs/steer-protocol-flare/prod/gn\",\n [Chain.BeraChainBartio]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-berachain-bartio/prod/gn',\n [Chain.Filecoin]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-filecoin/prod/gn',\n [Chain.Apechain]:\n 'https://apeapi.0xgraph.xyz/api/public/4ea21b03-9850-4796-8068-ec71bbe022db/subgraphs/steer-protocol-apechain/prod/gn',\n [Chain.Zircuit]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zircuit/prod/gn',\n [Chain.Moonbeam]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/4D2pLLQuGsAkdZAUgqxxnk4Mcu3aMjEV1HJ2F63kC7w6',\n [Chain.Sei]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-sei/prod/gn',\n [Chain.Sonic]:\n 'https://api.0xgraph.xyz/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-sonic/prod/gn',\n [Chain.Zeta]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/HFH41DyzAXxYmT5eszVWn2T7UxViMroPJ4XJV8vhDGNN',\n [Chain.Mainnet]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mainnet/prod/gn',\n [Chain.Soneium]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3',\n [Chain.Bera]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-bera/prod/gn',\n [Chain.Unichain]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/EoLK36f26Dr7maXyNKxJmEBJkoYVCMh1d4ENtT5hJgyB',\n [Chain.Hemi]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/2eACJtEGuELqN5roUiHG1jqmCpXt5aimcc8xZdvtMv4z',\n [Chain.TataraTestnet]:\n 'https://api.studio.thegraph.com/query/78728/steer-protocol-tatara-testnet/version/latest',\n [Chain.Core]:\n 'https://thegraph.coredao.org/subgraphs/name/steer-protocol-core',\n [Chain.Peaq]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/45pjWAnAXULpS6UDajzCtLcZYuohwuMm4UuSDjegMKAT',\n [Chain.Katana]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/D6CST1Az8c8KvMf8ktcEcWds89YVQxbKG6v8yo7FAzzM',\n [Chain.Ronin]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/793Lz5oiK51wdm9kCLtHqunkAPk2qjg7denpCrHqrLcA',\n [Chain.Saga]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-saga-evm/prod/gn',\n [Chain.Nibiru]:\n 'https://app.sentio.xyz//api/v1/graphql/rakesh/steer-protocol-nibiru',\n [Chain.Hyperevm]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-hyperevm/prod/gn'\n}\n\n/**\n * Retrieves the subgraph URL for a given chain ID.\n * \n * @param chainId - The numeric identifier of the blockchain network\n * @returns The subgraph URL for the given chain ID, or undefined if not found\n * @example\n * ```typescript\n * const subgraphUrl = getSubgraphUrlByChainId(1);\n * // Returns the Ethereum mainnet subgraph URL\n * ```\n */\nexport function getSubgraphUrlByChainId(chainId: number): string | undefined {\n // Convert chainId to Chain enum value using ChainId enum\n const [chainName] = Object.entries(ChainId).find(([, id]) => Number(id) === chainId) || [];\n if (!chainName) return undefined;\n \n // Get the Chain enum value\n const chain = Chain[chainName as keyof typeof Chain];\n if (!chain) return undefined;\n\n // Return the subgraph URL from steerSubgraphConfig\n return steerSubgraphConfig[chain];\n}"]}
1
+ {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../src/const/subgraph.ts"],"names":[],"mappings":"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","sourcesContent":["import { SteerSupportedChains } from \"../types.js\";\nimport { Chain, ChainId } from \"./chain.js\";\n\n\n\n/**\n * Interface representing network-specific data and configuration\n */\nexport interface NetworkData {\n /** Chain ID of the network */\n chainId: number;\n /** Symbol of the wrapped native token */\n wrappedNativeToken: string;\n /** Address of the network's native token wrapper contract */\n address: string;\n /** Optional network name */\n name?: string;\n}\n\n\n/**\n * URL for accessing deprecated bundle information\n */\nexport const deprecatedBundlesURL = \"https://api.steer.finance/deprecated-bundles\"\n\n \n/**\n * Configuration mapping of supported chains to their respective subgraph endpoints.\n * Each chain has a dedicated subgraph URL for querying protocol data.\n * Updated each chains for ormi and thegraph\n*/\nexport const steerSubgraphConfig: {\n [protocol in SteerSupportedChains]: string\n} = {\n [Chain.Polygon]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-polygon/prod/gn\",\n [Chain.BSC]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GLDP56fPGDz3MtmhtfTkz5CxWiqiNLACVrsJ9RqQeL4U\",\n [Chain.Optimism]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GgW1EwNARL3dyo3acQ3VhraQQ66MHT7QnYuGcQc5geDG\",\n [Chain.Arbitrum]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-arbitrum/prod/gn\",\n [Chain.Evmos]:\n \"https://subgraph.satsuma-prod.com/769a117cc018/steer/steer-protocol-evmos/api\",\n [Chain.Thundercore]:\n \"https://subgraph.steer.finance/thundercore/subgraphs/name/steerprotocol/steer-thundercore\",\n [Chain.Metis]:\n \"https://api.metis.0xgraph.xyz/api/public/b88b5696-b69d-46be-b212-5c55a9b1492f/subgraphs/steer-protocol-metis/prod/gn\",\n [Chain.Base]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-base/prod/gn\",\n [Chain.Avalanche]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GZotTj3rQJ8ZqVyodtK8TcnKcUxMgeF7mCJHGPYbu8dA\",\n [Chain.PolygonzkEVM]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-polygon-zkevm/prod/gn\",\n [Chain.Celo]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/BPaFHyfVrhv3pdjGodpQcWggAg1Bcrvc9SFc2t2BXeho\",\n [Chain.Kava]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-kava/prod/gn\",\n [Chain.Linea]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-linea/prod/gn\",\n [Chain.Scroll]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/822PfgbgBzC98Huwf37uxvF9YGZMA5nDeETpstkR55Sn\",\n [Chain.Manta]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-manta/prod/gn\",\n [Chain.Astar]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar/prod/gn\",\n [Chain.Fantom]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/9uyX2WDuaxmcYh11ehUhU68M9uSCp5FXVQV2w4LqbpbV\",\n [Chain.OkxTestnet]:\n \"https://subgraph.steer.finance/steer-x1-testnet/subgraphs/name/steerprotocol/steer-okxtestnet\",\n [Chain.Mantle]:\n \"https://subgraph-api.mantle.xyz/subgraphs/name/steerprotocol/steer-protocol-mantle\",\n [Chain.AstarZkevm]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar-zkevm/1.1.1/gn\",\n [Chain.Blast]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-blast/prod/gn\",\n [Chain.Mode]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mode/prod/gn\",\n [Chain.Telos]:\n \"https://telos.api.ormilabs.com/api/public/39892398-bfdd-48ac-b776-77ad8a5b4b9e/subgraphs/steer-protocol-telos/prod/gn\",\n [Chain.XLayer]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3\",\n [Chain.Taiko]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-taiko/prod/gn\",\n [Chain.Rootstock]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/H3pANqbMVTiFCUXHjXYr2mHbXvn5my5o66Gxbwcg7Aqm\",\n [Chain.ZklinkNova]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zklink-nova/1.0.1/gn\",\n [Chain.Flare]:\n \"https://api.goldsky.com/api/public/project_cm2k9xbkz4qg901vs51bm5uau/subgraphs/steer-protocol-flare/prod/gn\",\n [Chain.BeraChainBartio]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-berachain-bartio/prod/gn',\n [Chain.Filecoin]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-filecoin/prod/gn',\n [Chain.Apechain]:\n 'https://apeapi.0xgraph.xyz/api/public/4ea21b03-9850-4796-8068-ec71bbe022db/subgraphs/steer-protocol-apechain/prod/gn',\n [Chain.Zircuit]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zircuit/prod/gn',\n [Chain.Moonbeam]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/4D2pLLQuGsAkdZAUgqxxnk4Mcu3aMjEV1HJ2F63kC7w6',\n [Chain.Sei]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-sei/prod/gn',\n [Chain.Sonic]:\n 'https://api.0xgraph.xyz/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-sonic/prod/gn',\n [Chain.Zeta]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/HFH41DyzAXxYmT5eszVWn2T7UxViMroPJ4XJV8vhDGNN',\n [Chain.Mainnet]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mainnet/prod/gn',\n [Chain.Soneium]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3',\n [Chain.Bera]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-bera/prod/gn',\n [Chain.Unichain]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/EoLK36f26Dr7maXyNKxJmEBJkoYVCMh1d4ENtT5hJgyB',\n [Chain.Hemi]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/2eACJtEGuELqN5roUiHG1jqmCpXt5aimcc8xZdvtMv4z',\n [Chain.TataraTestnet]:\n 'https://api.studio.thegraph.com/query/78728/steer-protocol-tatara-testnet/version/latest',\n [Chain.Core]:\n 'https://thegraph.coredao.org/subgraphs/name/steer-protocol-core',\n [Chain.Peaq]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/45pjWAnAXULpS6UDajzCtLcZYuohwuMm4UuSDjegMKAT',\n [Chain.Katana]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/D6CST1Az8c8KvMf8ktcEcWds89YVQxbKG6v8yo7FAzzM',\n [Chain.Ronin]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/793Lz5oiK51wdm9kCLtHqunkAPk2qjg7denpCrHqrLcA',\n [Chain.Saga]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-saga-evm/prod/gn',\n [Chain.Nibiru]:\n 'https://app.sentio.xyz//api/v1/graphql/rakesh/steer-protocol-nibiru',\n [Chain.Hyperevm]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-hyperevm/prod/gn'\n}\n\n/**\n * Retrieves the subgraph URL for a given chain ID.\n * \n * @param chainId - The numeric identifier of the blockchain network\n * @returns The subgraph URL for the given chain ID, or undefined if not found\n * @example\n * ```typescript\n * const subgraphUrl = getSubgraphUrlByChainId(1);\n * // Returns the Ethereum mainnet subgraph URL\n * ```\n */\nexport function getSubgraphUrlByChainId(chainId: number): string | undefined {\n // Convert chainId to Chain enum value using ChainId enum\n const [chainName] = Object.entries(ChainId).find(([, id]) => Number(id) === chainId) || [];\n if (!chainName) return undefined;\n \n // Get the Chain enum value\n const chain = Chain[chainName as keyof typeof Chain];\n if (!chain) return undefined;\n\n // Return the subgraph URL from steerSubgraphConfig\n return steerSubgraphConfig[chain];\n}"]}
@@ -1,4 +1,8 @@
1
- export const getTheGraphResolverUrl = (subgraphId, isDeploymentId, apiKey) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTheGraphResolverUrl = void 0;
4
+ const getTheGraphResolverUrl = (subgraphId, isDeploymentId, apiKey) => {
2
5
  return `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/${isDeploymentId ? 'deployments' : 'subgraphs'}/id/${subgraphId}`;
3
6
  };
7
+ exports.getTheGraphResolverUrl = getTheGraphResolverUrl;
4
8
  //# sourceMappingURL=thegraph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thegraph.js","sourceRoot":"","sources":["../../../src/const/thegraph.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,UAAkB,EAAE,cAAuB,EAAE,MAAc,EAAE,EAAE;IAClG,OAAO,qDAAqD,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,OAAO,UAAU,EAAE,CAAC;AACxI,CAAC,CAAC","sourcesContent":["export const getTheGraphResolverUrl = (subgraphId: string, isDeploymentId: boolean, apiKey: string) => {\n return `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/${isDeploymentId ? 'deployments' : 'subgraphs'}/id/${subgraphId}`;\n };"]}
1
+ {"version":3,"file":"thegraph.js","sourceRoot":"","sources":["../../../src/const/thegraph.ts"],"names":[],"mappings":";;;AAAO,MAAM,sBAAsB,GAAG,CAAC,UAAkB,EAAE,cAAuB,EAAE,MAAc,EAAE,EAAE;IAClG,OAAO,qDAAqD,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,OAAO,UAAU,EAAE,CAAC;AACxI,CAAC,CAAC;AAFS,QAAA,sBAAsB,0BAE/B","sourcesContent":["export const getTheGraphResolverUrl = (subgraphId: string, isDeploymentId: boolean, apiKey: string) => {\n return `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/${isDeploymentId ? 'deployments' : 'subgraphs'}/id/${subgraphId}`;\n };"]}
package/dist/esm/index.js CHANGED
@@ -1,15 +1,34 @@
1
- export * from './utils/subgraph-types.js';
2
- export { SubgraphVaultClient } from './utils/SubgraphVaultClient.js';
3
- export * from './base/SmartRewards.js';
4
- export * from './client.js';
5
- export * from './types.js';
6
- export * from './base/VaultClient.js';
7
- export * from './base/SubgraphClient.js';
8
- export * from './base/StakingClient.js';
9
- export * from './base/FeeManagerClient.js';
10
- export * from './base/vault/single-asset/index.js';
11
- export { PoolClient } from './base/PoolClient.js';
12
- export * from './const/index.js';
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.PoolClient = exports.SubgraphVaultClient = void 0;
18
+ __exportStar(require("./utils/subgraph-types.js"), exports);
19
+ var SubgraphVaultClient_js_1 = require("./utils/SubgraphVaultClient.js");
20
+ Object.defineProperty(exports, "SubgraphVaultClient", { enumerable: true, get: function () { return SubgraphVaultClient_js_1.SubgraphVaultClient; } });
21
+ __exportStar(require("./base/SmartRewards.js"), exports);
22
+ __exportStar(require("./client.js"), exports);
23
+ __exportStar(require("./types.js"), exports);
24
+ __exportStar(require("./base/VaultClient.js"), exports);
25
+ __exportStar(require("./base/SubgraphClient.js"), exports);
26
+ __exportStar(require("./base/StakingClient.js"), exports);
27
+ __exportStar(require("./base/FeeManagerClient.js"), exports);
28
+ __exportStar(require("./base/vault/single-asset/index.js"), exports);
29
+ var PoolClient_js_1 = require("./base/PoolClient.js");
30
+ Object.defineProperty(exports, "PoolClient", { enumerable: true, get: function () { return PoolClient_js_1.PoolClient; } });
31
+ __exportStar(require("./const/index.js"), exports);
13
32
  /**
14
33
  * @packageDocumentation
15
34
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oCAAoC,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,cAAc,kBAAkB,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG","sourcesContent":["export * from './utils/subgraph-types.js';\nexport { SubgraphVaultClient } from './utils/SubgraphVaultClient.js';\nexport * from './base/SmartRewards.js';\nexport * from './client.js';\nexport * from './types.js';\nexport * from './base/VaultClient.js';\nexport * from './base/SubgraphClient.js';\nexport * from './base/StakingClient.js';\nexport * from './base/FeeManagerClient.js';\nexport * from './base/vault/single-asset/index.js';\nexport type { GraphQLTokenData, GraphQLPoolData } from './base/PoolClient.js';\nexport { PoolClient } from './base/PoolClient.js';\nexport * from './const/index.js';\n\n/**\n * @packageDocumentation\n *\n * The Steer Protocol SDK provides a comprehensive interface for interacting with Steer Protocol's smart contracts and services.\n *\n * ## Key Features\n *\n * - Smart Rewards Management\n * - Campaign Interactions\n * - Claim Management\n * - Multi-chain Support\n *\n * ## Quick Start\n *\n * ```typescript\n * import { createPublicClient, createWalletClient, http } from 'viem';\n * import { mainnet } from 'viem/chains';\n * import { SteerClient } from '@steerprotocol/sdk';\n *\n * // Create viem clients\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http()\n * });\n *\n * const walletClient = createWalletClient({\n * chain: mainnet,\n * transport: http()\n * });\n *\n * // Initialize the Steer client with both public and wallet clients\n * const steerClient = new SteerClient({\n * environment: 'production',\n * client: publicClient,\n * walletClient: walletClient // Optional: Provide for write operations\n * });\n *\n * // Use vault operations (read-only if no wallet client)\n * const vaults = await steerClient.vaults.getLatestVaults();\n *\n * // Use rewards functionality (read-only if no wallet client)\n * const campaigns = await steerClient.rewards.getCampaigns(1);\n * const summary = await steerClient.rewards.getRewardSummary(userAddress, chainId);\n *\n * // Write operations (requires wallet client)\n * if (steerClient.rewards) {\n * const tx = await steerClient.rewards.claimCampaignRewards(userAddress, chainId);\n * }\n * ```\n *\n * ## Smart Rewards\n *\n * The Smart Rewards functionality is accessible through the SteerClient's rewards property.\n * It provides comprehensive functionality for managing rewards:\n *\n * - View reward balances and claim history (read-only operations)\n * - Claim rewards across multiple campaigns (requires wallet client)\n * - Track historical claims\n * - Get comprehensive reward summaries\n *\n * For write operations like claiming rewards, make sure to provide a wallet client when initializing the SteerClient.\n *\n * See {@link SmartRewards} for detailed API documentation.\n */\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,yEAAqE;AAA5D,6HAAA,mBAAmB,OAAA;AAC5B,yDAAuC;AACvC,8CAA4B;AAC5B,6CAA2B;AAC3B,wDAAsC;AACtC,2DAAyC;AACzC,0DAAwC;AACxC,6DAA2C;AAC3C,qEAAmD;AAEnD,sDAAkD;AAAzC,2GAAA,UAAU,OAAA;AACnB,mDAAiC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG","sourcesContent":["export * from './utils/subgraph-types.js';\nexport { SubgraphVaultClient } from './utils/SubgraphVaultClient.js';\nexport * from './base/SmartRewards.js';\nexport * from './client.js';\nexport * from './types.js';\nexport * from './base/VaultClient.js';\nexport * from './base/SubgraphClient.js';\nexport * from './base/StakingClient.js';\nexport * from './base/FeeManagerClient.js';\nexport * from './base/vault/single-asset/index.js';\nexport type { GraphQLTokenData, GraphQLPoolData } from './base/PoolClient.js';\nexport { PoolClient } from './base/PoolClient.js';\nexport * from './const/index.js';\n\n/**\n * @packageDocumentation\n *\n * The Steer Protocol SDK provides a comprehensive interface for interacting with Steer Protocol's smart contracts and services.\n *\n * ## Key Features\n *\n * - Smart Rewards Management\n * - Campaign Interactions\n * - Claim Management\n * - Multi-chain Support\n *\n * ## Quick Start\n *\n * ```typescript\n * import { createPublicClient, createWalletClient, http } from 'viem';\n * import { mainnet } from 'viem/chains';\n * import { SteerClient } from '@steerprotocol/sdk';\n *\n * // Create viem clients\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http()\n * });\n *\n * const walletClient = createWalletClient({\n * chain: mainnet,\n * transport: http()\n * });\n *\n * // Initialize the Steer client with both public and wallet clients\n * const steerClient = new SteerClient({\n * environment: 'production',\n * client: publicClient,\n * walletClient: walletClient // Optional: Provide for write operations\n * });\n *\n * // Use vault operations (read-only if no wallet client)\n * const vaults = await steerClient.vaults.getLatestVaults();\n *\n * // Use rewards functionality (read-only if no wallet client)\n * const campaigns = await steerClient.rewards.getCampaigns(1);\n * const summary = await steerClient.rewards.getRewardSummary(userAddress, chainId);\n *\n * // Write operations (requires wallet client)\n * if (steerClient.rewards) {\n * const tx = await steerClient.rewards.claimCampaignRewards(userAddress, chainId);\n * }\n * ```\n *\n * ## Smart Rewards\n *\n * The Smart Rewards functionality is accessible through the SteerClient's rewards property.\n * It provides comprehensive functionality for managing rewards:\n *\n * - View reward balances and claim history (read-only operations)\n * - Claim rewards across multiple campaigns (requires wallet client)\n * - Track historical claims\n * - Get comprehensive reward summaries\n *\n * For write operations like claiming rewards, make sure to provide a wallet client when initializing the SteerClient.\n *\n * See {@link SmartRewards} for detailed API documentation.\n */\n"]}
@@ -1,5 +1,10 @@
1
- import fs from 'fs';
2
- import path from 'path';
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = __importDefault(require("fs"));
7
+ const path_1 = __importDefault(require("path"));
3
8
  const WHITELISTED_CONTRACTS = [
4
9
  'BundleRegistry',
5
10
  'GasVault',
@@ -73,20 +78,20 @@ function transformContractData(input) {
73
78
  return result;
74
79
  }
75
80
  // Read the deployment file
76
- const deploymentPath = path.join(process.cwd(), 'node_modules/@steerprotocol/contracts/deployments/composite_deployment.json');
77
- const outputDir = path.join(process.cwd(), 'src/const/deployments');
81
+ const deploymentPath = path_1.default.join(process.cwd(), 'node_modules/@steerprotocol/contracts/deployments/composite_deployment.json');
82
+ const outputDir = path_1.default.join(process.cwd(), 'src/const/deployments');
78
83
  try {
79
- const data = JSON.parse(fs.readFileSync(deploymentPath, 'utf8'));
84
+ const data = JSON.parse(fs_1.default.readFileSync(deploymentPath, 'utf8'));
80
85
  const transformed = transformContractData(data);
81
86
  // Ensure output directory exists
82
- if (!fs.existsSync(outputDir)) {
83
- fs.mkdirSync(outputDir, { recursive: true });
87
+ if (!fs_1.default.existsSync(outputDir)) {
88
+ fs_1.default.mkdirSync(outputDir, { recursive: true });
84
89
  }
85
90
  // Write ABIs file
86
91
  const abisContent = `// This file is auto-generated. Do not edit directly.
87
92
  export const abis = ${JSON.stringify(transformed.abis, null, 2)} as const;
88
93
  `;
89
- fs.writeFileSync(path.join(outputDir, 'abis.ts'), abisContent);
94
+ fs_1.default.writeFileSync(path_1.default.join(outputDir, 'abis.ts'), abisContent);
90
95
  // Write individual chain files
91
96
  Object.entries(transformed.chains).forEach(([chainName, chainData]) => {
92
97
  const chainContent = `// This file is auto-generated. Do not edit directly.
@@ -98,7 +103,7 @@ interface Contract {
98
103
 
99
104
  export const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(chainData, null, 2)} as const;
100
105
  `;
101
- fs.writeFileSync(path.join(outputDir, `${chainName}.ts`), chainContent);
106
+ fs_1.default.writeFileSync(path_1.default.join(outputDir, `${chainName}.ts`), chainContent);
102
107
  });
103
108
  // Create index file to export everything
104
109
  const chainExports = Object.keys(transformed.chains)
@@ -108,7 +113,7 @@ export const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(
108
113
  export { abis } from './abis.js';
109
114
  ${chainExports}
110
115
  `;
111
- fs.writeFileSync(path.join(outputDir, 'index.ts'), indexContent);
116
+ fs_1.default.writeFileSync(path_1.default.join(outputDir, 'index.ts'), indexContent);
112
117
  console.log('Successfully generated deployment files');
113
118
  }
114
119
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"processDeployments.js","sourceRoot":"","sources":["../../../src/scripts/processDeployments.ts"],"names":[],"mappings":"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","sourcesContent":["import fs from 'fs';\nimport path from 'path';\n\ntype AbiItem = {\n type: string;\n name?: string;\n inputs?: Array<{ name: string; type: string; indexed?: boolean }>;\n outputs?: Array<{ name: string; type: string }>;\n stateMutability?: string;\n anonymous?: boolean;\n};\n\ninterface Contract {\n address: string;\n abi?: AbiItem[];\n startBlock?: number;\n}\n\ninterface ChainContracts {\n contracts: {\n [key: string]: Contract;\n };\n}\n\ninterface DeploymentInput {\n [chainName: string]: ChainContracts;\n}\n\ninterface TransformedResult {\n abis: {\n [key: string]: AbiItem[];\n };\n chains: {\n [chainName: string]: {\n [contractName: string]: {\n address: string;\n startBlock?: number;\n };\n };\n };\n}\n\nconst WHITELISTED_CONTRACTS = [\n 'BundleRegistry',\n 'GasVault',\n 'KeeperRegistry',\n 'SteerPeriphery',\n 'StrategyRegistry',\n 'VaultRegistry',\n \"Orchestrator\",\n \"BundleRegistry\",\n // 'Helper',\n // 'StakingRewards',\n // 'DefaultProxyAdmin',\n // 'WhitelistRegistry',\n // 'Beacon',\n // 'DynamicJobs',\n // 'QuoterV2Camelot',\n // 'QuoterV2Uniswap',\n // 'QuoterV2',\n // 'TestERC20',\n // 'TestFaucet',\n // 'TestToken',\n // 'TestToken2',\n // 'DummyContract',\n // 'InternalGovernance',\n // 'InternalTimelock',\n // 'NFTDescriptor',\n // 'NonfungibleTokenPositionDescriptor',\n // 'RewardOrchestrator',\n // 'RunnerRegistry',\n // 'RunnerRewarder',\n // 'SteerGovernance',\n // 'SteerToken',\n // 'SwapRouter',\n // 'Timelock',\n // 'TreasuryVester',\n // 'UniswapV3Factory',\n // 'WETH',\n // 'Staking',\n // 'SteerPeriphery Implementation_1',\n 'CamelotMultiPositionLiquidityManager',\n 'QuickSwapUniv3MultiPositionLiquidityManager',\n];\n\nfunction transformContractData(input: DeploymentInput): TransformedResult {\n const result: TransformedResult = {\n abis: {},\n chains: {},\n };\n\n // Process each chain\n Object.keys(input).forEach((chainName) => {\n const chain = input[chainName];\n result.chains[chainName] = {};\n\n // Process each contract in the chain\n Object.keys(chain.contracts).forEach((contractName) => {\n // Skip if contract is not in whitelist\n if (!WHITELISTED_CONTRACTS.includes(contractName)) {\n return;\n }\n\n const contract = chain.contracts[contractName];\n\n // Add contract address and startBlock to chain\n result.chains[chainName][contractName] = {\n address: contract.address,\n ...(contract.startBlock ? { startBlock: contract.startBlock } : {})\n };\n\n // Store ABI by contract name\n // Only store if we haven't seen this contract name before\n if (contract.abi && !result.abis[contractName]) {\n result.abis[contractName] = contract.abi;\n }\n });\n });\n\n return result;\n}\n\n// Read the deployment file\nconst deploymentPath = path.join(\n process.cwd(),\n 'node_modules/@steerprotocol/contracts/deployments/composite_deployment.json'\n);\nconst outputDir = path.join(process.cwd(), 'src/const/deployments');\n\ntry {\n const data = JSON.parse(fs.readFileSync(deploymentPath, 'utf8')) as DeploymentInput;\n const transformed = transformContractData(data);\n\n // Ensure output directory exists\n if (!fs.existsSync(outputDir)) {\n fs.mkdirSync(outputDir, { recursive: true });\n }\n\n // Write ABIs file\n const abisContent = `// This file is auto-generated. Do not edit directly.\nexport const abis = ${JSON.stringify(transformed.abis, null, 2)} as const;\n`;\n fs.writeFileSync(path.join(outputDir, 'abis.ts'), abisContent);\n\n // Write individual chain files\n Object.entries(transformed.chains).forEach(([chainName, chainData]) => {\n const chainContent = `// This file is auto-generated. Do not edit directly.\n\ninterface Contract {\n address: string;\n startBlock?: number;\n}\n\nexport const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(chainData, null, 2)} as const;\n`;\n fs.writeFileSync(path.join(outputDir, `${chainName}.ts`), chainContent);\n });\n\n // Create index file to export everything\n const chainExports = Object.keys(transformed.chains)\n .map((chainName) => `export { ${chainName}Addresses } from './${chainName}.js';`)\n .join('\\n');\n\n const indexContent = `// This file is auto-generated. Do not edit directly.\nexport { abis } from './abis.js';\n${chainExports}\n`;\n fs.writeFileSync(path.join(outputDir, 'index.ts'), indexContent);\n\n console.log('Successfully generated deployment files');\n} catch (error) {\n console.error('Error processing deployments:', error);\n process.exit(1);\n}\n"]}
1
+ {"version":3,"file":"processDeployments.js","sourceRoot":"","sources":["../../../src/scripts/processDeployments.ts"],"names":[],"mappings":"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","sourcesContent":["import fs from 'fs';\nimport path from 'path';\n\ntype AbiItem = {\n type: string;\n name?: string;\n inputs?: Array<{ name: string; type: string; indexed?: boolean }>;\n outputs?: Array<{ name: string; type: string }>;\n stateMutability?: string;\n anonymous?: boolean;\n};\n\ninterface Contract {\n address: string;\n abi?: AbiItem[];\n startBlock?: number;\n}\n\ninterface ChainContracts {\n contracts: {\n [key: string]: Contract;\n };\n}\n\ninterface DeploymentInput {\n [chainName: string]: ChainContracts;\n}\n\ninterface TransformedResult {\n abis: {\n [key: string]: AbiItem[];\n };\n chains: {\n [chainName: string]: {\n [contractName: string]: {\n address: string;\n startBlock?: number;\n };\n };\n };\n}\n\nconst WHITELISTED_CONTRACTS = [\n 'BundleRegistry',\n 'GasVault',\n 'KeeperRegistry',\n 'SteerPeriphery',\n 'StrategyRegistry',\n 'VaultRegistry',\n \"Orchestrator\",\n \"BundleRegistry\",\n // 'Helper',\n // 'StakingRewards',\n // 'DefaultProxyAdmin',\n // 'WhitelistRegistry',\n // 'Beacon',\n // 'DynamicJobs',\n // 'QuoterV2Camelot',\n // 'QuoterV2Uniswap',\n // 'QuoterV2',\n // 'TestERC20',\n // 'TestFaucet',\n // 'TestToken',\n // 'TestToken2',\n // 'DummyContract',\n // 'InternalGovernance',\n // 'InternalTimelock',\n // 'NFTDescriptor',\n // 'NonfungibleTokenPositionDescriptor',\n // 'RewardOrchestrator',\n // 'RunnerRegistry',\n // 'RunnerRewarder',\n // 'SteerGovernance',\n // 'SteerToken',\n // 'SwapRouter',\n // 'Timelock',\n // 'TreasuryVester',\n // 'UniswapV3Factory',\n // 'WETH',\n // 'Staking',\n // 'SteerPeriphery Implementation_1',\n 'CamelotMultiPositionLiquidityManager',\n 'QuickSwapUniv3MultiPositionLiquidityManager',\n];\n\nfunction transformContractData(input: DeploymentInput): TransformedResult {\n const result: TransformedResult = {\n abis: {},\n chains: {},\n };\n\n // Process each chain\n Object.keys(input).forEach((chainName) => {\n const chain = input[chainName];\n result.chains[chainName] = {};\n\n // Process each contract in the chain\n Object.keys(chain.contracts).forEach((contractName) => {\n // Skip if contract is not in whitelist\n if (!WHITELISTED_CONTRACTS.includes(contractName)) {\n return;\n }\n\n const contract = chain.contracts[contractName];\n\n // Add contract address and startBlock to chain\n result.chains[chainName][contractName] = {\n address: contract.address,\n ...(contract.startBlock ? { startBlock: contract.startBlock } : {})\n };\n\n // Store ABI by contract name\n // Only store if we haven't seen this contract name before\n if (contract.abi && !result.abis[contractName]) {\n result.abis[contractName] = contract.abi;\n }\n });\n });\n\n return result;\n}\n\n// Read the deployment file\nconst deploymentPath = path.join(\n process.cwd(),\n 'node_modules/@steerprotocol/contracts/deployments/composite_deployment.json'\n);\nconst outputDir = path.join(process.cwd(), 'src/const/deployments');\n\ntry {\n const data = JSON.parse(fs.readFileSync(deploymentPath, 'utf8')) as DeploymentInput;\n const transformed = transformContractData(data);\n\n // Ensure output directory exists\n if (!fs.existsSync(outputDir)) {\n fs.mkdirSync(outputDir, { recursive: true });\n }\n\n // Write ABIs file\n const abisContent = `// This file is auto-generated. Do not edit directly.\nexport const abis = ${JSON.stringify(transformed.abis, null, 2)} as const;\n`;\n fs.writeFileSync(path.join(outputDir, 'abis.ts'), abisContent);\n\n // Write individual chain files\n Object.entries(transformed.chains).forEach(([chainName, chainData]) => {\n const chainContent = `// This file is auto-generated. Do not edit directly.\n\ninterface Contract {\n address: string;\n startBlock?: number;\n}\n\nexport const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(chainData, null, 2)} as const;\n`;\n fs.writeFileSync(path.join(outputDir, `${chainName}.ts`), chainContent);\n });\n\n // Create index file to export everything\n const chainExports = Object.keys(transformed.chains)\n .map((chainName) => `export { ${chainName}Addresses } from './${chainName}.js';`)\n .join('\\n');\n\n const indexContent = `// This file is auto-generated. Do not edit directly.\nexport { abis } from './abis.js';\n${chainExports}\n`;\n fs.writeFileSync(path.join(outputDir, 'index.ts'), indexContent);\n\n console.log('Successfully generated deployment files');\n} catch (error) {\n console.error('Error processing deployments:', error);\n process.exit(1);\n}\n"]}
package/dist/esm/types.js CHANGED
@@ -1,2 +1,3 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
2
3
  //# sourceMappingURL=types.js.map
@@ -1,8 +1,11 @@
1
+ "use strict";
1
2
  /**
2
3
  * @fileoverview Pool Query Adapter - Provides GraphQL queries for different DEX protocols
3
4
  * @module PoolQueryAdapter
4
5
  */
5
- import { isShadowProtocol, Protocol } from '../const/index.js';
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.getPoolDetailsQuery = exports.getTokenPoolsQueryByAddress = exports.FETCH_TOKEN_POOLS_KYO = exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = exports.FETCH_TOKEN_POOLS_POOLSHARK = exports.FETCH_TOKEN_POOLS_SHADOW = exports.FETCH_TOKEN_POOLS_UNISWAP = exports.FETCH_TOKEN_POOLS_ARTHSWAP = exports.FETCH_TOKEN_POOLS_OCELEX = exports.FETCH_TOKEN_POOLS_ALGEBRA = exports.getTopPoolsQuery = void 0;
8
+ const index_js_1 = require("../const/index.js");
6
9
  /**
7
10
  * GraphQL query to fetch top pools from Shadow protocol by volume
8
11
  * Returns pools ordered by volumeUSD in descending order
@@ -248,23 +251,23 @@ const FETCH_ARTHSWAP_TOP_POOLS = `
248
251
  * // Returns FETCH_TOP_POOLS_UNISWAP query
249
252
  * ```
250
253
  */
251
- export const getTopPoolsQuery = (protocol, isAlgebraPool) => {
252
- if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {
254
+ const getTopPoolsQuery = (protocol, isAlgebraPool) => {
255
+ if (protocol === index_js_1.Protocol.ArthSwap || protocol === index_js_1.Protocol.ThickV2) {
253
256
  return FETCH_ARTHSWAP_TOP_POOLS;
254
257
  }
255
- else if (protocol === Protocol.Thruster) {
258
+ else if (protocol === index_js_1.Protocol.Thruster) {
256
259
  return FETCH_TOP_POOLS_THRUSTER;
257
260
  }
258
- else if (protocol === Protocol.Ocelex) {
261
+ else if (protocol === index_js_1.Protocol.Ocelex) {
259
262
  return FETCH_TOP_POOLS_OCELEX;
260
263
  }
261
- else if (protocol === Protocol.PoolShark) {
264
+ else if (protocol === index_js_1.Protocol.PoolShark) {
262
265
  return FETCH_POOLSHARK_TOP_POOLS;
263
266
  }
264
- else if (protocol === Protocol.Kyo) {
267
+ else if (protocol === index_js_1.Protocol.Kyo) {
265
268
  return FETCH_TOP_POOLS_KYO;
266
269
  }
267
- else if (isShadowProtocol(protocol)) {
270
+ else if ((0, index_js_1.isShadowProtocol)(protocol)) {
268
271
  return FETCH_TOP_POOLS_SHADOW;
269
272
  }
270
273
  else if (isAlgebraPool) {
@@ -274,13 +277,14 @@ export const getTopPoolsQuery = (protocol, isAlgebraPool) => {
274
277
  return FETCH_TOP_POOLS_UNISWAP;
275
278
  }
276
279
  };
280
+ exports.getTopPoolsQuery = getTopPoolsQuery;
277
281
  // --- Token Pool Queries for fetchPoolsForTokens ---
278
282
  /**
279
283
  * GraphQL query to fetch pools containing a specific token from Algebra-based protocols
280
284
  * Returns up to 50 pools ordered by volume that contain the specified token
281
285
  * @internal
282
286
  */
283
- export const FETCH_TOKEN_POOLS_ALGEBRA = `
287
+ exports.FETCH_TOKEN_POOLS_ALGEBRA = `
284
288
  query pools($token: String!) {
285
289
  pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
286
290
  or: [
@@ -316,7 +320,7 @@ query pools($token: String!) {
316
320
  * Returns up to 50 pools that contain the specified token
317
321
  * @internal
318
322
  */
319
- export const FETCH_TOKEN_POOLS_OCELEX = `
323
+ exports.FETCH_TOKEN_POOLS_OCELEX = `
320
324
  query pools($token: ID!) {
321
325
  pools(first: 50, where: {
322
326
  or: [
@@ -350,7 +354,7 @@ query pools($token: ID!) {
350
354
  * Returns up to 50 pools ordered by volume that contain the specified token
351
355
  * @internal
352
356
  */
353
- export const FETCH_TOKEN_POOLS_ARTHSWAP = `
357
+ exports.FETCH_TOKEN_POOLS_ARTHSWAP = `
354
358
  query pools($token: String!) {
355
359
  pools(limit: 50, orderBy: volumeUSD_DESC, where: {
356
360
  OR: [
@@ -387,7 +391,7 @@ query pools($token: String!) {
387
391
  * Returns up to 50 pools ordered by volume that contain the specified token
388
392
  * @internal
389
393
  */
390
- export const FETCH_TOKEN_POOLS_UNISWAP = `
394
+ exports.FETCH_TOKEN_POOLS_UNISWAP = `
391
395
  query pools($token: String!) {
392
396
  pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
393
397
  or: [
@@ -426,7 +430,7 @@ query pools($token: String!) {
426
430
  * Returns up to 50 CL pools ordered by volume that contain the specified token
427
431
  * @internal
428
432
  */
429
- export const FETCH_TOKEN_POOLS_SHADOW = `
433
+ exports.FETCH_TOKEN_POOLS_SHADOW = `
430
434
  query pools($token: String!) {
431
435
  clPools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
432
436
  or: [
@@ -465,7 +469,7 @@ query pools($token: String!) {
465
469
  * Returns up to 50 limit pools ordered by TVL that contain the specified token
466
470
  * @internal
467
471
  */
468
- export const FETCH_TOKEN_POOLS_POOLSHARK = `
472
+ exports.FETCH_TOKEN_POOLS_POOLSHARK = `
469
473
  query pools($token: String!) {
470
474
  limitPools(first: 50, orderBy: totalValueLockedEth, orderDirection: desc, where: {
471
475
  or: [
@@ -507,7 +511,7 @@ query pools($token: String!) {
507
511
  * Returns up to 50 pools ordered by volume where token is the first token
508
512
  * @internal
509
513
  */
510
- export const FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `
514
+ exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `
511
515
  query pools($token: String!) {
512
516
  pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
513
517
  token0: $token
@@ -536,7 +540,7 @@ query pools($token: String!) {
536
540
  * Returns up to 50 pools ordered by volume where token is the second token
537
541
  * @internal
538
542
  */
539
- export const FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `
543
+ exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `
540
544
  query pools($token: String!) {
541
545
  pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
542
546
  token1: $token
@@ -565,7 +569,7 @@ query pools($token: String!) {
565
569
  * Returns up to 50 pools ordered by TVL where token is the first token
566
570
  * @internal
567
571
  */
568
- export const FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `
572
+ exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `
569
573
  query pools($token: String!) {
570
574
  pools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {
571
575
  token0: $token
@@ -598,7 +602,7 @@ query pools($token: String!) {
598
602
  * Returns up to 50 pools ordered by TVL where token is the second token
599
603
  * @internal
600
604
  */
601
- export const FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `
605
+ exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `
602
606
  query pools($token: String!) {
603
607
  pools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {
604
608
  token1: $token
@@ -631,7 +635,7 @@ query pools($token: String!) {
631
635
  * Returns up to 50 pools ordered by volume that contain the specified token
632
636
  * @internal
633
637
  */
634
- export const FETCH_TOKEN_POOLS_KYO = `
638
+ exports.FETCH_TOKEN_POOLS_KYO = `
635
639
  query pools($token: String!) {
636
640
  pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
637
641
  or: [
@@ -678,29 +682,30 @@ query pools($token: String!) {
678
682
  * // Returns FETCH_TOKEN_POOLS_UNISWAP query
679
683
  * ```
680
684
  */
681
- export const getTokenPoolsQueryByAddress = (isAlgebraPool, protocol) => {
685
+ const getTokenPoolsQueryByAddress = (isAlgebraPool, protocol) => {
682
686
  if (isAlgebraPool) {
683
- if (protocol === Protocol.Ocelex) {
684
- return FETCH_TOKEN_POOLS_OCELEX;
687
+ if (protocol === index_js_1.Protocol.Ocelex) {
688
+ return exports.FETCH_TOKEN_POOLS_OCELEX;
685
689
  }
686
- return FETCH_TOKEN_POOLS_ALGEBRA;
690
+ return exports.FETCH_TOKEN_POOLS_ALGEBRA;
687
691
  }
688
- else if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {
689
- return FETCH_TOKEN_POOLS_ARTHSWAP;
692
+ else if (protocol === index_js_1.Protocol.ArthSwap || protocol === index_js_1.Protocol.ThickV2) {
693
+ return exports.FETCH_TOKEN_POOLS_ARTHSWAP;
690
694
  }
691
- else if (protocol === Protocol.PoolShark) {
692
- return FETCH_TOKEN_POOLS_POOLSHARK;
695
+ else if (protocol === index_js_1.Protocol.PoolShark) {
696
+ return exports.FETCH_TOKEN_POOLS_POOLSHARK;
693
697
  }
694
- else if (protocol === Protocol.Kyo) {
695
- return FETCH_TOKEN_POOLS_KYO;
698
+ else if (protocol === index_js_1.Protocol.Kyo) {
699
+ return exports.FETCH_TOKEN_POOLS_KYO;
696
700
  }
697
- else if (isShadowProtocol(protocol)) {
698
- return FETCH_TOKEN_POOLS_SHADOW;
701
+ else if ((0, index_js_1.isShadowProtocol)(protocol)) {
702
+ return exports.FETCH_TOKEN_POOLS_SHADOW;
699
703
  }
700
704
  else {
701
- return FETCH_TOKEN_POOLS_UNISWAP;
705
+ return exports.FETCH_TOKEN_POOLS_UNISWAP;
702
706
  }
703
707
  };
708
+ exports.getTokenPoolsQueryByAddress = getTokenPoolsQueryByAddress;
704
709
  /**
705
710
  * GraphQL query to fetch detailed information for a specific pool from Algebra-based protocols
706
711
  * Returns pool details including tokens, volume, tick, and liquidity
@@ -905,20 +910,20 @@ query pools($pool: String! ) {
905
910
  * // Returns FETCH_POOL_DETAILS_UNISWAP query
906
911
  * ```
907
912
  */
908
- export const getPoolDetailsQuery = (isAlgebraPool, protocol) => {
909
- if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {
913
+ const getPoolDetailsQuery = (isAlgebraPool, protocol) => {
914
+ if (protocol === index_js_1.Protocol.ArthSwap || protocol === index_js_1.Protocol.ThickV2) {
910
915
  return FETCH_POOL_DETAILS_ARTHSWAP;
911
916
  }
912
- else if (protocol === Protocol.Ocelex) {
917
+ else if (protocol === index_js_1.Protocol.Ocelex) {
913
918
  return FETCH_POOL_DETAILS_OCELEX;
914
919
  }
915
- else if (protocol === Protocol.PoolShark) {
920
+ else if (protocol === index_js_1.Protocol.PoolShark) {
916
921
  return FETCH_POOL_DETAILS_POOLSHARK;
917
922
  }
918
- else if (protocol === Protocol.Kyo) {
923
+ else if (protocol === index_js_1.Protocol.Kyo) {
919
924
  return FETCH_POOL_DETAILS_KYO;
920
925
  }
921
- else if (protocol && isShadowProtocol(protocol)) {
926
+ else if (protocol && (0, index_js_1.isShadowProtocol)(protocol)) {
922
927
  return FETCH_POOL_DETAILS_SHADOW;
923
928
  }
924
929
  else if (isAlgebraPool) {
@@ -928,4 +933,5 @@ export const getPoolDetailsQuery = (isAlgebraPool, protocol) => {
928
933
  return FETCH_POOL_DETAILS_UNISWAP;
929
934
  }
930
935
  };
936
+ exports.getPoolDetailsQuery = getPoolDetailsQuery;
931
937
  //# sourceMappingURL=PoolQueryAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PoolQueryAdapter.js","sourceRoot":"","sources":["../../../src/utils/PoolQueryAdapter.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Pool Query Adapter - Provides GraphQL queries for different DEX protocols\n * @module PoolQueryAdapter\n */\n\nimport { isShadowProtocol, Protocol } from '../const/index.js';\n\n/**\n * GraphQL query to fetch top pools from Shadow protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_SHADOW = `\nquery {\n\tclPools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Uniswap V3 protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_UNISWAP = `\nquery {\n\tpools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Thruster protocol by TVL\n * Returns pools ordered by totalValueLockedETH in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_THRUSTER = `\nquery {\n\tpools(first: 500, orderBy: totalValueLockedETH, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from PoolShark protocol by volume\n * Returns limit pools ordered by volumeUsd in descending order\n * @internal\n */\nconst FETCH_POOLSHARK_TOP_POOLS = `\n{\n limitPools(first: 500, orderBy: volumeUsd, orderDirection: desc, subgraphError: allow) {\n id\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n }\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Algebra-based protocols by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_ALGEBRA = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Ocelex protocol\n * Returns first 500 pools with basic volume and liquidity data\n * @internal\n */\nconst FETCH_TOP_POOLS_OCELEX = `\nquery {\n\tpools(first: 500){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Kyo protocol by volume\n * Returns pools ordered by volumeUSD in descending order with fee information\n * @internal\n */\nconst FETCH_TOP_POOLS_KYO = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from ArthSwap protocol by volume\n * Returns pools ordered by volumeUSD_DESC with fee tier information\n * @internal\n */\nconst FETCH_ARTHSWAP_TOP_POOLS = `\n{\n pools(limit:500, orderBy: volumeUSD_DESC) {\n id\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n }\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching top pools based on protocol type\n * \n * @param protocol - The DEX protocol to fetch pools from\n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @returns GraphQL query string for fetching top pools\n * \n * @example\n * ```typescript\n * const query = getTopPoolsQuery(Protocol.UniswapV3, false);\n * // Returns FETCH_TOP_POOLS_UNISWAP query\n * ```\n */\nexport const getTopPoolsQuery = (protocol: Protocol, isAlgebraPool: boolean): string => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_ARTHSWAP_TOP_POOLS;\n } else if (protocol === Protocol.Thruster) {\n return FETCH_TOP_POOLS_THRUSTER;\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_TOP_POOLS_OCELEX;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOLSHARK_TOP_POOLS;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOP_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOP_POOLS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_TOP_POOLS_ALGEBRA;\n } else {\n return FETCH_TOP_POOLS_UNISWAP;\n }\n};\n\n// --- Token Pool Queries for fetchPoolsForTokens ---\n\n/**\n * GraphQL query to fetch pools containing a specific token from Algebra-based protocols\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ALGEBRA = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Ocelex protocol\n * Returns up to 50 pools that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_OCELEX = `\nquery pools($token: ID!) {\n\tpools(first: 50, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from ArthSwap protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ARTHSWAP = `\nquery pools($token: String!) {\n\tpools(limit: 50, orderBy: volumeUSD_DESC, where: {\n OR: [\n {\n\t\t\t\ttoken0Id_eq: $token\n }\n {\n token1Id_eq: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Uniswap V3 protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_UNISWAP = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Shadow protocol\n * Returns up to 50 CL pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_SHADOW = `\nquery pools($token: String!) {\n\tclPools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from PoolShark protocol\n * Returns up to 50 limit pools ordered by TVL that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_POOLSHARK = `\nquery pools($token: String!) {\n\tlimitPools(first: 50, orderBy: totalValueLockedEth, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Kyo protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_KYO = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching pools containing a specific token\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pools from\n * @returns GraphQL query string for fetching token pools\n * \n * @example\n * ```typescript\n * const query = getTokenPoolsQueryByAddress(false, Protocol.UniswapV3);\n * // Returns FETCH_TOKEN_POOLS_UNISWAP query\n * ```\n */\nexport const getTokenPoolsQueryByAddress = (isAlgebraPool: boolean, protocol: Protocol) => {\n if (isAlgebraPool) {\n if (protocol === Protocol.Ocelex) {\n return FETCH_TOKEN_POOLS_OCELEX;\n }\n return FETCH_TOKEN_POOLS_ALGEBRA;\n } else if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_TOKEN_POOLS_ARTHSWAP;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_TOKEN_POOLS_POOLSHARK;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOKEN_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOKEN_POOLS_SHADOW;\n } else {\n return FETCH_TOKEN_POOLS_UNISWAP;\n }\n};\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Algebra-based protocols\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ALGEBRA = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Ocelex protocol\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_OCELEX = `\nquery pools($pool: ID!) {\n\tpool(id: $pool){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Uniswap V3 protocol\n * Returns comprehensive pool details including fees, TVL, and volume data\n * @internal\n */\nconst FETCH_POOL_DETAILS_UNISWAP = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n totalValueLockedETH\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Shadow protocol\n * Returns CL pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_SHADOW = `\nquery pools($pool: String! ) {\n\tclPool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from PoolShark protocol\n * Returns limit pool details including tokens, volume, and fee information\n * @internal\n */\nconst FETCH_POOL_DETAILS_POOLSHARK = `\nquery pools($pool: String! ) {\n\tlimitPools(where: {id: $pool}){\n\t\tid\n volumeUsd\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier {\n id\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from ArthSwap protocol\n * Returns pool details including tokens, volume, fee tier, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ARTHSWAP = `\nquery pools($pool: String! ) {\n\tpools(where: {id_eq: $pool}){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Kyo protocol\n * Returns pool details including tokens, volume, fee, and liquidity with decimals\n * @internal\n */\nconst FETCH_POOL_DETAILS_KYO = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * Returns the appropriate GraphQL query for fetching detailed pool information\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pool details from (optional)\n * @returns GraphQL query string for fetching pool details\n * \n * @example\n * ```typescript\n * const query = getPoolDetailsQuery(false, Protocol.UniswapV3);\n * // Returns FETCH_POOL_DETAILS_UNISWAP query\n * ```\n */\nexport const getPoolDetailsQuery = (isAlgebraPool: boolean, protocol?: Protocol) => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_POOL_DETAILS_ARTHSWAP\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_POOL_DETAILS_OCELEX\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOL_DETAILS_POOLSHARK\n } else if (protocol === Protocol.Kyo) {\n return FETCH_POOL_DETAILS_KYO;\n } else if (protocol && isShadowProtocol(protocol)) {\n return FETCH_POOL_DETAILS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_POOL_DETAILS_ALGEBRA;\n } else {\n return FETCH_POOL_DETAILS_UNISWAP\n }\n }"]}
1
+ {"version":3,"file":"PoolQueryAdapter.js","sourceRoot":"","sources":["../../../src/utils/PoolQueryAdapter.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Pool Query Adapter - Provides GraphQL queries for different DEX protocols\n * @module PoolQueryAdapter\n */\n\nimport { isShadowProtocol, Protocol } from '../const/index.js';\n\n/**\n * GraphQL query to fetch top pools from Shadow protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_SHADOW = `\nquery {\n\tclPools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Uniswap V3 protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_UNISWAP = `\nquery {\n\tpools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Thruster protocol by TVL\n * Returns pools ordered by totalValueLockedETH in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_THRUSTER = `\nquery {\n\tpools(first: 500, orderBy: totalValueLockedETH, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from PoolShark protocol by volume\n * Returns limit pools ordered by volumeUsd in descending order\n * @internal\n */\nconst FETCH_POOLSHARK_TOP_POOLS = `\n{\n limitPools(first: 500, orderBy: volumeUsd, orderDirection: desc, subgraphError: allow) {\n id\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n }\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Algebra-based protocols by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_ALGEBRA = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Ocelex protocol\n * Returns first 500 pools with basic volume and liquidity data\n * @internal\n */\nconst FETCH_TOP_POOLS_OCELEX = `\nquery {\n\tpools(first: 500){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Kyo protocol by volume\n * Returns pools ordered by volumeUSD in descending order with fee information\n * @internal\n */\nconst FETCH_TOP_POOLS_KYO = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from ArthSwap protocol by volume\n * Returns pools ordered by volumeUSD_DESC with fee tier information\n * @internal\n */\nconst FETCH_ARTHSWAP_TOP_POOLS = `\n{\n pools(limit:500, orderBy: volumeUSD_DESC) {\n id\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n }\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching top pools based on protocol type\n * \n * @param protocol - The DEX protocol to fetch pools from\n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @returns GraphQL query string for fetching top pools\n * \n * @example\n * ```typescript\n * const query = getTopPoolsQuery(Protocol.UniswapV3, false);\n * // Returns FETCH_TOP_POOLS_UNISWAP query\n * ```\n */\nexport const getTopPoolsQuery = (protocol: Protocol, isAlgebraPool: boolean): string => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_ARTHSWAP_TOP_POOLS;\n } else if (protocol === Protocol.Thruster) {\n return FETCH_TOP_POOLS_THRUSTER;\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_TOP_POOLS_OCELEX;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOLSHARK_TOP_POOLS;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOP_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOP_POOLS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_TOP_POOLS_ALGEBRA;\n } else {\n return FETCH_TOP_POOLS_UNISWAP;\n }\n};\n\n// --- Token Pool Queries for fetchPoolsForTokens ---\n\n/**\n * GraphQL query to fetch pools containing a specific token from Algebra-based protocols\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ALGEBRA = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Ocelex protocol\n * Returns up to 50 pools that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_OCELEX = `\nquery pools($token: ID!) {\n\tpools(first: 50, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from ArthSwap protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ARTHSWAP = `\nquery pools($token: String!) {\n\tpools(limit: 50, orderBy: volumeUSD_DESC, where: {\n OR: [\n {\n\t\t\t\ttoken0Id_eq: $token\n }\n {\n token1Id_eq: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Uniswap V3 protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_UNISWAP = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Shadow protocol\n * Returns up to 50 CL pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_SHADOW = `\nquery pools($token: String!) {\n\tclPools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from PoolShark protocol\n * Returns up to 50 limit pools ordered by TVL that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_POOLSHARK = `\nquery pools($token: String!) {\n\tlimitPools(first: 50, orderBy: totalValueLockedEth, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Kyo protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_KYO = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching pools containing a specific token\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pools from\n * @returns GraphQL query string for fetching token pools\n * \n * @example\n * ```typescript\n * const query = getTokenPoolsQueryByAddress(false, Protocol.UniswapV3);\n * // Returns FETCH_TOKEN_POOLS_UNISWAP query\n * ```\n */\nexport const getTokenPoolsQueryByAddress = (isAlgebraPool: boolean, protocol: Protocol) => {\n if (isAlgebraPool) {\n if (protocol === Protocol.Ocelex) {\n return FETCH_TOKEN_POOLS_OCELEX;\n }\n return FETCH_TOKEN_POOLS_ALGEBRA;\n } else if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_TOKEN_POOLS_ARTHSWAP;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_TOKEN_POOLS_POOLSHARK;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOKEN_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOKEN_POOLS_SHADOW;\n } else {\n return FETCH_TOKEN_POOLS_UNISWAP;\n }\n};\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Algebra-based protocols\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ALGEBRA = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Ocelex protocol\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_OCELEX = `\nquery pools($pool: ID!) {\n\tpool(id: $pool){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Uniswap V3 protocol\n * Returns comprehensive pool details including fees, TVL, and volume data\n * @internal\n */\nconst FETCH_POOL_DETAILS_UNISWAP = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n totalValueLockedETH\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Shadow protocol\n * Returns CL pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_SHADOW = `\nquery pools($pool: String! ) {\n\tclPool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from PoolShark protocol\n * Returns limit pool details including tokens, volume, and fee information\n * @internal\n */\nconst FETCH_POOL_DETAILS_POOLSHARK = `\nquery pools($pool: String! ) {\n\tlimitPools(where: {id: $pool}){\n\t\tid\n volumeUsd\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier {\n id\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from ArthSwap protocol\n * Returns pool details including tokens, volume, fee tier, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ARTHSWAP = `\nquery pools($pool: String! ) {\n\tpools(where: {id_eq: $pool}){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Kyo protocol\n * Returns pool details including tokens, volume, fee, and liquidity with decimals\n * @internal\n */\nconst FETCH_POOL_DETAILS_KYO = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * Returns the appropriate GraphQL query for fetching detailed pool information\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pool details from (optional)\n * @returns GraphQL query string for fetching pool details\n * \n * @example\n * ```typescript\n * const query = getPoolDetailsQuery(false, Protocol.UniswapV3);\n * // Returns FETCH_POOL_DETAILS_UNISWAP query\n * ```\n */\nexport const getPoolDetailsQuery = (isAlgebraPool: boolean, protocol?: Protocol) => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_POOL_DETAILS_ARTHSWAP\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_POOL_DETAILS_OCELEX\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOL_DETAILS_POOLSHARK\n } else if (protocol === Protocol.Kyo) {\n return FETCH_POOL_DETAILS_KYO;\n } else if (protocol && isShadowProtocol(protocol)) {\n return FETCH_POOL_DETAILS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_POOL_DETAILS_ALGEBRA;\n } else {\n return FETCH_POOL_DETAILS_UNISWAP\n }\n }"]}