@berachain/berajs 0.2.13 → 0.3.1

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 (387) hide show
  1. package/dist/actions/clients/BeraApolloClient.d.ts.map +1 -1
  2. package/dist/actions/clients/clientName.d.ts +10 -0
  3. package/dist/actions/clients/clientName.d.ts.map +1 -0
  4. package/dist/actions/clients/clientName.unit.test.d.ts +2 -0
  5. package/dist/actions/clients/clientName.unit.test.d.ts.map +1 -0
  6. package/dist/actions/clients/exports.d.ts +2 -0
  7. package/dist/actions/clients/exports.d.ts.map +1 -1
  8. package/dist/actions/clients/exports.mjs +26 -7
  9. package/dist/actions/clients/exports.mjs.map +1 -1
  10. package/dist/actions/clients/fetchBeep.d.ts +2 -2
  11. package/dist/actions/clients/fetchBeep.d.ts.map +1 -1
  12. package/dist/actions/clients/fetchEnso.d.ts +17 -0
  13. package/dist/actions/clients/fetchEnso.d.ts.map +1 -0
  14. package/dist/actions/clients/fetchLayerzero.d.ts +12 -0
  15. package/dist/actions/clients/fetchLayerzero.d.ts.map +1 -0
  16. package/dist/actions/clients/fetchOpenApi.d.ts +4 -1
  17. package/dist/actions/clients/fetchOpenApi.d.ts.map +1 -1
  18. package/dist/actions/clients/getApolloClient.d.ts.map +1 -1
  19. package/dist/actions/dex/aggregators/base.d.ts +30 -5
  20. package/dist/actions/dex/aggregators/base.d.ts.map +1 -1
  21. package/dist/actions/dex/aggregators/bex.d.ts +11 -1
  22. package/dist/actions/dex/aggregators/bex.d.ts.map +1 -1
  23. package/dist/actions/dex/aggregators/bgt.d.ts +2 -2
  24. package/dist/actions/dex/aggregators/bgt.d.ts.map +1 -1
  25. package/dist/actions/dex/aggregators/enso/enso.d.ts.map +1 -1
  26. package/dist/actions/dex/aggregators/enso/ensoErc4626.d.ts +1 -0
  27. package/dist/actions/dex/aggregators/enso/ensoErc4626.d.ts.map +1 -1
  28. package/dist/actions/dex/aggregators/erc4626.d.ts +2 -2
  29. package/dist/actions/dex/aggregators/erc4626.d.ts.map +1 -1
  30. package/dist/actions/dex/aggregators/fly.d.ts.map +1 -1
  31. package/dist/actions/dex/aggregators/haiku.d.ts +7 -1
  32. package/dist/actions/dex/aggregators/haiku.d.ts.map +1 -1
  33. package/dist/actions/dex/aggregators/honey.d.ts +2 -2
  34. package/dist/actions/dex/aggregators/honey.d.ts.map +1 -1
  35. package/dist/actions/dex/aggregators/kyberswap.d.ts.map +1 -1
  36. package/dist/actions/dex/aggregators/oogabooga.d.ts.map +1 -1
  37. package/dist/actions/dex/aggregators/openOcean.d.ts.map +1 -1
  38. package/dist/actions/dex/aggregators/wbera.d.ts +3 -2
  39. package/dist/actions/dex/aggregators/wbera.d.ts.map +1 -1
  40. package/dist/actions/dex/getAllPools.d.ts.map +1 -1
  41. package/dist/actions/dex/getApiPool.d.ts.map +1 -1
  42. package/dist/actions/enso/getEnsoUserTokensWithBalances.d.ts.map +1 -1
  43. package/dist/actions/enso/util.d.ts +1 -6
  44. package/dist/actions/enso/util.d.ts.map +1 -1
  45. package/dist/actions/exports.d.ts +3 -5
  46. package/dist/actions/exports.d.ts.map +1 -1
  47. package/dist/actions/exports.mjs +33 -64
  48. package/dist/actions/exports.mjs.map +1 -1
  49. package/dist/actions/governance/exports.mjs +3 -3
  50. package/dist/actions/honey/getChartData.d.ts +1 -1
  51. package/dist/actions/honey/getChartData.d.ts.map +1 -1
  52. package/dist/actions/honey/getHoney24hVolume.d.ts +2 -2
  53. package/dist/actions/honey/getHoney24hVolume.d.ts.map +1 -1
  54. package/dist/actions/honey/getHoneyCollaterals.d.ts +1 -1
  55. package/dist/actions/honey/getHoneyCollaterals.d.ts.map +1 -1
  56. package/dist/actions/honey/getHoneyTxns.d.ts +1 -1
  57. package/dist/actions/honey/getHoneyTxns.d.ts.map +1 -1
  58. package/dist/actions/pol/getBGTGlobalInfo.d.ts +0 -1
  59. package/dist/actions/pol/getBGTGlobalInfo.d.ts.map +1 -1
  60. package/dist/actions/pol/getBeraTokenTotalSupply.d.ts.map +1 -1
  61. package/dist/actions/pol/getEarnedStakedBeraVault.d.ts +4 -27
  62. package/dist/actions/pol/getEarnedStakedBeraVault.d.ts.map +1 -1
  63. package/dist/actions/pol/getLSTStakeConfig.d.ts.map +1 -1
  64. package/dist/actions/pol/getRewardVaults.d.ts.map +1 -1
  65. package/dist/actions/pol/getSWBeraVaultMetadata.d.ts +1 -14
  66. package/dist/actions/pol/getSWBeraVaultMetadata.d.ts.map +1 -1
  67. package/dist/actions/pol/getStakedBeraAPY.d.ts +14 -0
  68. package/dist/actions/pol/getStakedBeraAPY.d.ts.map +1 -0
  69. package/dist/actions/pol/getStakedBeraSnapshots.d.ts +14 -4
  70. package/dist/actions/pol/getStakedBeraSnapshots.d.ts.map +1 -1
  71. package/dist/actions/pol/getStakingDailyAssets.d.ts +2 -2
  72. package/dist/actions/pol/getStakingDailyAssets.d.ts.map +1 -1
  73. package/dist/actions/server/exports.mjs +5 -5
  74. package/dist/actions/server/exports.mjs.map +1 -1
  75. package/dist/actions/server/getDailyValidatorBlockStats.d.ts +1 -1
  76. package/dist/actions/server/getDailyValidatorBlockStats.d.ts.map +1 -1
  77. package/dist/actions/validators/getActiveBoostAndCommissionChangeDelay.d.ts +1 -1
  78. package/dist/actions/validators/getActiveBoostAndCommissionChangeDelay.d.ts.map +1 -1
  79. package/dist/actions/validators/getUserActiveValidators.d.ts +37 -1
  80. package/dist/actions/validators/getUserActiveValidators.d.ts.map +1 -1
  81. package/dist/actions/validators/getValidatorIncentiveDistribution.d.ts +1 -1
  82. package/dist/actions/validators/getValidatorIncentiveDistribution.d.ts.map +1 -1
  83. package/dist/actions/validators/getValidatorRewardAllocation.d.ts +4 -0
  84. package/dist/actions/validators/getValidatorRewardAllocation.d.ts.map +1 -1
  85. package/dist/chunk-3TRTSTDH.mjs +19 -0
  86. package/dist/chunk-3TRTSTDH.mjs.map +1 -0
  87. package/dist/{chunk-ZWTGVIPJ.mjs → chunk-4576RF2K.mjs} +29 -4
  88. package/dist/chunk-4576RF2K.mjs.map +1 -0
  89. package/dist/{chunk-PHYZRH4I.mjs → chunk-5MUCX35C.mjs} +9 -13
  90. package/dist/chunk-5MUCX35C.mjs.map +1 -0
  91. package/dist/{chunk-UA3Z47LT.mjs → chunk-6D4S3EAC.mjs} +97 -26
  92. package/dist/chunk-6D4S3EAC.mjs.map +1 -0
  93. package/dist/{chunk-AEN6IJFU.mjs → chunk-7KN7TDUC.mjs} +2 -2
  94. package/dist/{chunk-LE4CYW7S.mjs → chunk-FWRYUIJK.mjs} +3 -3
  95. package/dist/chunk-GDUKRUHE.mjs +29 -0
  96. package/dist/chunk-GDUKRUHE.mjs.map +1 -0
  97. package/dist/{chunk-PJRLHTGC.mjs → chunk-HPRLNT6R.mjs} +3 -3
  98. package/dist/{chunk-DOZJB6IJ.mjs → chunk-KY7JMIIS.mjs} +394 -346
  99. package/dist/chunk-KY7JMIIS.mjs.map +1 -0
  100. package/dist/{chunk-P3YZ7F22.mjs → chunk-LL7XR2H5.mjs} +34 -3
  101. package/dist/chunk-LL7XR2H5.mjs.map +1 -0
  102. package/dist/{chunk-EJIGERYM.mjs → chunk-M3MIGSH3.mjs} +2 -2
  103. package/dist/{chunk-NZAH3SGT.mjs → chunk-MVNQY2D4.mjs} +9 -4
  104. package/dist/chunk-MVNQY2D4.mjs.map +1 -0
  105. package/dist/{chunk-TGN55GKE.mjs → chunk-SC3BSCTN.mjs} +2 -2
  106. package/dist/{chunk-QQASX4LJ.mjs → chunk-TXWDUJOY.mjs} +2 -2
  107. package/dist/{chunk-EGAB6NFQ.mjs → chunk-UWJQ6UKG.mjs} +2 -2
  108. package/dist/chunk-XO2BFPTB.mjs +50 -0
  109. package/dist/chunk-XO2BFPTB.mjs.map +1 -0
  110. package/dist/{chunk-7TFV6UKF.mjs → chunk-XXKPXNQD.mjs} +1 -2
  111. package/dist/chunk-XXKPXNQD.mjs.map +1 -0
  112. package/dist/{chunk-IFNIPVTZ.mjs → chunk-Z337NBBW.mjs} +5 -49
  113. package/dist/chunk-Z337NBBW.mjs.map +1 -0
  114. package/dist/{chunk-J3LTASDE.mjs → chunk-ZHV3MQ4F.mjs} +4 -4
  115. package/dist/contexts/BeraFlags/BeraFlags.d.ts +1 -1
  116. package/dist/contexts/BeraFlags/BeraFlags.d.ts.map +1 -1
  117. package/dist/contexts/BeraFlags/defaultFlags.d.ts +2 -2
  118. package/dist/contexts/BeraFlags/defaultFlags.d.ts.map +1 -1
  119. package/dist/contexts/BexStatusProvider.d.ts +1 -1
  120. package/dist/contexts/BexStatusProvider.d.ts.map +1 -1
  121. package/dist/contexts/TokensProvider.d.ts +1 -1
  122. package/dist/contexts/TokensProvider.d.ts.map +1 -1
  123. package/dist/contexts/exports.mjs +9 -9
  124. package/dist/enum/contracts.d.ts +3 -0
  125. package/dist/enum/contracts.d.ts.map +1 -1
  126. package/dist/enum/exports.mjs +6 -4
  127. package/dist/enum/exports.mjs.map +1 -1
  128. package/dist/enum/txnEnum.d.ts +1 -1
  129. package/dist/enum/txnEnum.d.ts.map +1 -1
  130. package/dist/errors/RequestError.d.ts +19 -0
  131. package/dist/errors/RequestError.d.ts.map +1 -1
  132. package/dist/errors/errorMap.d.ts +4 -3
  133. package/dist/errors/errorMap.d.ts.map +1 -1
  134. package/dist/errors/exports.mjs +5 -5
  135. package/dist/errors/getErrorMessage.unit.test.d.ts +2 -0
  136. package/dist/errors/getErrorMessage.unit.test.d.ts.map +1 -0
  137. package/dist/generated/beep.d.ts +1597 -0
  138. package/dist/generated/beep.d.ts.map +1 -0
  139. package/dist/generated/enso.d.ts +4957 -0
  140. package/dist/generated/enso.d.ts.map +1 -0
  141. package/dist/generated/layerzero.d.ts +2057 -0
  142. package/dist/generated/layerzero.d.ts.map +1 -0
  143. package/dist/hooks/dex/useAggregatorsQuotes.d.ts.map +1 -1
  144. package/dist/hooks/dex/useAllUserPools.d.ts.map +1 -1
  145. package/dist/hooks/dex/useCrossChainNativeFee.d.ts +32 -0
  146. package/dist/hooks/dex/useCrossChainNativeFee.d.ts.map +1 -0
  147. package/dist/hooks/dex/useCrossChainNativeFee.unit.test.d.ts +2 -0
  148. package/dist/hooks/dex/useCrossChainNativeFee.unit.test.d.ts.map +1 -0
  149. package/dist/hooks/dex/useOnChainPoolData.d.ts.map +1 -1
  150. package/dist/hooks/dex/usePools.d.ts.map +1 -1
  151. package/dist/hooks/dex/useSingleAggregatorQuote.d.ts.map +1 -1
  152. package/dist/hooks/dex/useSingleAggregatorQuote.unit.test.d.ts +2 -0
  153. package/dist/hooks/dex/useSingleAggregatorQuote.unit.test.d.ts.map +1 -0
  154. package/dist/hooks/enso/useBendZapSupply.d.ts +2 -2
  155. package/dist/hooks/enso/useBendZapSupply.d.ts.map +1 -1
  156. package/dist/hooks/enso/useBendZapSupply.unit.test.d.ts +2 -0
  157. package/dist/hooks/enso/useBendZapSupply.unit.test.d.ts.map +1 -0
  158. package/dist/hooks/enso/useEnsoUserTokensWithBalances.d.ts.map +1 -1
  159. package/dist/hooks/enso/useEnsoUserTokensWithBalances.unit.test.d.ts +2 -0
  160. package/dist/hooks/enso/useEnsoUserTokensWithBalances.unit.test.d.ts.map +1 -0
  161. package/dist/hooks/enso/useZapStakeBera.d.ts.map +1 -1
  162. package/dist/hooks/enso/useZapStakeBera.unit.test.d.ts +2 -0
  163. package/dist/hooks/enso/useZapStakeBera.unit.test.d.ts.map +1 -0
  164. package/dist/hooks/exports.d.ts +2 -5
  165. package/dist/hooks/exports.d.ts.map +1 -1
  166. package/dist/hooks/exports.mjs +615 -911
  167. package/dist/hooks/exports.mjs.map +1 -1
  168. package/dist/hooks/governance/exports.mjs +4 -4
  169. package/dist/hooks/honey/useHoneyChartData.d.ts +4 -4
  170. package/dist/hooks/honey/useHoneyChartData.d.ts.map +1 -1
  171. package/dist/hooks/pol/useAutoclaimedIncentives.d.ts.map +1 -1
  172. package/dist/hooks/pol/useAutoclaimedIncentivesTxHash.d.ts.map +1 -1
  173. package/dist/hooks/pol/useRewardTokenToBeraRate.d.ts.map +1 -1
  174. package/dist/hooks/pol/useRewardVaultBalanceFromStakingToken.d.ts.map +1 -1
  175. package/dist/hooks/pol/useRewardVaults.d.ts.map +1 -1
  176. package/dist/hooks/pol/useStakedAPY.d.ts +11 -0
  177. package/dist/hooks/pol/useStakedAPY.d.ts.map +1 -0
  178. package/dist/hooks/pol/useStakedData.d.ts +4 -2
  179. package/dist/hooks/pol/useStakedData.d.ts.map +1 -1
  180. package/dist/hooks/pol/useStakedSnapshots.d.ts +1 -1
  181. package/dist/hooks/pol/useStakedSnapshots.d.ts.map +1 -1
  182. package/dist/hooks/pol/useStakingVaultsMetadata.d.ts +0 -1
  183. package/dist/hooks/pol/useStakingVaultsMetadata.d.ts.map +1 -1
  184. package/dist/hooks/tokens/useMultipleTokenInformation.d.ts +30 -0
  185. package/dist/hooks/tokens/useMultipleTokenInformation.d.ts.map +1 -1
  186. package/dist/hooks/tokens/useMultipleTokenInformation.unit.test.d.ts +2 -0
  187. package/dist/hooks/tokens/useMultipleTokenInformation.unit.test.d.ts.map +1 -0
  188. package/dist/hooks/tokens/usePollBalance.d.ts.map +1 -1
  189. package/dist/hooks/validators/useUserActiveValidators.d.ts +5 -0
  190. package/dist/hooks/validators/useUserActiveValidators.d.ts.map +1 -1
  191. package/dist/hooks/validators/useValidator.d.ts +0 -1
  192. package/dist/hooks/validators/useValidator.d.ts.map +1 -1
  193. package/dist/hooks/validators/useValidatorIncentiveDistribution.d.ts +4 -5
  194. package/dist/hooks/validators/useValidatorIncentiveDistribution.d.ts.map +1 -1
  195. package/dist/hooks/validators/useValidatorRewardAllocation.d.ts +1 -0
  196. package/dist/hooks/validators/useValidatorRewardAllocation.d.ts.map +1 -1
  197. package/dist/types/beep/exports.d.ts +2 -0
  198. package/dist/types/beep/exports.d.ts.map +1 -0
  199. package/dist/types/beep/exports.mjs +1 -0
  200. package/dist/types/beep/exports.mjs.map +1 -0
  201. package/dist/types/bribeBoost.d.ts +0 -49
  202. package/dist/types/dex.d.ts +17 -0
  203. package/dist/types/enso.d.ts +1 -27
  204. package/dist/types/global.d.ts +7 -0
  205. package/dist/types/pol.d.ts +3 -48
  206. package/dist/utils/crossChainBridge.d.ts +74 -0
  207. package/dist/utils/crossChainBridge.d.ts.map +1 -0
  208. package/dist/utils/crossChainBridge.unit.test.d.ts +2 -0
  209. package/dist/utils/crossChainBridge.unit.test.d.ts.map +1 -0
  210. package/dist/utils/exports.d.ts +1 -1
  211. package/dist/utils/exports.d.ts.map +1 -1
  212. package/dist/utils/exports.mjs +142 -72
  213. package/dist/utils/exports.mjs.map +1 -1
  214. package/dist/utils/getTestClient.d.ts +5 -3
  215. package/dist/utils/getTestClient.d.ts.map +1 -1
  216. package/dist/utils/parseWhiskToken.d.ts.map +1 -1
  217. package/package.json +14 -10
  218. package/src/actions/clients/BeraApolloClient.ts +4 -2
  219. package/src/actions/clients/clientName.ts +17 -0
  220. package/src/actions/clients/clientName.unit.test.ts +39 -0
  221. package/src/actions/clients/exports.ts +2 -0
  222. package/src/actions/clients/fetchBeep.ts +6 -4
  223. package/src/actions/clients/fetchEnso.ts +47 -0
  224. package/src/actions/clients/fetchLayerzero.ts +33 -0
  225. package/src/actions/clients/fetchOpenApi.ts +9 -2
  226. package/src/actions/clients/fetchOpenApi.unit.test.ts +27 -12
  227. package/src/actions/clients/getApolloClient.ts +3 -11
  228. package/src/actions/dex/__tests__/aggregators.unit.test.ts +231 -2
  229. package/src/actions/dex/aggregators/base.ts +75 -17
  230. package/src/actions/dex/aggregators/bex.ts +41 -1
  231. package/src/actions/dex/aggregators/bgt.ts +11 -6
  232. package/src/actions/dex/aggregators/enso/enso.ts +1 -0
  233. package/src/actions/dex/aggregators/enso/ensoErc4626.ts +27 -9
  234. package/src/actions/dex/aggregators/erc4626.ts +19 -5
  235. package/src/actions/dex/aggregators/fly.ts +1 -0
  236. package/src/actions/dex/aggregators/haiku.ts +33 -2
  237. package/src/actions/dex/aggregators/honey.ts +17 -6
  238. package/src/actions/dex/aggregators/kyberswap.ts +1 -0
  239. package/src/actions/dex/aggregators/oogabooga.ts +1 -0
  240. package/src/actions/dex/aggregators/openOcean.ts +1 -0
  241. package/src/actions/dex/aggregators/wbera.ts +17 -11
  242. package/src/actions/enso/getBendMultiplyBundle.ts +1 -1
  243. package/src/actions/enso/getEnsoUserTokensWithBalances.ts +4 -8
  244. package/src/actions/enso/util.ts +0 -59
  245. package/src/actions/exports.ts +3 -5
  246. package/src/actions/honey/getChartData.ts +2 -3
  247. package/src/actions/honey/getHoney24hVolume.ts +4 -13
  248. package/src/actions/honey/getHoneyCollaterals.ts +1 -1
  249. package/src/actions/honey/getHoneyTxns.ts +2 -3
  250. package/src/actions/pol/getBGTGlobalInfo.ts +0 -2
  251. package/src/actions/pol/getBeraTokenTotalSupply.ts +3 -33
  252. package/src/actions/pol/getEarnedStakedBeraVault.ts +1 -1
  253. package/src/actions/pol/getLSTStakeConfig.ts +0 -6
  254. package/src/actions/pol/getRewardVaults.ts +0 -1
  255. package/src/actions/pol/getSWBeraVaultMetadata.ts +2 -106
  256. package/src/actions/pol/getStakedBeraAPY.ts +44 -0
  257. package/src/actions/pol/getStakedBeraSnapshots.ts +17 -34
  258. package/src/actions/pol/getStakingDailyAssets.ts +1 -1
  259. package/src/actions/server/getDailyValidatorBlockStats.ts +1 -2
  260. package/src/actions/validators/getActiveBoostAndCommissionChangeDelay.ts +1 -1
  261. package/src/actions/validators/getUserActiveValidators.ts +116 -54
  262. package/src/actions/validators/getValidatorIncentiveDistribution.ts +1 -2
  263. package/src/actions/validators/getValidatorRewardAllocation.ts +12 -1
  264. package/src/contexts/BeraFlags/BeraFlags.tsx +1 -4
  265. package/src/contexts/BeraFlags/defaultFlags.ts +1 -3
  266. package/src/contexts/BexStatusProvider.tsx +1 -1
  267. package/src/contexts/TokensProvider.tsx +1 -4
  268. package/src/enum/contracts.ts +3 -0
  269. package/src/enum/txnEnum.ts +1 -1
  270. package/src/errors/BeraError.unit.test.ts +23 -0
  271. package/src/errors/RequestError.ts +46 -9
  272. package/src/errors/RequestError.unit.test.ts +54 -0
  273. package/src/errors/errorMap.ts +8 -3
  274. package/src/errors/getErrorMessage.unit.test.ts +32 -0
  275. package/src/generated/beep.ts +1605 -0
  276. package/src/generated/enso.ts +4965 -0
  277. package/src/generated/layerzero.ts +2065 -0
  278. package/src/hooks/dex/useAggregatorsQuotes.ts +7 -1
  279. package/src/hooks/dex/useCrossChainNativeFee.ts +83 -0
  280. package/src/hooks/dex/useCrossChainNativeFee.unit.test.ts +63 -0
  281. package/src/hooks/dex/useOnChainPoolData.ts +30 -13
  282. package/src/hooks/dex/useSingleAggregatorQuote.ts +10 -5
  283. package/src/hooks/dex/useSingleAggregatorQuote.unit.test.ts +86 -0
  284. package/src/hooks/enso/useBendZapSupply.ts +10 -38
  285. package/src/hooks/enso/useBendZapSupply.unit.test.ts +98 -0
  286. package/src/hooks/enso/useEnsoUserTokensWithBalances.ts +13 -3
  287. package/src/hooks/enso/useEnsoUserTokensWithBalances.unit.test.ts +69 -0
  288. package/src/hooks/enso/useZapStakeBera.ts +8 -1
  289. package/src/hooks/enso/useZapStakeBera.unit.test.ts +97 -0
  290. package/src/hooks/exports.ts +2 -5
  291. package/src/hooks/pol/useAutoclaimedIncentives.ts +6 -3
  292. package/src/hooks/pol/useAutoclaimedIncentivesTxHash.ts +5 -2
  293. package/src/hooks/pol/useRewardTokenToBeraRate.ts +5 -4
  294. package/src/hooks/pol/useRewardVaultBalanceFromStakingToken.ts +0 -1
  295. package/src/hooks/pol/{useStakedAPR.ts → useStakedAPY.ts} +11 -9
  296. package/src/hooks/pol/useStakedData.ts +15 -14
  297. package/src/hooks/pol/useStakedSnapshots.ts +1 -1
  298. package/src/hooks/pol/useStakingVaultsMetadata.ts +3 -8
  299. package/src/hooks/tokens/useMultipleTokenInformation.ts +64 -21
  300. package/src/hooks/tokens/useMultipleTokenInformation.unit.test.ts +91 -0
  301. package/src/hooks/tokens/usePollBalance.ts +4 -2
  302. package/src/hooks/validators/useUserActiveValidators.ts +54 -9
  303. package/src/hooks/validators/useValidatorIncentiveDistribution.ts +4 -5
  304. package/src/types/beep/exports.ts +4 -0
  305. package/src/types/bribeBoost.d.ts +0 -49
  306. package/src/types/dex.d.ts +17 -0
  307. package/src/types/enso.d.ts +1 -27
  308. package/src/types/global.d.ts +7 -0
  309. package/src/types/pol.d.ts +3 -48
  310. package/src/utils/crossChainBridge.ts +290 -0
  311. package/src/utils/crossChainBridge.unit.test.ts +177 -0
  312. package/src/utils/exports.ts +1 -1
  313. package/dist/BeraError-7-A5JYy_.d.ts +0 -123
  314. package/dist/BexStatusProvider-DRymVlQf.d.ts +0 -70
  315. package/dist/HoneyConfigProvider-COOuDNra.d.ts +0 -390
  316. package/dist/RequestError-DkUbo3ro.d.ts +0 -145
  317. package/dist/actions/dex/b-sdk.d.ts +0 -3
  318. package/dist/actions/enso/getEnsoSwapBundle.d.ts +0 -3
  319. package/dist/actions/enso/getEnsoSwapBundle.d.ts.map +0 -1
  320. package/dist/actions/pol/getBgtIncentiveDistributorPaused.d.ts +0 -10
  321. package/dist/actions/pol/getBgtIncentiveDistributorPaused.d.ts.map +0 -1
  322. package/dist/actions/pol/getRewardProofsByValidator.d.ts +0 -9
  323. package/dist/actions/pol/getRewardProofsByValidator.d.ts.map +0 -1
  324. package/dist/actions/pol/getStakedBeraAPR.d.ts +0 -12
  325. package/dist/actions/pol/getStakedBeraAPR.d.ts.map +0 -1
  326. package/dist/actions/pol/getUserClaimableIncentives.d.ts +0 -9
  327. package/dist/actions/pol/getUserClaimableIncentives.d.ts.map +0 -1
  328. package/dist/actions/validators/getValidatorAnalytics.d.ts +0 -12
  329. package/dist/actions/validators/getValidatorAnalytics.d.ts.map +0 -1
  330. package/dist/chunk-7TFV6UKF.mjs.map +0 -1
  331. package/dist/chunk-BSOWLS3W.mjs +0 -40
  332. package/dist/chunk-BSOWLS3W.mjs.map +0 -1
  333. package/dist/chunk-DOZJB6IJ.mjs.map +0 -1
  334. package/dist/chunk-IFNIPVTZ.mjs.map +0 -1
  335. package/dist/chunk-NZAH3SGT.mjs.map +0 -1
  336. package/dist/chunk-P3YZ7F22.mjs.map +0 -1
  337. package/dist/chunk-PHYZRH4I.mjs.map +0 -1
  338. package/dist/chunk-UA3Z47LT.mjs.map +0 -1
  339. package/dist/chunk-ZWTGVIPJ.mjs.map +0 -1
  340. package/dist/contexts/block-time-provider.d.ts +0 -10
  341. package/dist/defaultFlags-D6KfkTZx.d.ts +0 -10
  342. package/dist/dex-C_BB0b0O.d.ts +0 -37
  343. package/dist/getApolloClient-MWm_iq4u.d.ts +0 -39
  344. package/dist/getProposalVotes-DAUrdX2n.d.ts +0 -12
  345. package/dist/getValidatorQueuedOperatorAddress-N2I7wHd6.d.ts +0 -511
  346. package/dist/global.d-CR3zicga.d.ts +0 -231
  347. package/dist/global.d-CiZJ2eHz.d.ts +0 -231
  348. package/dist/honey-CYm0RWf4.d.ts +0 -14
  349. package/dist/hooks/enso/useEnsoSwapBundle.d.ts +0 -26
  350. package/dist/hooks/enso/useEnsoSwapBundle.d.ts.map +0 -1
  351. package/dist/hooks/pol/useBgtIncentiveDistributorPaused.d.ts +0 -8
  352. package/dist/hooks/pol/useBgtIncentiveDistributorPaused.d.ts.map +0 -1
  353. package/dist/hooks/pol/useStakedAPR.d.ts +0 -11
  354. package/dist/hooks/pol/useStakedAPR.d.ts.map +0 -1
  355. package/dist/hooks/validators/useUserClaimableIncentives.d.ts +0 -8
  356. package/dist/hooks/validators/useUserClaimableIncentives.d.ts.map +0 -1
  357. package/dist/hooks/validators/useValidatorAnalytics.d.ts +0 -11
  358. package/dist/hooks/validators/useValidatorAnalytics.d.ts.map +0 -1
  359. package/dist/pol.d-CeRgXBL8.d.ts +0 -167
  360. package/dist/txnEnum-ByI5dtDi.d.ts +0 -106
  361. package/dist/types/bribe-boost.d.ts +0 -69
  362. package/dist/useHoneySwapState-CXVWAThr.d.ts +0 -32
  363. package/dist/useHoneySwapState-twi7NTaO.d.ts +0 -32
  364. package/dist/utils/formatIncentivesTokenMap.d.ts +0 -3
  365. package/dist/utils/formatIncentivesTokenMap.d.ts.map +0 -1
  366. package/dist/utils/layerZeroScan.d.ts +0 -39
  367. package/dist/utils/layerZeroScan.d.ts.map +0 -1
  368. package/src/actions/enso/getEnsoSwapBundle.ts +0 -72
  369. package/src/actions/pol/getBgtIncentiveDistributorPaused.ts +0 -28
  370. package/src/actions/pol/getRewardProofsByValidator.ts +0 -49
  371. package/src/actions/pol/getStakedBeraAPR.ts +0 -56
  372. package/src/actions/pol/getUserClaimableIncentives.ts +0 -40
  373. package/src/actions/validators/getValidatorAnalytics.ts +0 -37
  374. package/src/hooks/enso/useEnsoSwapBundle.ts +0 -121
  375. package/src/hooks/pol/useBgtIncentiveDistributorPaused.ts +0 -34
  376. package/src/hooks/validators/useUserClaimableIncentives.ts +0 -148
  377. package/src/hooks/validators/useValidatorAnalytics.ts +0 -37
  378. package/src/utils/formatIncentivesTokenMap.ts +0 -19
  379. package/src/utils/layerZeroScan.ts +0 -124
  380. /package/dist/{chunk-AEN6IJFU.mjs.map → chunk-7KN7TDUC.mjs.map} +0 -0
  381. /package/dist/{chunk-LE4CYW7S.mjs.map → chunk-FWRYUIJK.mjs.map} +0 -0
  382. /package/dist/{chunk-PJRLHTGC.mjs.map → chunk-HPRLNT6R.mjs.map} +0 -0
  383. /package/dist/{chunk-EJIGERYM.mjs.map → chunk-M3MIGSH3.mjs.map} +0 -0
  384. /package/dist/{chunk-TGN55GKE.mjs.map → chunk-SC3BSCTN.mjs.map} +0 -0
  385. /package/dist/{chunk-QQASX4LJ.mjs.map → chunk-TXWDUJOY.mjs.map} +0 -0
  386. /package/dist/{chunk-EGAB6NFQ.mjs.map → chunk-UWJQ6UKG.mjs.map} +0 -0
  387. /package/dist/{chunk-J3LTASDE.mjs.map → chunk-ZHV3MQ4F.mjs.map} +0 -0
@@ -15,7 +15,6 @@ import type { AllowanceQueryItem, Token } from "../../types/dex";
15
15
  import type {
16
16
  GetEnsoWalletTransactionsWithApprovalArgs,
17
17
  GetZapTransactions,
18
- GetZapTransactionsArgs,
19
18
  } from "../../types/enso";
20
19
 
21
20
  /**
@@ -35,64 +34,6 @@ function toBigIntOrUndefined(
35
34
  return typeof value === "bigint" ? value : BigInt(value);
36
35
  }
37
36
 
38
- /**
39
- * Get the zap transactions for a given bundle.
40
- * @returns The zap transaction & approval transaction if required.
41
- */
42
- export async function getTransactionsFromBundle({
43
- fromAddress,
44
- amountIn,
45
- tokenIn,
46
- chainId,
47
- ensoClient,
48
- bundle,
49
- publicClient,
50
- }: GetZapTransactionsArgs): Promise<GetZapTransactions> {
51
- const transactions: GetZapTransactions = [];
52
- /**
53
- * If the token is not the native token, we need to check if approval is required.
54
- */
55
- if (tokenIn !== ethAddress) {
56
- const approvalRequest = await ensoClient.getApprovalData({
57
- fromAddress,
58
- tokenAddress: tokenIn,
59
- chainId,
60
- amount: amountIn,
61
- });
62
-
63
- // check if approval is actually required by checking current allowance
64
- let requiresApproval = true;
65
- if (publicClient) {
66
- const currentAllowance = await publicClient.readContract({
67
- address: tokenIn as Address,
68
- abi: erc20Abi,
69
- functionName: "allowance",
70
- args: [fromAddress, approvalRequest.spender],
71
- });
72
- requiresApproval = currentAllowance < BigInt(amountIn);
73
- }
74
-
75
- // Only add approval transaction if it's actually required
76
- if (requiresApproval) {
77
- const approvalValue = toBigIntOrUndefined(approvalRequest.tx.value) ?? 0n;
78
- transactions.push({
79
- to: approvalRequest.tx.to,
80
- data: approvalRequest.tx.data as `0x${string}`,
81
- value: approvalValue,
82
- gasLimit: BigInt(approvalRequest.gas),
83
- });
84
- }
85
- }
86
- const bundleValue = toBigIntOrUndefined(bundle.tx.value) ?? 0n;
87
- transactions.push({
88
- to: bundle.tx.to,
89
- data: bundle.tx.data as `0x${string}`,
90
- value: bundleValue,
91
- gasLimit: BigInt(bundle.gas),
92
- });
93
- return transactions;
94
- }
95
-
96
37
  /**
97
38
  * Get ensowallet transactions for a bundle with approval handling.
98
39
  * Checks allowance on the ensowallet spender and prepends approval when needed.
@@ -15,6 +15,7 @@ export {
15
15
  } from "./clients/getApolloClient";
16
16
  export * from "./clients/getEnsoClient";
17
17
  export * from "./dex/aggregators/base";
18
+ export { ensoErc4626 } from "./dex/aggregators/enso/ensoErc4626";
18
19
  export * from "./dex/bSdk";
19
20
  export * from "./dex/getAllPools";
20
21
  export * from "./dex/getApiPool";
@@ -47,14 +48,12 @@ export * from "./pol/getAutoclaimedIncentives";
47
48
  export * from "./pol/getAutoclaimedIncentivesTxHash";
48
49
  export * from "./pol/getBeraTokenTotalSupply";
49
50
  export * from "./pol/getBgtAprSimulation";
50
- export * from "./pol/getBgtIncentiveDistributorPaused";
51
51
  export * from "./pol/getBlockTime";
52
52
  export * from "./pol/getEarnedStakedBeraVault";
53
53
  export * from "./pol/getGlobalData";
54
54
  export * from "./pol/getHeroEarnVaults";
55
55
  export * from "./pol/getLSTStakeConfig";
56
56
  export * from "./pol/getMarkets";
57
- export * from "./pol/getRewardProofsByValidator";
58
57
  export * from "./pol/getRewardTokenToBeraRate";
59
58
  export * from "./pol/getRewardVault";
60
59
  export * from "./pol/getRewardVaultDurationConstants";
@@ -64,13 +63,12 @@ export * from "./pol/getRewardVaultIncentives";
64
63
  export * from "./pol/getRewardVaultRewards";
65
64
  export * from "./pol/getRewardVaultStakingToken";
66
65
  export * from "./pol/getRewardVaults";
67
- export * from "./pol/getStakedBeraAPR";
66
+ export * from "./pol/getStakedBeraAPY";
68
67
  export * from "./pol/getStakedBeraSnapshots";
69
68
  export * from "./pol/getStakeWithdrawalCooldown";
70
69
  export * from "./pol/getSWBeraVaultMetadata";
71
70
  export * from "./pol/getSWBeraWithdrawal";
72
71
  export * from "./pol/getTotalStakedAmount";
73
- export * from "./pol/getUserClaimableIncentives";
74
72
  export * from "./pol/getUserVaultInfo";
75
73
  export * from "./pol/getUserVaults";
76
74
  export * from "./pol/getVaultHistory";
@@ -90,9 +88,9 @@ export * from "./validators/getApiValidator";
90
88
  export * from "./validators/getDefaultRewardAllocation";
91
89
  export * from "./validators/getStakingPoolBatch";
92
90
  export * from "./validators/getUserActiveValidators";
91
+ export * from "./validators/getUserBoosts";
93
92
  export * from "./validators/getUserBoostsOnValidator";
94
93
  export * from "./validators/getUserStakingPositions";
95
- export * from "./validators/getValidatorAnalytics";
96
94
  export * from "./validators/getValidatorCommission";
97
95
  export * from "./validators/getValidatorEstimatedBgtPerYear";
98
96
  export * from "./validators/getValidatorOperatorAddress";
@@ -1,6 +1,5 @@
1
- import type { HoneySnapshotResponse } from "@berachain/graphql/beep";
2
-
3
1
  import { BeraError } from "../../errors/BeraError";
2
+ import type { HoneySnapshotResponse } from "../../generated/beep";
4
3
  import { fetchBeep } from "../clients/fetchBeep";
5
4
 
6
5
  /**
@@ -24,7 +23,7 @@ export async function getChartData({
24
23
  });
25
24
  }
26
25
 
27
- // beep backend (next-gen), typed against `@berachain/graphql/beep`. Queried
26
+ // beep backend (next-gen), typed against `src/generated/beep`. Queried
28
27
  // directly from the browser — no Vercel proxy.
29
28
  return fetchBeep("/v0/honey/snapshots/{interval}", {
30
29
  path: { interval: "day" },
@@ -1,25 +1,16 @@
1
1
  import BigNumber from "@berachain/utils/pkg/bignumber.js";
2
2
 
3
- import { BeraError } from "../../errors/BeraError";
4
3
  import { fetchBeep } from "../clients/fetchBeep";
5
4
 
6
5
  /**
7
- * Browser-only. Sums the last 24 hourly honey snapshots into a 24h volume.
6
+ * Sums the last 24 hourly honey snapshots into a 24h volume.
8
7
  *
9
8
  * Reads from the `beep` backend (`fetchBeep`), which exposes `totalVolume` per
10
- * snapshot.
9
+ * snapshot. Safe to call from either the browser or the server.
11
10
  */
12
11
  export async function getHoney24hVolume(): Promise<BigNumber | undefined> {
13
- if (typeof window === "undefined") {
14
- throw new BeraError({
15
- message:
16
- "getHoney24hVolume is browser-only; call from a Client Component / SWR hook",
17
- level: "error",
18
- });
19
- }
20
-
21
- // beep backend (next-gen), typed against `@berachain/graphql/beep`. Queried
22
- // directly from the browser — no Vercel proxy.
12
+ // beep backend (next-gen), typed against `src/generated/beep`. Queried
13
+ // directly, no Vercel proxy.
23
14
  const snapshots = await fetchBeep("/v0/honey/snapshots/{interval}", {
24
15
  path: { interval: "hour" },
25
16
  query: { perPage: "24" },
@@ -1,7 +1,7 @@
1
1
  import type { PublicClient } from "viem";
2
2
 
3
3
  import type { Address } from "@berachain/config";
4
- import type { EdgeConfigSchema } from "@berachain/config/internal/edge-config";
4
+ import type { EdgeConfigSchema } from "@berachain/edge-config";
5
5
 
6
6
  import { honeyFactoryAbi } from "@berachain/abis/honey/honeyFactory";
7
7
 
@@ -1,6 +1,5 @@
1
- import type { HoneyTransactionsLatestResponse } from "@berachain/graphql/beep";
2
-
3
1
  import { BeraError } from "../../errors/BeraError";
2
+ import type { HoneyTransactionsLatestResponse } from "../../generated/beep";
4
3
  import { fetchBeep } from "../clients/fetchBeep";
5
4
 
6
5
  type HoneyTxn = HoneyTransactionsLatestResponse[number];
@@ -35,7 +34,7 @@ export async function getHoneyTxns({
35
34
  });
36
35
  }
37
36
 
38
- // beep backend (next-gen), typed against `@berachain/graphql/beep`. Queried
37
+ // beep backend (next-gen), typed against `src/generated/beep`. Queried
39
38
  // directly from the browser — no Vercel proxy. beep's `page` is 1-indexed and
40
39
  // filters server-side by `type`; `fetchOpenApi` omits `type` when `txnType`
41
40
  // is undefined (the "all" tab), so each tab paginates its own filtered feed.
@@ -9,7 +9,6 @@ import { parseBaseArgs } from "../../utils/parseBaseArgs";
9
9
  import { getApolloClient } from "../clients/getApolloClient";
10
10
 
11
11
  type ReturnedFromQuery = GlobalDataQuery["polGetGlobalInfo"] & {
12
- top3EmittingValidators: GlobalDataQuery["top3EmittingValidators"]["validators"];
13
12
  allValidatorsCount: number;
14
13
  };
15
14
 
@@ -37,7 +36,6 @@ export async function getBGTGlobalInfo(
37
36
  // allValidatorCount include inactive validators for the purpose of ranking
38
37
  return {
39
38
  ...data.polGetGlobalInfo,
40
- top3EmittingValidators: apiRes.data.top3EmittingValidators.validators,
41
39
  allValidatorsCount: apiRes.data.allValidatorsCount.pagination.totalCount,
42
40
  } satisfies GlobalInfo;
43
41
  }
@@ -1,14 +1,4 @@
1
- import { ChainId } from "@berachain/config";
2
-
3
- import { beraFetchJson } from "../../utils/beraFetch";
4
- import { parseBaseArgs } from "../../utils/parseBaseArgs";
5
-
6
- interface SupplyMonitorBeraStatsResponse {
7
- /** Total BERA supply, in whole BERA units. */
8
- totalSupply: number;
9
- /** Circulating BERA supply, in whole BERA units. */
10
- circulatingSupply: number;
11
- }
1
+ import { fetchBeep } from "../clients/fetchBeep";
12
2
 
13
3
  export type GetBeraTokenTotalSupplyArgs = BeraJS.BaseFunctionArgs;
14
4
 
@@ -19,27 +9,7 @@ export type GetBeraTokenTotalSupplyArgs = BeraJS.BaseFunctionArgs;
19
9
  export async function getBeraTokenTotalSupply(
20
10
  args: GetBeraTokenTotalSupplyArgs = {},
21
11
  ): Promise<string> {
22
- const { config } = parseBaseArgs(args);
23
- // supply-monitor only exposes BERA stats for mainnet/bepolia; returns 0 on other chains.
24
- const network = config.chainId === ChainId.MAINNET ? "mainnet" : "bepolia";
25
-
26
- // `supplyMonitor` is typed as `HttpLink` (string | { uri, name, ... }).
27
- // Both forms are accepted; pick the URL out of whichever shape was used.
28
- const supplyMonitor = config.pol.supplyMonitor;
29
- const baseUrl =
30
- typeof supplyMonitor === "string" ? supplyMonitor : supplyMonitor.uri;
31
-
32
- const data = await beraFetchJson<SupplyMonitorBeraStatsResponse>(
33
- {
34
- url: `${baseUrl}/api/stats/bera?network=${network}`,
35
- name:
36
- typeof supplyMonitor === "string"
37
- ? "supply-monitor-bera"
38
- : supplyMonitor.name,
39
- type: "rest",
40
- },
41
- { cache: "no-store" },
42
- );
12
+ const res = await fetchBeep("/v0/stats/bera", {}, args);
43
13
 
44
- return data.totalSupply.toString();
14
+ return res.totalSupply;
45
15
  }
@@ -17,7 +17,7 @@ export async function getEarnedStakedBeraVault({
17
17
  account,
18
18
  ...args
19
19
  }: BeraJS.BaseFunctionArgs & GetEarnedStakedBeraVaultArgs) {
20
- // beep backend (next-gen), typed against `@berachain/graphql/beep`.
20
+ // beep backend (next-gen), typed against `src/generated/beep`.
21
21
  return fetchBeep(
22
22
  "/v0/stake/{vault}/earnings/{owner}",
23
23
  { path: { vault: address, owner: account } },
@@ -5,7 +5,6 @@ import { lstStakerVaultAbi } from "@berachain/abis/pol/lst/lstStakerVault";
5
5
  import { assertPublicClient } from "../../errors/assert";
6
6
  import type { TokenWithMetadata } from "../../types/dex";
7
7
  import type { StakingConfig } from "../../types/staking";
8
- import { parseBaseArgs } from "../../utils/parseBaseArgs";
9
8
  import { isToken } from "../../utils/tokens";
10
9
 
11
10
  export type GetLSTStakeConfigArgs = {
@@ -25,11 +24,6 @@ export async function getLSTStakeConfig({
25
24
  }: GetLSTStakeConfigArgs): Promise<StakingConfig[]> {
26
25
  assertPublicClient(publicClient);
27
26
 
28
- const { config } = parseBaseArgs({
29
- ...args,
30
- chainId: publicClient.chain?.id ?? args.chainId,
31
- });
32
-
33
27
  const lstStakingTokens = tokenList.filter((token) =>
34
28
  lstStakingVaults.includes(token.address),
35
29
  );
@@ -87,7 +87,6 @@ export async function getRewardVaults({
87
87
  ...vault,
88
88
  dynamicData: {
89
89
  ...vault.dynamicData,
90
- allTimeRewards: vault.dynamicData?.allTimeRewards ?? "0",
91
90
  rewardCapturePercentage:
92
91
  vault.dynamicData?.rewardCapturePercentage ?? 0,
93
92
  activeIncentivesValueUsd: totalIncentiveInUsdc.toString(),
@@ -1,4 +1,4 @@
1
- import { type Address, erc20Abi, erc4626Abi, type PublicClient } from "viem";
1
+ import { type Address, erc4626Abi, type PublicClient } from "viem";
2
2
 
3
3
  import BigNumber from "@berachain/utils/pkg/bignumber.js";
4
4
 
@@ -7,150 +7,46 @@ import { getStakeWithdrawalCooldown } from "./getStakeWithdrawalCooldown";
7
7
 
8
8
  export interface VaultMetadata {
9
9
  current: {
10
- exchangeRate: string;
11
- totalSupply: string;
12
10
  totalAssets: string;
13
- tvl: string;
14
11
  };
15
- previous: {
16
- exchangeRate: string;
17
- totalSupply: string;
18
- totalAssets: string;
19
- tvl: string;
20
- };
21
- totalWBeraIssued: string;
22
12
  lockPeriod?: number;
23
13
  address: Address;
24
14
  }
25
15
  /**
26
16
  *
27
17
  * @param address - The address of the vault
28
- * @param underlyingAsset - The address of the vault's underlying asset token
29
18
  * @throws {Error} If the vault is not found
30
19
  * @returns
31
20
  */
32
21
  export async function getSWBeraVaultMetadata({
33
22
  address,
34
- underlyingAsset,
35
23
  publicClient,
36
- blockTime,
37
24
  }: {
38
25
  address: Address;
39
- underlyingAsset: Address;
40
26
  publicClient?: PublicClient;
41
- blockTime: number;
42
27
  }): Promise<VaultMetadata> {
43
28
  assertPublicClient(publicClient);
44
29
 
45
- const hoursWindow = 26; // 26 hours is the window for the vault to ensure at least 1 claim per APR window.
46
30
  try {
47
- const currentBlock = await publicClient.getBlock({ blockTag: "latest" });
48
-
49
- const blocksPerWindow = Math.floor((hoursWindow * 60 * 60) / blockTime); // hoursWindow * 60 minutes * 60 seconds / actual block time
50
- const blockWindowAgo = currentBlock.number - BigInt(blocksPerWindow);
51
-
52
- const [
53
- curretTotalAssets,
54
- currentTotalSupply,
55
- currentOneShareWorth,
56
- currentTVL,
57
- totalAssets24HoursAgo,
58
- totalSupply24HoursAgo,
59
- oneShareWorthWindowAgo,
60
- tvl24HoursAgo,
61
- underlyingTotalSupply,
62
- lockPeriod,
63
- ] = await Promise.all([
64
- publicClient.readContract({
65
- address,
66
- abi: erc4626Abi,
67
- functionName: "totalAssets",
68
- }),
69
- publicClient.readContract({
70
- address,
71
- abi: erc4626Abi,
72
- functionName: "totalSupply",
73
- }),
74
- publicClient.readContract({
75
- address,
76
- abi: erc4626Abi,
77
- functionName: "previewRedeem",
78
- args: [10n ** 18n],
79
- blockNumber: currentBlock.number,
80
- }),
81
- publicClient.readContract({
82
- address: underlyingAsset,
83
- abi: erc20Abi,
84
- functionName: "balanceOf",
85
- args: [address],
86
- }),
31
+ const [curretTotalAssets, lockPeriod] = await Promise.all([
87
32
  publicClient.readContract({
88
33
  address,
89
34
  abi: erc4626Abi,
90
35
  functionName: "totalAssets",
91
- blockNumber: blockWindowAgo,
92
- }),
93
- publicClient.readContract({
94
- address,
95
- abi: erc20Abi,
96
- functionName: "totalSupply",
97
- blockNumber: blockWindowAgo,
98
- }),
99
- publicClient.readContract({
100
- address,
101
- abi: erc4626Abi,
102
- functionName: "previewRedeem",
103
- args: [10n ** 18n],
104
- blockNumber: blockWindowAgo,
105
- }),
106
- publicClient.readContract({
107
- address: underlyingAsset,
108
- abi: erc20Abi,
109
- functionName: "balanceOf",
110
- args: [address],
111
- blockNumber: blockWindowAgo,
112
- }),
113
- publicClient.readContract({
114
- address: underlyingAsset,
115
- abi: erc20Abi,
116
- functionName: "totalSupply",
117
36
  }),
118
37
  getStakeWithdrawalCooldown({
119
38
  publicClient,
120
39
  address,
121
40
  }),
122
41
  ]);
123
- const exchangeRateWindowAgo = new BigNumber(
124
- oneShareWorthWindowAgo.toString(),
125
- );
126
-
127
- const currentExchangeRate = new BigNumber(currentOneShareWorth.toString());
128
42
 
129
43
  return {
130
44
  address,
131
45
  current: {
132
- exchangeRate: currentExchangeRate.toString(),
133
- totalSupply: new BigNumber(currentTotalSupply.toString())
134
- .dividedBy(1e18)
135
- .toString(),
136
46
  totalAssets: new BigNumber(curretTotalAssets.toString())
137
47
  .dividedBy(1e18)
138
48
  .toString(),
139
- tvl: new BigNumber(currentTVL.toString()).dividedBy(1e18).toString(),
140
- },
141
- previous: {
142
- exchangeRate: exchangeRateWindowAgo.toString(),
143
- totalSupply: new BigNumber(totalSupply24HoursAgo.toString())
144
- .dividedBy(1e18)
145
- .toString(),
146
- totalAssets: new BigNumber(totalAssets24HoursAgo.toString())
147
- .dividedBy(1e18)
148
- .toString(),
149
- tvl: new BigNumber(tvl24HoursAgo.toString()).dividedBy(1e18).toString(),
150
49
  },
151
- totalWBeraIssued: new BigNumber(underlyingTotalSupply.toString())
152
- .dividedBy(1e18)
153
- .toString(),
154
50
  lockPeriod,
155
51
  };
156
52
  } catch (error) {
@@ -0,0 +1,44 @@
1
+ import type { paths } from "../../generated/beep";
2
+ import { fetchBeep } from "../clients/fetchBeep";
3
+
4
+ type StakedBeraAPYWindow = "DAY" | "WEEK" | "6HOURS" | "12HOURS" | "18HOURS";
5
+
6
+ function getBeepResolutionEnum(
7
+ window: StakedBeraAPYWindow,
8
+ ): paths["/v0/stake/apr"]["get"]["parameters"]["query"]["interval"] {
9
+ switch (window) {
10
+ case "18HOURS":
11
+ return "EIGHTEEN_HOURS";
12
+ case "12HOURS":
13
+ return "TWELVE_HOURS";
14
+ case "6HOURS":
15
+ return "SIX_HOURS";
16
+ case "DAY":
17
+ return "ONE_DAY";
18
+ case "WEEK":
19
+ return "SEVEN_DAYS";
20
+ }
21
+ }
22
+ /**
23
+ *
24
+ * @throws {Error} If the vault is not found
25
+ * @returns
26
+ */
27
+ export async function getStakedBeraAPY({
28
+ window,
29
+ }: {
30
+ /**
31
+ * APY might vary depending on the annualized time window (day or week)
32
+ */
33
+ window: StakedBeraAPYWindow;
34
+ } & BeraJS.BaseFunctionArgs): Promise<number> {
35
+ const { apy } = await fetchBeep("/v0/stake/apr", {
36
+ query: {
37
+ interval: getBeepResolutionEnum(window),
38
+ },
39
+ });
40
+
41
+ // apy can be null if no claims have been made.
42
+ // this happens only on early stages of the protocol when there are no claims yet.
43
+ return apy === null ? 0 : Number(apy);
44
+ }
@@ -1,17 +1,20 @@
1
- import {
2
- GetSWberaVaultSnapshots,
3
- type GetSWberaVaultSnapshotsQuery,
4
- type GetSWberaVaultSnapshotsQueryVariables,
5
- type GqlChain,
6
- GqlVaultSnapshotDataRange,
7
- } from "@berachain/graphql/pol/api";
1
+ import type { paths } from "../../generated/beep";
2
+ import { fetchBeep } from "../clients/fetchBeep";
8
3
 
9
- import { parseBaseArgs } from "../../utils/parseBaseArgs";
10
- import { getApolloClient } from "../clients/getApolloClient";
4
+ /**
5
+ * Look-back span (in days) for the beep sWBERA APR history endpoint.
6
+ * The values are the literal `days` query params accepted by
7
+ * `/v0/stake/apr/history`, so they can be passed straight through.
8
+ */
9
+ export enum StakeSnapshotRange {
10
+ SevenDays = "7",
11
+ ThirtyDays = "30",
12
+ SixtyDays = "60",
13
+ NinetyDays = "90",
14
+ }
11
15
 
12
16
  export type GetStakedBeraSnapshotsArgs = {
13
- chain?: GqlChain;
14
- range?: GqlVaultSnapshotDataRange;
17
+ range?: StakeSnapshotRange;
15
18
  } & BeraJS.BaseFunctionArgs;
16
19
 
17
20
  /**
@@ -20,29 +23,9 @@ export type GetStakedBeraSnapshotsArgs = {
20
23
  * @returns
21
24
  */
22
25
  export async function getStakedBeraSnapshots({
23
- chain,
24
- range = GqlVaultSnapshotDataRange.ThirtyDays,
25
- ...args
26
+ range = StakeSnapshotRange.ThirtyDays,
26
27
  }: GetStakedBeraSnapshotsArgs = {}): Promise<
27
- GetSWberaVaultSnapshotsQuery["polGetSWberaVaultSnapshots"]
28
+ paths["/v0/stake/apr/history"]["get"]["responses"]["200"]["content"]["application/json"]
28
29
  > {
29
- const { config } = parseBaseArgs(args);
30
- const bexApiGraphqlClient = getApolloClient("api", args);
31
- try {
32
- const data = await bexApiGraphqlClient.query<
33
- GetSWberaVaultSnapshotsQuery,
34
- GetSWberaVaultSnapshotsQueryVariables
35
- >({
36
- query: GetSWberaVaultSnapshots,
37
- variables: {
38
- chain: chain ?? (config.bex.chainName as GqlChain),
39
- range,
40
- },
41
- });
42
-
43
- return data.data.polGetSWberaVaultSnapshots;
44
- } catch (error) {
45
- console.error("Failed to get SW Bera Snapshots", error);
46
- throw error;
47
- }
30
+ return await fetchBeep("/v0/stake/apr/history", { query: { days: range } });
48
31
  }
@@ -9,7 +9,7 @@ export async function getStakingDailyAssets({
9
9
  address: Address;
10
10
  range: 30 | 60 | 90;
11
11
  }) {
12
- // beep backend (next-gen), typed against `@berachain/graphql/beep`.
12
+ // beep backend (next-gen), typed against `src/generated/beep`.
13
13
  return fetchBeep("/v0/stake/{vault}/stats-by-day", {
14
14
  path: { vault: address },
15
15
  query: { days: `${range}` },
@@ -3,8 +3,7 @@ import type { Address } from "viem";
3
3
  import type {
4
4
  BlocksBlockStatsResponse,
5
5
  ValidatorBlockStatsResponse,
6
- } from "@berachain/graphql/beep";
7
-
6
+ } from "../../generated/beep";
8
7
  import { fetchBeep } from "../clients/fetchBeep";
9
8
 
10
9
  /**
@@ -1,6 +1,6 @@
1
1
  import type { PublicClient } from "viem";
2
2
 
3
- import type { EdgeConfigSchema } from "@berachain/config/internal/edge-config";
3
+ import type { EdgeConfigSchema } from "@berachain/edge-config";
4
4
 
5
5
  import { bgtAbi } from "@berachain/abis/pol/bgt";
6
6
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";