@berachain/berajs 0.2.4 → 0.2.6-patch.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 (463) hide show
  1. package/README.md +0 -0
  2. package/dist/abi/exports.cjs +1 -1
  3. package/dist/abi/exports.cjs.map +1 -1
  4. package/dist/abi/exports.d.cts +17 -1
  5. package/dist/abi/exports.d.ts +17 -1
  6. package/dist/abi/exports.mjs +1 -1
  7. package/dist/abi/exports.mjs.map +1 -1
  8. package/dist/actions/exports.cjs +1 -1
  9. package/dist/actions/exports.cjs.map +1 -1
  10. package/dist/actions/exports.d.cts +9 -38
  11. package/dist/actions/exports.d.ts +9 -38
  12. package/dist/actions/exports.mjs +1 -1
  13. package/dist/actions/exports.mjs.map +1 -1
  14. package/dist/chunk-2YBHAMDV.cjs +2 -0
  15. package/dist/chunk-2YBHAMDV.cjs.map +1 -0
  16. package/dist/chunk-57RINXU6.cjs +2 -0
  17. package/dist/chunk-57RINXU6.cjs.map +1 -0
  18. package/dist/{chunk-AX2YQQFQ.mjs → chunk-74QD4JAH.mjs} +2 -2
  19. package/dist/chunk-74QD4JAH.mjs.map +1 -0
  20. package/dist/chunk-74WA35RI.cjs +2 -0
  21. package/dist/chunk-74WA35RI.cjs.map +1 -0
  22. package/dist/{chunk-7WRTK7RJ.mjs → chunk-BEKH5EYT.mjs} +2 -2
  23. package/dist/chunk-BEKH5EYT.mjs.map +1 -0
  24. package/dist/{chunk-FCWDGE62.cjs → chunk-CF3LFNXG.cjs} +2 -2
  25. package/dist/chunk-CF3LFNXG.cjs.map +1 -0
  26. package/dist/chunk-COMMLZ3O.mjs +2 -0
  27. package/dist/chunk-COMMLZ3O.mjs.map +1 -0
  28. package/dist/chunk-DDEQFR3M.cjs +2 -0
  29. package/dist/chunk-DDEQFR3M.cjs.map +1 -0
  30. package/dist/{chunk-6LDOG5RL.cjs → chunk-DK42F2ZM.cjs} +2 -2
  31. package/dist/chunk-DK42F2ZM.cjs.map +1 -0
  32. package/dist/{chunk-7SMWQ6SN.mjs → chunk-FM3WDBFH.mjs} +2 -2
  33. package/dist/chunk-FM3WDBFH.mjs.map +1 -0
  34. package/dist/chunk-HWOGQSNL.cjs +4 -0
  35. package/dist/chunk-HWOGQSNL.cjs.map +1 -0
  36. package/dist/chunk-I7M43BB4.cjs +2 -0
  37. package/dist/chunk-I7M43BB4.cjs.map +1 -0
  38. package/dist/chunk-IBJOI5SN.mjs +4 -0
  39. package/dist/chunk-IBJOI5SN.mjs.map +1 -0
  40. package/dist/chunk-IDFMLLDY.mjs +2 -0
  41. package/dist/chunk-IDFMLLDY.mjs.map +1 -0
  42. package/dist/{chunk-YZV5LKIP.cjs → chunk-LNVR4BW6.cjs} +2 -2
  43. package/dist/chunk-LNVR4BW6.cjs.map +1 -0
  44. package/dist/chunk-MJZHJFZO.mjs +2 -0
  45. package/dist/{chunk-YNO7BCCM.mjs.map → chunk-MJZHJFZO.mjs.map} +1 -1
  46. package/dist/chunk-MK5NS5B5.mjs +2 -0
  47. package/dist/chunk-MK5NS5B5.mjs.map +1 -0
  48. package/dist/{chunk-C6ZGUO4H.cjs → chunk-NMH7LHPW.cjs} +2 -2
  49. package/dist/chunk-NMH7LHPW.cjs.map +1 -0
  50. package/dist/chunk-NVHV2LDK.cjs +2 -0
  51. package/dist/chunk-NVHV2LDK.cjs.map +1 -0
  52. package/dist/chunk-OGBD5YOG.mjs +2 -0
  53. package/dist/chunk-OGBD5YOG.mjs.map +1 -0
  54. package/dist/chunk-OIYXOKTT.cjs.map +1 -1
  55. package/dist/chunk-OUD27MU7.cjs.map +1 -1
  56. package/dist/chunk-PLIH6KQM.mjs +2 -0
  57. package/dist/chunk-PLIH6KQM.mjs.map +1 -0
  58. package/dist/chunk-QRAIGQF2.mjs +2 -0
  59. package/dist/chunk-QRAIGQF2.mjs.map +1 -0
  60. package/dist/chunk-RWOICHRW.cjs +2 -0
  61. package/dist/chunk-RWOICHRW.cjs.map +1 -0
  62. package/dist/chunk-T5FSQ3YE.mjs +2 -0
  63. package/dist/chunk-T5FSQ3YE.mjs.map +1 -0
  64. package/dist/chunk-WRFDB3QJ.cjs.map +1 -1
  65. package/dist/chunk-XNJLSA6P.cjs.map +1 -1
  66. package/dist/contexts/exports.cjs +1 -1
  67. package/dist/contexts/exports.cjs.map +1 -1
  68. package/dist/contexts/exports.d.cts +1 -1
  69. package/dist/contexts/exports.d.ts +1 -1
  70. package/dist/contexts/exports.mjs +1 -1
  71. package/dist/contexts/exports.mjs.map +1 -1
  72. package/dist/{defaultFlags-d0kPbT0i.d.cts → defaultFlags-D6KfkTZx.d.cts} +1 -1
  73. package/dist/{defaultFlags-d0kPbT0i.d.ts → defaultFlags-D6KfkTZx.d.ts} +1 -1
  74. package/dist/enum/exports.cjs +1 -1
  75. package/dist/enum/exports.cjs.map +1 -1
  76. package/dist/enum/exports.d.cts +1 -1
  77. package/dist/enum/exports.d.ts +1 -1
  78. package/dist/enum/exports.mjs +1 -1
  79. package/dist/errors/exports.cjs +1 -1
  80. package/dist/errors/exports.cjs.map +1 -1
  81. package/dist/errors/exports.d.cts +8 -3
  82. package/dist/errors/exports.d.ts +8 -3
  83. package/dist/errors/exports.mjs +1 -1
  84. package/dist/{getValidatorQueuedOperatorAddress-DZgrPmZ2.d.cts → getValidatorQueuedOperatorAddress-BdDYHycN.d.cts} +15 -4
  85. package/dist/{getValidatorQueuedOperatorAddress-CqR6cyqC.d.ts → getValidatorQueuedOperatorAddress-CmiPJmsr.d.ts} +15 -4
  86. package/dist/{global.d-BeYWDreg.d.ts → global.d-3GQMgC9k.d.ts} +1 -1
  87. package/dist/{global.d-DghRxpHd.d.cts → global.d-CwT1Phzf.d.cts} +1 -1
  88. package/dist/hooks/exports.cjs +3 -3
  89. package/dist/hooks/exports.cjs.map +1 -1
  90. package/dist/hooks/exports.d.cts +54 -75
  91. package/dist/hooks/exports.d.ts +54 -75
  92. package/dist/hooks/exports.mjs +3 -3
  93. package/dist/hooks/exports.mjs.map +1 -1
  94. package/dist/{txnEnum-DxPRHSJt.d.cts → txnEnum-CCuQUFlh.d.cts} +7 -0
  95. package/dist/{txnEnum-DxPRHSJt.d.ts → txnEnum-CCuQUFlh.d.ts} +7 -0
  96. package/dist/types/exports.cjs.map +1 -1
  97. package/dist/types/exports.d.cts +37 -4
  98. package/dist/types/exports.d.ts +37 -4
  99. package/dist/utils/exports.cjs +1 -1
  100. package/dist/utils/exports.cjs.map +1 -1
  101. package/dist/utils/exports.d.cts +2 -2
  102. package/dist/utils/exports.d.ts +2 -2
  103. package/dist/utils/exports.mjs +1 -1
  104. package/dist/utils/exports.mjs.map +1 -1
  105. package/package.json +25 -25
  106. package/src/abi/enso/ensoWalletV2Factory.ts +9 -0
  107. package/src/abi/exports.ts +1 -0
  108. package/src/abi/pyth/pyth.ts +0 -0
  109. package/src/actions/clients/BeraApolloClient.ts +3 -3
  110. package/src/actions/clients/getApolloClient.ts +5 -5
  111. package/src/actions/clients/getEnsoClient.ts +1 -1
  112. package/src/actions/dex/__tests__/aggregators.unit.test.ts +3 -3
  113. package/src/actions/dex/__tests__/getOnChainPool.unit.test.ts +1 -1
  114. package/src/actions/dex/aggregators/base.ts +12 -8
  115. package/src/actions/dex/aggregators/bex.ts +8 -8
  116. package/src/actions/dex/aggregators/bgt.ts +4 -4
  117. package/src/actions/dex/aggregators/enso/enso.ts +28 -20
  118. package/src/actions/dex/aggregators/enso/ensoErc4626.debug.test.ts +1 -1
  119. package/src/actions/dex/aggregators/enso/ensoErc4626.ts +7 -4
  120. package/src/actions/dex/aggregators/erc4626.ts +10 -6
  121. package/src/actions/dex/aggregators/fly.ts +9 -5
  122. package/src/actions/dex/aggregators/haiku.integration.test.ts +3 -3
  123. package/src/actions/dex/aggregators/haiku.ts +9 -5
  124. package/src/actions/dex/aggregators/honey.ts +15 -15
  125. package/src/actions/dex/aggregators/kyberswap.ts +8 -4
  126. package/src/actions/dex/aggregators/oogabooga.ts +8 -4
  127. package/src/actions/dex/aggregators/openOcean.ts +12 -8
  128. package/src/actions/dex/aggregators/wbera.ts +8 -4
  129. package/src/actions/dex/b-sdk.ts +2 -2
  130. package/src/actions/dex/getAllPools.ts +2 -2
  131. package/src/actions/dex/getApiPool.ts +2 -2
  132. package/src/actions/dex/getGlobalLiquidityAndSwapVolume.ts +2 -2
  133. package/src/actions/dex/getIsTokenExploited.ts +1 -1
  134. package/src/actions/dex/getOnChainPool.ts +3 -3
  135. package/src/actions/dex/getPoolEvents.ts +2 -2
  136. package/src/actions/dex/getPoolHistoricalData.ts +2 -2
  137. package/src/actions/dex/getVaultPausedState.ts +1 -1
  138. package/src/actions/enso/__tests__/getBendDemultiplyBundle.action.unit.test.ts +175 -0
  139. package/src/actions/enso/__tests__/getBendDemultiplyBundle.unit.test.ts +150 -0
  140. package/src/actions/enso/__tests__/getBendMultiplyBundle.action.unit.test.ts +138 -0
  141. package/src/actions/enso/__tests__/getBendMultiplyBundle.unit.test.ts +194 -0
  142. package/src/actions/enso/{getEnsoUserTokensWithBalances.debug.test.ts → __tests__/getEnsoUserTokensWithBalances.debug.test.ts} +3 -3
  143. package/src/actions/enso/__tests__/helpers.ts +42 -0
  144. package/src/actions/enso/__tests__/util.unit.test.ts +95 -0
  145. package/src/actions/enso/flashloan.ts +127 -0
  146. package/src/actions/enso/getBendDemultiplyBundle.ts +325 -0
  147. package/src/actions/enso/getBendMultiplyBundle.ts +348 -0
  148. package/src/actions/enso/getEnsoSwapBundle.ts +2 -2
  149. package/src/actions/enso/getEnsoUserTokensWithBalances.ts +5 -5
  150. package/src/actions/enso/util.ts +150 -5
  151. package/src/actions/exports.ts +0 -2
  152. package/src/actions/governance/__tests__/checkProposalField.unit.test.ts +2 -2
  153. package/src/actions/governance/__tests__/getDecodedFunctionData.integration.test.ts +2 -2
  154. package/src/actions/governance/__tests__/getQuorum.integration.test.ts +2 -2
  155. package/src/actions/governance/checkProposalField.ts +1 -1
  156. package/src/actions/governance/computeActualStatus.ts +1 -1
  157. package/src/actions/governance/getAllProposals.ts +1 -1
  158. package/src/actions/governance/getBodyErrors.ts +1 -1
  159. package/src/actions/governance/getProposalDetails.ts +1 -1
  160. package/src/actions/governance/getProposalFromTx.ts +1 -1
  161. package/src/actions/governance/getProposalParams.ts +3 -3
  162. package/src/actions/governance/getProposalVotes.ts +1 -1
  163. package/src/actions/governance/getQuorum.ts +2 -2
  164. package/src/actions/honey/getCollateralWeights.ts +2 -2
  165. package/src/actions/honey/getGlobalCapLimit.ts +4 -4
  166. package/src/actions/honey/getHoneyCollaterals.ts +5 -5
  167. package/src/actions/honey/getHoneyFees.ts +1 -1
  168. package/src/actions/honey/getHoneyPausedState.ts +1 -1
  169. package/src/actions/honey/getHoneyPreview.ts +3 -3
  170. package/src/actions/honey/getHoneyRootPriceOracle.ts +1 -1
  171. package/src/actions/honey/getHoneyVaultsBalance.ts +2 -2
  172. package/src/actions/honey/getRelativeCapLimit.ts +3 -3
  173. package/src/actions/honey/getSharesWithoutFees.ts +1 -1
  174. package/src/actions/honey/getSwapPayload.ts +6 -6
  175. package/src/actions/honey/isBadCollateralAsset.ts +2 -2
  176. package/src/actions/honey/isBasketModeEnabled.ts +2 -2
  177. package/src/actions/honey/tests/pyth.integration.test.ts +3 -3
  178. package/src/actions/misc/getBlockTimestamp.ts +2 -2
  179. package/src/actions/pol/__tests__/getAllValidators.integration.test.ts +2 -2
  180. package/src/actions/pol/__tests__/rewardVaults.integration.test.ts +1 -1
  181. package/src/actions/pol/getBGTGlobalInfo.ts +2 -2
  182. package/src/actions/pol/getBgtAprSimulation.ts +1 -1
  183. package/src/actions/pol/getBgtAprSimultaion.unit.test.ts +1 -1
  184. package/src/actions/pol/getBgtTokenTotalBoosts.ts +2 -2
  185. package/src/actions/pol/getBgtTokenTotalSupply.ts +2 -2
  186. package/src/actions/pol/getBlockTime.debug.test.ts +13 -0
  187. package/src/actions/pol/getBlockTime.ts +14 -23
  188. package/src/actions/pol/getEarnedStakedBeraVault.ts +3 -3
  189. package/src/actions/pol/getGlobalCuttingBoard.ts +0 -0
  190. package/src/actions/pol/getGlobalData.ts +2 -2
  191. package/src/actions/pol/getIncentiveFeeClaimStats.ts +4 -4
  192. package/src/actions/pol/getLSTStakeConfig.ts +5 -5
  193. package/src/actions/pol/getMarkets.ts +2 -2
  194. package/src/actions/pol/getRewardProofsByValidator.ts +4 -4
  195. package/src/actions/pol/getRewardTokenToBeraRate.ts +1 -1
  196. package/src/actions/pol/getRewardVault.ts +3 -3
  197. package/src/actions/pol/getRewardVaultBeaconImplementation.integration.test.ts +1 -1
  198. package/src/actions/pol/getRewardVaultBeaconImplementation.ts +3 -3
  199. package/src/actions/pol/getRewardVaultDurationConstants.integration.test.ts +1 -1
  200. package/src/actions/pol/getRewardVaultDurationConstants.ts +1 -1
  201. package/src/actions/pol/getRewardVaultFromToken.ts +1 -1
  202. package/src/actions/pol/getRewardVaultIncentives.ts +2 -2
  203. package/src/actions/pol/getRewardVaultRewards.ts +1 -1
  204. package/src/actions/pol/getRewardVaults.ts +1 -1
  205. package/src/actions/pol/getSWBeraVaultMetadata.ts +20 -22
  206. package/src/actions/pol/getSWBeraWithdrawal.ts +4 -4
  207. package/src/actions/pol/getStakedBeraAPR.ts +2 -2
  208. package/src/actions/pol/getStakedBeraSnapshots.ts +2 -2
  209. package/src/actions/pol/getStakingDailyAssets.ts +3 -3
  210. package/src/actions/pol/getStakingTokenInformation.ts +2 -2
  211. package/src/actions/pol/getTotalStakedAmount.ts +1 -1
  212. package/src/actions/pol/getUserClaimableIncentives.ts +4 -4
  213. package/src/actions/pol/getUserVaultInfo.ts +1 -1
  214. package/src/actions/pol/getUserVaults.ts +4 -4
  215. package/src/actions/pol/getUserVaultsBalance.ts +1 -1
  216. package/src/actions/pol/getUserVaultsReward.ts +0 -0
  217. package/src/actions/pol/getVaultHistory.ts +2 -2
  218. package/src/actions/pol/getVaultValidators.ts +1 -1
  219. package/src/actions/pol/getVaultsSupply.ts +0 -0
  220. package/src/actions/prices/__tests__/prices.integration.test.ts +2 -2
  221. package/src/actions/prices/getTokenCurrentPrices.ts +5 -5
  222. package/src/actions/pyth/getHoneyPythFeeds.ts +2 -2
  223. package/src/actions/pyth/getUpdateFee.ts +2 -2
  224. package/src/actions/tokens/getAllowances.ts +2 -2
  225. package/src/actions/tokens/getTokenInformation.ts +2 -2
  226. package/src/actions/tokens/getTokens.ts +3 -3
  227. package/src/actions/tokens/getUnderlyingToken.ts +4 -4
  228. package/src/actions/tokens/getWalletBalances.integration.test.ts +1 -1
  229. package/src/actions/tokens/getWalletBalances.ts +4 -4
  230. package/src/actions/transactions/beraWriteContract.integration.test.ts +6 -6
  231. package/src/actions/transactions/beraWriteContract.ts +12 -12
  232. package/src/actions/validators/getActiveBoostAndCommissionChangeDelay.integration.test.ts +1 -1
  233. package/src/actions/validators/getActiveBoostAndCommissionChangeDelay.ts +1 -1
  234. package/src/actions/validators/getAllValidators.ts +2 -2
  235. package/src/actions/validators/getApiValidator.ts +2 -2
  236. package/src/actions/validators/getBaselineRewardAllocation.ts +1 -1
  237. package/src/actions/validators/getDailyValidatorBlockStats.ts +1 -1
  238. package/src/actions/validators/getDefaultRewardAllocation.ts +1 -1
  239. package/src/actions/validators/getUserActiveValidators.ts +31 -33
  240. package/src/actions/validators/getUserBoosts.ts +12 -8
  241. package/src/actions/validators/getUserBoostsOnValidator.ts +15 -3
  242. package/src/actions/validators/getUserStakingPositions.ts +1 -1
  243. package/src/actions/validators/getValidatorAnalytics.ts +2 -2
  244. package/src/actions/validators/getValidatorCommission.ts +1 -1
  245. package/src/actions/validators/getValidatorEstimatedBgtPerYear.ts +1 -1
  246. package/src/actions/validators/getValidatorOperatorAddress.ts +1 -1
  247. package/src/actions/validators/getValidatorQueuedCommission.ts +1 -1
  248. package/src/actions/validators/getValidatorQueuedOperatorAddress.ts +1 -1
  249. package/src/actions/validators/getValidatorQueuedRewardAllocation.ts +1 -1
  250. package/src/actions/validators/getValidatorRewardAllocation.ts +1 -1
  251. package/src/actions/validators/getValidatorRewardAllocatorAddress.ts +1 -1
  252. package/src/actions/validators/utils/__tests__/validatorUtils.integration.test.ts +4 -4
  253. package/src/contexts/BeraFlags/defaultFlags.ts +4 -0
  254. package/src/contexts/BexStatusProvider.tsx +1 -1
  255. package/src/contexts/HoneyConfigProvider.tsx +3 -3
  256. package/src/contexts/SwrFallback.tsx +2 -2
  257. package/src/contexts/TokensProvider.tsx +3 -3
  258. package/src/contexts/block-time-provider.tsx +1 -1
  259. package/src/contexts/exports.ts +0 -0
  260. package/src/data/contracts.ts +10 -0
  261. package/src/enum/exports.ts +0 -0
  262. package/src/enum/polling.ts +0 -0
  263. package/src/enum/txnEnum.ts +9 -0
  264. package/src/errors/BeraMonitoring.ts +2 -2
  265. package/src/errors/BeraTracing.ts +2 -2
  266. package/src/errors/RequestError.ts +1 -1
  267. package/src/errors/assert.ts +18 -0
  268. package/src/errors/getErrorMessage.ts +0 -0
  269. package/src/errors/getRevertReason.integration.test.ts +7 -7
  270. package/src/errors/getRevertReason.ts +1 -1
  271. package/src/errors/parseViemError.ts +1 -1
  272. package/src/hooks/bend/useGetConvertToAssets.ts +4 -4
  273. package/src/hooks/dex/useAggregatorsQuotes.ts +19 -19
  274. package/src/hooks/dex/useAggregatorsRouterFeeBps.ts +2 -2
  275. package/src/hooks/dex/useAllUserPools.ts +3 -3
  276. package/src/hooks/dex/useApiPool.ts +3 -3
  277. package/src/hooks/dex/useBexStatus.ts +1 -1
  278. package/src/hooks/dex/useCreatePool.ts +9 -9
  279. package/src/hooks/dex/useExploitedTokens.ts +3 -3
  280. package/src/hooks/dex/useGlobalLiquidityAndSwapVolume.ts +1 -1
  281. package/src/hooks/dex/useLiquidityMismatch.ts +3 -3
  282. package/src/hooks/dex/useLpPosition.ts +7 -4
  283. package/src/hooks/dex/useMultipleTokenApprovalsWithSlippage.ts +4 -4
  284. package/src/hooks/dex/useOnChainPoolData.ts +3 -3
  285. package/src/hooks/dex/usePollPoolCreationRelayerApproval.ts +3 -3
  286. package/src/hooks/dex/usePool.ts +7 -40
  287. package/src/hooks/dex/usePoolEvents.ts +2 -2
  288. package/src/hooks/dex/usePoolHistoricalData.ts +6 -3
  289. package/src/hooks/dex/usePools.ts +3 -3
  290. package/src/hooks/dex/usePriceImpact.ts +2 -2
  291. package/src/hooks/dex/useSingleAggregatorQuote.ts +13 -13
  292. package/src/hooks/enso/useBendDemultiply.ts +158 -0
  293. package/src/hooks/enso/useBendMultiply.ts +163 -0
  294. package/src/hooks/enso/useBendZapSupply.ts +7 -7
  295. package/src/hooks/enso/useEnsoSwapBundle.ts +6 -6
  296. package/src/hooks/enso/useEnsoUserTokensWithBalances.ts +5 -5
  297. package/src/hooks/enso/useEnsoWalletV2Address.ts +38 -0
  298. package/src/hooks/enso/useIsBendAuthorized.ts +47 -0
  299. package/src/hooks/enso/useZapStakeBera.ts +4 -4
  300. package/src/hooks/exports.ts +4 -3
  301. package/src/hooks/governance/useCreateProposal.ts +3 -3
  302. package/src/hooks/governance/useGetPastVotes.ts +2 -2
  303. package/src/hooks/governance/useHasVoted.ts +2 -2
  304. package/src/hooks/governance/useIsCanceller.ts +4 -4
  305. package/src/hooks/governance/usePollAllProposals.ts +3 -3
  306. package/src/hooks/governance/usePollProposal.ts +7 -4
  307. package/src/hooks/governance/usePollProposalThreshold.ts +3 -3
  308. package/src/hooks/governance/usePollProposalVotes.ts +1 -1
  309. package/src/hooks/governance/usePollUserDelegates.ts +7 -4
  310. package/src/hooks/governance/useProposalFromTx.ts +1 -1
  311. package/src/hooks/governance/useProposalSnapshot.ts +2 -2
  312. package/src/hooks/governance/useProposalState.ts +2 -2
  313. package/src/hooks/governance/useProposalTimelockState.ts +2 -2
  314. package/src/hooks/governance/useQuorum.ts +1 -1
  315. package/src/hooks/honey/useCappedGlobally.ts +8 -5
  316. package/src/hooks/honey/useCappedRelatively.ts +7 -4
  317. package/src/hooks/honey/useCollateralWeights.ts +8 -5
  318. package/src/hooks/honey/useHoneyAlerts.ts +5 -5
  319. package/src/hooks/honey/useHoneyBalances.ts +7 -7
  320. package/src/hooks/honey/useHoneyChartData.ts +1 -1
  321. package/src/hooks/honey/useHoneySwapState.ts +4 -4
  322. package/src/hooks/honey/useHoneyVaultsBalance.ts +8 -5
  323. package/src/hooks/honey/useIsBadCollateralAsset.ts +9 -6
  324. package/src/hooks/honey/useIsBasketModeEnabled.ts +8 -5
  325. package/src/hooks/honey/usePythLatestPrices.ts +4 -4
  326. package/src/hooks/perps/usePythUpdateFee.ts +4 -4
  327. package/src/hooks/pol/useBgtAprSimulation.ts +1 -1
  328. package/src/hooks/pol/useBgtUnstakedBalance.ts +7 -4
  329. package/src/hooks/pol/useClaimableFees.ts +4 -4
  330. package/src/hooks/pol/useOnChainRewardVault.ts +7 -7
  331. package/src/hooks/pol/usePollGlobalData.ts +9 -3
  332. package/src/hooks/pol/usePollMarkets.ts +5 -2
  333. package/src/hooks/pol/useQueuedBeraUnlock.ts +4 -4
  334. package/src/hooks/pol/useRewardTokenToBeraRate.ts +4 -4
  335. package/src/hooks/pol/useRewardVault.ts +5 -2
  336. package/src/hooks/pol/useRewardVaultBalanceFromStakingToken.ts +2 -2
  337. package/src/hooks/pol/useRewardVaultFromToken.ts +2 -2
  338. package/src/hooks/pol/useRewardVaultIncentives.ts +2 -2
  339. package/src/hooks/pol/useRewardVaultRewards.ts +3 -3
  340. package/src/hooks/pol/useRewardVaults.ts +2 -2
  341. package/src/hooks/pol/useStakedAPR.ts +3 -3
  342. package/src/hooks/pol/useStakedData.ts +10 -10
  343. package/src/hooks/pol/useStakedSnapshots.ts +3 -3
  344. package/src/hooks/pol/useStakingVaultsMetadata.ts +40 -0
  345. package/src/hooks/pol/useTotalStakedAmount.ts +2 -2
  346. package/src/hooks/pol/useUserVaultInfo.ts +8 -5
  347. package/src/hooks/pol/useUserVaults.ts +7 -4
  348. package/src/hooks/pol/useVaultAddress.ts +2 -2
  349. package/src/hooks/pol/useVaultHistory.ts +2 -2
  350. package/src/hooks/pol/useVaultValidators.ts +5 -2
  351. package/src/hooks/tokens/useBeraCurrentPrice.ts +1 -1
  352. package/src/hooks/tokens/useMultipleTokenInformation.ts +7 -4
  353. package/src/hooks/tokens/usePollAllowances.ts +7 -4
  354. package/src/hooks/tokens/usePollBalance.ts +8 -5
  355. package/src/hooks/tokens/usePollWalletBalances.ts +8 -5
  356. package/src/hooks/tokens/useStakingTokenInformation.ts +7 -4
  357. package/src/hooks/tokens/useTokenCurrentPrice.ts +1 -1
  358. package/src/hooks/tokens/useTokenCurrentPrices.ts +6 -6
  359. package/src/hooks/tokens/useTokenInformation.ts +8 -5
  360. package/src/hooks/tokens/useTokenPrice.ts +1 -1
  361. package/src/hooks/tokens/useTokenPrices.ts +4 -4
  362. package/src/hooks/tokens/useTokens.ts +3 -3
  363. package/src/hooks/tokens/useTotalSupply.ts +1 -1
  364. package/src/hooks/tokens/useUnderlyingAsset.ts +3 -3
  365. package/src/hooks/useBlockToTimestamp.ts +5 -5
  366. package/src/hooks/useContractWrite/index.ts +0 -0
  367. package/src/hooks/useContractWrite/stateReducer.ts +0 -0
  368. package/src/hooks/useContractWrite/types.ts +2 -2
  369. package/src/hooks/useContractWrite/useBeraContractWrite.ts +5 -6
  370. package/src/hooks/useGetVerifiedAbi.ts +1 -1
  371. package/src/hooks/usePrevious.ts +0 -0
  372. package/src/hooks/validators/useAllValidators.ts +7 -4
  373. package/src/hooks/validators/useApiEnrichedAllocation.ts +2 -2
  374. package/src/hooks/validators/useApiValidator.ts +5 -2
  375. package/src/hooks/validators/useBaselineRewardAllocation.ts +2 -2
  376. package/src/hooks/validators/useDailyValidatorBlockStats.ts +3 -3
  377. package/src/hooks/validators/useDefaultRewardAllocation.ts +4 -4
  378. package/src/hooks/validators/useManagedValidatorRole.ts +8 -5
  379. package/src/hooks/validators/useOnChainValidator.ts +6 -3
  380. package/src/hooks/validators/useStakingPoolBatch.ts +7 -4
  381. package/src/hooks/validators/useUserActiveValidators.ts +6 -3
  382. package/src/hooks/validators/useUserBoostsOnValidator.ts +3 -3
  383. package/src/hooks/validators/useUserClaimableIncentives.ts +9 -9
  384. package/src/hooks/validators/useUserStakingPositions.ts +1 -1
  385. package/src/hooks/validators/useValidator.ts +1 -1
  386. package/src/hooks/validators/useValidatorAnalytics.ts +3 -3
  387. package/src/hooks/validators/useValidatorCommission.ts +5 -2
  388. package/src/hooks/validators/useValidatorEstimatedBgtPerYear.ts +3 -3
  389. package/src/hooks/validators/useValidatorQueuedCommission.ts +6 -3
  390. package/src/hooks/validators/useValidatorQueuedOperatorAddress.ts +5 -2
  391. package/src/hooks/validators/useValidatorQueuedRewardAllocation.ts +6 -3
  392. package/src/hooks/validators/useValidatorRewardAllocation.ts +2 -2
  393. package/src/types/dex.d.ts +1 -1
  394. package/src/types/enso.d.ts +34 -0
  395. package/src/types/exports.ts +0 -0
  396. package/src/types/global.d.ts +3 -3
  397. package/src/types/governance.d.ts +1 -1
  398. package/src/types/honeySwap.d.ts +3 -3
  399. package/src/types/staking.d.ts +0 -0
  400. package/src/utils/beraFetch.ts +1 -1
  401. package/src/utils/createEmitter.ts +1 -1
  402. package/src/utils/exports.ts +0 -0
  403. package/src/utils/filter.ts +0 -0
  404. package/src/utils/formatIncentivesTokenMap.ts +1 -1
  405. package/src/utils/formatInputTokenValue.ts +0 -0
  406. package/src/utils/formatNumber.ts +0 -0
  407. package/src/utils/getContractName.ts +1 -1
  408. package/src/utils/getHoneySwapMessage.test.ts +1 -1
  409. package/src/utils/getHoneySwapMessage.ts +1 -1
  410. package/src/utils/parseBaseArgs.ts +1 -1
  411. package/src/utils/parseBaseArgs.unit.test.ts +1 -1
  412. package/src/utils/parseWhiskToken.ts +1 -1
  413. package/src/utils/poolNamings.ts +1 -1
  414. package/src/utils/tokens.ts +2 -2
  415. package/src/utils/tokens.unit.test.ts +1 -1
  416. package/src/utils/truncateHash.ts +0 -0
  417. package/.claude/skills/berajs/SKILL.md +0 -222
  418. package/.claude/skills/berajs/references/dex.md +0 -235
  419. package/.claude/skills/berajs/references/pol.md +0 -194
  420. package/.claude/skills/berajs/references/staking.md +0 -198
  421. package/.claude/skills/berajs/references/tokens.md +0 -170
  422. package/LICENSE +0 -21
  423. package/dist/chunk-22J3YJDN.cjs +0 -2
  424. package/dist/chunk-22J3YJDN.cjs.map +0 -1
  425. package/dist/chunk-2LL3P5PN.mjs +0 -2
  426. package/dist/chunk-2LL3P5PN.mjs.map +0 -1
  427. package/dist/chunk-4GU2O2OW.cjs +0 -4
  428. package/dist/chunk-4GU2O2OW.cjs.map +0 -1
  429. package/dist/chunk-55L7STYD.mjs +0 -2
  430. package/dist/chunk-55L7STYD.mjs.map +0 -1
  431. package/dist/chunk-5XWELBWR.mjs +0 -2
  432. package/dist/chunk-5XWELBWR.mjs.map +0 -1
  433. package/dist/chunk-6LDOG5RL.cjs.map +0 -1
  434. package/dist/chunk-7LNBSOVV.cjs +0 -2
  435. package/dist/chunk-7LNBSOVV.cjs.map +0 -1
  436. package/dist/chunk-7SMWQ6SN.mjs.map +0 -1
  437. package/dist/chunk-7WRTK7RJ.mjs.map +0 -1
  438. package/dist/chunk-AX2YQQFQ.mjs.map +0 -1
  439. package/dist/chunk-BS6K7HGH.cjs +0 -2
  440. package/dist/chunk-BS6K7HGH.cjs.map +0 -1
  441. package/dist/chunk-C3FHGFLK.mjs +0 -2
  442. package/dist/chunk-C3FHGFLK.mjs.map +0 -1
  443. package/dist/chunk-C6ZGUO4H.cjs.map +0 -1
  444. package/dist/chunk-FCWDGE62.cjs.map +0 -1
  445. package/dist/chunk-RW3JFPED.mjs +0 -4
  446. package/dist/chunk-RW3JFPED.mjs.map +0 -1
  447. package/dist/chunk-S3EAKCVM.cjs +0 -2
  448. package/dist/chunk-S3EAKCVM.cjs.map +0 -1
  449. package/dist/chunk-SWMJQOH6.cjs +0 -2
  450. package/dist/chunk-SWMJQOH6.cjs.map +0 -1
  451. package/dist/chunk-THATXCJK.mjs +0 -2
  452. package/dist/chunk-THATXCJK.mjs.map +0 -1
  453. package/dist/chunk-VXL2ZZ4X.cjs +0 -2
  454. package/dist/chunk-VXL2ZZ4X.cjs.map +0 -1
  455. package/dist/chunk-YNO7BCCM.mjs +0 -2
  456. package/dist/chunk-YXLFOEZN.mjs +0 -2
  457. package/dist/chunk-YXLFOEZN.mjs.map +0 -1
  458. package/dist/chunk-YZV5LKIP.cjs.map +0 -1
  459. package/src/actions/dex/getSubgraphPool.ts +0 -30
  460. package/src/actions/validators/getManagedValidatorByAccount.ts +0 -32
  461. package/src/hooks/pol/useSWBeraVaultMetadata.ts +0 -35
  462. package/src/hooks/validators/useManagedValidatorByAccount.ts +0 -40
  463. package/src/hooks/validators/useSubgraphUserValidators.ts +0 -36
@@ -1,7 +1,7 @@
1
1
  import { type Address, erc20Abi, type PublicClient } from "viem";
2
2
 
3
- import { initBeraError } from "~/errors/initBeraError";
4
- import type { MinimalERC20 } from "~/types/dex";
3
+ import { initBeraError } from "../../errors/initBeraError";
4
+ import type { MinimalERC20 } from "../../types/dex";
5
5
 
6
6
  export interface GetTokenInformation {
7
7
  address: Address;
@@ -1,6 +1,6 @@
1
- import type { TokenWithMetadata } from "~/types/dex";
2
- import { beraFetchJson } from "~/utils/beraFetch";
3
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
1
+ import type { TokenWithMetadata } from "../../types/dex";
2
+ import { beraFetchJson } from "../../utils/beraFetch";
3
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
4
4
 
5
5
  export async function getTokens({
6
6
  url,
@@ -1,10 +1,10 @@
1
1
  import { type Config, getPublicClient } from "@wagmi/core";
2
2
  import { erc4626Abi } from "viem";
3
3
 
4
- import { assertPublicClient } from "~/errors/assert";
5
- import { initBeraError } from "~/errors/initBeraError";
6
- import type { MinimalERC20 } from "~/types/dex";
7
- import { isToken } from "~/utils/tokens";
4
+ import { assertPublicClient } from "../../errors/assert";
5
+ import { initBeraError } from "../../errors/initBeraError";
6
+ import type { MinimalERC20 } from "../../types/dex";
7
+ import { isToken } from "../../utils/tokens";
8
8
  import { getTokenInformation } from "./getTokenInformation";
9
9
 
10
10
  /**
@@ -10,7 +10,7 @@ import {
10
10
 
11
11
  import { getConfig } from "@berachain/wagmi/config";
12
12
 
13
- import { isToken } from "~/utils/tokens";
13
+ import { isToken } from "../../utils/tokens";
14
14
  import { getTokens } from "./getTokens";
15
15
  import { getWalletBalances } from "./getWalletBalances";
16
16
 
@@ -7,14 +7,14 @@ import {
7
7
  isAddress,
8
8
  } from "viem";
9
9
 
10
- import { multicall3Abi } from "~/abi/utils/multicall3";
10
+ import { multicall3Abi } from "../../abi/utils/multicall3";
11
11
  import {
12
12
  assertAddress,
13
13
  assertDefined,
14
14
  assertPublicClient,
15
- } from "~/errors/assert";
16
- import type { BalanceToken, Token } from "~/types/dex";
17
- import { isToken } from "~/utils/tokens";
15
+ } from "../../errors/assert";
16
+ import type { BalanceToken, Token } from "../../types/dex";
17
+ import { isToken } from "../../utils/tokens";
18
18
 
19
19
  export interface GetWalletBalances {
20
20
  account: string | undefined;
@@ -22,12 +22,12 @@ import { rewardVaultAbi } from "@berachain/abis/pol/rewards/rewardVault";
22
22
 
23
23
  import { getConfig } from "@berachain/wagmi/config";
24
24
 
25
- import { TransactionActionType } from "~/enum/txnEnum";
26
- import type { IContractWriteFn } from "~/types/global";
27
- import { getServerSidePublicClient } from "~/utils/getServerSideClient";
28
- import { getTestClient } from "~/utils/getTestClient";
29
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
30
- import { anvilMnemonic } from "~/utils/test-utils";
25
+ import { TransactionActionType } from "../../enum/txnEnum";
26
+ import type { IContractWriteFn } from "../../types/global";
27
+ import { getServerSidePublicClient } from "../../utils/getServerSideClient";
28
+ import { getTestClient } from "../../utils/getTestClient";
29
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
30
+ import { anvilMnemonic } from "../../utils/test-utils";
31
31
  import { getUserVaults } from "../pol/getUserVaults";
32
32
  import { beraWriteContract } from "./beraWriteContract";
33
33
 
@@ -22,18 +22,18 @@ import {
22
22
 
23
23
  import { ChainId, defaultChainId } from "@berachain/config/internal";
24
24
 
25
- import { commonAbiErrors } from "~/abi/utils/commonAbiErrors";
26
- import { assertPublicClient } from "~/errors/assert";
27
- import { BeraError } from "~/errors/BeraError";
28
- import { getRevertReason } from "~/errors/getRevertReason";
29
- import { InvalidArgumentError } from "~/errors/InvalidArgumentError";
30
- import { parseDecodedError, parseViemError } from "~/errors/parseViemError";
31
- import { RequestError } from "~/errors/RequestError";
32
- import { TransactionFailedError } from "~/errors/TransactionFailedError";
33
- import type { IContractWrite } from "~/types/global";
34
- import { DEFAULT_METAMASK_GAS_LIMIT } from "~/utils/constants";
35
- import { getTestClient } from "~/utils/getTestClient";
36
- import { seconds } from "~/utils/time";
25
+ import { commonAbiErrors } from "../../abi/utils/commonAbiErrors";
26
+ import { assertPublicClient } from "../../errors/assert";
27
+ import { BeraError } from "../../errors/BeraError";
28
+ import { getRevertReason } from "../../errors/getRevertReason";
29
+ import { InvalidArgumentError } from "../../errors/InvalidArgumentError";
30
+ import { parseDecodedError, parseViemError } from "../../errors/parseViemError";
31
+ import { RequestError } from "../../errors/RequestError";
32
+ import { TransactionFailedError } from "../../errors/TransactionFailedError";
33
+ import type { IContractWrite } from "../../types/global";
34
+ import { DEFAULT_METAMASK_GAS_LIMIT } from "../../utils/constants";
35
+ import { getTestClient } from "../../utils/getTestClient";
36
+ import { seconds } from "../../utils/time";
37
37
 
38
38
  /**
39
39
  * Setting 1 seconds as refresh interval since block time is 2 seconds.
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from "vitest";
2
2
 
3
- import { getServerSidePublicClient } from "~/utils/getServerSideClient";
3
+ import { getServerSidePublicClient } from "../../utils/getServerSideClient";
4
4
  import { getActiveBoostAndCommissionChangeDelay } from "./getActiveBoostAndCommissionChangeDelay";
5
5
 
6
6
  describe("getActiveBoostAndCommissionChangeDelay", () => {
@@ -5,7 +5,7 @@ import type { EdgeConfigSchema } from "@berachain/config/internal/edge-config";
5
5
  import { bgtAbi } from "@berachain/abis/pol/bgt";
6
6
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
7
7
 
8
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
8
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
9
9
 
10
10
  export interface ActiveBoostAndCommissionChangeDelay {
11
11
  boostDelay: number;
@@ -5,8 +5,8 @@ import {
5
5
  type GqlChain,
6
6
  } from "@berachain/graphql/pol/api";
7
7
 
8
- import { getApolloClient } from "~/actions/clients/getApolloClient";
9
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
8
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
9
+ import { getApolloClient } from "../clients/getApolloClient";
10
10
 
11
11
  export async function getAllValidators({
12
12
  variables = {},
@@ -7,8 +7,8 @@ import {
7
7
  type GqlChain,
8
8
  } from "@berachain/graphql/pol/api";
9
9
 
10
- import { getApolloClient } from "~/actions/clients/getApolloClient";
11
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
10
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
11
+ import { getApolloClient } from "../clients/getApolloClient";
12
12
 
13
13
  export async function getApiValidator({
14
14
  id,
@@ -2,7 +2,7 @@ import type { PublicClient } from "viem";
2
2
 
3
3
  import { rewardAllocatorFactoryAbi as rewardAllocationFactoryAbi } from "@berachain/abis/pol/rewards/rewardAllocatorFactory";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
  import { formatValidatorRewardAllocation } from "./getValidatorRewardAllocation";
7
7
 
8
8
  export async function getBaselineRewardAllocation({
@@ -6,7 +6,7 @@ import {
6
6
  type GetValidatorBlockStatsQueryVariables,
7
7
  } from "@berachain/graphql/pol/subgraph";
8
8
 
9
- import { getApolloClient } from "~/actions/clients/getApolloClient";
9
+ import { getApolloClient } from "../clients/getApolloClient";
10
10
 
11
11
  export async function getDailyValidatorBlockStats({
12
12
  pubKey,
@@ -2,7 +2,7 @@ import type { PublicClient } from "viem";
2
2
 
3
3
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
  import {
7
7
  formatValidatorRewardAllocation,
8
8
  type ValidatorRewardAllocation,
@@ -1,12 +1,11 @@
1
- import type { Address, PublicClient } from "viem";
1
+ import { type Address, formatEther, type PublicClient, parseEther } from "viem";
2
2
 
3
3
  import type {
4
4
  ApiValidatorFragment,
5
5
  GqlChain,
6
6
  } from "@berachain/graphql/pol/api";
7
7
 
8
- import { isSubgraphStale } from "~/utils/isSubgraphStale";
9
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
8
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
10
9
  import { getAllValidators } from "./getAllValidators";
11
10
  import { getUserBoosts } from "./getUserBoosts";
12
11
  import {
@@ -25,7 +24,7 @@ export async function getUserActiveValidators({
25
24
  ...args
26
25
  }: {
27
26
  account: string;
28
- publicClient?: PublicClient | undefined;
27
+ publicClient: PublicClient | undefined;
29
28
  chain?: GqlChain;
30
29
  } & BeraJS.BaseFunctionArgs): Promise<ValidatorWithUserBoost[] | undefined> {
31
30
  const { config } = parseBaseArgs(args);
@@ -38,51 +37,48 @@ export async function getUserActiveValidators({
38
37
  variables: {
39
38
  chain: resolvedChain,
40
39
  where: {
41
- idIn: userBoosts.data.userValidatorInformations.map(
42
- (t) => t.validator.id,
40
+ idIn: userBoosts.data.polGetValidatorBoosts.boosts.map(
41
+ (t) => t.validatorId,
43
42
  ),
44
43
  },
45
44
  },
46
45
  }),
47
- publicClient &&
48
- isSubgraphStale({
49
- lastBlockTimestamp: userBoosts.data._meta?.block.timestamp,
50
- blockTime: config.averageBlockTime,
51
- })
52
- ? Promise.all(
53
- userBoosts.data.userValidatorInformations.map((t) =>
54
- getUserBoostsOnValidator({
55
- account: account as Address,
56
- pubkey: t.validator.publicKey,
57
- publicClient: publicClient,
58
- }),
59
- ),
46
+ Promise.all(
47
+ userBoosts.data.polGetValidatorBoosts.boosts
48
+ .filter(
49
+ (t) =>
50
+ // there's an edge case here where api doesn't return the pubkey
51
+ // because the user might have boosted a pubkey that doesn't exist
52
+ // api doesn't return the pubkey in this case, but we're choosing to filter them out
53
+ !!t.validator,
60
54
  )
61
- : undefined,
55
+ .map((t) =>
56
+ getUserBoostsOnValidator({
57
+ account: account as Address,
58
+ pubkey: t.validator!.pubkey,
59
+ publicClient: publicClient,
60
+ }),
61
+ ),
62
+ ),
62
63
  ]);
63
64
 
64
65
  return validatorInfoList?.validators.validators.map((validator) => {
65
- const userDeposited = onChainBoosts
66
- ? onChainBoosts.find(
67
- (data) =>
68
- data.pubkey.toLowerCase() === validator.pubkey.toLowerCase(),
69
- )
70
- : userBoosts.data.userValidatorInformations.find(
71
- (data) =>
72
- data.validator.id.toLowerCase() === validator.id.toLowerCase(),
73
- );
66
+ const userDeposited = onChainBoosts.find(
67
+ (data) => data.pubkey.toLowerCase() === validator.pubkey.toLowerCase(),
68
+ );
74
69
 
75
70
  if (!userDeposited) {
76
71
  throw new Error("User deposited not found");
77
72
  }
78
73
 
74
+ const droppableBoostAmount =
75
+ parseEther(userDeposited?.activeBoostAmount ?? "0") -
76
+ parseEther(userDeposited?.queuedDropBoostAmount);
77
+
79
78
  return {
80
79
  ...validator,
81
80
  userBoosts: {
82
- pubkey:
83
- "pubkey" in userDeposited
84
- ? userDeposited.pubkey
85
- : userDeposited.validator.publicKey,
81
+ pubkey: userDeposited.pubkey,
86
82
  activeBoostAmount: userDeposited?.activeBoostAmount,
87
83
  queuedBoostAmount: userDeposited?.queuedBoostAmount,
88
84
  queuedBoostStartBlock: Number(userDeposited?.queuedBoostStartBlock),
@@ -90,10 +86,12 @@ export async function getUserActiveValidators({
90
86
  queuedDropBoostStartBlock: Number(
91
87
  userDeposited?.queuedDropBoostStartBlock,
92
88
  ),
89
+ droppableBoostAmount: formatEther(droppableBoostAmount),
93
90
  hasPendingBoosts:
94
91
  Number(userDeposited?.queuedBoostAmount) > 0 ||
95
92
  Number(userDeposited?.queuedDropBoostAmount) > 0,
96
93
  hasActiveBoosts: Number(userDeposited?.activeBoostAmount) > 0,
94
+ hasDroppableBoosts: droppableBoostAmount > 0n,
97
95
  } satisfies UserBoostsOnValidator,
98
96
  } satisfies ValidatorWithUserBoost;
99
97
  });
@@ -4,25 +4,29 @@ import {
4
4
  GetUserValidatorInformation,
5
5
  type GetUserValidatorInformationQuery,
6
6
  type GetUserValidatorInformationQueryVariables,
7
- } from "@berachain/graphql/pol/subgraph";
7
+ type GqlChain,
8
+ } from "@berachain/graphql/pol/api";
8
9
 
9
- import { getApolloClient } from "~/actions/clients/getApolloClient";
10
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
11
+ import { getApolloClient } from "../clients/getApolloClient";
10
12
 
11
13
  export async function getUserBoosts({
12
14
  account,
13
- block,
14
15
  ...args
15
16
  }: BeraJS.BaseFunctionArgs & {
16
17
  account: string;
17
- block?: GetUserValidatorInformationQueryVariables["block"];
18
18
  }) {
19
- const bgtClient = getApolloClient("pol.subgraph", args);
20
- // TODO: handle more than 1000 validators
21
- return await bgtClient.query<
19
+ const { config } = parseBaseArgs(args);
20
+ const apiClient = getApolloClient("api", args);
21
+
22
+ return await apiClient.query<
22
23
  GetUserValidatorInformationQuery,
23
24
  GetUserValidatorInformationQueryVariables
24
25
  >({
25
26
  query: GetUserValidatorInformation,
26
- variables: { address: account.toLowerCase() as Address, block },
27
+ variables: {
28
+ address: account.toLowerCase() as Address,
29
+ chain: config.bex.chainName as unknown as GqlChain,
30
+ },
27
31
  });
28
32
  }
@@ -2,10 +2,14 @@ import { type Address, formatEther, type PublicClient } from "viem";
2
2
 
3
3
  import { bgtAbi } from "@berachain/abis/pol/bgt";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export type UserBoostsOnValidator = {
8
8
  pubkey: Address;
9
+ /**
10
+ * The amount of boosts that can be dropped.
11
+ */
12
+ droppableBoostAmount: string;
9
13
  activeBoostAmount: string;
10
14
  queuedBoostAmount: string;
11
15
  queuedBoostStartBlock: number;
@@ -13,6 +17,10 @@ export type UserBoostsOnValidator = {
13
17
  queuedDropBoostStartBlock: number;
14
18
  hasPendingBoosts: boolean;
15
19
  hasActiveBoosts: boolean;
20
+ /**
21
+ * Whether the user has active boosts that can be dropped.
22
+ */
23
+ hasDroppableBoosts: boolean;
16
24
  };
17
25
 
18
26
  export async function getUserBoostsOnValidator({
@@ -56,15 +64,19 @@ export async function getUserBoostsOnValidator({
56
64
  }),
57
65
  ]);
58
66
 
67
+ const droppableBoostAmount = activeBoostAmount - queuedDropBoostAmount[1];
68
+
59
69
  return {
60
70
  pubkey,
71
+ droppableBoostAmount: formatEther(droppableBoostAmount),
61
72
  activeBoostAmount: formatEther(activeBoostAmount),
62
73
  queuedBoostAmount: formatEther(queuedBoostAmount[1]),
63
74
  queuedDropBoostAmount: formatEther(queuedDropBoostAmount[1]),
64
75
  queuedBoostStartBlock: queuedBoostAmount[0],
65
76
  queuedDropBoostStartBlock: queuedDropBoostAmount[0],
66
77
  hasPendingBoosts:
67
- Number(queuedBoostAmount[1]) > 0 || Number(queuedDropBoostAmount[1]) > 0,
68
- hasActiveBoosts: Number(activeBoostAmount) > 0,
78
+ queuedBoostAmount[1] > 0n || queuedDropBoostAmount[1] > 0n,
79
+ hasActiveBoosts: activeBoostAmount > 0n,
80
+ hasDroppableBoosts: droppableBoostAmount > 0n,
69
81
  };
70
82
  }
@@ -1,6 +1,6 @@
1
1
  import type { Address } from "viem";
2
2
 
3
- import { msToSeconds } from "~/utils/time";
3
+ import { msToSeconds } from "../../utils/time";
4
4
 
5
5
  interface StakingPoolAmount {
6
6
  amount: bigint;
@@ -6,8 +6,8 @@ import {
6
6
  type GetValidatorAnalyticsQueryVariables,
7
7
  } from "@berachain/graphql/pol/subgraph";
8
8
 
9
- import { getApolloClient } from "~/actions/clients/getApolloClient";
10
- import { calculateTimestampFromDays } from "~/utils/formatTimestamps";
9
+ import { calculateTimestampFromDays } from "../../utils/formatTimestamps";
10
+ import { getApolloClient } from "../clients/getApolloClient";
11
11
 
12
12
  export async function getValidatorAnalytics({
13
13
  pubkey,
@@ -2,7 +2,7 @@ import type { Address, PublicClient } from "viem";
2
2
 
3
3
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export async function getValidatorCommission({
8
8
  client,
@@ -1,6 +1,6 @@
1
1
  import type { ApiValidatorMinimalFragment } from "@berachain/graphql/pol/api";
2
2
 
3
- import { yearsInSeconds } from "~/utils/time";
3
+ import { yearsInSeconds } from "../../utils/time";
4
4
 
5
5
  export const getValidatorEstimatedBgtPerYear = (
6
6
  validator: ApiValidatorMinimalFragment,
@@ -2,7 +2,7 @@ import type { Address, PublicClient } from "viem";
2
2
 
3
3
  import { beaconDepositAbi } from "@berachain/abis/pol/beaconDeposit";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export async function getValidatorOperatorAddress({
8
8
  client,
@@ -2,7 +2,7 @@ import type { Address, PublicClient } from "viem";
2
2
 
3
3
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export interface ValidatorQueuedCommission {
8
8
  blockNumberLast: number;
@@ -2,7 +2,7 @@ import type { Address, PublicClient } from "viem";
2
2
 
3
3
  import { beaconDepositAbi } from "@berachain/abis/pol/beaconDeposit";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export type ValidatorQueuedOperatorAddress = [bigint, string];
8
8
 
@@ -2,7 +2,7 @@ import type { Address, PublicClient } from "viem";
2
2
 
3
3
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
  import {
7
7
  formatValidatorRewardAllocation,
8
8
  type ValidatorRewardAllocation,
@@ -2,7 +2,7 @@ import type { Address, PublicClient } from "viem";
2
2
 
3
3
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export interface ValidatorRewardAllocationRaw {
8
8
  startBlock: bigint;
@@ -2,7 +2,7 @@ import { type Address, type PublicClient, zeroAddress } from "viem";
2
2
 
3
3
  import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../../utils/parseBaseArgs";
6
6
 
7
7
  export type ValidatorRewardAllocatorAddress = Address;
8
8
 
@@ -1,12 +1,12 @@
1
1
  import { describe, expect, it } from "vitest";
2
2
 
3
- import { getTokenCurrentPrices } from "~/actions/prices/getTokenCurrentPrices";
4
- import { getAllValidators } from "~/actions/validators/getAllValidators";
3
+ import { parseBaseArgs } from "../../../../utils/parseBaseArgs";
4
+ import { getTokenCurrentPrices } from "../../../prices/getTokenCurrentPrices";
5
+ import { getAllValidators } from "../../getAllValidators";
5
6
  import {
6
7
  getValidatorBoostApy,
7
8
  getValidatorReturnPerBgt,
8
- } from "~/actions/validators/utils/getValidatorBoostApy";
9
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
9
+ } from "../getValidatorBoostApy";
10
10
 
11
11
  describe("getValidatorBoostApy", async () => {
12
12
  const { config } = parseBaseArgs({});
@@ -14,10 +14,12 @@ export type BeraFlags = Record<
14
14
  | "sponsorGas"
15
15
  | "enableSimulateCalls"
16
16
  | "isBendVaultDataHourly"
17
+ | "isBendLoopingEnabled"
17
18
  | "isMultiChainZapBendEnabled"
18
19
  | "isZapStakeBeraEnabled"
19
20
  | "mockValidatorOperator"
20
21
  | "mockValidatorRewardAllocator"
22
+ | "isBgtPolRewardToken"
21
23
  | "mockRewardDurationManager"
22
24
  | "mockIncentiveManager"
23
25
  | "isHoneyPythWrapperEnabled"
@@ -36,10 +38,12 @@ export const defaultFlags: BeraFlags = {
36
38
  sponsorGas: false,
37
39
  enableSimulateCalls: false,
38
40
  isBendVaultDataHourly: true,
41
+ isBendLoopingEnabled: false,
39
42
  isMultiChainZapBendEnabled: false,
40
43
  isZapStakeBeraEnabled: false,
41
44
  mockValidatorOperator: false,
42
45
  mockValidatorRewardAllocator: false,
46
+ isBgtPolRewardToken: true,
43
47
  mockRewardDurationManager: false,
44
48
  mockIncentiveManager: false,
45
49
  isHoneyPythWrapperEnabled: true,
@@ -10,7 +10,7 @@ import type { Hex } from "viem";
10
10
 
11
11
  import type { EdgeConfigSchema } from "@berachain/config/internal/edge-config";
12
12
 
13
- import { BeraError } from "~/errors/BeraError";
13
+ import { BeraError } from "../errors/BeraError";
14
14
 
15
15
  type FactoryStatus = {
16
16
  /**
@@ -1,8 +1,8 @@
1
1
  import { createContext, useContext } from "react";
2
2
 
3
- import type { HoneyFeeMap } from "~/actions/honey/getHoneyFees";
4
- import type { TokenWithMetadata } from "~/types/dex";
5
- import type { PythPriceFeedMap } from "~/types/honeySwap";
3
+ import type { HoneyFeeMap } from "../actions/honey/getHoneyFees";
4
+ import type { TokenWithMetadata } from "../types/dex";
5
+ import type { PythPriceFeedMap } from "../types/honeySwap";
6
6
 
7
7
  export const HoneyConfigContext = createContext<
8
8
  HoneyConfigContextReturn | undefined
@@ -2,8 +2,8 @@ import type React from "react";
2
2
  import { useEffect } from "react";
3
3
  import { SWRConfig } from "swr";
4
4
 
5
- import { BeraError } from "~/errors/BeraError";
6
- import { BeraMonitoring } from "~/errors/BeraMonitoring";
5
+ import { BeraError } from "../errors/BeraError";
6
+ import { BeraMonitoring } from "../errors/BeraMonitoring";
7
7
 
8
8
  export function SWRFallback({
9
9
  fallback,
@@ -5,9 +5,9 @@ import {
5
5
  isFlagEnabled,
6
6
  } from "@berachain/config/internal/edge-config";
7
7
 
8
- import { useEnsoUserTokensWithBalances } from "~/hooks/enso/useEnsoUserTokensWithBalances";
9
- import type { BalanceToken, Token, TokenWithMetadata } from "~/types/dex";
10
- import { formatTokenList } from "~/utils/formatTokenList";
8
+ import { useEnsoUserTokensWithBalances } from "../hooks/enso/useEnsoUserTokensWithBalances";
9
+ import type { BalanceToken, Token, TokenWithMetadata } from "../types/dex";
10
+ import { formatTokenList } from "../utils/formatTokenList";
11
11
 
12
12
  export interface TokensProviderContext {
13
13
  tokenList: TokenWithMetadata[];
@@ -2,7 +2,7 @@ import { createContext, type PropsWithChildren, useContext } from "react";
2
2
 
3
3
  import { mainnet } from "@berachain/config/mainnet";
4
4
 
5
- import { parseBaseArgs } from "~/utils/parseBaseArgs";
5
+ import { parseBaseArgs } from "../utils/parseBaseArgs";
6
6
 
7
7
  /**
8
8
  * Average berachain block time in seconds
File without changes
@@ -410,4 +410,14 @@ export const contracts = [
410
410
  "80094": "0xC0808A144CE2ea85bF84EBD1dDF5D59429f59dDE",
411
411
  name: "bend.staging.supportedVaults.1",
412
412
  },
413
+ {
414
+ "80069": null,
415
+ "80094": "0xc914a663837eb21c5a650716e015659686597e55",
416
+ name: "enso.walletV2Factory",
417
+ },
418
+ {
419
+ "80069": null,
420
+ "80094": "0x5dE09823D9143886896507107590d9859F3E390b",
421
+ name: "enso.walletFlashloanAdapter",
422
+ },
413
423
  ] as const;
File without changes
File without changes