@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
@@ -4,31 +4,104 @@ import {
4
4
  import {
5
5
  getBalanceCall,
6
6
  getEnsoClient
7
- } from "./chunk-J3LTASDE.mjs";
7
+ } from "./chunk-ZHV3MQ4F.mjs";
8
8
  import {
9
9
  BeraMonitoring,
10
10
  initBeraError
11
- } from "./chunk-LE4CYW7S.mjs";
11
+ } from "./chunk-FWRYUIJK.mjs";
12
12
  import {
13
13
  defaultFlags
14
- } from "./chunk-7TFV6UKF.mjs";
14
+ } from "./chunk-XXKPXNQD.mjs";
15
15
  import {
16
16
  beraToken,
17
17
  isToken
18
- } from "./chunk-PJRLHTGC.mjs";
18
+ } from "./chunk-HPRLNT6R.mjs";
19
19
  import {
20
20
  parseBaseArgs
21
- } from "./chunk-TGN55GKE.mjs";
21
+ } from "./chunk-SC3BSCTN.mjs";
22
22
  import {
23
23
  BeraError,
24
24
  InvalidArgumentError
25
- } from "./chunk-NZAH3SGT.mjs";
25
+ } from "./chunk-MVNQY2D4.mjs";
26
26
 
27
27
  // src/contexts/BeraFlags/BeraFlags.tsx
28
28
  import { createContext, useContext } from "react";
29
- import {
30
- isFlagEnabled
31
- } from "@berachain/config/internal/edge-config";
29
+
30
+ // ../edge-config/dist/chunk-3VEEJCCG.mjs
31
+ var ChainId = /* @__PURE__ */ ((ChainId22) => {
32
+ ChainId22[ChainId22["MAINNET"] = 80094] = "MAINNET";
33
+ ChainId22[ChainId22["BEPOLIA"] = 80069] = "BEPOLIA";
34
+ return ChainId22;
35
+ })(ChainId || {});
36
+ var defaultChainId = process.env.NEXT_PUBLIC_CHAIN_ID ? Number(process.env.NEXT_PUBLIC_CHAIN_ID) : 80094;
37
+ if (!Object.values(ChainId).includes(defaultChainId)) {
38
+ throw new Error(
39
+ `process.env.NEXT_PUBLIC_CHAIN_ID is invalid: ${defaultChainId}.
40
+ This value must be one of the following: ${Object.values(ChainId).filter(Number).join(", ")} when using @berachain/edge-config.`
41
+ );
42
+ }
43
+ var isProduction = process.env.VERCEL_TARGET_ENV === "production";
44
+ var currentDapp = process.env.NEXT_PUBLIC_BERA_APP_NAME;
45
+ function _checkChain(flag, chain, defaultReturn) {
46
+ if (flag.chain?.length) {
47
+ return flag.chain.includes(
48
+ chain === 80094 ? "mainnet" : "bepolia"
49
+ );
50
+ }
51
+ return defaultReturn;
52
+ }
53
+ function _checkBranch(flag, _environment, defaultReturn) {
54
+ if (!_environment) {
55
+ return defaultReturn;
56
+ }
57
+ const environment = _environment === "development" ? "preview" : _environment;
58
+ if (flag.branch?.length) {
59
+ return flag.branch.includes(
60
+ environment
61
+ );
62
+ }
63
+ return defaultReturn;
64
+ }
65
+ function _checkAppName(flag, app, defaultReturn) {
66
+ if (flag.app?.length && app) {
67
+ return flag.app.includes(app);
68
+ }
69
+ return defaultReturn;
70
+ }
71
+ function _checkTime(flag, key, defaultReturn) {
72
+ const time = flag[key];
73
+ if (!time) {
74
+ return defaultReturn;
75
+ }
76
+ if (key === "startAt") {
77
+ return time ? new Date(time) <= /* @__PURE__ */ new Date() : defaultReturn;
78
+ } else {
79
+ return time ? new Date(time) >= /* @__PURE__ */ new Date() : defaultReturn;
80
+ }
81
+ }
82
+ function isFlagEnabled(flag, {
83
+ chain = defaultChainId,
84
+ environment = process.env.VERCEL_TARGET_ENV,
85
+ app = currentDapp
86
+ } = {}) {
87
+ if (!flag) return false;
88
+ if (typeof flag === "boolean") {
89
+ return flag;
90
+ }
91
+ if (flag.condition === "OR") {
92
+ return _checkChain(flag, chain, false) || _checkBranch(flag, environment, false) || _checkAppName(flag, app, false) || // this condition is weird but it's consistent with the logic in the AND condition
93
+ // this means that if startAt is false, but endAt is true, the flag is enabled anyway
94
+ // we should prob consider a cleaner way to handle the OR condition in the future
95
+ _checkTime(flag, "startAt", false) || _checkTime(flag, "endAt", false);
96
+ }
97
+ return _checkChain(flag, chain, true) && _checkBranch(flag, environment, true) && _checkAppName(flag, app, true) && _checkTime(flag, "startAt", true) && _checkTime(flag, "endAt", true);
98
+ }
99
+
100
+ // ../edge-config/dist/index.mjs
101
+ import { getAll } from "@vercel/edge-config";
102
+ import { get } from "@vercel/edge-config";
103
+
104
+ // src/contexts/BeraFlags/BeraFlags.tsx
32
105
  import { jsx } from "react/jsx-runtime";
33
106
  var BeraFlagContext = createContext(
34
107
  void 0
@@ -166,6 +239,7 @@ function useHoneyConfig() {
166
239
  }
167
240
 
168
241
  // src/hooks/enso/useEnsoUserTokensWithBalances.ts
242
+ import { ChainId as ChainId2, defaultChainId as defaultChainId2 } from "@berachain/config/internal";
169
243
  import { useBeraWallet, useConfig } from "@berachain/wagmi/hooks";
170
244
 
171
245
  // src/actions/enso/getEnsoUserTokensWithBalances.ts
@@ -196,19 +270,16 @@ async function getEnsoUserTokensWithBalances({
196
270
  }
197
271
  const tokens = ensoBalances.map(
198
272
  (balance) => ({
199
- name: balance.name,
200
- symbol: balance.symbol,
273
+ name: balance.name ?? "",
274
+ symbol: balance.symbol ?? "",
201
275
  decimals: balance.decimals,
202
276
  address: isToken(balance.token, "ETH") ? beraToken.address : balance.token,
203
- logoURI: balance.logoUri,
277
+ logoURI: balance.logoUri ?? void 0,
204
278
  balance: {
205
279
  raw: balance.amount.toString(),
206
280
  formatted: formatUnits(BigInt(balance.amount), balance.decimals)
207
281
  },
208
- chainId: Number(
209
- // @ts-expect-error - balance.chainId is defined just not typed by enso
210
- balance.chainId
211
- ),
282
+ chainId: balance.chainId,
212
283
  price: Number(balance.price)
213
284
  })
214
285
  );
@@ -291,8 +362,7 @@ function useEnsoUserTokensWithBalances({ chainId } = {}, options) {
291
362
  const proxyAggregatorsThroughVercel = useBeraFlag(
292
363
  "proxyAggregatorsThroughVercel"
293
364
  );
294
- const isEnabled = !!fromAddress;
295
- const QUERY_KEY = isEnabled && wagmiConfig ? [
365
+ const QUERY_KEY = fromAddress && wagmiConfig ? [
296
366
  "useEnsoUserTokensWithBalances",
297
367
  fromAddress,
298
368
  chainId,
@@ -300,26 +370,27 @@ function useEnsoUserTokensWithBalances({ chainId } = {}, options) {
300
370
  ] : null;
301
371
  return useSWR(
302
372
  QUERY_KEY,
303
- async ([, fromAddress2, chainId2]) => getEnsoUserTokensWithBalances({
373
+ async ([, fromAddress2, chainId2, proxyAggregatorsThroughVercel2]) => getEnsoUserTokensWithBalances({
304
374
  account: fromAddress2,
305
375
  wagmiConfig,
306
376
  chainId: chainId2 ?? "all",
307
377
  ensoClient: getEnsoClient({
308
- baseURL: proxyAggregatorsThroughVercel ? "/api/enso" : void 0
378
+ baseURL: proxyAggregatorsThroughVercel2 ? "/api/enso" : void 0
309
379
  })
310
380
  }),
311
381
  {
312
382
  refreshInterval: 1e5 /* NORMAL */,
313
- ...options
383
+ ...options,
384
+ // Enso only supports mainnet — on a Bepolia deployment `getBalances`
385
+ // returns a non-array, which the action reports as a warning (HUB-A1J).
386
+ // Don't query at all when the app isn't on an Enso-supported chain.
387
+ isEnabled: chainId !== ChainId2.BEPOLIA && defaultChainId2 !== ChainId2.BEPOLIA && (options?.isEnabled ?? true)
314
388
  }
315
389
  );
316
390
  }
317
391
 
318
392
  // src/contexts/TokensProvider.tsx
319
393
  import { createContext as createContext5, useMemo } from "react";
320
- import {
321
- isFlagEnabled as isFlagEnabled2
322
- } from "@berachain/config/internal/edge-config";
323
394
 
324
395
  // src/utils/formatTokenList.ts
325
396
  function formatTokenList({
@@ -369,7 +440,7 @@ function TokensProvider({
369
440
  defaultTokenList: [
370
441
  ...defaultTokens,
371
442
  ...edgeConfigTokenList?.filter(
372
- (token) => isFlagEnabled2(token.enabled)
443
+ (token) => isFlagEnabled(token.enabled)
373
444
  )
374
445
  ],
375
446
  externalList: [
@@ -421,4 +492,4 @@ export {
421
492
  TokenContext,
422
493
  TokensProvider
423
494
  };
424
- //# sourceMappingURL=chunk-UA3Z47LT.mjs.map
495
+ //# sourceMappingURL=chunk-6D4S3EAC.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/contexts/BeraFlags/BeraFlags.tsx","../../edge-config/dist/chunk-3VEEJCCG.mjs","../../edge-config/dist/index.mjs","../src/contexts/BexStatusProvider.tsx","../src/contexts/BlockTimeProvider.tsx","../src/contexts/HoneyConfigProvider.tsx","../src/hooks/enso/useEnsoUserTokensWithBalances.ts","../src/actions/enso/getEnsoUserTokensWithBalances.ts","../src/contexts/TokensProvider.tsx","../src/utils/formatTokenList.ts"],"sourcesContent":["import { createContext, useContext } from \"react\";\n\nimport { type EdgeConfigSchema, isFlagEnabled } from \"@berachain/edge-config\";\n\nimport { type BeraFlags, defaultFlags } from \"./defaultFlags\";\n\nexport type { BeraFlags };\n\nexport type BeraFlagsContextReturn = BeraFlags & {\n /**\n * A list of aggregators that are enabled. If not provided, all aggregators are enabled.\n */\n aggregators: string[] | undefined;\n swberaAprWindow: Exclude<\n EdgeConfigSchema[\"pol\"][\"swberaAprWindow\"],\n undefined\n >;\n};\n\nconst BeraFlagContext = createContext<BeraFlagsContextReturn | undefined>(\n undefined,\n);\n\nexport function BeraFlagsProvider({\n children,\n flags,\n aggregators,\n swberaAprWindow = \"DAY\",\n}: {\n children: React.ReactNode;\n flags: BeraFlags;\n aggregators?: NonNullable<EdgeConfigSchema[\"bex\"]>[\"aggregators\"];\n swberaAprWindow?: EdgeConfigSchema[\"pol\"][\"swberaAprWindow\"];\n}) {\n return (\n <BeraFlagContext.Provider\n value={{\n ...defaultFlags,\n ...flags,\n aggregators: aggregators\n ? Object.entries(aggregators)\n .filter(([, value]) => isFlagEnabled(value))\n .map(([key]) => key)\n : undefined,\n swberaAprWindow,\n }}\n >\n {children}\n </BeraFlagContext.Provider>\n );\n}\n\nexport function useBeraFlags() {\n const context = useContext(BeraFlagContext);\n if (!context) {\n throw new Error(\"BeraFlagsProvider not found\");\n }\n return context;\n}\n\nexport function useBeraFlag<T extends keyof BeraFlagsContextReturn>(\n key: T,\n): BeraFlagsContextReturn[T] {\n const flags = useBeraFlags();\n return flags[key];\n}\n","var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\n// src/env.ts\nvar ChainId = /* @__PURE__ */ ((ChainId2) => {\n ChainId2[ChainId2[\"MAINNET\"] = 80094] = \"MAINNET\";\n ChainId2[ChainId2[\"BEPOLIA\"] = 80069] = \"BEPOLIA\";\n return ChainId2;\n})(ChainId || {});\nvar defaultChainId = process.env.NEXT_PUBLIC_CHAIN_ID ? Number(process.env.NEXT_PUBLIC_CHAIN_ID) : 80094 /* MAINNET */;\nif (!Object.values(ChainId).includes(defaultChainId)) {\n throw new Error(\n `process.env.NEXT_PUBLIC_CHAIN_ID is invalid: ${defaultChainId}.\n This value must be one of the following: ${Object.values(ChainId).filter(Number).join(\", \")} when using @berachain/edge-config.`\n );\n}\nvar isProduction = process.env.VERCEL_TARGET_ENV === \"production\";\nvar currentDapp = process.env.NEXT_PUBLIC_BERA_APP_NAME;\n\n// src/isFlagEnabled.ts\nfunction _checkChain(flag, chain, defaultReturn) {\n if (flag.chain?.length) {\n return flag.chain.includes(\n chain === 80094 /* MAINNET */ ? \"mainnet\" : \"bepolia\"\n );\n }\n return defaultReturn;\n}\nfunction _checkBranch(flag, _environment, defaultReturn) {\n if (!_environment) {\n return defaultReturn;\n }\n const environment = _environment === \"development\" ? \"preview\" : _environment;\n if (flag.branch?.length) {\n return flag.branch.includes(\n environment\n );\n }\n return defaultReturn;\n}\nfunction _checkAppName(flag, app, defaultReturn) {\n if (flag.app?.length && app) {\n return flag.app.includes(app);\n }\n return defaultReturn;\n}\nfunction _checkTime(flag, key, defaultReturn) {\n const time = flag[key];\n if (!time) {\n return defaultReturn;\n }\n if (key === \"startAt\") {\n return time ? new Date(time) <= /* @__PURE__ */ new Date() : defaultReturn;\n } else {\n return time ? new Date(time) >= /* @__PURE__ */ new Date() : defaultReturn;\n }\n}\nfunction isFlagEnabled(flag, {\n chain = defaultChainId,\n environment = process.env.VERCEL_TARGET_ENV,\n app = currentDapp\n} = {}) {\n if (!flag) return false;\n if (typeof flag === \"boolean\") {\n return flag;\n }\n if (flag.condition === \"OR\") {\n return _checkChain(flag, chain, false) || _checkBranch(flag, environment, false) || _checkAppName(flag, app, false) || // this condition is weird but it's consistent with the logic in the AND condition\n // this means that if startAt is false, but endAt is true, the flag is enabled anyway\n // we should prob consider a cleaner way to handle the OR condition in the future\n _checkTime(flag, \"startAt\", false) || _checkTime(flag, \"endAt\", false);\n }\n return _checkChain(flag, chain, true) && _checkBranch(flag, environment, true) && _checkAppName(flag, app, true) && _checkTime(flag, \"startAt\", true) && _checkTime(flag, \"endAt\", true);\n}\n\nexport {\n __export,\n isProduction,\n isFlagEnabled\n};\n","import {\n isFlagEnabled\n} from \"./chunk-3VEEJCCG.mjs\";\n\n// src/safeGetAll.ts\nimport { getAll } from \"@vercel/edge-config\";\nasync function safeGetAll({\n onError\n} = {}) {\n try {\n return await getAll();\n } catch (e) {\n onError?.(e);\n return void 0;\n }\n}\n\n// src/safeGetConfig.ts\nimport { get } from \"@vercel/edge-config\";\nasync function safeGetConfig(flagName, {\n onError\n} = {}) {\n try {\n return await get(flagName);\n } catch (e) {\n onError?.(e);\n return void 0;\n }\n}\nexport {\n isFlagEnabled,\n safeGetAll,\n safeGetConfig\n};\n","import {\n createContext,\n type Dispatch,\n type PropsWithChildren,\n type SetStateAction,\n useContext,\n useState,\n} from \"react\";\nimport type { Hex } from \"viem\";\n\nimport type { EdgeConfigSchema } from \"@berachain/edge-config\";\n\nimport { BeraError } from \"../errors/BeraError\";\n\ntype FactoryStatus = {\n /**\n * If the composable stable factory is enabled\n */\n composableStable: \"paused\" | \"enabled\";\n /**\n * If the weighted factory is enabled\n */\n weighted: \"paused\" | \"enabled\";\n};\nexport interface BexStatusProviderProps {\n isVaultPaused: boolean;\n pool?: {\n id: Hex;\n isInRecoveryMode: boolean;\n isPaused: boolean;\n };\n factories: FactoryStatus;\n labels?: NonNullable<EdgeConfigSchema[\"bex\"]>[\"emergencyLabels\"];\n}\n\nexport const BexStateContext = createContext<{\n protocol: {\n isPaused: boolean;\n factories: FactoryStatus & { allPaused: boolean };\n };\n onPoolChange: Dispatch<SetStateAction<BexStatusProviderProps[\"pool\"]>>;\n pool?: {\n id: Hex;\n isInRecoveryMode: boolean;\n isPaused: boolean;\n disablePoolWithdrawals: boolean;\n disablePoolDeposits: boolean;\n };\n labels?: NonNullable<EdgeConfigSchema[\"bex\"]>[\"emergencyLabels\"];\n}>({\n protocol: {\n isPaused: false,\n factories: {\n composableStable: \"enabled\",\n weighted: \"enabled\",\n allPaused: false,\n },\n },\n onPoolChange: () => {},\n pool: undefined,\n});\n\n/**\n * @description Determines the status of a pool or vault and returns the appropriate messages and flags to disable functionality.\n * More information here https://www.notion.so/berachain/BEX-RecoveryMode-and-Pause-explained-17c6120abced80e0985dd589b57ff018\n *\n * @returns status flags to enable/disable/notify users across the BEX\n *\n **/\nexport function useBexStatus() {\n const context = useContext(BexStateContext);\n\n if (!context) {\n throw new BeraError({\n level: \"fatal\",\n message: \"BexStateContext is not defined\",\n });\n }\n\n return context;\n}\n\nexport function BexStatusProvider({\n children,\n isVaultPaused,\n labels,\n factories,\n}: PropsWithChildren<BexStatusProviderProps>) {\n const [poolState, setPoolState] = useState<BexStatusProviderProps[\"pool\"]>();\n // Determine whether to disable withdrawals for a pool (vault pause does not impact this)\n const disablePoolWithdrawals =\n (poolState?.isPaused && !poolState?.isInRecoveryMode) ?? false;\n\n // Determine whether to disable deposits for a pool (vault pause does not impact this)\n const disablePoolDeposits = isVaultPaused || poolState?.isPaused;\n\n // TODO: we dont yet support anything to disable staking/unstaking within reward vaults if they get paused\n\n return (\n <BexStateContext.Provider\n value={{\n protocol: {\n isPaused: isVaultPaused,\n factories: {\n ...factories,\n allPaused:\n factories.composableStable === \"paused\" &&\n factories.weighted === \"paused\",\n },\n },\n labels,\n onPoolChange: setPoolState,\n pool: poolState\n ? {\n ...poolState,\n disablePoolWithdrawals: !!disablePoolWithdrawals,\n disablePoolDeposits: !!disablePoolDeposits,\n }\n : undefined,\n }}\n >\n {children}\n </BexStateContext.Provider>\n );\n}\n","import { createContext, type PropsWithChildren, useContext } from \"react\";\n\nimport { mainnet } from \"@berachain/config/mainnet\";\n\nimport { parseBaseArgs } from \"../utils/parseBaseArgs\";\n\n/**\n * Average berachain block time in seconds\n */\nexport function useBlockTime(): number {\n return useContext(BlockTimeContext);\n}\n\nexport const BlockTimeContext = createContext<number>(\n // this is the default block time for berachain, but actually overridden by the block time provider\n mainnet.averageBlockTime,\n);\n\nexport function BlockTimeProvider({\n children,\n blockTime,\n ...args\n}: PropsWithChildren<{\n blockTime?: number;\n}> &\n BeraJS.BaseFunctionArgs) {\n const { config } = parseBaseArgs(args);\n\n return (\n <BlockTimeContext.Provider value={blockTime ?? config.averageBlockTime}>\n {children}\n </BlockTimeContext.Provider>\n );\n}\n","import { createContext, useContext } from \"react\";\n\nimport type { HoneyFeeMap } from \"../actions/honey/getHoneyFees\";\nimport type { TokenWithMetadata } from \"../types/dex\";\nimport type { PythPriceFeedMap } from \"../types/honeySwap\";\n\nexport const HoneyConfigContext = createContext<\n HoneyConfigContextReturn | undefined\n>(undefined);\n\nexport type TokenWithOrder = TokenWithMetadata & {\n order: number;\n};\nexport interface HoneyConfigContextReturn {\n /**\n * Map of the Pyth price feed ids for each collateral\n */\n priceFeedMap: PythPriceFeedMap;\n /**\n * This is the list of all the collaterals that are supported by the Honey protocol\n */\n collateralList: TokenWithOrder[];\n /**\n * This is the main collateral that is used to calculate the relative cap limit\n */\n referenceCollateral: TokenWithOrder;\n /**\n * An object that maps the redeem/mint rate for each collateral and the weighted rates for the basket mode\n */\n feeMap: HoneyFeeMap;\n flags: {\n /**\n * If true, mint/redeem will also update pyth prices\n */\n isPythWrapperEnabled: boolean;\n };\n /**\n * Honey protocol configs\n */\n protocol: {\n /**\n * Honey protocol paused state\n */\n isPaused: boolean;\n /**\n * The label for the Honey protocol paused message\n */\n pausedBannerLabel?: string;\n };\n}\n\nexport interface HoneyConfigProviderProps extends HoneyConfigContextReturn {\n children: React.ReactNode;\n}\n\nexport function HoneyConfigProvider({\n children,\n ...props\n}: HoneyConfigProviderProps) {\n return (\n <HoneyConfigContext.Provider value={props}>\n {children}\n </HoneyConfigContext.Provider>\n );\n}\n\nexport function useHoneyConfig() {\n const context = useContext(HoneyConfigContext);\n if (!context) {\n throw new Error(\"useHoneyConfig must be used within a HoneyConfigProvider\");\n }\n return context;\n}\n","import { ChainId, defaultChainId } from \"@berachain/config/internal\";\n\nimport { useBeraWallet, useConfig } from \"@berachain/wagmi/hooks\";\nimport { useSWR } from \"@berachain/utils/pkg/swr\";\n\nimport { getEnsoClient } from \"../../actions/clients/getEnsoClient\";\nimport { getEnsoUserTokensWithBalances } from \"../../actions/enso/getEnsoUserTokensWithBalances\";\nimport { useBeraFlag } from \"../../contexts/BeraFlags/BeraFlags\";\nimport { POLLING } from \"../../enum/polling\";\nimport type { BalanceToken } from \"../../types/dex\";\nimport type { DefaultHookOptions } from \"../../types/global\";\n\nexport function useEnsoUserTokensWithBalances(\n { chainId }: { chainId?: number } = {},\n options?: DefaultHookOptions,\n) {\n const { address: fromAddress } = useBeraWallet();\n const wagmiConfig = useConfig();\n const proxyAggregatorsThroughVercel = useBeraFlag(\n \"proxyAggregatorsThroughVercel\",\n );\n\n const QUERY_KEY =\n fromAddress && wagmiConfig\n ? ([\n \"useEnsoUserTokensWithBalances\",\n fromAddress,\n chainId,\n proxyAggregatorsThroughVercel ?? false,\n ] as const)\n : null;\n\n return useSWR(\n QUERY_KEY,\n async ([, fromAddress, chainId, proxyAggregatorsThroughVercel]): Promise<\n BalanceToken[]\n > =>\n getEnsoUserTokensWithBalances({\n account: fromAddress,\n wagmiConfig,\n chainId: chainId ?? \"all\",\n ensoClient: getEnsoClient({\n baseURL: proxyAggregatorsThroughVercel ? \"/api/enso\" : undefined,\n }),\n }),\n {\n refreshInterval: POLLING.NORMAL,\n ...options,\n // Enso only supports mainnet — on a Bepolia deployment `getBalances`\n // returns a non-array, which the action reports as a warning (HUB-A1J).\n // Don't query at all when the app isn't on an Enso-supported chain.\n isEnabled:\n chainId !== ChainId.BEPOLIA &&\n defaultChainId !== ChainId.BEPOLIA &&\n (options?.isEnabled ?? true),\n },\n );\n}\n","import type { EnsoClient } from \"@ensofinance/sdk\";\nimport { type Config, getChains, multicall } from \"@wagmi/core\";\nimport { type Address, formatUnits } from \"viem\";\n\nimport { BeraMonitoring } from \"../../errors/BeraMonitoring\";\nimport { InvalidArgumentError } from \"../../errors/InvalidArgumentError\";\nimport { initBeraError } from \"../../errors/initBeraError\";\nimport type { BalanceToken } from \"../../types/dex\";\nimport { beraToken, isToken } from \"../../utils/tokens\";\nimport { getBalanceCall } from \"../tokens/getWalletBalances\";\n\n/**\n * Get user balances for each supported chain.\n *\n * This uses enso's balance endpoint to get the balances and RPC to get fresh balances.\n */\nexport async function getEnsoUserTokensWithBalances({\n account,\n wagmiConfig,\n chainId,\n ensoClient,\n}: {\n account: Address;\n wagmiConfig: Config;\n chainId: number | \"all\";\n ensoClient: EnsoClient;\n}): Promise<BalanceToken[]> {\n const ensoBalances = await ensoClient.getBalances({\n useEoa: true,\n chainId: chainId ?? \"all\",\n eoaAddress: account,\n });\n\n // The Enso SDK can return a non-array (e.g. an error object) on a malformed\n // or empty response. Guard before mapping to avoid the unactionable minified\n // \"(...).map is not a function\" crash — but still report it as a typed,\n // stably-grouped warning so we don't silently swallow an Enso API problem\n // (an empty portfolio would otherwise look like \"user has no tokens\").\n if (!Array.isArray(ensoBalances)) {\n BeraMonitoring.captureException(\n new InvalidArgumentError({\n property: \"ensoBalances\",\n value: ensoBalances,\n expected: \"BalanceToken[]\",\n chainId: typeof chainId === \"number\" ? chainId : undefined,\n extra: { account, chainId },\n }),\n );\n return [];\n }\n\n const tokens: BalanceToken[] = ensoBalances.map(\n (balance) =>\n ({\n name: balance.name ?? \"\",\n symbol: balance.symbol ?? \"\",\n decimals: balance.decimals,\n address: isToken(balance.token, \"ETH\")\n ? beraToken.address\n : balance.token,\n logoURI: balance.logoUri ?? undefined,\n balance: {\n raw: balance.amount.toString(),\n formatted: formatUnits(BigInt(balance.amount), balance.decimals),\n },\n chainId: balance.chainId,\n price: Number(balance.price),\n }) as const satisfies BalanceToken,\n );\n\n const tokenByChainId = Object.groupBy(tokens, (a) => a.chainId ?? 0);\n\n const balances = await Promise.allSettled(\n Object.entries(tokenByChainId).map(async ([chainId, chainTokens]) => {\n if (!chainTokens) return undefined;\n const chainConfig = getChains(wagmiConfig).find(\n (chain) => chain.id === Number(chainId),\n );\n\n if (!chainConfig) {\n // if we've queried a chain that is not supported, we need to return undefined\n return undefined;\n }\n\n const multicall3 = chainConfig.contracts?.multicall3;\n\n const multicallAddress = multicall3?.address;\n\n if (!multicallAddress) {\n // if multicall is not supported on this chain, we need to use the enso balance\n // first let's report the error, as this is likely unexpected\n BeraMonitoring.captureException(\n new InvalidArgumentError({\n property: \"multicallAddress\",\n value: multicallAddress,\n expected: \"Address\",\n chainId: Number(chainId),\n }),\n );\n\n // we can return the tokens as is, as the balance is already set from the enso client\n return chainTokens;\n }\n\n const balances = await multicall(wagmiConfig, {\n chainId: Number(chainId),\n contracts: chainTokens.map((token) =>\n getBalanceCall({\n token,\n account,\n multicallAddress,\n }),\n ),\n allowFailure: true,\n });\n\n const tokensWithBalances: BalanceToken[] = [];\n\n for (let index = 0; index < chainTokens.length; index++) {\n const token = chainTokens[index];\n if (balances[index].status === \"success\") {\n const balance = balances[index].result;\n\n tokensWithBalances.push({\n ...token,\n balance: {\n raw: balance?.toString() ?? \"0\",\n formatted: formatUnits(balance ?? 0n, token.decimals),\n },\n });\n } else {\n console.error(\"error getting balance\", balances[index].error);\n BeraMonitoring.captureException(\n initBeraError({ cause: balances[index].error }),\n );\n // uses enso balance as fallback\n tokensWithBalances.push(token);\n }\n }\n\n return tokensWithBalances;\n }),\n );\n\n const flattenedBalances: BalanceToken[] = [];\n for (const result of balances) {\n if (result.status === \"fulfilled\") {\n flattenedBalances.push(...(result.value ?? []));\n } else {\n BeraMonitoring.captureException(initBeraError({ cause: result.reason }));\n }\n }\n\n return flattenedBalances.sort((a, b) => {\n const aValue = Number(a.balance.formatted) * (a.price ?? 0);\n const bValue = Number(b.balance.formatted) * (b.price ?? 0);\n return bValue - aValue;\n });\n}\n","import { createContext, type PropsWithChildren, useMemo } from \"react\";\n\nimport { type EdgeConfigSchema, isFlagEnabled } from \"@berachain/edge-config\";\n\nimport { useEnsoUserTokensWithBalances } from \"../hooks/enso/useEnsoUserTokensWithBalances\";\nimport type { BalanceToken, Token, TokenWithMetadata } from \"../types/dex\";\nimport { formatTokenList } from \"../utils/formatTokenList\";\n\nexport interface TokensProviderContext {\n tokenList: TokenWithMetadata[];\n userTokens: Token[];\n featuredTokens: TokenWithMetadata[];\n onRemoveToken: (token: Token) => void;\n onAddToken: (token: Token) => void;\n refresh: () => void;\n ensoTokens: BalanceToken[] | undefined;\n}\n\nexport const TokenContext = createContext<TokensProviderContext | undefined>(\n undefined,\n);\n\nexport interface TokensProviderProps\n extends Omit<\n TokensProviderContext,\n \"tokenList\" | \"onAddToken\" | \"featuredTokens\" | \"ensoTokens\"\n > {\n onAddToken: (\n token: Token,\n context: {\n defaultTokens: TokenWithMetadata[];\n userTokens: Token[];\n tokenList: TokenWithMetadata[];\n },\n ) => void;\n defaultTokens: TokenWithMetadata[];\n edgeConfigTokenList: EdgeConfigSchema[\"tokens\"];\n}\n\nexport function TokensProvider({\n children,\n defaultTokens,\n edgeConfigTokenList,\n userTokens,\n onAddToken,\n onRemoveToken,\n}: PropsWithChildren<Omit<TokensProviderProps, \"refresh\">>) {\n const { data: ensoTokens, refresh } = useEnsoUserTokensWithBalances();\n\n const { tokenList = [], featuredTokenList = [] } = useMemo(\n () =>\n formatTokenList({\n defaultTokenList: [\n ...defaultTokens,\n ...(edgeConfigTokenList?.filter((token) =>\n isFlagEnabled(token.enabled),\n ) as TokenWithMetadata[]),\n ],\n externalList: [\n ...userTokens,\n ...(ensoTokens ?? []).map((t) => ({\n ...t,\n balance: undefined,\n price: undefined,\n })),\n ],\n }),\n [defaultTokens, userTokens, edgeConfigTokenList, ensoTokens],\n );\n\n return (\n <TokenContext.Provider\n value={{\n tokenList,\n userTokens,\n featuredTokens: featuredTokenList,\n ensoTokens,\n onAddToken(tk) {\n onAddToken(tk, { defaultTokens, userTokens, tokenList });\n },\n onRemoveToken,\n refresh: () => {\n refresh();\n },\n }}\n >\n {children}\n </TokenContext.Provider>\n );\n}\n","import type { Token, TokenWithMetadata } from \"../types/dex\";\nimport { isToken } from \"./tokens\";\n\nexport interface FormatTokenListReturnType {\n /**\n * Token list including custom tokens\n */\n tokenList: Token[];\n /**\n * Custom token list (added by the user)\n */\n customTokenList?: Token[];\n /**\n * Featured token list\n */\n featuredTokenList?: Token[];\n}\n\nfunction formatTokenList({\n defaultTokenList = [],\n externalList = [],\n}: {\n defaultTokenList: TokenWithMetadata[];\n externalList?: Token[];\n}): FormatTokenListReturnType {\n if (defaultTokenList.length === 0) {\n return {\n tokenList: externalList,\n customTokenList: externalList,\n featuredTokenList: [],\n };\n }\n\n const defaultList = defaultTokenList.map((token) => {\n return { ...token, default: true };\n });\n\n const featuredTokenList = defaultList.filter((token) => {\n return token.tags?.some((tag) => tag === \"featured\");\n });\n\n const mergedList = [...defaultList, ...externalList];\n\n const uniqueList = mergedList.filter(\n (item, index) => mergedList.findIndex((i) => isToken(i, item)) === index,\n );\n\n return {\n tokenList: uniqueList,\n customTokenList: externalList,\n featuredTokenList,\n };\n}\n\nexport { formatTokenList };\n"],"mappings":"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","names":["ChainId2","createContext","useContext","jsx","createContext","useContext","createContext","useContext","jsx","useContext","createContext","createContext","useContext","jsx","ChainId","defaultChainId","chainId","balances","fromAddress","chainId","proxyAggregatorsThroughVercel","ChainId","defaultChainId","createContext","jsx","createContext"]}
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  isToken,
6
6
  wBeraToken
7
- } from "./chunk-PJRLHTGC.mjs";
7
+ } from "./chunk-HPRLNT6R.mjs";
8
8
 
9
9
  // src/utils/tokenWrapping.ts
10
10
  function wrapNativeToken(token) {
@@ -38,4 +38,4 @@ export {
38
38
  wrapNativeTokens,
39
39
  computePriceImpact
40
40
  };
41
- //# sourceMappingURL=chunk-AEN6IJFU.mjs.map
41
+ //# sourceMappingURL=chunk-7KN7TDUC.mjs.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  RequestError
3
- } from "./chunk-P3YZ7F22.mjs";
3
+ } from "./chunk-LL7XR2H5.mjs";
4
4
  import {
5
5
  BeraError,
6
6
  parseViemError
7
- } from "./chunk-NZAH3SGT.mjs";
7
+ } from "./chunk-MVNQY2D4.mjs";
8
8
 
9
9
  // src/errors/initBeraError.ts
10
10
  import { BaseError } from "viem";
@@ -84,4 +84,4 @@ export {
84
84
  initBeraError,
85
85
  BeraMonitoring
86
86
  };
87
- //# sourceMappingURL=chunk-LE4CYW7S.mjs.map
87
+ //# sourceMappingURL=chunk-FWRYUIJK.mjs.map
@@ -0,0 +1,29 @@
1
+ import {
2
+ fetchOpenApi
3
+ } from "./chunk-4576RF2K.mjs";
4
+ import {
5
+ parseBaseArgs
6
+ } from "./chunk-SC3BSCTN.mjs";
7
+
8
+ // src/actions/clients/clientName.ts
9
+ import { currentDapp } from "@berachain/config/internal";
10
+ function getClientName() {
11
+ if (currentDapp) return "berachain.dapps";
12
+ if (process.env.VERCEL_ENV === "test" || process.env.NODE_ENV === "test")
13
+ return "berachain.berajs-test";
14
+ return "berachain.berajs";
15
+ }
16
+
17
+ // src/actions/clients/fetchBeep.ts
18
+ function fetchBeep(path, params, args = {}) {
19
+ const { config } = parseBaseArgs(args);
20
+ return fetchOpenApi(config.beep, path, params, "beep", {
21
+ "X-Client-Id": getClientName()
22
+ });
23
+ }
24
+
25
+ export {
26
+ getClientName,
27
+ fetchBeep
28
+ };
29
+ //# sourceMappingURL=chunk-GDUKRUHE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/actions/clients/clientName.ts","../src/actions/clients/fetchBeep.ts"],"sourcesContent":["import { currentDapp } from \"@berachain/config/internal\";\n\n/**\n * Identifies the caller of a backend request for client-tracking metrics:\n * `berachain.dapps` from a real dapp (hub/bend/honey), `berachain.berajs-test`\n * in the test env, else `berachain.berajs` when berajs is consumed as a library.\n *\n * Used for both Stellate's GraphQL `x-graphql-client-name` and beep's\n * `X-Client-Id` so the two stay in sync.\n */\nexport function getClientName(): string {\n if (currentDapp) return \"berachain.dapps\";\n if (process.env.VERCEL_ENV === \"test\" || process.env.NODE_ENV === \"test\")\n return \"berachain.berajs-test\";\n // tracks usage of the berajs package in other packages\n return \"berachain.berajs\";\n}\n","import type { paths } from \"../../generated/beep\";\nimport { parseBaseArgs } from \"../../utils/parseBaseArgs\";\nimport { getClientName } from \"./clientName\";\nimport {\n type DefinedParams,\n fetchOpenApi,\n type GetPath,\n type GetResponse,\n} from \"./fetchOpenApi\";\n\n/**\n * Typed GET against the next-gen \"beep\" backend.\n *\n * The `path`, its path/query params and the response are all type-checked\n * against the beep schema (`src/generated/beep`), so route shapes (e.g.\n * the `/v0/stake/*` namespace) can never drift out of sync with the backend.\n * The base URL is resolved from `config.beep`.\n */\nexport function fetchBeep<P extends GetPath<paths>>(\n path: P,\n params: DefinedParams<paths, P>,\n args: BeraJS.BaseFunctionArgs = {},\n): Promise<GetResponse<paths, P>> {\n const { config } = parseBaseArgs(args);\n\n return fetchOpenApi<paths, P>(config.beep, path, params, \"beep\", {\n \"X-Client-Id\": getClientName(),\n });\n}\n"],"mappings":";;;;;;;;AAAA,SAAS,mBAAmB;AAUrB,SAAS,gBAAwB;AACtC,MAAI,YAAa,QAAO;AACxB,MAAI,QAAQ,IAAI,eAAe,UAAU,QAAQ,IAAI,aAAa;AAChE,WAAO;AAET,SAAO;AACT;;;ACEO,SAAS,UACd,MACA,QACA,OAAgC,CAAC,GACD;AAChC,QAAM,EAAE,OAAO,IAAI,cAAc,IAAI;AAErC,SAAO,aAAuB,OAAO,MAAM,MAAM,QAAQ,QAAQ;AAAA,IAC/D,eAAe,cAAc;AAAA,EAC/B,CAAC;AACH;","names":[]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  parseBaseArgs
3
- } from "./chunk-TGN55GKE.mjs";
3
+ } from "./chunk-SC3BSCTN.mjs";
4
4
  import {
5
5
  InvalidArgumentError
6
- } from "./chunk-NZAH3SGT.mjs";
6
+ } from "./chunk-MVNQY2D4.mjs";
7
7
 
8
8
  // src/utils/tokens.ts
9
9
  import { ethAddress, isAddress, zeroAddress } from "viem";
@@ -78,4 +78,4 @@ export {
78
78
  getHoneyToken,
79
79
  isToken
80
80
  };
81
- //# sourceMappingURL=chunk-PJRLHTGC.mjs.map
81
+ //# sourceMappingURL=chunk-HPRLNT6R.mjs.map