@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
@@ -1,32 +1,19 @@
1
1
  import { type Address, type PublicClient } from "viem";
2
2
  export interface VaultMetadata {
3
3
  current: {
4
- exchangeRate: string;
5
- totalSupply: string;
6
4
  totalAssets: string;
7
- tvl: string;
8
5
  };
9
- previous: {
10
- exchangeRate: string;
11
- totalSupply: string;
12
- totalAssets: string;
13
- tvl: string;
14
- };
15
- totalWBeraIssued: string;
16
6
  lockPeriod?: number;
17
7
  address: Address;
18
8
  }
19
9
  /**
20
10
  *
21
11
  * @param address - The address of the vault
22
- * @param underlyingAsset - The address of the vault's underlying asset token
23
12
  * @throws {Error} If the vault is not found
24
13
  * @returns
25
14
  */
26
- export declare function getSWBeraVaultMetadata({ address, underlyingAsset, publicClient, blockTime, }: {
15
+ export declare function getSWBeraVaultMetadata({ address, publicClient, }: {
27
16
  address: Address;
28
- underlyingAsset: Address;
29
17
  publicClient?: PublicClient;
30
- blockTime: number;
31
18
  }): Promise<VaultMetadata>;
32
19
  //# sourceMappingURL=getSWBeraVaultMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSWBeraVaultMetadata.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getSWBeraVaultMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAwB,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAO7E,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,QAAQ,EAAE;QACR,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AACD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,EAC3C,OAAO,EACP,eAAe,EACf,YAAY,EACZ,SAAS,GACV,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,aAAa,CAAC,CAsHzB"}
1
+ {"version":3,"file":"getSWBeraVaultMetadata.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getSWBeraVaultMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAOnE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AACD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,EAC3C,OAAO,EACP,YAAY,GACb,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,GAAG,OAAO,CAAC,aAAa,CAAC,CA6BzB"}
@@ -0,0 +1,14 @@
1
+ type StakedBeraAPYWindow = "DAY" | "WEEK" | "6HOURS" | "12HOURS" | "18HOURS";
2
+ /**
3
+ *
4
+ * @throws {Error} If the vault is not found
5
+ * @returns
6
+ */
7
+ export declare function getStakedBeraAPY({ window, }: {
8
+ /**
9
+ * APY might vary depending on the annualized time window (day or week)
10
+ */
11
+ window: StakedBeraAPYWindow;
12
+ } & BeraJS.BaseFunctionArgs): Promise<number>;
13
+ export {};
14
+ //# sourceMappingURL=getStakedBeraAPY.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getStakedBeraAPY.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getStakedBeraAPY.ts"],"names":[],"mappings":"AAGA,KAAK,mBAAmB,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAkB7E;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,MAAM,GACP,EAAE;IACD;;OAEG;IACH,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAU5C"}
@@ -1,12 +1,22 @@
1
- import { type GetSWberaVaultSnapshotsQuery, type GqlChain, GqlVaultSnapshotDataRange } from "@berachain/graphql/pol/api";
1
+ import type { paths } from "../../generated/beep";
2
+ /**
3
+ * Look-back span (in days) for the beep sWBERA APR history endpoint.
4
+ * The values are the literal `days` query params accepted by
5
+ * `/v0/stake/apr/history`, so they can be passed straight through.
6
+ */
7
+ export declare enum StakeSnapshotRange {
8
+ SevenDays = "7",
9
+ ThirtyDays = "30",
10
+ SixtyDays = "60",
11
+ NinetyDays = "90"
12
+ }
2
13
  export type GetStakedBeraSnapshotsArgs = {
3
- chain?: GqlChain;
4
- range?: GqlVaultSnapshotDataRange;
14
+ range?: StakeSnapshotRange;
5
15
  } & BeraJS.BaseFunctionArgs;
6
16
  /**
7
17
  *
8
18
  * @throws {Error} If the vault is not found
9
19
  * @returns
10
20
  */
11
- export declare function getStakedBeraSnapshots({ chain, range, ...args }?: GetStakedBeraSnapshotsArgs): Promise<GetSWberaVaultSnapshotsQuery["polGetSWberaVaultSnapshots"]>;
21
+ export declare function getStakedBeraSnapshots({ range, }?: GetStakedBeraSnapshotsArgs): Promise<paths["/v0/stake/apr/history"]["get"]["responses"]["200"]["content"]["application/json"]>;
12
22
  //# sourceMappingURL=getStakedBeraSnapshots.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getStakedBeraSnapshots.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getStakedBeraSnapshots.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,4BAA4B,EAEjC,KAAK,QAAQ,EACb,yBAAyB,EAC1B,MAAM,4BAA4B,CAAC;AAKpC,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,KAAK,CAAC,EAAE,yBAAyB,CAAC;CACnC,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAE5B;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,EAC3C,KAAK,EACL,KAA4C,EAC5C,GAAG,IAAI,EACR,GAAE,0BAA+B,GAAG,OAAO,CAC1C,4BAA4B,CAAC,4BAA4B,CAAC,CAC3D,CAoBA"}
1
+ {"version":3,"file":"getStakedBeraSnapshots.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getStakedBeraSnapshots.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,SAAS,MAAM;IACf,UAAU,OAAO;IACjB,SAAS,OAAO;IAChB,UAAU,OAAO;CAClB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAE5B;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,EAC3C,KAAqC,GACtC,GAAE,0BAA+B,GAAG,OAAO,CAC1C,KAAK,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CACzF,CAEA"}
@@ -3,8 +3,8 @@ export declare function getStakingDailyAssets({ address, range, }: {
3
3
  address: Address;
4
4
  range: 30 | 60 | 90;
5
5
  }): Promise<{
6
- total_assets: import("@berachain/graphql/beep").components["schemas"]["BigIntStr"];
7
- total_supply: import("@berachain/graphql/beep").components["schemas"]["BigIntStr"];
6
+ total_assets: import("../../generated/beep").components["schemas"]["BigIntStr"] | null;
7
+ total_supply: import("../../generated/beep").components["schemas"]["BigIntStr"] | null;
8
8
  timestamp: number;
9
9
  }[]>;
10
10
  //# sourceMappingURL=getStakingDailyAssets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getStakingDailyAssets.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getStakingDailyAssets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,wBAAsB,qBAAqB,CAAC,EAC1C,OAAO,EACP,KAAK,GACN,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;CACrB;kBAO+3J,uDAAsB;kBAAwD,uDAAsB;;KADn+J"}
1
+ {"version":3,"file":"getStakingDailyAssets.d.ts","sourceRoot":"","sources":["../../../src/actions/pol/getStakingDailyAssets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,wBAAsB,qBAAqB,CAAC,EAC1C,OAAO,EACP,KAAK,GACN,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;CACrB;kBAO++a,oDAAsB;kBAA+C,oDAAsB;;KAD1kb"}
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  fetchBeep
3
- } from "../../chunk-BSOWLS3W.mjs";
4
- import "../../chunk-ZWTGVIPJ.mjs";
5
- import "../../chunk-TGN55GKE.mjs";
3
+ } from "../../chunk-GDUKRUHE.mjs";
4
+ import "../../chunk-4576RF2K.mjs";
5
+ import "../../chunk-SC3BSCTN.mjs";
6
6
  import "../../chunk-BMNEN4OK.mjs";
7
- import "../../chunk-P3YZ7F22.mjs";
8
- import "../../chunk-NZAH3SGT.mjs";
7
+ import "../../chunk-LL7XR2H5.mjs";
8
+ import "../../chunk-MVNQY2D4.mjs";
9
9
 
10
10
  // src/actions/server/getDailyValidatorBlockStats.ts
11
11
  async function getDailyValidatorBlockStats({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/actions/server/getDailyValidatorBlockStats.ts"],"sourcesContent":["import type { Address } from \"viem\";\n\nimport type {\n BlocksBlockStatsResponse,\n ValidatorBlockStatsResponse,\n} from \"@berachain/graphql/beep\";\n\nimport { fetchBeep } from \"../clients/fetchBeep\";\n\n/**\n * Server-only RSC variant. Goes directly to the pol subgraph upstream\n * (no auth required) through the shared Apollo client factory.\n */\nexport async function getDailyValidatorBlockStats({\n pubKey,\n first = 1,\n}: BeraJS.BaseFunctionArgs & {\n pubKey: Address;\n first?: number;\n}): Promise<{\n validatorBlockStats: ValidatorBlockStatsResponse;\n blockStats: BlocksBlockStatsResponse;\n}> {\n const [validatorBlockStats, blockStats] = await Promise.all([\n fetchBeep(\"/v0/validators/{pubkey}/block-stats\", {\n path: { pubkey: pubKey },\n query: {\n interval: \"day\",\n perPage: first.toString(),\n },\n }),\n fetchBeep(\"/v0/blocks/block-stats\", {\n query: {\n interval: \"day\",\n perPage: first.toString(),\n },\n }),\n ]);\n\n return {\n validatorBlockStats: validatorBlockStats,\n blockStats: blockStats,\n };\n}\n"],"mappings":";;;;;;;;;;AAaA,eAAsB,4BAA4B;AAAA,EAChD;AAAA,EACA,QAAQ;AACV,GAMG;AACD,QAAM,CAAC,qBAAqB,UAAU,IAAI,MAAM,QAAQ,IAAI;AAAA,IAC1D,UAAU,uCAAuC;AAAA,MAC/C,MAAM,EAAE,QAAQ,OAAO;AAAA,MACvB,OAAO;AAAA,QACL,UAAU;AAAA,QACV,SAAS,MAAM,SAAS;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,IACD,UAAU,0BAA0B;AAAA,MAClC,OAAO;AAAA,QACL,UAAU;AAAA,QACV,SAAS,MAAM,SAAS;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/actions/server/getDailyValidatorBlockStats.ts"],"sourcesContent":["import type { Address } from \"viem\";\n\nimport type {\n BlocksBlockStatsResponse,\n ValidatorBlockStatsResponse,\n} from \"../../generated/beep\";\nimport { fetchBeep } from \"../clients/fetchBeep\";\n\n/**\n * Server-only RSC variant. Goes directly to the pol subgraph upstream\n * (no auth required) through the shared Apollo client factory.\n */\nexport async function getDailyValidatorBlockStats({\n pubKey,\n first = 1,\n}: BeraJS.BaseFunctionArgs & {\n pubKey: Address;\n first?: number;\n}): Promise<{\n validatorBlockStats: ValidatorBlockStatsResponse;\n blockStats: BlocksBlockStatsResponse;\n}> {\n const [validatorBlockStats, blockStats] = await Promise.all([\n fetchBeep(\"/v0/validators/{pubkey}/block-stats\", {\n path: { pubkey: pubKey },\n query: {\n interval: \"day\",\n perPage: first.toString(),\n },\n }),\n fetchBeep(\"/v0/blocks/block-stats\", {\n query: {\n interval: \"day\",\n perPage: first.toString(),\n },\n }),\n ]);\n\n return {\n validatorBlockStats: validatorBlockStats,\n blockStats: blockStats,\n };\n}\n"],"mappings":";;;;;;;;;;AAYA,eAAsB,4BAA4B;AAAA,EAChD;AAAA,EACA,QAAQ;AACV,GAMG;AACD,QAAM,CAAC,qBAAqB,UAAU,IAAI,MAAM,QAAQ,IAAI;AAAA,IAC1D,UAAU,uCAAuC;AAAA,MAC/C,MAAM,EAAE,QAAQ,OAAO;AAAA,MACvB,OAAO;AAAA,QACL,UAAU;AAAA,QACV,SAAS,MAAM,SAAS;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,IACD,UAAU,0BAA0B;AAAA,MAClC,OAAO;AAAA,QACL,UAAU;AAAA,QACV,SAAS,MAAM,SAAS;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -1,5 +1,5 @@
1
1
  import type { Address } from "viem";
2
- import type { BlocksBlockStatsResponse, ValidatorBlockStatsResponse } from "@berachain/graphql/beep";
2
+ import type { BlocksBlockStatsResponse, ValidatorBlockStatsResponse } from "../../generated/beep";
3
3
  /**
4
4
  * Server-only RSC variant. Goes directly to the pol subgraph upstream
5
5
  * (no auth required) through the shared Apollo client factory.
@@ -1 +1 @@
1
- {"version":3,"file":"getDailyValidatorBlockStats.d.ts","sourceRoot":"","sources":["../../../src/actions/server/getDailyValidatorBlockStats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EACV,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,yBAAyB,CAAC;AAIjC;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,KAAS,GACV,EAAE,MAAM,CAAC,gBAAgB,GAAG;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC;IACV,mBAAmB,EAAE,2BAA2B,CAAC;IACjD,UAAU,EAAE,wBAAwB,CAAC;CACtC,CAAC,CAqBD"}
1
+ {"version":3,"file":"getDailyValidatorBlockStats.d.ts","sourceRoot":"","sources":["../../../src/actions/server/getDailyValidatorBlockStats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EACV,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,sBAAsB,CAAC;AAG9B;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,EAChD,MAAM,EACN,KAAS,GACV,EAAE,MAAM,CAAC,gBAAgB,GAAG;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC;IACV,mBAAmB,EAAE,2BAA2B,CAAC;IACjD,UAAU,EAAE,wBAAwB,CAAC;CACtC,CAAC,CAqBD"}
@@ -1,5 +1,5 @@
1
1
  import type { PublicClient } from "viem";
2
- import type { EdgeConfigSchema } from "@berachain/config/internal/edge-config";
2
+ import type { EdgeConfigSchema } from "@berachain/edge-config";
3
3
  export interface ActiveBoostAndCommissionChangeDelay {
4
4
  boostDelay: number;
5
5
  unboostDelay: number;
@@ -1 +1 @@
1
- {"version":3,"file":"getActiveBoostAndCommissionChangeDelay.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getActiveBoostAndCommissionChangeDelay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAEzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAO/E,MAAM,WAAW,mCAAmC;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,0BAA0B,EAAE,MAAM,CAAC;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gCAAgC,EAAE,MAAM,CAAC;IACzC;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,mCAAmC,EAAE,MAAM,CAAC;IAC5C;;OAEG;IACH,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,2BAA2B,CAAC,CAAC;CAC1D;AAED,wBAAsB,sCAAsC,CAAC,EAC3D,YAAY,EACZ,EAAE,EACF,GAAG,IAAI,EACR,EAAE,MAAM,CAAC,gBAAgB,GACxB,IAAI,CAAC,mCAAmC,EAAE,IAAI,CAAC,GAAG;IAChD,YAAY,EAAE,YAAY,CAAC;CAC5B,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAoEjD"}
1
+ {"version":3,"file":"getActiveBoostAndCommissionChangeDelay.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getActiveBoostAndCommissionChangeDelay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAEzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAO/D,MAAM,WAAW,mCAAmC;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,0BAA0B,EAAE,MAAM,CAAC;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gCAAgC,EAAE,MAAM,CAAC;IACzC;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,mCAAmC,EAAE,MAAM,CAAC;IAC5C;;OAEG;IACH,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,2BAA2B,CAAC,CAAC;CAC1D;AAED,wBAAsB,sCAAsC,CAAC,EAC3D,YAAY,EACZ,EAAE,EACF,GAAG,IAAI,EACR,EAAE,MAAM,CAAC,gBAAgB,GACxB,IAAI,CAAC,mCAAmC,EAAE,IAAI,CAAC,GAAG;IAChD,YAAY,EAAE,YAAY,CAAC;CAC5B,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAoEjD"}
@@ -4,9 +4,45 @@ import { type UserBoostsOnValidator } from "./getUserBoostsOnValidator";
4
4
  export type ValidatorWithUserBoost = ApiValidatorInListFragment & {
5
5
  userBoosts: UserBoostsOnValidator;
6
6
  };
7
+ export type UserValidatorsApiData = ApiValidatorInListFragment[];
8
+ /**
9
+ * Fetches the API-side data for a user's boosted validators: the list of
10
+ * validator IDs the user has boosted (from the boosts API) and the validator
11
+ * info for each. On-chain boost amounts are fetched separately by
12
+ * {@link getUserActiveValidatorsOnChain} so the two can refresh independently.
13
+ */
14
+ export declare function getUserActiveValidatorsApi({ account, chain, ...args }: {
15
+ account: string;
16
+ chain?: GqlChain;
17
+ } & BeraJS.BaseFunctionArgs): Promise<UserValidatorsApiData>;
18
+ /**
19
+ * Reads the on-chain boost amounts for each validator in the API data.
20
+ * Cheap to re-run on its own, which is what powers the hook's
21
+ * `refreshOnChain()`.
22
+ */
23
+ export declare function getUserActiveValidatorsOnChain({ account, validators, publicClient, }: {
24
+ account: string;
25
+ validators: UserValidatorsApiData;
26
+ publicClient: PublicClient | undefined;
27
+ }): Promise<UserBoostsOnValidator[]>;
28
+ /**
29
+ * Merges API validator info with on-chain boost amounts into the shape widgets
30
+ * consume. Validators without a matching on-chain read are dropped (the API can
31
+ * return a pubkey that was never actually boosted on-chain).
32
+ */
33
+ export declare function mergeUserActiveValidators({ validators, onChainBoosts, }: {
34
+ validators: UserValidatorsApiData;
35
+ onChainBoosts: UserBoostsOnValidator[];
36
+ }): ValidatorWithUserBoost[];
37
+ /**
38
+ * Fetches a user's boosted validators with their on-chain boost amounts.
39
+ * Combines the API query, on-chain query, and merge; the hook
40
+ * `useUserActiveValidators` splits these so it can refresh the on-chain part
41
+ * alone.
42
+ */
7
43
  export declare function getUserActiveValidators({ account, publicClient, chain, ...args }: {
8
44
  account: string;
9
45
  publicClient: PublicClient | undefined;
10
46
  chain?: GqlChain;
11
- } & BeraJS.BaseFunctionArgs): Promise<ValidatorWithUserBoost[] | undefined>;
47
+ } & BeraJS.BaseFunctionArgs): Promise<ValidatorWithUserBoost[]>;
12
48
  //# sourceMappingURL=getUserActiveValidators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getUserActiveValidators.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getUserActiveValidators.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,YAAY,EAAc,MAAM,MAAM,CAAC;AAEhF,OAAO,KAAK,EACV,0BAA0B,EAC1B,QAAQ,EACT,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,GAAG;IAChE,UAAU,EAAE,qBAAqB,CAAC;CACnC,CAAC;AAEF,wBAAsB,uBAAuB,CAAC,EAC5C,OAAO,EACP,YAAY,EACZ,KAAK,EACL,GAAG,IAAI,EACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IACvC,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB,GAAG,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,EAAE,GAAG,SAAS,CAAC,CAqE1E"}
1
+ {"version":3,"file":"getUserActiveValidators.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getUserActiveValidators.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,YAAY,EAAc,MAAM,MAAM,CAAC;AAEhF,OAAO,KAAK,EACV,0BAA0B,EAC1B,QAAQ,EACT,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,sBAAsB,GAAG,0BAA0B,GAAG;IAChE,UAAU,EAAE,qBAAqB,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,EAAE,CAAC;AAEjE;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,EAC/C,OAAO,EACP,KAAK,EACL,GAAG,IAAI,EACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB,GAAG,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkB3D;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAAC,EACnD,OAAO,EACP,UAAU,EACV,YAAY,GACb,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,qBAAqB,CAAC;IAClC,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;CACxC,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAUnC;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,UAAU,EACV,aAAa,GACd,EAAE;IACD,UAAU,EAAE,qBAAqB,CAAC;IAClC,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC,GAAG,sBAAsB,EAAE,CAwC3B;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAAC,EAC5C,OAAO,EACP,YAAY,EACZ,KAAK,EACL,GAAG,IAAI,EACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IACvC,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB,GAAG,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAY9D"}
@@ -1,5 +1,5 @@
1
1
  import type { Address } from "viem";
2
- import type { ValidatorIncentivesResponse } from "@berachain/graphql/beep";
2
+ import type { ValidatorIncentivesResponse } from "../../generated/beep";
3
3
  /** Browser-only. Reads validator incentive distribution from beep. */
4
4
  export declare function getValidatorIncentiveDistribution({ pubkey, dayRange, }: {
5
5
  pubkey: Address;
@@ -1 +1 @@
1
- {"version":3,"file":"getValidatorIncentiveDistribution.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getValidatorIncentiveDistribution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AAM3E,sEAAsE;AACtE,wBAAsB,iCAAiC,CAAC,EACtD,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CA+CnD"}
1
+ {"version":3,"file":"getValidatorIncentiveDistribution.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getValidatorIncentiveDistribution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAGpC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAIxE,sEAAsE;AACtE,wBAAsB,iCAAiC,CAAC,EACtD,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CA+CnD"}
@@ -47,6 +47,10 @@ export declare function getValidatorRewardAllocation({ client, pubKey, ...args }
47
47
  * Whether the reward allocation is inactive so it falls back to the baseline reward allocation.
48
48
  */
49
49
  isBaseline: boolean;
50
+ /**
51
+ * Whether the reward allocation is the default reward allocation.
52
+ */
53
+ isDefault: boolean;
50
54
  isNeverSet: boolean;
51
55
  }>;
52
56
  //# sourceMappingURL=getValidatorRewardAllocation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getValidatorRewardAllocation.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getValidatorRewardAllocation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAMlD,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,SAAS;QAChB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,EAAE,CAAC;CACL;AACD,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,EAAE,SAAS;QAChB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB;;WAEG;QACH,UAAU,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;CACL;AAED,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC3C,GAAG,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,6CACf,SAAQ,+BAA+B;IACvC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,4BAA4B,EACjC,OAAO,EAAE,MAAM,GACd,yBAAyB,CAW3B;AACD,wBAAgB,sBAAsB,CACpC,CAAC,EAAE,yBAAyB,EAC5B,CAAC,EAAE,yBAAyB,GAC3B,OAAO,CAOT;AAED,wBAAsB,4BAA4B,CAAC,EACjD,MAAM,EACN,MAAM,EACN,GAAG,IAAI,EACR,EAAE,MAAM,CAAC,gBAAgB,GAAG;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC;IACV;;OAEG;IACH,sBAAsB,EAAE,yBAAyB,CAAC;IAClD;;;;;OAKG;IACH,mBAAmB,EAAE,yBAAyB,CAAC;IAC/C;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC,CAqED"}
1
+ {"version":3,"file":"getValidatorRewardAllocation.d.ts","sourceRoot":"","sources":["../../../src/actions/validators/getValidatorRewardAllocation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAOlD,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,SAAS;QAChB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,EAAE,CAAC;CACL;AACD,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,EAAE,SAAS;QAChB,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB;;WAEG;QACH,UAAU,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;CACL;AAED,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC3C,GAAG,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,6CACf,SAAQ,+BAA+B;IACvC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,4BAA4B,EACjC,OAAO,EAAE,MAAM,GACd,yBAAyB,CAW3B;AACD,wBAAgB,sBAAsB,CACpC,CAAC,EAAE,yBAAyB,EAC5B,CAAC,EAAE,yBAAyB,GAC3B,OAAO,CAOT;AAED,wBAAsB,4BAA4B,CAAC,EACjD,MAAM,EACN,MAAM,EACN,GAAG,IAAI,EACR,EAAE,MAAM,CAAC,gBAAgB,GAAG;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC;IACV;;OAEG;IACH,sBAAsB,EAAE,yBAAyB,CAAC;IAClD;;;;;OAKG;IACH,mBAAmB,EAAE,yBAAyB,CAAC;IAC/C;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC,CA0ED"}
@@ -0,0 +1,19 @@
1
+ import {
2
+ fetchOpenApi
3
+ } from "./chunk-4576RF2K.mjs";
4
+
5
+ // src/actions/clients/fetchLayerzero.ts
6
+ var LAYERZERO_SCAN_ORIGIN = "https://scan.layerzero-api.com/v1";
7
+ function fetchLayerzero(path, params) {
8
+ return fetchOpenApi(
9
+ LAYERZERO_SCAN_ORIGIN,
10
+ path,
11
+ params,
12
+ "layerzero"
13
+ );
14
+ }
15
+
16
+ export {
17
+ fetchLayerzero
18
+ };
19
+ //# sourceMappingURL=chunk-3TRTSTDH.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/actions/clients/fetchLayerzero.ts"],"sourcesContent":["import type { paths } from \"../../generated/layerzero\";\nimport {\n type DefinedParams,\n fetchOpenApi,\n type GetPath,\n type GetResponse,\n} from \"./fetchOpenApi\";\n\n/**\n * LayerZero Scan API origin. Schema paths are relative to this base (e.g.\n * `/messages/tx/{tx}`).\n */\nconst LAYERZERO_SCAN_ORIGIN = \"https://scan.layerzero-api.com/v1\";\n\n/**\n * Typed GET against the LayerZero Scan API.\n *\n * The `path`, its path/query params and the response are all type-checked\n * against the LayerZero schema (`src/generated/layerzero`). The Scan API is\n * public (no auth), so requests hit it directly — no proxy split like\n * {@link fetchEnso}.\n */\nexport function fetchLayerzero<P extends GetPath<paths>>(\n path: P,\n params: DefinedParams<paths, P>,\n): Promise<GetResponse<paths, P>> {\n return fetchOpenApi<paths, P>(\n LAYERZERO_SCAN_ORIGIN,\n path,\n params,\n \"layerzero\",\n );\n}\n"],"mappings":";;;;;AAYA,IAAM,wBAAwB;AAUvB,SAAS,eACd,MACA,QACgC;AAChC,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-BMNEN4OK.mjs";
4
4
  import {
5
5
  RequestError
6
- } from "./chunk-P3YZ7F22.mjs";
6
+ } from "./chunk-LL7XR2H5.mjs";
7
7
 
8
8
  // src/utils/getErrorResponse.ts
9
9
  async function getErrorResponse(response) {
@@ -118,10 +118,35 @@ async function beraFetchJson(endpoint, options) {
118
118
  return response.json();
119
119
  }
120
120
 
121
+ // src/actions/clients/fetchOpenApi.ts
122
+ import { getUriFromLink } from "@berachain/config";
123
+ function fetchOpenApi(link, path, params, fallbackName, headers) {
124
+ const { path: pathParams, query } = params;
125
+ const pathStr = path;
126
+ const resolvedPath = pathStr.replace(/\{([^}]+)\}/g, (_, key) => {
127
+ const value = pathParams?.[key];
128
+ if (value === void 0) {
129
+ throw new Error(
130
+ `fetchOpenApi: missing path param "${key}" for "${pathStr}"`
131
+ );
132
+ }
133
+ return encodeURIComponent(String(value));
134
+ });
135
+ const search = query ? new URLSearchParams(
136
+ Object.entries(query).filter(([, v]) => v !== void 0).map(([k, v]) => [k, String(v)])
137
+ ).toString() : "";
138
+ const url = `${getUriFromLink(link)}${resolvedPath}${search ? `?${search}` : ""}`;
139
+ const name = typeof link === "string" ? fallbackName : link.name;
140
+ return beraFetchJson(
141
+ { url, name, type: "rest" },
142
+ { headers }
143
+ );
144
+ }
145
+
121
146
  export {
122
- getErrorResponse,
123
147
  sanitizeRpcUrl,
124
148
  beraFetch,
125
- beraFetchJson
149
+ beraFetchJson,
150
+ fetchOpenApi
126
151
  };
127
- //# sourceMappingURL=chunk-ZWTGVIPJ.mjs.map
152
+ //# sourceMappingURL=chunk-4576RF2K.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/getErrorResponse.ts","../src/utils/sanitizeRpcUrl.ts","../src/utils/beraFetch.ts","../src/actions/clients/fetchOpenApi.ts"],"sourcesContent":["/**\n * @deprecated use beraFetch instead\n */\nexport async function getErrorResponse(response: Response) {\n const contentType = response.headers.get(\"content-type\");\n\n if (contentType?.includes(\"application/json\")) {\n return response.json();\n } else {\n const text = await response.text();\n try {\n return JSON.parse(text);\n } catch {\n return {\n message: \"Unknown error, can't decode response into JSON\",\n cause: text,\n };\n }\n }\n}\n","/**\n * Strips secret tokens from RPC URLs for safe use in span attributes and logs.\n *\n * QuickNode URLs embed API keys as path segments, e.g.:\n * https://polished-morning-sun.bera-mainnet.quiknode.pro/abc123def/\n * This function trims the subpath, producing:\n * https://polished-morning-sun.bera-mainnet.quiknode.pro/\n */\nexport function sanitizeRpcUrl(url: string | undefined): string {\n if (!url) return \"\";\n try {\n const parsed = new URL(url);\n if (parsed.hostname.endsWith(\".quiknode.pro\")) {\n parsed.pathname = \"/\";\n parsed.search = \"\";\n return parsed.toString();\n }\n return url;\n } catch {\n return url;\n }\n}\n","import { BeraTracing, type SpanContext } from \"../errors/BeraTracing\";\nimport { RequestError } from \"../errors/RequestError\";\nimport { getErrorResponse } from \"./getErrorResponse\";\nimport { sanitizeRpcUrl } from \"./sanitizeRpcUrl\";\n\ntype RequestOptions = RequestInit;\n\nexport async function beraFetch(\n endpoint: ConstructorParameters<typeof RequestError>[0][\"endpoint\"],\n options?: RequestOptions,\n spanContext?: SpanContext & {\n /**\n * If true, keep all query params in the span URL.\n * If an array of strings, keep only the query params in the array.\n * If false, remove all query params from the span URL.\n * If not provided, remove all query params from the span URL.\n */\n keepQueryParams?: boolean | string[];\n },\n) {\n try {\n let spanUrl = sanitizeRpcUrl(\n typeof endpoint === \"string\" || endpoint instanceof URL\n ? endpoint.toString()\n : endpoint.url.toString(),\n ).replace(/0x[a-fA-F0-9]{40}/g, \":address\");\n\n if (spanContext?.keepQueryParams !== true && URL.canParse(spanUrl)) {\n const queryParams = new URL(spanUrl).searchParams;\n if (Array.isArray(spanContext?.keepQueryParams)) {\n const searchParams = new URLSearchParams();\n\n for (const param of spanContext.keepQueryParams) {\n searchParams.set(param, queryParams.get(param) ?? \"\");\n }\n\n const newUrl = new URL(spanUrl);\n newUrl.search = searchParams.toString();\n spanUrl = newUrl.toString();\n } else {\n const newUrl = new URL(spanUrl);\n newUrl.search = \"\";\n spanUrl = newUrl.toString();\n }\n }\n\n const endpointName =\n typeof endpoint === \"string\" || endpoint instanceof URL\n ? undefined\n : endpoint.name;\n\n return await BeraTracing.startSpan(\n {\n op: \"beraFetch\",\n name: endpointName ? `beraFetch ${endpointName}` : \"beraFetch\",\n attributes:\n typeof endpoint === \"string\" || endpoint instanceof URL\n ? {\n \"operation.source.url\": spanUrl,\n ...spanContext?.attributes,\n }\n : ({\n \"operation.source.url\": spanUrl,\n \"operation.source.type\": endpoint.type,\n \"operation.source.name\": endpoint.name,\n ...spanContext?.attributes,\n } satisfies SpanContext[\"attributes\"]),\n },\n async () => {\n const response = await fetch(\n typeof endpoint === \"string\" || endpoint instanceof URL\n ? endpoint\n : endpoint.url,\n {\n ...options,\n },\n );\n if (!response.ok) {\n const error = await getErrorResponse(response);\n throw new RequestError({\n cause: error,\n // @to-do import getErrorResponse logic in this function\n // when it's removed from other places\n response: response,\n endpoint,\n });\n }\n return response;\n },\n );\n } catch (error) {\n if (error instanceof RequestError) {\n throw error;\n }\n\n throw new RequestError({\n cause: error,\n endpoint,\n response: undefined,\n });\n }\n}\n\nexport async function beraFetchJson<T>(\n endpoint: ConstructorParameters<typeof RequestError>[0][\"endpoint\"],\n options?: RequestOptions,\n) {\n const response = await beraFetch(endpoint, {\n ...options,\n headers: {\n Accept: \"application/json\",\n ...options?.headers,\n },\n });\n return response.json() as Promise<T>;\n}\n","import type { HttpLink } from \"@berachain/config\";\nimport { getUriFromLink } from \"@berachain/config\";\n\nimport { beraFetchJson } from \"../../utils/beraFetch\";\n\n/**\n * A minimal, fully-typed GET helper for our `openapi-typescript`-generated\n * `beep` backend. beep serves only GETs, so rather than a full OpenAPI client\n * we type a single `fetchOpenApi` against a schema's `paths` and wrap it\n * (`fetchBeep`).\n *\n * The `path`, its path/query params and the response body are all type-checked\n * against the schema, so route shapes can never drift out of sync with the\n * backend. Requests go through {@link beraFetchJson} so they keep the same\n * Sentry tracing, `RequestError` handling and URL sanitization as the rest of\n * the codebase.\n */\n\n/** Any `openapi-typescript` `paths` object. */\n// biome-ignore lint/suspicious/noExplicitAny: schema `paths` are structurally diverse; constrained at call sites by the concrete schema.\ntype AnyPaths = Record<string, any>;\n\n/** Paths in a schema that expose a JSON GET response. */\nexport type GetPath<Paths extends AnyPaths> = {\n [P in keyof Paths]: Paths[P] extends {\n get: { responses: { 200: { content: { \"application/json\": unknown } } } };\n }\n ? P\n : never;\n}[keyof Paths];\n\ntype GetParams<\n Paths extends AnyPaths,\n P extends GetPath<Paths>,\n> = Paths[P][\"get\"] extends { parameters: infer Params } ? Params : never;\n\nexport type GetResponse<\n Paths extends AnyPaths,\n P extends GetPath<Paths>,\n> = Paths[P][\"get\"][\"responses\"][200][\"content\"][\"application/json\"];\n\n// Drop the params keys that are `never` (e.g. an endpoint with no query) so\n// callers only pass what an endpoint actually accepts.\nexport type DefinedParams<Paths extends AnyPaths, P extends GetPath<Paths>> = {\n [K in keyof GetParams<Paths, P> as GetParams<Paths, P>[K] extends never\n ? never\n : K]: GetParams<Paths, P>[K];\n};\n\n/**\n * Perform a typed GET against an OpenAPI backend.\n *\n * @param link The backend `HttpLink`. The base URL and monitoring name are\n * read from it.\n * @param path An OpenAPI path template, e.g. `/v0/stake/{vault}/stats-by-day`.\n * @param params Path and query params, typed from the schema for `path`.\n * @param fallbackName Monitoring name to use when `link` is a bare string.\n * @param headers Request headers. Kept minimal by default — extra headers\n * (e.g. `X-Client-Id`, which only beep needs) trigger a CORS\n * preflight that third-party gateways like Enso reject.\n */\n// biome-ignore lint/complexity/useMaxParams: internal helper; the wrappers (fetchBeep, fetchEnso) are the public surface.\nexport function fetchOpenApi<Paths extends AnyPaths, P extends GetPath<Paths>>(\n link: HttpLink,\n path: P,\n params: DefinedParams<Paths, P>,\n fallbackName: string,\n headers?: Record<string, string>,\n): Promise<GetResponse<Paths, P>> {\n const { path: pathParams, query } = params as {\n path?: Record<string, string | number>;\n query?: Record<string, string | number | undefined>;\n };\n\n // Substitute `{param}` placeholders from the typed path params.\n const pathStr = path as string;\n const resolvedPath = pathStr.replace(/\\{([^}]+)\\}/g, (_, key) => {\n const value = pathParams?.[key];\n if (value === undefined) {\n throw new Error(\n `fetchOpenApi: missing path param \"${key}\" for \"${pathStr}\"`,\n );\n }\n return encodeURIComponent(String(value));\n });\n\n // Omit params whose value is `undefined` rather than serializing them as the\n // literal string \"undefined\" (e.g. optional filters left unset by callers).\n const search = query\n ? new URLSearchParams(\n Object.entries(query)\n .filter(([, v]) => v !== undefined)\n .map(([k, v]) => [k, String(v)]),\n ).toString()\n : \"\";\n\n const url = `${getUriFromLink(link)}${resolvedPath}${search ? `?${search}` : \"\"}`;\n const name = typeof link === \"string\" ? fallbackName : link.name;\n\n return beraFetchJson<GetResponse<Paths, P>>(\n { url, name, type: \"rest\" },\n { headers },\n );\n}\n"],"mappings":"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","names":[]}
@@ -1,15 +1,18 @@
1
+ import {
2
+ getClientName
3
+ } from "./chunk-GDUKRUHE.mjs";
1
4
  import {
2
5
  parseBaseArgs
3
- } from "./chunk-TGN55GKE.mjs";
6
+ } from "./chunk-SC3BSCTN.mjs";
4
7
  import {
5
8
  BeraTracing
6
9
  } from "./chunk-BMNEN4OK.mjs";
7
10
  import {
8
11
  RequestError
9
- } from "./chunk-P3YZ7F22.mjs";
12
+ } from "./chunk-LL7XR2H5.mjs";
10
13
  import {
11
14
  BeraError
12
- } from "./chunk-NZAH3SGT.mjs";
15
+ } from "./chunk-MVNQY2D4.mjs";
13
16
 
14
17
  // src/actions/clients/BeraApolloClient.ts
15
18
  import {
@@ -78,8 +81,6 @@ var BeraApolloClient = class extends ApolloClient {
78
81
  }
79
82
  if (error instanceof TypeError) {
80
83
  throw new RequestError({
81
- level: "fatal",
82
- reason: "TypeError",
83
84
  response: error,
84
85
  cause: error,
85
86
  endpoint,
@@ -106,13 +107,11 @@ function getQueryName(queryDefinition) {
106
107
  import { InMemoryCache } from "@apollo/client";
107
108
  import { HttpLink } from "@apollo/client/link/http";
108
109
  import { getUriFromLink } from "@berachain/config";
109
- import { currentDapp, goldskyBaseUrl } from "@berachain/config/internal";
110
+ import { goldskyBaseUrl } from "@berachain/config/internal";
110
111
  import apiResults from "@berachain/graphql/dex/api";
111
112
  import { gql } from "@apollo/client";
112
113
  function applyStellateClientName(url) {
113
114
  const headers = typeof url === "string" ? void 0 : url.headers;
114
- const isDapp = !!currentDapp;
115
- const isTest = process.env.VERCEL_ENV === "test";
116
115
  const uri = getUriFromLink(url);
117
116
  const name = typeof url === "string" ? "unknown" : url.name;
118
117
  return {
@@ -120,10 +119,7 @@ function applyStellateClientName(url) {
120
119
  name,
121
120
  headers: {
122
121
  ...headers,
123
- "x-graphql-client-name": `berachain.${isDapp ? "dapps" : isTest ? "test" : (
124
- // this tracks usage of the berajs package in other packages
125
- "berajs"
126
- )}`,
122
+ "x-graphql-client-name": getClientName(),
127
123
  "x-graphql-client-version": `${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`
128
124
  }
129
125
  };
@@ -208,4 +204,4 @@ export {
208
204
  getApolloClient,
209
205
  gql
210
206
  };
211
- //# sourceMappingURL=chunk-PHYZRH4I.mjs.map
207
+ //# sourceMappingURL=chunk-5MUCX35C.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/actions/clients/BeraApolloClient.ts","../src/actions/clients/getApolloClient.ts"],"sourcesContent":["import {\n ApolloClient,\n type DocumentNode,\n type ErrorLike,\n type OperationVariables,\n ServerError,\n} from \"@apollo/client\";\n\nimport { appConfig } from \"@berachain/config/internal\";\n\nimport { BeraError } from \"../../errors/BeraError\";\nimport { BeraTracing } from \"../../errors/BeraTracing\";\nimport { RequestError } from \"../../errors/RequestError\";\n\n/**\n * This is a wrapper around the ApolloClient that throws a BeraError if the query returns an error or no data.\n *\n * It's mostly a typescript helper that keeps data always defined since we use errorPolicy: \"none\" by default.\n * Such setting will throw an error if the query returns an error, rather than returning an object with undefined data and an error property.\n */\nexport class BeraApolloClient extends ApolloClient {\n /**\n * The URL of the endpoint. Used for error reporting only.\n */\n protected url: string;\n\n protected serviceName: string;\n constructor(\n options: ApolloClient.Options & {\n /**\n * The URL of the endpoint. Used for error reporting only.\n */\n url: string;\n /**\n * The name of the graphql service. Used for error reporting only.\n */\n name: string;\n },\n ) {\n super(options);\n this.url = options.url;\n this.serviceName = options.name;\n }\n\n async query<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n >(\n // We handle errors in our custom logic so we don't need to pass errorPolicy here\n options: Omit<ApolloClient.QueryOptions<TData, TVariables>, \"errorPolicy\">,\n ): Promise<{\n // Only data is returned and we're sure it's not undefined due to errorPolicy\n data: TData;\n }> {\n const queryName = getQueryName(options.query);\n\n const endpoint = {\n url: this.url,\n type: \"graphql\",\n name: this.serviceName,\n } as const;\n\n const tags = {\n \"operation.type\": \"query\",\n \"operation.source.name\": endpoint.name,\n \"operation.source.url\": endpoint.url,\n \"operation.source.type\": endpoint.type,\n \"operation.source.queryName\": queryName,\n };\n\n try {\n // biome-ignore lint: function() overrides super and this\n const executeQuery = () => {\n return super.query<TData, TVariables>(\n options as ApolloClient.QueryOptions<TData, TVariables>,\n );\n };\n\n const res = await BeraTracing.startSpan(\n {\n name: `GraphQL ${queryName}`,\n op: \"BeraApolloClient.query\",\n attributes: tags,\n },\n executeQuery,\n );\n\n if (res.error || res.data === undefined) {\n throw new BeraError({\n level: \"fatal\",\n tags,\n message:\n \"Bera Apollo Client: No data returned from query, but error should be thrown since errorPolicy is none\",\n });\n }\n\n return { data: res.data } as const;\n } catch (error) {\n !appConfig.env.isProduction &&\n console.error(\"BeraApolloClient error\", error);\n\n if (ServerError.is(error)) {\n throw new RequestError({\n // reason: error,\n response: error.response,\n cause: error,\n statusCode: error.statusCode,\n endpoint,\n tags,\n });\n }\n if (error instanceof TypeError) {\n // A fetch TypeError (\"Failed to fetch\" / \"Load failed\" / CORS) is a\n // network failure, not a fatal bug. Let RequestError classify it as\n // NETWORK_ERROR (warning) so it groups by domain alongside every other\n // network error instead of fragmenting per-route. See HUB-4GF.\n throw new RequestError({\n response: error,\n cause: error,\n endpoint,\n tags,\n });\n }\n throw new RequestError({\n response: error as ErrorLike,\n tags,\n cause: error,\n endpoint,\n });\n }\n }\n}\n\nfunction getQueryName(queryDefinition: DocumentNode) {\n const likelyNode = queryDefinition.definitions.find(\n (def) => def.kind === (\"OperationDefinition\" as const),\n );\n\n return likelyNode?.name?.value;\n}\n","import { InMemoryCache, type InMemoryCacheConfig } from \"@apollo/client\";\nimport { HttpLink } from \"@apollo/client/link/http\";\n\nimport type { HttpLink as BeraConfigHttpLink } from \"@berachain/config\";\nimport { getUriFromLink } from \"@berachain/config\";\nimport { goldskyBaseUrl } from \"@berachain/config/internal\";\n\nimport apiResults from \"@berachain/graphql/dex/api\";\n\nimport { BeraError } from \"../../errors/BeraError\";\nimport { parseBaseArgs } from \"../../utils/parseBaseArgs\";\nimport { BeraApolloClient } from \"./BeraApolloClient\";\nimport { getClientName } from \"./clientName\";\n\n/**\n * If currentDapp is set, it will add the stellate client name and version to the headers.\n * @see {@link https://stellate.co/docs/graphql-metrics/tracking/clients}\n */\nfunction applyStellateClientName(url: BeraConfigHttpLink): BeraConfigHttpLink {\n const headers = typeof url === \"string\" ? undefined : url.headers;\n\n const uri = getUriFromLink(url);\n const name = typeof url === \"string\" ? \"unknown\" : url.name;\n\n return {\n uri,\n name,\n headers: {\n ...headers,\n \"x-graphql-client-name\": getClientName(),\n \"x-graphql-client-version\": `${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`,\n },\n };\n}\n\nexport { gql } from \"@apollo/client\";\n\nfunction getClient(\n endpoint: BeraConfigHttpLink,\n {\n ssrMode,\n inMemoryCacheOptions,\n }: {\n ssrMode?: boolean;\n inMemoryCacheOptions?: InMemoryCacheConfig;\n } = {},\n) {\n const url = getUriFromLink(endpoint);\n const headers = typeof endpoint === \"string\" ? undefined : endpoint.headers;\n let name = typeof endpoint === \"string\" ? undefined : endpoint.name;\n\n if (!name && url.includes(goldskyBaseUrl)) {\n name = url.replace(goldskyBaseUrl, \"\").replace(\"/gn\", \"\");\n }\n\n return new BeraApolloClient({\n url,\n name: name ?? \"unknown\",\n link: new HttpLink({\n uri: url,\n headers,\n }),\n defaultOptions: {\n query: {\n // With the default none error policy, an error causes the promise to reject.\n errorPolicy: \"none\",\n fetchPolicy: \"no-cache\",\n },\n },\n cache: new InMemoryCache(inMemoryCacheOptions),\n ssrMode,\n });\n}\n\n/**\n * Browser-reachable Apollo client factory for `api` and Bend's `whisk`\n * endpoints. The pol subgraph client is server-only; browser data access goes\n * through the typed `/api/pol/*` REST endpoints. Same auth shape as\n * bend.whiskApi — non-public env values only resolve server-side.\n */\ntype GraphqlClient = \"api\" | \"bend.whisk\" | \"pol.subgraph\";\n\nconst SUBGRAPH_CLIENTS = [\n \"pol.subgraph\",\n] as const satisfies readonly GraphqlClient[];\n\ntype SubgraphClient = (typeof SUBGRAPH_CLIENTS)[number];\n\nfunction isSubgraphClient(name: GraphqlClient): name is SubgraphClient {\n return SUBGRAPH_CLIENTS.includes(name as SubgraphClient);\n}\n\nconst clientCache = new Map<string, BeraApolloClient>();\n\nfunction store(\n cacheKey: string | null,\n client: BeraApolloClient,\n): BeraApolloClient {\n if (cacheKey) clientCache.set(cacheKey, client);\n return client;\n}\n\nexport function getApolloClient(\n clientName: GraphqlClient,\n { ...args }: BeraJS.BaseFunctionArgs,\n): BeraApolloClient {\n if (typeof window !== \"undefined\" && isSubgraphClient(clientName)) {\n throw new BeraError({\n message: \"Subgraph Apollo client is server-only\",\n level: \"error\",\n });\n }\n\n const { config, chainId } = parseBaseArgs(args);\n\n // Caller-supplied configs are treated as unique (may override URLs/headers),\n // so they bypass the cache. The common path (chainId-only) is memoized.\n const cacheKey = args.config ? null : `${chainId}:${clientName}`;\n\n if (cacheKey) {\n const cached = clientCache.get(cacheKey);\n if (cached) return cached;\n }\n\n switch (clientName) {\n case \"api\":\n return store(\n cacheKey,\n getClient(applyStellateClientName(config.api), {\n inMemoryCacheOptions: {\n possibleTypes: apiResults.possibleTypes,\n },\n }),\n );\n\n case \"bend.whisk\":\n if (!config.bend.whiskApi) {\n throw new BeraError({\n message: \"Bend whisk API is not configured on this chain\",\n level: \"error\",\n });\n }\n return store(cacheKey, getClient(config.bend.whiskApi));\n\n case \"pol.subgraph\":\n return store(cacheKey, getClient(config.pol.subgraph));\n }\n}\n"],"mappings":"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","names":[]}