@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
@@ -0,0 +1,4 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } async function _asyncNullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return await rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } async function _asyncOptionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = await fn(value); } else if (op === 'call' || op === 'optionalCall') { value = await fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;var _chunkOUD27MU7cjs = require('./chunk-OUD27MU7.cjs');var _chunkDK42F2ZMcjs = require('./chunk-DK42F2ZM.cjs');var _chunk2YBHAMDVcjs = require('./chunk-2YBHAMDV.cjs');var _chunkNVHV2LDKcjs = require('./chunk-NVHV2LDK.cjs');var _chunk74WA35RIcjs = require('./chunk-74WA35RI.cjs');var _chunkNMH7LHPWcjs = require('./chunk-NMH7LHPW.cjs');var _viem = require('viem');var _metaMorphoV11 = require('@berachain/abis/bend-metamorpho/metaMorphoV11');async function fo({sharesAmount:e,vaultAddress:t,publicClient:r}){let a=await r.readContract({address:t,abi:_metaMorphoV11.metaMorphoV11Abi,functionName:"convertToAssets",args:[e]});return{raw:a,formatted:_viem.formatEther.call(void 0, a)}}var _client = require('@apollo/client');var _internal = require('@berachain/config/internal');var de=class extends _client.ApolloClient{constructor(t){super(t),this.url=t.url}async query(t){let r=Ht(t.query),a={url:this.url,type:"graphql"},o={"operation.type":"query","operation.source.url":a.url,"operation.source.type":a.type,"operation.source.queryName":r};try{let i=()=>super.query(t),l=await _chunkDK42F2ZMcjs.a.startSpan({name:`GraphQL ${r}`,op:"BeraApolloClient.query",attributes:o},i);if(l.error||l.data===void 0)throw new (0, _chunkNMH7LHPWcjs.f)({level:"fatal",tags:o,message:"Bera Apollo Client: No data returned from query, but error should be thrown since errorPolicy is none"});return{data:l.data}}catch(i){throw!_internal.appConfig.env.isProduction&&console.error("BeraApolloClient error",i),_client.ServerError.is(i)?new (0, _chunkNMH7LHPWcjs.g)({response:i.response,cause:i,statusCode:i.statusCode,endpoint:a,tags:o}):i instanceof TypeError?new (0, _chunkNMH7LHPWcjs.g)({level:"fatal",reason:"TypeError",response:i,cause:i,endpoint:a,tags:o}):new (0, _chunkNMH7LHPWcjs.g)({response:i,tags:o,cause:i,endpoint:a})}}};function Ht(e){return _optionalChain([e, 'access', _2 => _2.definitions, 'access', _3 => _3.find, 'call', _4 => _4(r=>r.kind==="OperationDefinition"), 'optionalAccess', _5 => _5.name, 'optionalAccess', _6 => _6.value])}var _http = require('@apollo/client/link/http');var _config = require('@berachain/config');var _api = require('@berachain/graphql/dex/api'); var _api2 = _interopRequireDefault(_api);function jt(e){if(!_internal.currentDapp)return e;let t=typeof e=="string"?void 0:e.headers;return{uri:_config.getUriFromLink.call(void 0, e),headers:{...t,"x-graphql-client-name":`berachain.${_internal.currentDapp}.${process.env.NEXT_RUNTIME||"browser"}`,"x-graphql-client-version":`${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`}}}function _(e,{ssrMode:t,inMemoryCacheOptions:r}={}){let a=_config.getUriFromLink.call(void 0, e),o=typeof e=="string"?void 0:e.headers;return new de({url:a,link:new (0, _http.HttpLink)({uri:a,headers:o}),defaultOptions:{query:{errorPolicy:"none",fetchPolicy:"no-cache"}},cache:new (0, _client.InMemoryCache)(r),ssrMode:t})}function b(e,{...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);switch(e){case"api":return _(jt(r.api),{inMemoryCacheOptions:{possibleTypes:_api2.default.possibleTypes}});case"bend.whisk":if(!r.bend.whiskApi)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Bend whisk API is not configured on this chain",level:"error"});return _(r.bend.whiskApi);case"honey.subgraph":return _(r.honey.subgraph);case"pol.subgraph":return _(r.pol.subgraph);case"pol.fees":return _(r.pol.feesSubgraph);case"governance.subgraph":return _(r.governance.subgraph);case"bex.subgraph":return _(r.bex.subgraph)}}var Ye= (_class =class e{static __initStatic() {this.PATH_NOT_FOUND_REASON="NO_SWAP_PATHS"}__init() {this.needsAccountForQuote=!1}__init2() {this.notFoundMessages=[]}constructor(t={}){;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);_class.prototype.__init3.call(this);let{config:r,chainId:a}=_chunk74WA35RIcjs.a.call(void 0, t);this.config=r,this.chainId=a}__init3() {this.url=""}parseAddresses(t,r){if(!_viem.isAddress.call(void 0, t)||!_viem.isAddress.call(void 0, r))throw new (0, _chunkNMH7LHPWcjs.f)({message:`Invalid address: ${t} or ${r}`,level:"error"});return{tokenInAddress:_chunk74WA35RIcjs.e.call(void 0, t,"BERA")?this.config.tokens.wbera:t,tokenOutAddress:_chunk74WA35RIcjs.e.call(void 0, r,"BERA")?this.config.tokens.wbera:r,isTokenInNative:_chunk74WA35RIcjs.e.call(void 0, t,"BERA"),isTokenOutNative:_chunk74WA35RIcjs.e.call(void 0, r,"BERA")}}getAmountAfterFees(t,r){if(r===void 0)throw new (0, _chunkNMH7LHPWcjs.f)({message:"aggregatorsFeeBps is required",level:"error"});let a=new (0, _chunkNVHV2LDKcjs.a)(t).times(r).dividedBy(1e4).toFixed(0,_chunkNVHV2LDKcjs.a.ROUND_DOWN);return new (0, _chunkNVHV2LDKcjs.a)(t).minus(a).toFixed(0,_chunkNVHV2LDKcjs.a.ROUND_DOWN)}getInputData({tokenIn:t,amountIn:r,isNative:a,isPermit2Approval:o=!1,permit2SpenderAddress:i}){return{tokenIn:t,amountIn:BigInt(r),isNative:a,isPermit2Approval:o,permit2SpenderAddress:_nullishCoalesce(i, () => (_viem.zeroAddress))}}getMinAmountOut(t,r){if(r===void 0)throw new (0, _chunkNMH7LHPWcjs.f)({message:"slippage is required",level:"error"});let a=new (0, _chunkNVHV2LDKcjs.a)(t).times(1-r/100);return a.isNaN()||a.isZero()?0n:BigInt(a.toFixed(0))}parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:a}){return _chunk74WA35RIcjs.e.call(void 0, t,"BERA")?[]:[{token:t,amount:{raw:r,formatted:_viem.formatUnits.call(void 0, BigInt(r),t.decimals)},spender:a}]}checkChainSupport({tokenIn:t,tokenOut:r}){return this.supportedChains===null?!0:this.supportedChains.includes(t.chainId)&&this.supportedChains.includes(r.chainId)}assertChainSupport({tokenIn:t,tokenOut:r,underlyingToken:a}){if(!this.checkChainSupport({tokenIn:t,tokenOut:r,underlyingToken:a}))throw new (0, _chunkNMH7LHPWcjs.f)({message:`${this.name} does not support tokens chain ID: ${t.chainId} and ${r.chainId}`,level:"error"})}async fetch(t,r){try{return await _chunkNVHV2LDKcjs.c.call(void 0, {url:t,name:this.name,type:this.type},{method:"GET",headers:{"Content-Type":"application/json"},...r})}catch(a){let o=_chunk2YBHAMDVcjs.a.call(void 0, {cause:a});throw this.notFoundMessages.some(i=>o.message.includes(i))&&(o.reason=e.PATH_NOT_FOUND_REASON),o}}}, _class.__initStatic(), _class);var _berancersdk = require('@berachain-foundation/berancer-sdk');var _chains = require('viem/chains');for(let e of Object.keys(_internal.chainConfigs)){let{config:t,chainId:r}=_chunk74WA35RIcjs.a.call(void 0, {chainId:Number(e)});_berancersdk.API_CHAIN_NAMES[r]=t.bex.chainName,_berancersdk.CHAINS[r]=r===_chains.berachain.id?_chains.berachain:_chains.berachainBepolia,_berancersdk.BALANCER_RELAYER[r]=t.bex.relayer,_berancersdk.VAULT[r]=t.bex.vault,_berancersdk.BALANCER_QUERIES[r]=t.bex.queries,_berancersdk.WEIGHTED_POOL_FACTORY_BALANCER_V2[r]=_viem.zeroAddress,_berancersdk.COMPOSABLE_STABLE_POOL_FACTORY[r]=_viem.zeroAddress;let a=new (0, _berancersdk.Token)(r,_viem.zeroAddress,_chunk74WA35RIcjs.b.decimals,_chunk74WA35RIcjs.b.name,_chunk74WA35RIcjs.b.symbol,t.tokens.wbera);_berancersdk.NATIVE_ASSETS[r]=a}var _api3 = require('@berachain/graphql/pol/api');async function Zo({textSearch:e,chain:t,first:r,orderBy:a,orderDirection:o,skip:i,fetchPolicy:l,userAddress:n,blacklistedPoolIds:s,...d}={}){let{config:u}=_chunk74WA35RIcjs.a.call(void 0, d),f=await b("api",d).query({query:_api.GetPools,variables:{textSearch:e,chain:_nullishCoalesce(t, () => (u.bex.chainName)),first:r,orderBy:_nullishCoalesce(a, () => (_api3.GqlPoolOrderBy.TotalLiquidity)),orderDirection:_nullishCoalesce(o, () => (_api3.GqlPoolOrderDirection.Desc)),skip:i,userAddress:n,blacklistedPoolIds:s},fetchPolicy:l});return{pools:_nullishCoalesce(f.data.poolGetPools, () => ([])),count:_nullishCoalesce(f.data.count, () => (0))}}async function on({poolId:e,account:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),l=(await b("api",r).query({query:_api.GetPool,variables:{id:e,userAddress:t,chain:a.bex.chainName},fetchPolicy:"no-cache"})).data.poolGetPool;if(!l)throw new Error(`Pool not found for id: ${e} and user ${t}`);return l}async function cn(e={}){let{config:t}=_chunk74WA35RIcjs.a.call(void 0, e);return(await b("api",e).query({query:_api.GetGlobalLiquidityAndSwapVolume,variables:{chain:t.bex.chainName}})).data}async function Xe({publicClient:e,poolAddress:t}){let r=_berancersdk.weightedPoolV4Abi_V2,a=await e.multicall({contracts:[{address:t,abi:r,functionName:"inRecoveryMode"},{address:t,abi:r,functionName:"getPausedState"}],allowFailure:!1});return{isPoolInRecoveryMode:a[0],isPoolPaused:a[1][0]}}async function Cn({poolId:e,publicClient:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),o=e.slice(0,42);if(!_viem.isAddress.call(void 0, o)||!_viem.isHex.call(void 0, e))throw new (0, _chunkNMH7LHPWcjs.h)({property:"poolId",value:e,expected:"Hex"});try{let[i,l,n,s,d,u,m,f,g]=await Promise.all([t.readContract({address:o,abi:_viem.erc20Abi,functionName:"name"}),t.readContract({address:a.bex.vault,abi:_berancersdk.vaultV2Abi,functionName:"getPoolTokens",args:[e]}),t.readContract({address:o,abi:_viem.erc20Abi,functionName:"totalSupply"}),t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"getSwapFeePercentage"}),t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"version"}),t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"decimals"}),t.readContract({address:a.bex.factories.composableStable,abi:_berancersdk.weightedPoolFactoryAbi_V3,functionName:"isPoolFromFactory",args:[o]}),t.readContract({address:a.bex.factories.weighted,abi:_berancersdk.weightedPoolFactoryAbi_V3,functionName:"isPoolFromFactory",args:[o]}),Xe({publicClient:t,poolAddress:o})]),p=Number(u),A=JSON.parse(d),C,B,y;if(m?[C,y]=await Promise.all([t.readContract({address:o,abi:[{type:"function",name:"getActualSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]}],functionName:"getActualSupply"}),t.readContract({address:o,abi:_berancersdk.stablePoolAbi_V3,functionName:"getAmplificationParameter"})]):A.name==="WeightedPool"&&(B=await t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"getNormalizedWeights"})),!m&&!f)throw new Error(`Pool ${o} is not a valid BEX pool`);return{name:i,address:o,id:e,poolTokens:[l[0],l[1].map(String),Number(l[2])],totalSupply:_viem.formatUnits.call(void 0, _nullishCoalesce(C, () => (n)),p),swapFee:_viem.formatEther.call(void 0, s),decimals:p,weights:_optionalChain([B, 'optionalAccess', _7 => _7.map, 'call', _8 => _8(q=>_viem.formatEther.call(void 0, q))]),version:A,factory:m?a.bex.factories.composableStable:a.bex.factories.weighted,type:m?_api3.GqlPoolType.Stable:_api3.GqlPoolType.Weighted,amplificationParameter:y?[Number(y[0]),y[1],Number(y[2])]:void 0,pausedState:g}}catch(i){throw _chunk2YBHAMDVcjs.a.call(void 0, {cause:i})}}async function Vn({poolId:e,typeInArray:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);return(await b("api",r).query({query:_api.GetPoolEvents,variables:{poolId:e,typeIn:t,chain:a.bex.chainName}})).data}async function Tn({poolId:e,chain:t,...r}){if(!e||!_viem.isHex.call(void 0, e))throw new (0, _chunkNMH7LHPWcjs.h)({property:"poolId",value:e,expected:"hex string"});let a=b("api",r),{data:o}=await a.query({query:_api.GetPoolHistoricalData,variables:{poolId:e,chain:t}});return o.poolGetSnapshots}var Y=({fieldOrType:e,value:t,required:r=!0,baseUrl:a,components:o})=>{if(!["bool","string"].includes(e)&&r&&(t==null||t===""))return"Required";if(e.startsWith("uint")||e.startsWith("int")){if(typeof t!="string")return"Invalid amount";try{let l=BigInt(t);if(e.startsWith("uint")&&l<0n)return"Negative amount"}catch (e2){return"Invalid amount"}return null}switch(e){case"string":return t!==void 0&&typeof t!="string"?"Invalid amount":null;case"bool":return typeof t!="boolean"?"Invalid amount":null;case"title":return t.length===0?"Required":null;case"description":return t.length===0?"Required":null;case"forumLink":if(t.length===0)return"Required";if(!URL.canParse(t))return"Invalid address";let l=new URL(a);return t.startsWith(l.toString())?null:"Must be a berachain forum link";case"address":return _viem.isAddress.call(void 0, t,{strict:!0})?null:"Invalid address";case"hex":return _viem.isHex.call(void 0, t,{strict:!0})?null:"Invalid address";case"abi":try{JSON.parse(t)}catch (e3){return"Invalid ABI"}return null;case"action":return _viem.isAddress.call(void 0, t,{strict:!0})?null:"Invalid address";case"tuple":if(typeof t=="object"&&Array.isArray(o)){let n={};for(let s of o)n[s.name]=Y({fieldOrType:s.type,value:t[s.name],components:s.components});return Object.values(n).every(s=>s===null)?null:n}return null;case"tuple[]":if(Array.isArray(t)){let n=t.map(s=>Y({fieldOrType:"tuple",value:s,components:o}));return n.every(s=>s===null)?null:n}return null;case"logoURI":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS or IPFS";case"url":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS";default:return console.error(`Invalid field or type: ${e}`),null}};var _governance = require('@berachain/graphql/governance');var Br=!1,Dn= exports.o =[_governance.ProposalStatus.Active,_governance.ProposalStatus.PendingQueue,_governance.ProposalStatus.PendingExecution,_governance.ProposalStatus.Defeated,_governance.ProposalStatus.QuorumNotReached];function pe(e,t){let r=Date.now()/1e3;if(t!==void 0){if(e.status===_governance.ProposalStatus.CanceledByGuardian)return _governance.ProposalStatus.CanceledByGuardian;if(t===2)return Number(e.voteStartAt)<r?_governance.ProposalStatus.CanceledByUser:_governance.ProposalStatus.CanceledByGuardian;if(t===3)return e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?_governance.ProposalStatus.QuorumNotReached:_governance.ProposalStatus.Defeated:_governance.ProposalStatus.QuorumNotReached;if(t===4)return _governance.ProposalStatus.PendingQueue;if(t===5)return Number(e.queueEnd)<Date.now()/1e3?_governance.ProposalStatus.PendingExecution:_governance.ProposalStatus.InQueue;if(t===6)return console.warn("Unexpected expired state on proposal id: ",e.id),_governance.ProposalStatus.Defeated}return e.status===_governance.ProposalStatus.InQueue&&Number(e.queueEnd)<Date.now()/1e3?_governance.ProposalStatus.PendingExecution:Br&&t===1&&e.quorum&&BigInt(e.quorum)<BigInt(e.pollResult.totalTowardsQuorum)&&Number(e.pollResult.forPercentage)>Number(e.pollResult.againstPercentage)?_governance.ProposalStatus.PendingQueue:e.status===_governance.ProposalStatus.Pending?Number(e.voteStartAt)<r&&Number(e.voteEndAt)>r?_governance.ProposalStatus.Active:Number(e.voteEndAt)<r?e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?_governance.ProposalStatus.QuorumNotReached:_optionalChain([e, 'access', _9 => _9.pollResult, 'optionalAccess', _10 => _10.against])>_optionalChain([e, 'access', _11 => _11.pollResult, 'optionalAccess', _12 => _12.for])?_governance.ProposalStatus.Defeated:_governance.ProposalStatus.PendingQueue:_governance.ProposalStatus.QuorumNotReached:_governance.ProposalStatus.Pending:e.status===_governance.ProposalStatus.Active&&Number(e.voteEndAt)<r?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?_governance.ProposalStatus.QuorumNotReached:BigInt(_nullishCoalesce(_optionalChain([e, 'access', _13 => _13.pollResult, 'optionalAccess', _14 => _14.against]), () => (0n)))>BigInt(_nullishCoalesce(_optionalChain([e, 'access', _15 => _15.pollResult, 'optionalAccess', _16 => _16.for]), () => (0n)))?_governance.ProposalStatus.Defeated:_governance.ProposalStatus.PendingQueue:e.status===_governance.ProposalStatus.InQueue&&Number(e.queueEnd)<Date.now()/1e3?_governance.ProposalStatus.PendingExecution:e.status}async function On({where:e,orderBy:t,orderDirection:r,offset:a=0,perPage:o=20,text:i,...l}){try{if(o>1e3)throw new Error("perPage must be less than 1000");let n=b("governance.subgraph",l),[s]=await Promise.all([i?n.query({query:_governance.SearchProposals,variables:{offset:a,limit:o,where:e,text:i}}):n.query({query:_governance.GetProposals,variables:{offset:a,limit:o,where:e,orderBy:t,orderDirection:r}})]);return s.data.proposals.map(d=>({...d,status:pe(d)}))}catch(n){throw console.error("getAllProposals:",n),n}}var _n=(e,t)=>{let r={};return r.title=Y({fieldOrType:"title",value:e.title}),r.description=Y({fieldOrType:"description",value:e.description}),r.forumLink=Y({fieldOrType:"forumLink",value:e.forumLink,baseUrl:t.forumLink}),r};async function Yn({proposalId:e,...t}){let a=await b("governance.subgraph",t).query({query:_governance.GetProposal,variables:{id:e}});if(a.data.proposal)return{...a.data.proposal,status:pe(a.data.proposal)}}var _graymatter = require('gray-matter'); var _graymatter2 = _interopRequireDefault(_graymatter);var Sr=e=>{let t=/#(?:([\w-]+)# )?(.+)\n([\s\S]*)/,r=e.match(t);if(r){let a=r[1]||null,o=r[2],i=r[3].replace(`
2
+ `,"<br />");return{type:a,title:o,content:i}}throw new Error("Invalid proposal body")},nt= exports.t =e=>{if(!e)return{isFrontMatter:!1,data:{title:"Loading..."},content:"",matter:"",language:"",orig:"",stringify:()=>""};let t=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _17 => _17.description]), () => (""));if(_graymatter2.default.test(t))return{..._graymatter2.default.call(void 0, t),isFrontMatter:!0};try{let r=Sr(t);return{isFrontMatter:!1,data:{title:r.title},content:r.content,matter:"",language:"",orig:t,stringify:()=>t}}catch (e4){return{isFrontMatter:!1,data:{title:_optionalChain([e, 'optionalAccess', _18 => _18.description, 'optionalAccess', _19 => _19.split, 'call', _20 => _20(`
3
+ `), 'access', _21 => _21[0], 'access', _22 => _22.slice, 'call', _23 => _23(0,100)])},content:t,matter:"",language:"",orig:t,stringify:()=>t}}};var _berachainGovernance = require('@berachain/abis/gov/berachainGovernance');async function ni(e){_chunk2YBHAMDVcjs.c.call(void 0, e.publicClient);let t;"tx"in e?t=e.tx:t=await e.publicClient.getTransactionReceipt({hash:e.txHash});let r=_optionalChain([t, 'optionalAccess', _24 => _24.logs])?_optionalChain([_viem.parseEventLogs.call(void 0, {abi:_berachainGovernance.berachainGovernanceAbi,logs:t.logs,eventName:"ProposalCreated"}), 'optionalAccess', _25 => _25.at, 'call', _26 => _26(0)]):void 0;if(!t||!r)return null;let a=await e.publicClient.getBlock({blockNumber:t.blockNumber}),o=nt({description:_optionalChain([r, 'optionalAccess', _27 => _27.args, 'access', _28 => _28.description])});return{id:String(r.args.proposalId),proposalId:String(_optionalChain([r, 'optionalAccess', _29 => _29.args, 'access', _30 => _30.proposalId])),createdAt:a.timestamp.toString(),title:o.data.title,createdAtBlock:a.timestamp.toString(),voteStartAt:String(_optionalChain([r, 'optionalAccess', _31 => _31.args, 'access', _32 => _32.voteStart])),voteEndAt:String(_optionalChain([r, 'optionalAccess', _33 => _33.args, 'access', _34 => _34.voteEnd])),proposer:_optionalChain([r, 'optionalAccess', _35 => _35.args, 'access', _36 => _36.proposer]),description:o.content,unverifiedForumLink:o.data.forumLink,pollResult:{for:"0",forVotersCount:0,forPercentage:"0",against:"0",againstVotersCount:0,againstPercentage:"0",abstain:"0",abstainVotersCount:0,abstainPercentage:"0",total:"0",totalVotersCount:0,totalTowardsQuorum:"0"},status:_governance.ProposalStatus.Pending,quorum:null,topics:o.data.topics,votes:[],executableCalls:_optionalChain([r, 'optionalAccess', _37 => _37.args, 'access', _38 => _38.targets, 'access', _39 => _39.map, 'call', _40 => _40((i,l)=>({__typename:"ExecutableCall",id:`${t.transactionHash}-${l}`,target:i,value:String(_optionalChain([r, 'optionalAccess', _41 => _41.args, 'access', _42 => _42.values, 'access', _43 => _43[l]])),calldata:_optionalChain([r, 'optionalAccess', _44 => _44.args, 'access', _45 => _45.calldatas, 'access', _46 => _46[l]])}))]),timelock:void 0}}async function ui({variables:e,...t}){return b("governance.subgraph",t).query({query:_governance.GetProposalVotes,variables:e})}var _honey = require('@berachain/graphql/honey');async function pi({days:e,...t}){return(await b("honey.subgraph",t).query({query:_honey.GetChartData,variables:{interval:_honey.Aggregation_Interval.Day,first:e}})).data}var _honeyFactory = require('@berachain/abis/honey/honeyFactory');async function yi({client:e,collateralList:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);try{let o=await e.readContract({address:a.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"getWeights"});return t.reduce((l,n,s)=>Object.assign(l,{[n.address]:o[s]}),{})}catch(o){throw console.log(o),o}}async function it({address:e,publicClient:t,chainId:r}){try{if(!t)throw new Error("Public client not found");let[a,o,i]=await Promise.all([t.readContract({address:e,abi:_viem.erc20Abi,functionName:"decimals"}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"name"}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"symbol"})]),l={address:e,decimals:a,name:o,symbol:i,chainId:r};if(typeof l.decimals!="number"||typeof l.name!="string"||typeof l.symbol!="string")throw new Error(`Invalid ERC20 token. Address: ${e}`);return l}catch(a){throw console.error(a),_chunk2YBHAMDVcjs.a.call(void 0, {cause:a})}}async function Ve({client:e,tokenData:t,preferredCollateralOrder:r,...a}){let{config:o}=_chunk74WA35RIcjs.a.call(void 0, a),[i,l]=await Promise.all([e.readContract({address:o.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"numRegisteredAssets"}),e.readContract({address:o.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"referenceCollateral"})]),n=[];for(let f=0;f<i;f++)n.push(e.readContract({address:o.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"registeredAssets",args:[BigInt(f)]}));let s=await Promise.all(n),u=(await Promise.all(s.map(f=>{let g=_optionalChain([t, 'optionalAccess', _47 => _47.find, 'call', _48 => _48(p=>_chunk74WA35RIcjs.e.call(void 0, p,f))]);return g||it({address:f,chainId:o.chainId,publicClient:e})}))).filter(f=>!!f).sort((f,g)=>s.indexOf(f.address)-s.indexOf(g.address)).map((f,g)=>({...f,order:g}));if(_optionalChain([r, 'optionalAccess', _49 => _49.length])){let f=[];for(let g of r){let p=u.find(A=>_chunk74WA35RIcjs.e.call(void 0, A.address,g.address));p&&(f.push(p),u.splice(u.indexOf(p),1))}u.unshift(...f)}let m=u.find(f=>_chunk74WA35RIcjs.e.call(void 0, f,l));if(!u)throw new Error("Collateral tokens not found");if(!m)throw new Error("Reference collateral address not found");return{collaterals:u,referenceCollateral:m}}var _honeyFactoryReader = require('@berachain/abis/honey/honeyFactoryReader');async function lt({client:e,collateral:t,latestPrices:r,isPythWrapperEnabled:a,...o}){let{config:i}=_chunk74WA35RIcjs.a.call(void 0, o);try{let l=e.readContract({address:i.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"isBadCollateralAsset",args:[t.address]}),n=e.readContract({address:i.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"isPegged",args:[t.address]});if(a&&r){let u=r.prices.map(m=>_viem.parseUnits.call(void 0, m,18));n=e.readContract({address:i.honey.reader,abi:_honeyFactoryReader.honeyFactoryReaderAbi,functionName:"isPeggedWithPrice",args:[t.address,u[0]]})}let[s,d]=await Promise.all([l,n]);return{isBlacklisted:s,isDepegged:!d}}catch(l){throw console.log(l),l}}var _collateralVault = require('@berachain/abis/honey/collateralVault');async function re({client:e,asset:t,amount:r,...a}){let{config:o}=_chunk74WA35RIcjs.a.call(void 0, a);try{let[i,l]=await Promise.all([e.readContract({address:o.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"vaults",args:[t]}),e.readContract({address:o.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"collectedFees",args:[o.honey.factory,t]})]);return await e.readContract({address:i,abi:_collateralVault.collateralVaultAbi,functionName:"balanceOf",args:[o.honey.factory]})+_viem.parseEther.call(void 0, _nullishCoalesce(r, () => ("0")))-l}catch(i){throw console.log(i),i}}var Wr=_viem.parseEther.call(void 0, "1");async function _i({client:e,asset:t,amount:r,isMint:a,isPythWrapperEnabled:o,latestPrices:i,...l}){let{config:n}=_chunk74WA35RIcjs.a.call(void 0, l);try{let s=await e.readContract({address:n.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"globalCap"});if(s>=Wr)return!1;let[{collaterals:d},u]=await Promise.all([Ve({client:e}),Lr({client:e,asset:t,amount:r,latestPrices:i,isPythWrapperEnabled:o})]);if(!u)return;for(let m in u)if((a&&_chunk74WA35RIcjs.e.call(void 0, d[m],t)||!a&&_chunk74WA35RIcjs.e.call(void 0, d[m],t))&&u[m]>s-_chunkNVHV2LDKcjs.e)return!0;return!1}catch(s){throw console.log(s),s}}async function Lr({client:e,asset:t,amount:r,latestPrices:a,isPythWrapperEnabled:o}){let{collaterals:i}=await Ve({client:e}),l=0n,n=[];for(let s of i){let d=await lt({client:e,collateral:t,latestPrices:a,isPythWrapperEnabled:o});if(_optionalChain([d, 'optionalAccess', _50 => _50.isBlacklisted])||_optionalChain([d, 'optionalAccess', _51 => _51.isDepegged]))continue;let u=await re({client:e,asset:s.address,amount:_chunk74WA35RIcjs.e.call(void 0, s,t)?r:"0"});u&&(l+=u,n.push(u))}if(l===0n)return n;for(let s in i)n[s]=_viem.parseEther.call(void 0, n[s].toString())/l;return n}async function Ki({...e}={}){return(await b("honey.subgraph",e).query({query:_honey.GetGlobalData})).data}var Mr=(s=>(s.Mint="previewMintHoney",s.MintWithPrice="previewMintHoneyWithPrices",s.RequiredCollateral="previewMintCollaterals",s.RequiredCollateralWithPrice="previewMintCollateralsWithPrices",s.Redeem="previewRedeemCollaterals",s.RedeemWithPrice="previewRedeemCollateralsWithPrices",s.HoneyToRedeem="previewRedeemHoney",s.HoneyToRedeemWithPrice="previewRedeemHoneyWithPrices",s))(Mr||{});async function es({client:e,collateral:t,collateralList:r,amount:a,method:o,latestPrices:i,isPythWrapperEnabled:l,...n}){let{config:s}=_chunk74WA35RIcjs.a.call(void 0, n);try{let d=o==="previewMintHoney"||o==="previewRedeemHoney"||o==="previewMintHoneyWithPrices"||o==="previewRedeemHoneyWithPrices",u=_viem.parseUnits.call(void 0, a,d?t.decimals:18),m,f=[t.address,u];if(l&&i){let p=i.prices.map(A=>_viem.parseUnits.call(void 0, A,18));f=[t.address,u,p]}if(d){let p=await e.readContract({address:s.honey.reader,abi:_honeyFactoryReader.honeyFactoryReaderAbi,functionName:o,args:f});m={collaterals:p[0],honey:p[1]}}else m={collaterals:await e.readContract({address:s.honey.reader,abi:_honeyFactoryReader.honeyFactoryReaderAbi,functionName:o,args:f}),honey:u};let g=r.reduce((p,A)=>{let C=A.order;return A.address===t.address&&m.collaterals[C]===BigInt(0)?Object.assign(p,{[A.address]:m.collaterals[0]}):Object.assign(p,{[A.address]:m.collaterals[C]})},{});return g[t.address]===BigInt(0)&&(g[t.address]=m.collaterals[0]),{collaterals:g,honey:m.honey}}catch(d){throw console.log("error",d),d}}async function is({client:e,collateralList:t,honeyFactoryAddress:r,...a}){let{config:o}=_chunk74WA35RIcjs.a.call(void 0, a),i=_nullishCoalesce(r, () => (o.honey.factory));return await Promise.all(t.map(async n=>{let s=await e.readContract({address:o.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"vaults",args:[n.address]}),[d,u,[m,f]]=await Promise.all([e.readContract({address:s,abi:_collateralVault.collateralVaultAbi,functionName:"balanceOf",args:[i]}),e.readContract({address:i,abi:_honeyFactory.honeyFactoryAbi,functionName:"collectedAssetFees",args:[n.address]}),e.readContract({address:s,abi:_collateralVault.collateralVaultAbi,functionName:"custodyInfo"})]),g=await e.readContract({address:s,abi:_collateralVault.collateralVaultAbi,functionName:"convertToAssets",args:[d-u]});return{...n,balance:{raw:g.toString(),formatted:_viem.formatUnits.call(void 0, g,n.decimals)},vault:m?f:s}}))}var _hermesclient = require('@pythnetwork/hermes-client');var $r="https://hermes.pyth.network";async function ft({priceFeedId:e}){let r=await new (0, _hermesclient.HermesClient)($r,{}).getLatestPriceUpdates(e,{encoding:"hex",parsed:!0});return{calldata:r.binary.data.map(a=>`0x${a}`),prices:_nullishCoalesce(_optionalChain([r, 'access', _52 => _52.parsed, 'optionalAccess', _53 => _53.flatMap, 'call', _54 => _54(a=>_viem.formatUnits.call(void 0, BigInt(a.price.price),a.price.expo*-1))]), () => ([]))}}async function bs({client:e,asset:t,amount:r,isMint:a,referenceCollateral:o,...i}){let{config:l}=_chunk74WA35RIcjs.a.call(void 0, i);if(t===o.address)return!1;try{let[n]=await Promise.all([e.readContract({address:l.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"relativeCap",args:[t]})]),[s,d]=await Promise.all([re({client:e,asset:t,amount:a?r:void 0}),re({client:e,asset:o.address,amount:a?void 0:r})]);return d===0n?s!==0n:_viem.parseEther.call(void 0, (_nullishCoalesce(s, () => (0n))).toString())/(_nullishCoalesce(d, () => (0n)))>=n-_chunkNVHV2LDKcjs.e}catch(n){throw console.log(n),n}}async function gt({client:e,priceFeedId:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);try{return await e.readContract({address:a.external.pyth,abi:_chunkOUD27MU7cjs.a,functionName:"getUpdateFee",args:[t]})}catch(o){throw console.error("getPythUpdateFee",o),o}}var _honeyFactoryPythWrapper = require('@berachain/abis/honey/honeyFactoryPythWrapper');var Ns=async({state:e,publicClient:t,priceFeedMap:r,collateralList:a,isPythWrapperEnabled:o,...i})=>{let{config:l}=_chunk74WA35RIcjs.a.call(void 0, i),n=_chunk74WA35RIcjs.d.call(void 0, i),{actionType:s,fromAmount:d,collaterals:u,isBasketModeEnabled:m}=e,f=o?l.honey.pythWrapper:l.honey.factory,g=a.map(p=>p.address);if(d[0]&&g.length){let p=s==="mint";if(o&&t&&r){let C=(await ft({priceFeedId:Object.values(r)})).calldata,B=0n;try{B=await gt({client:t,priceFeedId:C})}catch (e5){B=_chunkNVHV2LDKcjs.k.call(void 0, u.length)}return({account:y})=>{let q=[C,_optionalChain([u, 'access', _55 => _55[0], 'optionalAccess', _56 => _56.address]),_viem.parseUnits.call(void 0, d[0],_nullishCoalesce((p?_optionalChain([u, 'access', _57 => _57[0], 'optionalAccess', _58 => _58.decimals]):_optionalChain([n, 'optionalAccess', _59 => _59.decimals])), () => (18))),y,!!m];return{address:f,abi:_honeyFactoryPythWrapper.honeyFactoryPythWrapperAbi,functionName:p?"mint":"redeem",params:q,value:B}}}return({account:A})=>{let C=[_optionalChain([u, 'access', _60 => _60[0], 'optionalAccess', _61 => _61.address]),_viem.parseUnits.call(void 0, d[0],_nullishCoalesce((p?_optionalChain([u, 'access', _62 => _62[0], 'optionalAccess', _63 => _63.decimals]):_optionalChain([n, 'optionalAccess', _64 => _64.decimals])), () => (18))),A,!!m];return{value:0n,address:f,abi:_honeyFactory.honeyFactoryAbi,functionName:p?"mint":"redeem",params:C}}}throw new Error("Something went wrong while creating the Honey swap payload")};async function qs({client:e,isMint:t,collateralList:r,latestPrices:a,isPythWrapperEnabled:o,...i}){let{config:l}=_chunk74WA35RIcjs.a.call(void 0, i);if(o&&a){if(r.length===0)return;let s=a.prices.map(u=>_viem.parseUnits.call(void 0, u,18));return await e.readContract({address:l.honey.reader,abi:_honeyFactoryReader.honeyFactoryReaderAbi,functionName:"isBasketModeEnabledWithPrices",args:[t,s]})}return await e.readContract({address:l.honey.factory,abi:_honeyFactory.honeyFactoryAbi,functionName:"isBasketModeEnabled",args:[t]})}async function Us({block:e,currentBlock:t,blockTime:r,publicClient:a}){if(_chunk2YBHAMDVcjs.b.call(void 0, e,"block"),_chunk2YBHAMDVcjs.c.call(void 0, a),t>e){let i=await a.getBlock({blockNumber:BigInt(e),includeTransactions:!1});return{timestamp:Number(i.timestamp)}}return{timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now())+r*(Number(e)-Number(t))}}var _rewardVault = require('@berachain/abis/pol/rewards/rewardVault');var ta=(a=>(a.Duration="duration",a.TargetRate="targetRate",a.TargetApr="targetApr",a))(ta||{});async function Hs(e,t){let[r,a,o,i,l,n]=await Promise.all([t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"rewardsDuration"}),t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"rewardVaultManager"}),t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"rewardRate"}),t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"periodFinish"}),t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"targetRewardsPerSecond"}),t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"minRewardDurationForTargetRate"})]),s=o*(i-BigInt(_chunkNVHV2LDKcjs.l.call(void 0, Date.now())))/10n**18n;return{rewardsDuration:Number(r),mode:l===0n?"duration":"targetRate",manager:a,rewardRate:_viem.formatUnits.call(void 0, o,36),periodFinish:Number(i),availableRewards:_viem.formatUnits.call(void 0, s,18),minRewardDurationForTargetRate:Number(n),targetRewardsPerSecond:_viem.formatUnits.call(void 0, l,36)}}function fe(e,t,r){return e?r*t*_chunkNVHV2LDKcjs.y.call(void 0, 1)/e:null}function ra(e,t,r){return r?e*r/(t*_chunkNVHV2LDKcjs.y.call(void 0, 1)):0}function $s({availableRewards:e,periodFinish:t,tvl:r,bgtPrice:a,MIN_REWARD_DURATION:o,MAX_REWARD_DURATION:i,...l}){let n=_chunkNVHV2LDKcjs.l.call(void 0, Date.now());if(n>t)return{apr:0,duration:0,rewardRate:0,targetRate:null,periodFinish:0,mode:null};if(l.mode==="targetRate"||l.mode==="targetApr"){let m,{minRewardDurationForTargetRate:f,currentDuration:g}=l;if(l.mode==="targetRate"?m=l.rewardRate:m=ra(l.apr,a,r),m===0){let C=Math.min(g,i),B=e?e/C:0;return{apr:fe(r,a,B),duration:C,rewardRate:B,targetRate:null,periodFinish:C+n,mode:"duration"}}let p=f||o,A=e?e/m:0;if(A<p){let C=e?e/p:0;return{apr:fe(r,a,C),duration:p,rewardRate:C,targetRate:C.toString(),periodFinish:p+n,mode:null}}return{apr:fe(r,a,m),duration:A,rewardRate:m,targetRate:m.toString(),periodFinish:A+n,mode:null}}let{duration:s}=l,d=e/s;return{apr:fe(r,a,d),mode:null,targetRate:null,duration:s,rewardRate:d,periodFinish:s+n}}async function zs({address:e,account:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),o=`${a.staking}/vaults/${e}/earnings/${t}`;return _chunkNVHV2LDKcjs.d.call(void 0, {url:o,type:"rest"})}async function ge({filter:e,publicClient:t,...r}={}){let o=await b("api",r).query({query:_api3.GetVaults,variables:e}),i=await Promise.allSettled(o.data.polGetRewardVaults.vaults.map(async n=>{if(t)return Promise.allSettled(n.activeIncentives.map(s=>t.readContract({abi:_rewardVault.rewardVaultAbi,address:n.address,functionName:"incentives",args:[s.tokenAddress]})))})),l=o.data.polGetRewardVaults.vaults.map((n,s)=>{let d=0,u=n.activeIncentives.map((m,f)=>{let g=Number(m.remainingAmountUsd)&&Number(m.remainingAmount)?Number(m.remainingAmountUsd)/Number(m.remainingAmount):0,p=_optionalChain([i, 'access', _65 => _65[s], 'optionalAccess', _66 => _66.status])==="fulfilled"&&_optionalChain([i, 'access', _67 => _67[s], 'optionalAccess', _68 => _68.value, 'optionalAccess', _69 => _69[f], 'optionalAccess', _70 => _70.status])==="fulfilled"?_viem.formatUnits.call(void 0, BigInt(i[s].value[f].value[2]),m.token.decimals):m.remainingAmount;return d+=Number(p)*Number(g),{...m,remainingAmount:p}});return{...n,dynamicData:{...n.dynamicData,allTimeReceivedBGTAmount:_nullishCoalesce(_optionalChain([n, 'access', _71 => _71.dynamicData, 'optionalAccess', _72 => _72.allTimeReceivedBGTAmount]), () => ("0")),bgtCapturePercentage:_nullishCoalesce(_optionalChain([n, 'access', _73 => _73.dynamicData, 'optionalAccess', _74 => _74.bgtCapturePercentage]), () => ("0")),activeIncentivesValueUsd:d.toString(),activeIncentivesRateUsd:_nullishCoalesce(_optionalChain([n, 'access', _75 => _75.dynamicData, 'optionalAccess', _76 => _76.activeIncentivesRateUsd]), () => ("0")),bgtCapturePerBlock:_nullishCoalesce(_optionalChain([n, 'access', _77 => _77.dynamicData, 'optionalAccess', _78 => _78.bgtCapturePerBlock]), () => ("0"))},activeIncentives:u}});return{pagination:o.data.polGetRewardVaults.pagination,gaugeList:l}}async function yt(e={}){let{config:t}=_chunk74WA35RIcjs.a.call(void 0, e),a=await b("api",e).query({query:_api3.GlobalData,variables:{chain:t.bex.chainName}});return{...a.data.polGetGlobalInfo,top3EmittingValidators:a.data.top3EmittingValidators.validators,allValidatorsCount:a.data.allValidatorsCount.pagination.totalCount}}var _bgt = require('@berachain/abis/pol/bgt');async function At({publicClient:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);_chunk2YBHAMDVcjs.c.call(void 0, e);try{let a=await e.readContract({address:r.tokens.bgt,abi:_bgt.bgtAbi,functionName:"totalBoosts",args:[]});return _viem.formatEther.call(void 0, a)}catch(a){throw console.log(a),a}}async function ht({publicClient:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);_chunk2YBHAMDVcjs.c.call(void 0, e);try{let a=await e.readContract({address:r.tokens.bgt,abi:_viem.erc20Abi,functionName:"totalSupply",args:[]});return _viem.formatEther.call(void 0, _nullishCoalesce(a, () => (0n)))}catch(a){throw console.log(a),a}}async function wt(e){let{gaugeList:t}=await ge({filter:{orderBy:_api3.GqlRewardVaultOrderBy.Apr,orderDirection:_api3.GqlRewardVaultOrderDirection.Desc,pageSize:e,where:{includeNonWhitelisted:!1}}});return t}async function Vl(e){let[t,r,a,o]=await Promise.allSettled([yt(),wt(300),ht({publicClient:e}),At({publicClient:e})]);return t.status==="rejected"&&_chunk2YBHAMDVcjs.g.captureException(_chunk2YBHAMDVcjs.a.call(void 0, {cause:t.reason,level:"warning"})),r.status==="rejected"&&_chunk2YBHAMDVcjs.g.captureException(_chunk2YBHAMDVcjs.a.call(void 0, {cause:r.reason,level:"warning"})),a.status==="rejected"&&_chunk2YBHAMDVcjs.g.captureException(_chunk2YBHAMDVcjs.a.call(void 0, {cause:a.reason,level:"warning"})),o.status==="rejected"&&_chunk2YBHAMDVcjs.g.captureException(_chunk2YBHAMDVcjs.a.call(void 0, {cause:o.reason,level:"warning"})),{bgtTotalSupply:a.status==="fulfilled"?a.value:void 0,globalCuttingBoard:r.status==="fulfilled"?r.value:[],bgtTotalBoosts:o.status==="fulfilled"?o.value:void 0,...t.status==="fulfilled"?t.value:{}}}var _fees = require('@berachain/graphql/pol/fees');async function Ct({...e}){let t=b("pol.fees",e),{data:r}=await t.query({query:_fees.GetIncentiveFeeClaimStats});if(r.incentiveFeeClaims.length>0){let a=_optionalChain([r, 'optionalAccess', _79 => _79.incentiveFeeClaims, 'access', _80 => _80.reduce, 'call', _81 => _81((l,n)=>l+Number(n.payoutAmount),3e4)]),i=(_optionalChain([r, 'optionalAccess', _82 => _82.incentiveFeeClaims, 'access', _83 => _83.filter, 'call', _84 => _84(l=>Number(l.timestamp)/1e3>Date.now()-_chunkNVHV2LDKcjs.r.call(void 0, 1))])).reduce((l,n)=>l+Number(n.payoutAmount),0);return{sumAllClaims:a,sumClaimsInLast24Hours:i}}return{sumAllClaims:0,sumClaimsInLast24Hours:0}}async function El(e={}){let{config:t}=_chunk74WA35RIcjs.a.call(void 0, e);try{let a=await(await fetch(t.lists.rewardVaultList)).json();if(!a.protocols)throw new Error("Missing protocols in market list");return{marketList:a.protocols,marketDictionary:a.protocols.reduce((o,i)=>(o[i.name]=i,o),{})}}catch(r){throw console.error("Error fetching validator information",r),r}}async function Ql({account:e,validator:t,page:r=1,perPage:a=1e3,...o}){let{config:i}=_chunk74WA35RIcjs.a.call(void 0, o),l=await fetch(`${i.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/proofs/validator/${t.toLowerCase()}?page=${r}&per_page=${a}`,{cache:"no-store"});if(!l.ok){let s=await _chunkNVHV2LDKcjs.b.call(void 0, l);throw new (0, _chunkNMH7LHPWcjs.f)({message:"Failed to fetch proofs on server",cause:{error:s,result:l,account:e,validator:t},reason:_optionalChain([s, 'optionalAccess', _85 => _85.reason])})}return await l.json()}var _wberaStakerVault = require('@berachain/abis/pol/wberaStakerVault');async function Ml({address:e,publicClient:t}){return _chunk2YBHAMDVcjs.c.call(void 0, t),t.readContract({address:e,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"previewRedeem",args:[_viem.parseUnits.call(void 0, "1",18)]}).then(r=>Number(_viem.formatUnits.call(void 0, r,18))).catch(()=>0)}async function Kl({address:e,chainName:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),o=_nullishCoalesce(t, () => (a.bex.chainName)),i=b("api",r),{data:l}=await i.query({query:_api3.GetRewardVault,variables:{vaultId:e,chain:o}});if(!_optionalChain([l, 'optionalAccess', _86 => _86.rewardVault]))throw new (0, _chunkDK42F2ZMcjs.b)({resource:"Reward vault",id:e,chainId:a.chainId});return l.rewardVault}async function ru({address:e,stakingToken:t,publicClient:r}){let a=await r.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"getWhitelistedTokens"}),i=a.findIndex(n=>_berancersdk.isSameAddress.call(void 0, t,n))!==-1?await r.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"totalSupply"}):0n,l=await Promise.allSettled(a.map(async n=>{let[s,d,u,m]=await Promise.all([r.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"incentives",args:[n]}),r.readContract({address:n,abi:_viem.erc20Abi,functionName:"decimals"}),r.readContract({address:n,abi:_viem.erc20Abi,functionName:"symbol"}),r.readContract({address:n,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]})]),[f,g,p,A]=s;return{token:n,manager:A,minIncentiveRate:_viem.formatUnits.call(void 0, f,d),incentiveRate:_viem.formatUnits.call(void 0, g,d),remainingAmount:_viem.formatUnits.call(void 0, p,d),symbol:u,decimals:d,pendingAmount:_berancersdk.isSameAddress.call(void 0, t,n)?_viem.formatUnits.call(void 0, m-i-p,d):_viem.formatUnits.call(void 0, m-p,d)}}));return l.forEach((n,s)=>{n.status==="rejected"&&_chunk2YBHAMDVcjs.g.captureException(new (0, _chunkNMH7LHPWcjs.f)({reason:n.reason,message:"Incorrect incentives token received.",level:"error",extra:{token:a[s],address:e,error:n.reason}}))}),l.map(n=>n.status==="fulfilled"?n.value:null).filter(n=>n!==null)}async function nu({address:e,publicClient:t}){return await t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"stakeToken"})}function wa(e){return e==="DAY"?_api3.GqlSWberaVaultMetadataResolution.OneDay:_api3.GqlSWberaVaultMetadataResolution.SevenDays}async function cu({window:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t),a=b("api",t);try{let o=await a.query({query:_api3.GetSWberaVaultMetadata,variables:{chain:r.bex.chainName,resolution:wa(_nullishCoalesce(e, () => ("DAY")))}}),{apr:i}=o.data.polGetSWberaVaultMetadata;return Number(i)}catch(o){throw console.error("Failed to get SW Bera APR",o),o}}async function gu({chain:e,range:t=_api3.GqlVaultSnapshotDataRange.ThirtyDays,...r}={}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),o=b("api",r);try{return(await o.query({query:_api3.GetSWberaVaultSnapshots,variables:{chain:_nullishCoalesce(e, () => (a.bex.chainName)),range:t}})).data.polGetSWberaVaultSnapshots}catch(i){throw console.error("Failed to get SW Bera Snapshots",i),i}}async function oe({publicClient:e,address:t}){let r=await e.readContract({address:t,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"WITHDRAWAL_COOLDOWN"});return Number(r)}async function vu({address:e,underlyingAsset:t,publicClient:r,blockTime:a}){_chunk2YBHAMDVcjs.c.call(void 0, r);let o=26;try{let i=await r.getBlock({blockTag:"latest"}),l=Math.floor(o*60*60/a),n=i.number-BigInt(l),[s,d,u,m,f,g,p,A,C,B,y]=await Promise.all([r.readContract({address:e,abi:_viem.erc4626Abi,functionName:"totalAssets"}),r.readContract({address:e,abi:_viem.erc4626Abi,functionName:"totalSupply"}),r.readContract({address:e,abi:_viem.erc4626Abi,functionName:"previewRedeem",args:[10n**18n],blockNumber:i.number}),r.readContract({address:t,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]}),r.readContract({address:e,abi:_viem.erc4626Abi,functionName:"totalAssets",blockNumber:n}),r.readContract({address:e,abi:_viem.erc20Abi,functionName:"totalSupply",blockNumber:n}),r.readContract({address:e,abi:_viem.erc4626Abi,functionName:"previewRedeem",args:[10n**18n],blockNumber:n}),r.readContract({address:t,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e],blockNumber:n}),r.readContract({address:t,abi:_viem.erc20Abi,functionName:"totalSupply"}),oe({publicClient:r,address:e}),Ct({})]),q=new (0, _chunkNVHV2LDKcjs.a)(p.toString()),N=new (0, _chunkNVHV2LDKcjs.a)(u.toString());return{address:e,current:{exchangeRate:N.toString(),totalSupply:new (0, _chunkNVHV2LDKcjs.a)(d.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _chunkNVHV2LDKcjs.a)(s.toString()).dividedBy(1e18).toString(),tvl:new (0, _chunkNVHV2LDKcjs.a)(m.toString()).dividedBy(1e18).toString()},previous:{exchangeRate:q.toString(),totalSupply:new (0, _chunkNVHV2LDKcjs.a)(g.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _chunkNVHV2LDKcjs.a)(f.toString()).dividedBy(1e18).toString(),tvl:new (0, _chunkNVHV2LDKcjs.a)(A.toString()).dividedBy(1e18).toString()},totalWBeraIssued:new (0, _chunkNVHV2LDKcjs.a)(C.toString()).dividedBy(1e18).toString(),lockPeriod:B,totalBuyBacks:y.sumAllClaims,totalBuyBacksInLast24Hours:y.sumClaimsInLast24Hours}}catch(i){throw console.error("Failed to get SW Bera Vault Metadata",i),i}}function vt(e){let t=Date.now(),r=e*1e3-t;if(r<=0)return;let a=_chunkNVHV2LDKcjs.l.call(void 0, r);return _chunkNVHV2LDKcjs.B.call(void 0, a,!0,!0)}async function xu({contractAddress:e,accountAddress:t,publicClient:r,version:a}){let o=[];function i(l,n){let[s,d,u]=l,m=s,f=Number(u)+Number(n),g=_chunkNVHV2LDKcjs.l.call(void 0, Date.now()),p=f-g;if(m>0){let A=vt(p<=0?0:f);o.push({receiptTokenAddress:e,withdrawalAmount:m,timeRemaining:A})}}switch(a){case"V1":{let[l,n]=await Promise.all([r.readContract({address:e,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"withdrawalRequests",args:[t]}),oe({publicClient:r,address:e})]);return i(l,n),o}case"V2":{let[l,n]=await Promise.all([r.readContract({address:e,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"getERC721WithdrawalRequestIds",args:[t]}),oe({publicClient:r,address:e})]);if(_chunk74WA35RIcjs.e.call(void 0, e,"SWBERA")){let u=await r.readContract({address:e,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"withdrawalRequests",args:[t]});i(u,n)}let d=(await Promise.all(l.map(async u=>{let m=await r.readContract({address:e,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"getERC721WithdrawalRequest",args:[u]}),{assets:f,requestTime:g}=m;if(!f||!g)throw new Error("Invalid withdrawal request");let p=f,A=Number(g)+Number(n),C=_chunkNVHV2LDKcjs.l.call(void 0, Date.now()),B=A-C;if(p>0){let y=vt(B<=0?0:A);return{withdrawalAmount:p,timeRemaining:y,withdrawalRequestId:u,receiptTokenAddress:e}}return null}))).filter(u=>u!==null);return o.push(...d),o}}}async function qu({vaultAddresses:e,publicClient:t}){_chunk2YBHAMDVcjs.c.call(void 0, t);try{let r=await Promise.all(e.map(async o=>await t.readContract({address:o,abi:_wberaStakerVault.wberaStakerVaultAbi,functionName:"totalAssets"})));return e.reduce((o,i,l)=>(o[i]=r[l],o),{})}catch(r){throw console.error("Failed to get total staked amount",r),r}}async function Wu({account:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t),a=await fetch(`${r.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/rewards/aggregation`,{cache:"no-store"});if(!a.ok){let o=await _chunkNVHV2LDKcjs.b.call(void 0, a);throw new (0, _chunkNMH7LHPWcjs.f)({message:"Failed to fetch incentives on server",cause:{error:o,result:a,account:e},reason:_optionalChain([o, 'optionalAccess', _87 => _87.error])})}return await a.json()}async function Rt({account:e,vaultAddress:t,publicClient:r}){if(!r)throw new Error("Missing public client");if(!e)throw new Error("Missing user account");if(!t)throw new Error("Missing vault address");return await r.readContract({address:t,abi:_rewardVault.rewardVaultAbi,functionName:"earned",args:[e]})}async function St({account:e,vaultAddress:t,publicClient:r}){_chunk2YBHAMDVcjs.c.call(void 0, r),_chunk2YBHAMDVcjs.d.call(void 0, e,"account"),_chunk2YBHAMDVcjs.d.call(void 0, t,"vaultAddress");try{let[a,o]=await Promise.all([r.readContract({address:t,abi:_rewardVault.rewardVaultAbi,functionName:"balanceOf",args:[e]}),r.readContract({address:t,abi:_rewardVault.rewardVaultAbi,functionName:"getTotalDelegateStaked",args:[e]})]);return{balance:a,delegated:o}}catch(a){throw console.log(a),a}}async function kt({vaultAddress:e,publicClient:t}){if(!t)throw new Error("Missing public client");if(!e)throw new Error("Missing vault address");try{return await t.readContract({address:e,abi:_rewardVault.rewardVaultAbi,functionName:"totalSupply",args:[]})}catch(r){throw console.log(r),r}}async function Zu({account:e,vaultAddress:t,publicClient:r}){let[a,o,i]=await Promise.all([St({account:e,vaultAddress:t,publicClient:r}),Rt({account:e,vaultAddress:t,publicClient:r}),kt({vaultAddress:t,publicClient:r})]),l=a.balance-a.delegated,n=i>0n?Number(Number.parseFloat(_viem.formatEther.call(void 0, a.balance))/Number.parseFloat(_viem.formatEther.call(void 0, i))).toString():"0";return{balance:a.balance,delegatedBalance:a.delegated,withdrawableBalance:l,rewards:_viem.formatEther.call(void 0, o),percentage:n}}async function lc({account:e,publicClient:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),l=await _asyncOptionalChain([(await b("api",r).query({query:_api3.GetUserVaults,variables:{userId:e,chain:a.bex.chainName}})), 'access', async _88 => _88.data, 'optionalAccess', async _89 => _89.userVaultDeposits, 'optionalAccess', async _90 => _90.deposits]);if(!l)return{totalBgtRewards:"0",vaults:[],totalStakedValue:0};let[n,s]=await Promise.all([t.multicall({allowFailure:!1,contracts:l.map(g=>({address:g.vaultAddress,abi:_rewardVault.rewardVaultAbi,functionName:"earned",args:[e]}))}),t.multicall({allowFailure:!1,contracts:l.map(g=>({address:g.vaultAddress,abi:_rewardVault.rewardVaultAbi,functionName:"balanceOf",args:[e]}))})]),{userVaults:d,total:u}=l.reduce((g,p,A)=>{let C=n[A],B=s[A];if(g.total+=C,!p.vault)return _chunk2YBHAMDVcjs.g.captureException(new (0, _chunkNMH7LHPWcjs.f)({message:"Deposit data from API is missing vault",level:"error",extra:{deposit:p}})),console.error("Deposit data from API is missing vault",p),g;if(C>0n||B>0n){let y=_optionalChain([p, 'access', _91 => _91.vault, 'access', _92 => _92.dynamicData, 'optionalAccess', _93 => _93.tvl])&&Number(p.vault.stakingTokenAmount)!==0?Number(_nullishCoalesce(_optionalChain([p, 'access', _94 => _94.vault, 'access', _95 => _95.dynamicData, 'optionalAccess', _96 => _96.tvl]), () => (0)))/Number(p.vault.stakingTokenAmount):null;g.userVaults.push({...p,vault:p.vault,unclaimedBgt:_viem.formatUnits.call(void 0, C,18),formattedBalance:_viem.formatUnits.call(void 0, B,p.vault.stakingToken.decimals),stakingTokenPrice:y})}return g},{userVaults:[],total:0n}),m=[...d].sort((g,p)=>{if(g.vault.isVaultWhitelisted&&!p.vault.isVaultWhitelisted)return-1;if(!g.vault.isVaultWhitelisted&&p.vault.isVaultWhitelisted)return 1;let A=Number.parseFloat(g.unclaimedBgt);return Number.parseFloat(p.unclaimedBgt)-A});return{totalStakedValue:m.reduce((g,p)=>{let A=Number(_nullishCoalesce(_optionalChain([p, 'access', _97 => _97.vault, 'access', _98 => _98.dynamicData, 'optionalAccess', _99 => _99.tvl]), () => (0)));if(A===0)return g;let C=Number.parseFloat(p.vault.stakingTokenAmount),B=A/C;return g+B*Number(p.formattedBalance)},0),totalBgtRewards:_viem.formatUnits.call(void 0, u,18),vaults:m}}async function pc({vault:e,chain:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);return(await b("api",r).query({query:_api3.GetVaultHistory,variables:{...r,vaultId:e,chain:_nullishCoalesce(t, () => (a.bex.chainName))}})).data.polGetRewardVaultSnapshots}async function yc({address:e,onlyActiveValidators:t,...r}){returnawait _asyncNullishCoalesce((await b("api",r).query({query:_api3.GetVaultValidators,variables:{vaultId:e,isActive:t}})).data.validators.validators, async () => ([]))}async function Rc({addressIn:e,...t}){let{config:r,chainId:a}=_chunk74WA35RIcjs.a.call(void 0, t),o=e.map(n=>n.toLowerCase()).filter((n,s,d)=>n&&d.indexOf(n)===s),i=b("api",t),{data:l}=await i.query({query:_api.GetTokenCurrentPrices,variables:{chains:[r.bex.chainName],addressIn:o}});return l.tokenGetCurrentPrices.reduce((n,s)=>{if(!s.price||!s.address)return n;let d=s.address;return n[_viem.getAddress.call(void 0, d)]={price:_chunkNVHV2LDKcjs.D.call(void 0, s.price.toString()),updatedAt:s.updatedAt,chainId:a},n[d.toLowerCase()]={price:_chunkNVHV2LDKcjs.D.call(void 0, s.price.toString()),updatedAt:s.updatedAt,chainId:a},_chunk74WA35RIcjs.e.call(void 0, d,"WBERA")&&(n[_viem.zeroAddress]={price:_chunkNVHV2LDKcjs.D.call(void 0, s.price.toString()),updatedAt:s.updatedAt,chainId:a},n[r.tokens.bgt.toLowerCase()]={price:_chunkNVHV2LDKcjs.D.call(void 0, s.price.toString()),updatedAt:s.updatedAt,chainId:a},n[r.tokens.bgt]={price:_chunkNVHV2LDKcjs.D.call(void 0, s.price.toString()),updatedAt:s.updatedAt,chainId:a}),n},{})}var _core = require('@wagmi/core');async function Gc({items:e,account:t,config:r}){_chunk2YBHAMDVcjs.b.call(void 0, e,"items"),_chunk2YBHAMDVcjs.b.call(void 0, r,"config"),_chunk2YBHAMDVcjs.b.call(void 0, t,"account");let a=Object.groupBy(e,i=>i.token.chainId);return(await Promise.allSettled(Object.entries(a).map(async([i,l])=>{if(!l)return[];let n=_core.getPublicClient.call(void 0, r,{chainId:Number(i)});return _chunk2YBHAMDVcjs.c.call(void 0, n,`publicClient ${i}`),(await n.multicall({contracts:l.map(u=>({address:u.token.address,abi:_viem.erc20Abi,functionName:"allowance",args:[t,u.spender]}))})).map((u,m)=>{let f=l[m];return u.error?void 0:{token:f.token,spender:f.spender,amount:f.amount,allowance:{raw:u.result.toString(),formatted:_viem.formatUnits.call(void 0, u.result,f.token.decimals)},needsApproval:u.result<BigInt(f.amount.raw)}}).filter(u=>!!u)}))).flatMap(i=>i.status==="fulfilled"?i.value:void 0).filter(i=>!!i)}async function Gt({publicClient:e,abi:t,...r}){let a=[..._chunkNMH7LHPWcjs.c,..._nullishCoalesce(t, () => ([]))],o,i,l,n,s,d,u;if("txHash"in r){let m=await e.getTransaction({hash:r.txHash});if(!m.to)throw new (0, _chunkNMH7LHPWcjs.h)({property:"tx",value:m,expected:"Transaction",message:"Trying to get revert reason for a contract creation"});s=m.input,i=m.to,l=m.from,n=m.value,o=m.blockNumber}else if(o=r.blockNumber,i=r.to,l=r.account,n=r.value,"data"in r)s=r.data;else if("functionName"in r&&"args"in r)d=r.functionName,u=r.args;else if(!n)throw new (0, _chunkNMH7LHPWcjs.h)({property:"dataOrFunctionNameAndArgs",value:r,expected:"Hex or FunctionName and Args"});try{if(!a)if(s)await e.call({data:s,to:i,account:l,blockNumber:o,value:n});else throw new Error("Data is required if abi is not provided");if("functionName"in r&&"args"in r&&r.functionName)d=r.functionName,u=r.args;else if(s){if(!a){let m=await e.call({data:s,to:i,account:l,blockNumber:o,value:n});throw new Error(`Getting revert reason for successful simulation. Data: ${s}`,{cause:m})}try{let m=_viem.decodeFunctionData.call(void 0, {abi:a,data:s});d=m.functionName,u=m.args}catch(m){throw m instanceof _viem.AbiFunctionSignatureNotFoundError&&await e.call({data:s,to:i,account:l,blockNumber:o,value:n}),new Error("Data is required if abi is not provided")}}else throw new Error("No data or function name and args provided");throw a&&d?(await e.simulateContract({functionName:d,args:u,abi:a,address:i,account:l,blockNumber:o}),new (0, _chunkDK42F2ZMcjs.c)({message:"Getting revert reason for successful simulation",functionName:d,to:i,txHash:"txHash"in r?r.txHash:void 0,input:r})):new Error("No data or function name and args provided")}catch(m){if(m instanceof Error)return _chunkNMH7LHPWcjs.e.call(void 0, {error:m,abi:a,revertIfUnknown:!0});throw m}}var $a=_chunkNVHV2LDKcjs.m.call(void 0, 1),xt=(e,t)=>e*(100n+BigInt(t))/100n;function Ee({nonceResult:e,onWarning:t}){if(e.status==="fulfilled"){if(e.value&&e.value>Number.MAX_SAFE_INTEGER){_optionalChain([t, 'optionalCall', _100 => _100(new (0, _chunkNMH7LHPWcjs.f)({message:"Nonce is too large. No nonce will be provided to avoid IntegerOutOfRangeError.",cause:e.value,level:"debug"}))]);return}return e.value}}function ja(e=_internal.defaultChainId){return e===_internal.ChainId.BEPOLIA?process.env.NEXT_PUBLIC_80069_ANVIL_IMPERSONATE_ACCOUNT==="true":process.env.NEXT_PUBLIC_80094_ANVIL_IMPERSONATE_ACCOUNT==="true"}async function Xc(e){if(process.env.NODE_ENV==="development"&&!e.contractName&&e.address&&!("calls"in e||e.calls))throw console.warn("beraWriteContract: Contract name is required. Either update the contract mapping in devrel or provide a contract name in ContractName enum","This is a development error and will be thrown in development mode only."),new (0, _chunkNMH7LHPWcjs.h)({property:"contractName",value:e.contractName,expected:"ContractName",displayMessage:`[DEV] Contract name is required as it's not mapped in the devrel's contract mapping ${e.address}`,level:"error"});let{address:t,calls:r,value:a,gasLimit:o,onLoading:i,onSuccess:l,onWarning:n,onError:s,onSubmission:d,wagmiConfig:u,walletClient:m,account:f,txConfirmationTimeout:g=12e4,chainId:p=_internal.defaultChainId,impersonateAccount:A=ja(p),errorsAbi:C=[],pollingInterval:B=$a,...y}=e;_optionalChain([i, 'optionalCall', _101 => _101(e)]);let q="data"in y?y.data:void 0,N=[..._chunkNMH7LHPWcjs.c,...C,..."abi"in y&&y.abi&&Array.isArray(y.abi)?y.abi:[]],T=m;if(!u){_optionalChain([s, 'optionalCall', _102 => _102(new (0, _chunkNMH7LHPWcjs.h)({property:"wagmiConfig",value:u,expected:"Config"}),e)]);return}if(!(_optionalChain([T, 'optionalAccess', _103 => _103.account, 'optionalAccess', _104 => _104.type])==="local"))try{await _core.switchChain.call(void 0, u,{chainId:p})}catch(R){let G=R;_optionalChain([s, 'optionalCall', _105 => _105(new (0, _chunkNMH7LHPWcjs.f)({cause:G,displayMessage:"There was an error switching to the chain."}),e)]);return}if(!T)try{T=await _core.getWalletClient.call(void 0, u,{chainId:p})}catch(R){_optionalChain([s, 'optionalCall', _106 => _106(new (0, _chunkNMH7LHPWcjs.f)({cause:R,displayMessage:"There was an error connecting to the wallet."}),e)]);return}if(!T){_optionalChain([s, 'optionalCall', _107 => _107(new (0, _chunkNMH7LHPWcjs.h)({displayMessage:"There was an error connecting to the wallet.",property:"walletClient",value:T,expected:"WalletClient"}),e)]);return}let I=f||T.account;if(!I){_optionalChain([s, 'optionalCall', _108 => _108(new (0, _chunkNMH7LHPWcjs.h)({property:"account",value:I,expected:"Account"}),e)]);return}let ie=typeof I=="string"?I:I.address,W=_core.getPublicClient.call(void 0, u,{chainId:p});try{_chunk2YBHAMDVcjs.c.call(void 0, W)}catch(R){_optionalChain([s, 'optionalCall', _109 => _109(R,e)]);return}if(A){let R=_chunkNVHV2LDKcjs.F.call(void 0, p);await R.impersonateAccount({address:ie}),T=_viem.createWalletClient.call(void 0, {transport:_viem.http.call(void 0, R.transport.url),account:I,chain:T.chain})}let E,Z={calls:"calls"in y?y.calls:void 0,params:"params"in y?y.params:void 0,value:a,data:"data"in y?y.data:void 0};try{let R=W.getTransactionCount({address:ie,blockTag:"latest"}).catch(()=>{}),G={account:ie,to:t,address:t,chainId:p,value:a};if(r){let F=r.map(h=>{if("abi"in h&&Array.isArray(N)&&N.push(...h.abi),"data"in h)return{to:h.address,data:h.data,value:_nullishCoalesce(h.value, () => (0n))};if("abi"in h&&"functionName"in h){let L="params"in h?h.params:void 0;return{to:h.address,abi:h.abi,functionName:h.functionName,args:L,value:_nullishCoalesce(h.value, () => (0n))}}return{to:h.address,value:_nullishCoalesce(h.value, () => (0n))}});if(e.enableSimulateCalls){let h=await W.simulateCalls({calls:F,account:I}),L=h.results.findIndex(O=>O.status==="failure");if(L!==-1){if(h.block.number===null)throw new (0, _chunkNMH7LHPWcjs.h)({property:"blockNumber",value:h.block.number,expected:"bigint",message:"Block number is null"});let O=h.results[L],{reason:he}=O.data&&O.data!=="0x"?{reason:_chunkNMH7LHPWcjs.d.call(void 0, _viem.decodeErrorResult.call(void 0, {data:O.data,abi:N}))}:_chunkNMH7LHPWcjs.e.call(void 0, {error:O.error,revertIfUnknown:!1,abi:N});_optionalChain([s, 'optionalCall', _110 => _110(new (0, _chunkDK42F2ZMcjs.c)({cause:O.error,txHash:E,chainId:p,reason:he,abi:N,input:Z,blockNumber:h.block.number}),e)]);return}}if(process.env.NODE_ENV==="test")throw new (0, _chunkNMH7LHPWcjs.h)({displayMessage:"Batch calls are not supported in test environment",expected:"not test",property:"NODE_ENV",value:process.env.NODE_ENV,level:"fatal"});let Q=await T.sendCalls({calls:F,account:I,forceAtomic:!0});_optionalChain([d, 'optionalCall', _111 => _111({id:Q.id},e)]);let U=await T.waitForCallsStatus({id:Q.id,pollingInterval:B,timeout:g});if(U.status==="success"){let h=_optionalChain([U, 'access', _112 => _112.receipts, 'optionalAccess', _113 => _113[0]]);if(!h)throw new (0, _chunkNMH7LHPWcjs.f)({message:"Call status is success but no receipt was found",cause:U,level:"error",reason:"CALL_STATUS_SUCCESS_BUT_NO_RECEIPT"});return _optionalChain([l, 'optionalCall', _114 => _114(h,e)]),h}throw console.error("wallet_sendCalls: Call failed",U),new (0, _chunkDK42F2ZMcjs.c)({cause:U,level:"error",input:Z,txHash:E,abi:N,chainId:p})}if(q){let[F,Q,U]=await Promise.allSettled([W.call({...G,data:q}),_nullishCoalesce(o, () => (W.estimateGas({...G,data:q}))),R]);if(F.status==="rejected")throw F.reason;let h=Q.status==="fulfilled"?xt(Q.value,10):_chunkNVHV2LDKcjs.j;E=await T.sendTransaction({data:q,to:t,account:I,gas:h,chainId:p,nonce:Ee({nonceResult:U,onWarning(L){_optionalChain([n, 'optionalCall', _115 => _115(L,e)])}}),value:a}),_optionalChain([d, 'optionalCall', _116 => _116({txHash:E},e)])}else if("abi"in y&&"functionName"in y){let{abi:F,functionName:Q}=y,U="params"in y?y.params:void 0,[h,L,O]=await Promise.allSettled([W.simulateContract({...G,abi:N,functionName:Q,args:U,account:I}),_nullishCoalesce(o, () => (W.estimateContractGas({...G,abi:N,functionName:Q,args:U}))),R]);if(h.status==="rejected")throw h.reason;let he=_nullishCoalesce(o, () => ((L.status==="fulfilled"?xt(L.value,10):_chunkNVHV2LDKcjs.j)));E=await T.writeContract({...h.value.request,chainId:p,gas:he,nonce:Ee({nonceResult:O,onWarning(Qt){_optionalChain([n, 'optionalCall', _117 => _117(Qt,e)])}})}),_optionalChain([d, 'optionalCall', _118 => _118({txHash:E},e)])}else{let[F]=await Promise.allSettled([R]);E=await T.sendTransaction({chainId:p,to:t,value:a,account:I,nonce:Ee({nonceResult:F,onWarning(Q){_optionalChain([n, 'optionalCall', _119 => _119(Q,e)])}})}),_optionalChain([d, 'optionalCall', _120 => _120({txHash:E},e)])}process.env.NODE_ENV==="test"&&await _chunkNVHV2LDKcjs.F.call(void 0, p).mine({blocks:1});let J=await W.waitForTransactionReceipt({hash:E,pollingInterval:B,timeout:g,confirmations:1});if(J.status==="success")_optionalChain([l, 'optionalCall', _121 => _121(J,e)]);else{let F=await Gt({publicClient:W,blockNumber:J.blockNumber,to:t,account:ie,abi:N,args:"params"in y?y.params:void 0,functionName:"functionName"in y?y.functionName:void 0,value:a,data:q});process.env.NODE_ENV==="test"&&console.error("beraWriteContract: Revert reason",F),_optionalChain([s, 'optionalCall', _122 => _122(new (0, _chunkDK42F2ZMcjs.c)({reason:F.reason,txHash:E,receipt:J,to:t,functionName:"functionName"in y?y.functionName:void 0,input:Z,chainId:p,abi:N,blockNumber:J.blockNumber}),e)])}return J}catch(R){if(R instanceof _chunkNMH7LHPWcjs.f)_optionalChain([s, 'optionalCall', _123 => _123(R,e)]);else if(R instanceof Error){let G=_chunkNMH7LHPWcjs.e.call(void 0, {error:R,revertIfUnknown:!1,abi:N});if(G&&G.rootCause instanceof _viem.BaseError&&"url"in G.rootCause){_optionalChain([s, 'optionalCall', _124 => _124(new (0, _chunkNMH7LHPWcjs.g)({cause:G.rootCause,response:void 0,endpoint:{url:G.rootCause.url,type:"rpc"},statusCode:G.rootCause instanceof _viem.HttpRequestError?G.rootCause.status:void 0}),e)]);return}_optionalChain([s, 'optionalCall', _125 => _125(new (0, _chunkDK42F2ZMcjs.c)({cause:R,to:t,txHash:E,chainId:p,abi:N,functionName:"functionName"in y?y.functionName:void 0,input:Z}),e)])}else _optionalChain([s, 'optionalCall', _126 => _126(new (0, _chunkDK42F2ZMcjs.c)({cause:R,txHash:E,to:t,chainId:p,functionName:"functionName"in y?y.functionName:void 0,input:Z,abi:N}),e)])}}async function Et({variables:e={},...t}={}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);return(await b("api",t).query({query:_api3.GetValidators,variables:{chain:r.bex.chainName,...e}})).data}async function id({allocation:e}){let t=await ge({filter:{where:{vaultAddressIn:e.weights.map(a=>a.receiver)}}}),r=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _127 => _127.start, 'access', _128 => _128.blockNumber]), () => (0));return _optionalChain([e, 'optionalAccess', _129 => _129.weights, 'access', _130 => _130.map, 'call', _131 => _131(a=>({percentage:a.percentage,receiver:a.receiver,startBlock:r,receivingVault:_optionalChain([t, 'optionalAccess', _132 => _132.gaugeList, 'access', _133 => _133.find, 'call', _134 => _134(o=>_viem.isAddressEqual.call(void 0, o.address,a.receiver))])}))])}async function dd({id:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);return(await b("api",t).query({query:_api3.GetValidator,variables:{id:e,chain:r.bex.chainName}})).data}var _subgraph = require('@berachain/graphql/pol/subgraph');async function gd({pubKey:e,first:t=1,...r}){let a=b("pol.subgraph",r);try{return(await a.query({query:_subgraph.GetValidatorBlockStats,variables:{pubKey:e,first:t}})).data}catch(o){throw console.error("GetValidatorBlockStats:",o),o}}var _beraChef = require('@berachain/abis/pol/rewards/beraChef');function X(e,t){return{start:{blockNumber:Number(e.startBlock),timestamp:e.startBlock!==0n?t:0},weights:e.weights.map(r=>({receiver:r.receiver,percentage:Number(r.percentageNumerator)/1e4}))}}function Za(e,t){return e.start.blockNumber===t.start.blockNumber&&e.weights.every((r,a)=>r.percentage===t.weights[a].percentage)}async function hd({client:e,pubKey:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);try{let[o,i]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getActiveRewardAllocation",args:[t]}),e.readContract({address:a.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getSetActiveRewardAllocation",args:[t]})]),[l,n]=await Promise.all([o.startBlock!==0n?e.getBlock({blockNumber:BigInt(o.startBlock)}):{timestamp:0},i.startBlock!==0n?e.getBlock({blockNumber:BigInt(i.startBlock)}):{timestamp:0}]),s=X(o,Number(l.timestamp)),d=X(i,Number(n.timestamp)),u=!1;return d.start.blockNumber===0?u=!0:u=!Za(d,s),{activeRewardAllocation:s,setRewardAllocation:d,isBaseline:u,isNeverSet:_optionalChain([d, 'optionalAccess', _135 => _135.start, 'access', _136 => _136.blockNumber])===0}}catch(o){throw console.log("getValidatorRewardAllocation:",o),o}}function vd(e){return e.start.blockNumber===0}async function Rd({client:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t),a=await e.readContract({address:r.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getDefaultRewardAllocation",args:[]});return X({...a,startBlock:0n},0)}async function Sd({client:e,valPubKey:t}){return 5614}async function qt({account:e,pubkey:t,publicClient:r,...a}){let{config:o}=_chunk74WA35RIcjs.a.call(void 0, a);if(!e)throw new Error("account is required");if(!r)throw new Error("publicClient is required");let[i,l,n]=await Promise.all([r.readContract({address:o.tokens.bgt,abi:_bgt.bgtAbi,functionName:"boosted",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_bgt.bgtAbi,functionName:"boostedQueue",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_bgt.bgtAbi,functionName:"dropBoostQueue",args:[e,t]})]),s=i-n[1];return{pubkey:t,droppableBoostAmount:_viem.formatEther.call(void 0, s),activeBoostAmount:_viem.formatEther.call(void 0, i),queuedBoostAmount:_viem.formatEther.call(void 0, l[1]),queuedDropBoostAmount:_viem.formatEther.call(void 0, n[1]),queuedBoostStartBlock:l[0],queuedDropBoostStartBlock:n[0],hasPendingBoosts:l[1]>0n||n[1]>0n,hasActiveBoosts:i>0n,hasDroppableBoosts:s>0n}}async function It({account:e,...t}){let{config:r}=_chunk74WA35RIcjs.a.call(void 0, t);return await b("api",t).query({query:_api3.GetUserValidatorInformation,variables:{address:e.toLowerCase(),chain:r.bex.chainName}})}async function Od({account:e,publicClient:t,chain:r,...a}){let{config:o}=_chunk74WA35RIcjs.a.call(void 0, a),i=_nullishCoalesce(r, () => (o.bex.chainName)),l=await It({account:e}),[n,s]=await Promise.all([Et({variables:{chain:i,where:{idIn:l.data.polGetValidatorBoosts.boosts.map(d=>d.validatorId)}}}),Promise.all(l.data.polGetValidatorBoosts.boosts.filter(d=>!!d.validator).map(d=>qt({account:e,pubkey:d.validator.pubkey,publicClient:t})))]);return _optionalChain([n, 'optionalAccess', _137 => _137.validators, 'access', _138 => _138.validators, 'access', _139 => _139.map, 'call', _140 => _140(d=>{let u=s.find(f=>f.pubkey.toLowerCase()===d.pubkey.toLowerCase());if(!u)throw new Error("User deposited not found");let m=_viem.parseEther.call(void 0, _nullishCoalesce(_optionalChain([u, 'optionalAccess', _141 => _141.activeBoostAmount]), () => ("0")))-_viem.parseEther.call(void 0, _optionalChain([u, 'optionalAccess', _142 => _142.queuedDropBoostAmount]));return{...d,userBoosts:{pubkey:u.pubkey,activeBoostAmount:_optionalChain([u, 'optionalAccess', _143 => _143.activeBoostAmount]),queuedBoostAmount:_optionalChain([u, 'optionalAccess', _144 => _144.queuedBoostAmount]),queuedBoostStartBlock:Number(_optionalChain([u, 'optionalAccess', _145 => _145.queuedBoostStartBlock])),queuedDropBoostAmount:_optionalChain([u, 'optionalAccess', _146 => _146.queuedDropBoostAmount]),queuedDropBoostStartBlock:Number(_optionalChain([u, 'optionalAccess', _147 => _147.queuedDropBoostStartBlock])),droppableBoostAmount:_viem.formatEther.call(void 0, m),hasPendingBoosts:Number(_optionalChain([u, 'optionalAccess', _148 => _148.queuedBoostAmount]))>0||Number(_optionalChain([u, 'optionalAccess', _149 => _149.queuedDropBoostAmount]))>0,hasActiveBoosts:Number(_optionalChain([u, 'optionalAccess', _150 => _150.activeBoostAmount]))>0,hasDroppableBoosts:m>0n}}})])}var ao=[{validatorAddress:"0x8f51e63d9921a461be29e73dca1c2385e1adc5943fbb36ded4ba96025ee8a783184d1118da08171f6ea831153c878a6d",earning:.045,staked:{amount:16114000000000000000n,formattedAmount:"161.14"},rewards:{amount:15214000000000000000n,formattedAmount:"152.14"}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0x97b21253b17f4e814fe7505c15c18e68c85ab2477274ad370a762df50e3eb4cb1a48451e089bc22e158d7448549a8ab9",earning:.045,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:16159000000000000000n,formattedAmount:"161.59"}],unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-72e6)}]}},{staked:{amount:241514000000000000000n,formattedAmount:"2415.14"},validatorAddress:"0xa4e4b63514f54d61da5197359f11ff1fc2930788ba2ffdd30c2fc059cbe0221020197bf9446b16ac347f36c7517a8686",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:1159000000000000000n,formattedAmount:"11.59",timestamp:_chunkNVHV2LDKcjs.l.call(void 0, Date.now()-36e6)}]}},{validatorAddress:"0xb0511ec039591e98bd4e183ba70b85572214a7ad8ca1a43e96ad3495d3821054927bc542e5482ec9733e35b7ef0b1f03",earning:.045,staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:1159000000000000000n,formattedAmount:"11.59"}]}}];async function _d(e){return await new Promise(t=>setTimeout(t,2e3)),e==="0x4C368fFE3650379d6318C8d4630bc51f8Ad12bB6"?ao:[]}async function Yd({pubkey:e,dayRange:t,...r}){return(await b("pol.subgraph",r).query({query:_subgraph.GetValidatorAnalytics,variables:{pubKey:e,timestamp:_chunkNVHV2LDKcjs.z.call(void 0, t).toString()}})).data}async function em({client:e,pubKey:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getValCommissionOnIncentiveTokens",args:[t]});return Number(_nullishCoalesce(o, () => (0n)))/1e4}var am=(e,t,r)=>{if(!t||!e)return 0;let a=_chunkNVHV2LDKcjs.y.call(void 0, 1)/r;return(t?a*(Number(_optionalChain([e, 'access', _151 => _151.dynamicData, 'optionalAccess', _152 => _152.stakedBeraAmount]))/t):0)*Number.parseFloat(_nullishCoalesce(_optionalChain([e, 'access', _153 => _153.dynamicData, 'optionalAccess', _154 => _154.rewardRate]), () => ("0")))};var _beaconDeposit = require('@berachain/abis/pol/beaconDeposit');async function sm({client:e,pubKey:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_beaconDeposit.beaconDepositAbi,functionName:"getOperator",args:[t]})}catch(o){throw console.log("getValidatorOperatorAddress:",o),o}}async function dm({client:e,pubKey:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getValQueuedCommissionOnIncentiveTokens",args:[t]});return{blockNumberLast:o.blockNumberLast,commissionRate:Number(o.commissionRate)/1e4}}async function gm({client:e,pubKey:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_beaconDeposit.beaconDepositAbi,functionName:"queuedOperator",args:[t]})}catch(o){throw console.log("getValidatorQueuedOperatorAddress:",o),o}}async function wm({client:e,pubKey:t,...r}){let{config:a}=_chunk74WA35RIcjs.a.call(void 0, r);try{let o=await e.readContract({address:a.pol.beraChef,abi:_beraChef.beraChefAbi,functionName:"getQueuedRewardAllocation",args:[t]});return X(o,0)}catch(o){throw console.log("getValidatorQueuedRewardAllocation:",o),o}}exports.a = fo; exports.b = de; exports.c = b; exports.d = _client.gql; exports.e = Ye; exports.f = _berancersdk.BalancerApi; exports.g = Zo; exports.h = on; exports.i = cn; exports.j = Xe; exports.k = Cn; exports.l = Vn; exports.m = Tn; exports.n = Y; exports.o = Dn; exports.p = pe; exports.q = On; exports.r = _n; exports.s = Yn; exports.t = nt; exports.u = ni; exports.v = ui; exports.w = pi; exports.x = yi; exports.y = it; exports.z = Ve; exports.A = lt; exports.B = _i; exports.C = Ki; exports.D = Mr; exports.E = es; exports.F = is; exports.G = ft; exports.H = bs; exports.I = gt; exports.J = Ns; exports.K = qs; exports.L = Us; exports.M = ta; exports.N = Hs; exports.O = $s; exports.P = zs; exports.Q = ge; exports.R = Vl; exports.S = Ct; exports.T = El; exports.U = Ql; exports.V = Ml; exports.W = Kl; exports.X = ru; exports.Y = nu; exports.Z = cu; exports._ = gu; exports.$ = oe; exports.aa = vu; exports.ba = xu; exports.ca = qu; exports.da = Wu; exports.ea = Rt; exports.fa = Zu; exports.ga = lc; exports.ha = pc; exports.ia = yc; exports.ja = Rc; exports.ka = Gc; exports.la = ja; exports.ma = Xc; exports.na = Et; exports.oa = id; exports.pa = dd; exports.qa = gd; exports.ra = X; exports.sa = Za; exports.ta = hd; exports.ua = vd; exports.va = Rd; exports.wa = Sd; exports.xa = qt; exports.ya = Od; exports.za = _d; exports.Aa = Yd; exports.Ba = em; exports.Ca = am; exports.Da = sm; exports.Ea = dm; exports.Fa = gm; exports.Ga = wm;
4
+ //# sourceMappingURL=chunk-HWOGQSNL.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/snowbera/Documents/workspace/monobera/packages/berajs/dist/chunk-HWOGQSNL.cjs","../src/actions/bend/getConvertToAssets.ts","../src/actions/clients/BeraApolloClient.ts","../src/actions/governance/parseProposalBody.ts","../src/actions/governance/getProposalFromTx.ts"],"names":["getConvertToAssets","sharesAmount","vaultAddress","publicClient","convertToAssets","metaMorphoAbi","formatEther","BeraApolloClient","ApolloClient","options","queryName","getQueryName","endpoint","tags","executeQuery","res","BeraTracing"],"mappings":"AAAA,q+CAAyC,wDAAyD,wDAAsE,wDAAuJ,wDAAgE,wDAA+E,4BCAjZ,8EAEX,MAQlD,SAAsBA,EAAAA,CAAmB,CACvC,YAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CACF,CAAA,CAAyE,CACvE,IAAMC,CAAAA,CAAkB,MAAMD,CAAAA,CAAa,YAAA,CAAa,CACtD,OAAA,CAASD,CAAAA,CACT,GAAA,CAAKG,+BAAAA,CACL,YAAA,CAAc,iBAAA,CACd,IAAA,CAAM,CAACJ,CAAY,CACrB,CAAC,CAAA,CACD,MAAO,CAAE,GAAA,CAAKG,CAAAA,CAAiB,SAAA,CAAWE,+BAAAA,CAA2B,CAAE,CACzE,CCtBA,wCAMO,sDAEmB,IAYbC,EAAAA,CAAN,MAAA,QAA+BC,oBAAa,CAIvC,WAEV,CACEC,CAAAA,CAMA,CACA,KAAA,CAAMA,CAAO,CAAA,CACb,IAAA,CAAK,GAAA,CAAMA,CAAAA,CAAQ,GACrB,CAEA,MAAM,KAAA,CAKJA,CAAAA,CAIC,CACD,IAAMC,CAAAA,CAAYC,EAAAA,CAAaF,CAAAA,CAAQ,KAAK,CAAA,CACtCG,CAAAA,CAAW,CACf,GAAA,CAAK,IAAA,CAAK,GAAA,CACV,IAAA,CAAM,SACR,CAAA,CAEMC,CAAAA,CAAO,CACX,gBAAA,CAAkB,OAAA,CAClB,sBAAA,CAAwBD,CAAAA,CAAS,GAAA,CACjC,uBAAA,CAAyBA,CAAAA,CAAS,IAAA,CAClC,4BAAA,CAA8BF,CAChC,CAAA,CAEA,GAAI,CACF,IAAMI,CAAAA,CAAe,CAAA,CAAA,EACnB,KAAA,CAAM,KAAA,CACJL,CACF,CAAA,CAEIM,CAAAA,CAAM,MAAMC,mBAAAA,CAAY,SAAA,CAC5B,CACE,IAAA,CAAM,CAAA,QAAA,EAAWN,CAAS,CAAA,CAAA;ACNQ;ACyBxC","file":"/Users/snowbera/Documents/workspace/monobera/packages/berajs/dist/chunk-HWOGQSNL.cjs","sourcesContent":[null,"import { type Address, formatEther, type PublicClient } from \"viem\";\n\nimport { metaMorphoV11Abi as metaMorphoAbi } from \"@berachain/abis/bend-metamorpho/metaMorphoV11\";\n\nexport interface GetConvertToAssetsProps {\n sharesAmount: bigint;\n vaultAddress: Address;\n publicClient: PublicClient;\n}\n\nexport async function getConvertToAssets({\n sharesAmount,\n vaultAddress,\n publicClient,\n}: GetConvertToAssetsProps): Promise<{ raw: bigint; formatted: string }> {\n const convertToAssets = await publicClient.readContract({\n address: vaultAddress,\n abi: metaMorphoAbi,\n functionName: \"convertToAssets\",\n args: [sharesAmount],\n });\n return { raw: convertToAssets, formatted: formatEther(convertToAssets) };\n}\n","import {\n ApolloClient,\n type DocumentNode,\n type ErrorLike,\n type OperationVariables,\n ServerError,\n} from \"@apollo/client\";\n\nimport { appConfig } from \"@berachain/config/internal\";\n\nimport { BeraError } from \"../../errors/BeraError\";\nimport { BeraTracing } from \"../../errors/BeraTracing\";\nimport { RequestError } from \"../../errors/RequestError\";\n\n/**\n * This is a wrapper around the ApolloClient that throws a BeraError if the query returns an error or no data.\n *\n * It's mostly a typescript helper that keeps data always defined since we use errorPolicy: \"none\" by default.\n * Such setting will throw an error if the query returns an error, rather than returning an object with undefined data and an error property.\n */\nexport class BeraApolloClient extends ApolloClient {\n /**\n * The URL of the endpoint. Used for error reporting only.\n */\n protected url: string;\n\n constructor(\n options: ApolloClient.Options & {\n /**\n * The URL of the endpoint. Used for error reporting only.\n */\n url: string;\n },\n ) {\n super(options);\n this.url = options.url;\n }\n\n async query<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n >(\n // We handle errors in our custom logic so we don't need to pass errorPolicy here\n options: Omit<ApolloClient.QueryOptions<TData, TVariables>, \"errorPolicy\">,\n ): Promise<{\n // Only data is returned and we're sure it's not undefined due to errorPolicy\n data: TData;\n }> {\n const queryName = getQueryName(options.query);\n const endpoint = {\n url: this.url,\n type: \"graphql\",\n } as const;\n\n const tags = {\n \"operation.type\": \"query\",\n \"operation.source.url\": endpoint.url,\n \"operation.source.type\": endpoint.type,\n \"operation.source.queryName\": queryName,\n };\n\n try {\n const executeQuery = () =>\n super.query<TData, TVariables>(\n options as ApolloClient.QueryOptions<TData, TVariables>,\n );\n\n const res = await BeraTracing.startSpan(\n {\n name: `GraphQL ${queryName}`,\n op: \"BeraApolloClient.query\",\n attributes: tags,\n },\n executeQuery,\n );\n\n if (res.error || res.data === undefined) {\n throw new BeraError({\n level: \"fatal\",\n tags,\n message:\n \"Bera Apollo Client: No data returned from query, but error should be thrown since errorPolicy is none\",\n });\n }\n\n return { data: res.data } as const;\n } catch (error) {\n !appConfig.env.isProduction &&\n console.error(\"BeraApolloClient error\", error);\n\n if (ServerError.is(error)) {\n throw new RequestError({\n // reason: error,\n response: error.response,\n cause: error,\n statusCode: error.statusCode,\n endpoint,\n tags,\n });\n }\n if (error instanceof TypeError) {\n throw new RequestError({\n level: \"fatal\",\n reason: \"TypeError\",\n response: error,\n cause: error,\n endpoint,\n tags,\n });\n }\n throw new RequestError({\n response: error as ErrorLike,\n tags,\n cause: error,\n endpoint,\n });\n }\n }\n}\n\nfunction getQueryName(queryDefinition: DocumentNode) {\n const likelyNode = queryDefinition.definitions.find(\n (def) => def.kind === (\"OperationDefinition\" as const),\n );\n\n return likelyNode?.name?.value;\n}\n","import graymatter from \"gray-matter\";\n\nimport type { ProposalSelectionFragment } from \"@berachain/graphql/governance\";\n\nconst parseLegacyBody = (\n s: string,\n): { type: string | null; title: string; content: string } => {\n const pattern = /#(?:([\\w-]+)# )?(.+)\\n([\\s\\S]*)/;\n const match = s.match(pattern);\n\n if (match) {\n const type = match[1] || null;\n const title = match[2];\n const content = match[3].replace(\"\\n\", \"<br />\");\n return {\n type,\n title,\n content,\n };\n }\n\n throw new Error(\"Invalid proposal body\");\n};\n\nexport const parseProposalBody = (\n proposal?: Pick<ProposalSelectionFragment, \"description\">,\n): graymatter.GrayMatterFile<string> & {\n isFrontMatter: boolean;\n} => {\n if (!proposal) {\n return {\n isFrontMatter: false,\n data: { title: \"Loading...\" },\n content: \"\",\n matter: \"\",\n language: \"\",\n orig: \"\",\n stringify: () => \"\",\n };\n }\n\n const body = proposal?.description ?? \"\";\n\n if (graymatter.test(body)) {\n return { ...graymatter(body), isFrontMatter: true };\n }\n\n try {\n const legacyBody = parseLegacyBody(body);\n\n return {\n isFrontMatter: false,\n data: { title: legacyBody.title },\n content: legacyBody.content,\n matter: \"\",\n language: \"\",\n orig: body,\n stringify: () => body,\n };\n } catch {\n return {\n isFrontMatter: false,\n data: {\n title: proposal?.description?.split(\"\\n\")[0].slice(0, 100),\n },\n content: body,\n matter: \"\",\n language: \"\",\n orig: body,\n stringify: () => body,\n };\n }\n};\n","import {\n type Address,\n type PublicClient,\n parseEventLogs,\n type TransactionReceipt,\n} from \"viem\";\n\nimport { berachainGovernanceAbi as governanceAbi } from \"@berachain/abis/gov/berachainGovernance\";\n\nimport {\n type ExecutableCallSubsetFragment,\n ProposalStatus,\n type ProposalWithVotesFragment,\n} from \"@berachain/graphql/governance\";\n\nimport { assertPublicClient } from \"../../errors/assert\";\nimport { parseProposalBody } from \"./parseProposalBody\";\n\nexport async function getProposalFromTx(\n args: {\n publicClient: PublicClient | undefined;\n } & (\n | {\n tx: TransactionReceipt;\n }\n | {\n txHash: Address;\n }\n ),\n): Promise<ProposalWithVotesFragment | null> {\n assertPublicClient(args.publicClient);\n\n let tx: TransactionReceipt;\n\n if (\"tx\" in args) {\n tx = args.tx;\n } else {\n tx = await args.publicClient.getTransactionReceipt({ hash: args.txHash });\n }\n\n const creationEvent = tx?.logs\n ? parseEventLogs({\n abi: governanceAbi,\n logs: tx.logs,\n eventName: \"ProposalCreated\",\n })?.at(0)\n : undefined;\n\n if (!tx || !creationEvent) {\n return null;\n }\n\n const block = await args.publicClient.getBlock({\n blockNumber: tx.blockNumber,\n });\n const fm = parseProposalBody({\n description: creationEvent?.args.description as string,\n });\n\n return {\n id: String(creationEvent.args.proposalId),\n proposalId: String(creationEvent?.args.proposalId),\n createdAt: block.timestamp.toString(),\n title: fm.data.title,\n createdAtBlock: block.timestamp.toString(),\n voteStartAt: String(creationEvent?.args.voteStart),\n voteEndAt: String(creationEvent?.args.voteEnd),\n proposer: creationEvent?.args.proposer,\n description: fm.content,\n unverifiedForumLink: fm.data.forumLink,\n pollResult: {\n for: \"0\",\n forVotersCount: 0,\n forPercentage: \"0\",\n against: \"0\",\n againstVotersCount: 0,\n againstPercentage: \"0\",\n abstain: \"0\",\n abstainVotersCount: 0,\n abstainPercentage: \"0\",\n total: \"0\",\n totalVotersCount: 0,\n totalTowardsQuorum: \"0\",\n },\n status: ProposalStatus.Pending,\n quorum: null,\n topics: fm.data.topics,\n votes: [],\n executableCalls: creationEvent?.args.targets.map(\n (target, index) =>\n ({\n __typename: \"ExecutableCall\",\n id: `${tx.transactionHash}-${index}`,\n target: target as Address,\n value: String(creationEvent?.args.values[index]),\n calldata: creationEvent?.args.calldatas[index],\n }) satisfies ExecutableCallSubsetFragment,\n ),\n timelock: undefined,\n } satisfies ProposalWithVotesFragment;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var L=(O=>(O.ENSO_ROUTER="enso.router",O.POL_REWARD_VAULT="pol.rewardVault",O.BEX_POOL="bex.pool",O.ERC20="others.erc20",O.ERC4626="others.erc4626",O.POL_STAKE_VAULT="pol.stakeVault",O.BEX_EXPLOITED_FUND_DISTRIBUTOR="bex.exploitedFundDistributor",O.TW_MINIMAL_ACCOUNT="thirdweb.minimalAccount",O))(L||{});var U=(D=>(D.Governance="Governance",D.Fixed="Fixed",D.Custom="Custom",D))(U||{}),I= exports.c =(C=>(C.USDBACKED="USD-Backed Stablecoin",C.ALGORITHMIC="Algorithmic Stablecoin",C))(I||{}),S= exports.d =(N=>(N.POOL_TYPE="Pool Type",N.SELECT_TOKENS="Select Tokens",N.DEPOSIT_LIQUIDITY="Deposit Liquidity",N.SET_PARAMETERS="Set Parameters",N.SET_INFO="Set Info",N))(S||{}),A= exports.e =(_=>(_.ERC4626="Mint",_.Oogabooga="Oogabooga",_.Fly="Fly",_.HubPools="Hub Pools",_.Wrap="Wrap",_.Unwrap="Unwrap",_.KyberSwap="KyberSwap",_.OpenOcean="OpenOcean",_.Haiku="Haiku",_.Enso="Enso",_.EnsoErc4626="Enso (Mint)",_.RedeemBgt="RedeemBgt",_.Honey="Honey",_))(A||{}),B= exports.f =(C=>(C.SWAP="SWAP",C.ZAP="ZAP",C))(B||{});var P=(R=>(R.RESET_AMOUNTS="RESET_AMOUNTS",R.ACTION_TYPE_CHANGE="ACTION_TYPE_CHANGE",R.COLLATERALS_CHANGE="COLLATERALS_CHANGE",R.FROM_AMOUNT_CHANGE="FROM_AMOUNT_CHANGE",R.TO_AMOUNT_CHANGE="TO_AMOUNT_CHANGE",R.PREVIEW_CHANGE="PREVIEW_CHANGE",R.IS_BASKET_MODE_ENABLED_CHANGE="IS_BASKET_MODE_ENABLED_CHANGE",R.IS_TYPING_CHANGE="IS_TYPING_CHANGE",R.IS_SUBMITTING_CHANGE="IS_SUBMITTING_CHANGE",R.IS_LOADING_CHANGE="IS_LOADING_CHANGE",R))(P||{});var u=(E=>(E.TEST="Test",E.SEND="Send tokens",E.APPROVAL="Approval",E.SWAP="Swap",E.WRAP="Wrap",E.UNWRAP="Unwrap",E.CREATE_POOL="Create Pool",E.ADD_LIQUIDITY="Add Liquidity",E.WITHDRAW_LIQUIDITY="Withdraw Liquidity",E.DELEGATE="Delegate",E.REDELEGATE="Redelegate",E.QUEUE_BOOST="Queue Boost",E.ACTIVATE_BOOST="Activate Boost",E.QUEUE_UNBOOSTING_ALL="Queue Drop Boost All",E.UNBOOST="Drop Boost",E.QUEUE_UNBOOST="Queue Drop Boost",E.CANCEL_UNBOOST="Cancel Drop Boost",E.CANCEL_BOOST="Cancel Boost",E.UNBONDING="Unbonding",E.CANCEL_UNBONDING="Cancel Unbonding",E.SUBMIT_PROPOSAL="Submit Proposal",E.CANCEL_PROPOSAL="Cancel Proposal",E.EXECUTE_PROPOSAL="Execute Proposal",E.QUEUE_PROPOSAL="Queue Proposal",E.VOTE="Vote",E.MODIFY_REWARD_DURATION="Change Reward Duration",E.MODIFY_REWARD_RATE="Change Reward Rate",E.RESET_REWARD_MODE="Reset Reward Mode",E.CREATE_BRIBE="Add Incentives",E.CLAIMING_BRIBES="Claiming Incentives",E.CLAIMING_REWARDS="Claiming BGT",E.CLAIM_ALL_REWARDS="Claim All Rewards",E.RECOVER_FUNDS="Recover Bex Funds",E.REDEEM_BGT="Redeem BGT",E.MINT_HONEY="Mint Honey",E.REDEEM_HONEY="Redeem Honey",E.SUPPLY="Supply",E.WITHDRAW="Withdraw",E.BORROW="Borrow",E.REPAY="Repay",E.STAKE="Stake",E.UNSTAKE="Unstake",E.ENSO_ROUTE="Enso Route",E.MARKET_LONG="Market Long",E.MARKET_SHORT="Market Short",E.LIMIT_LONG="Limit Long",E.LIMIT_SHORT="Limit Short",E.CANCEL_ORDER="Cancel Order",E.CANCEL_ALL_ORDERS="Cancel All Orders",E.EDIT_PERPS_ORDER="Edit Perps Order",E.DEPOSIT_HONEY="Deposit Honey",E.START_WITHDRAW_REQUEST="Start Withdraw Request",E.CANCEL_WITHDRAW_REQUEST="Cancel Withdraw Request",E.WITHDRAW_HONEY="Withdraw Honey",E.DELEGATE_OCT="Delegate",E.REVOKE_OCT="Revoke",E.REFER="Refer",E.CREATE_REWARDS_VAULT="Create Reward Vault",E.APPLYING_REWARD_ALLOCATION="Apply Reward Allocation",E.APPLYING_OPERATOR_CHANGE="Apply Operator Change",E.CANCELING_OPERATOR_CHANGE="Cancel Operator Change",E.REQUEST_OPERATOR_CHANGE="Request Operator Change",E.APPLYING_REWARD_ALLOCATOR_CHANGE="Apply Reward Allocator Change",E.APPLYING_COMMISSION_CHANGE="Apply Commission Change",E.BONDING_BERA="Stake BERA",E.ZAP_STAKE_BERA="Zap Stake BERA",E.UNBONDING_BERA="Unstake BERA",E.QUEUE_UNBONDING_BERA="Queue Unstake BERA",E.BEND_MARKET_REPAY_AND_WITHDRAW_COLLATERAL="Bend Market Repay and Withdraw Collateral",E.BEND_MARKET_SUPPLY_COLLATERAL_AND_BORROW="Bend Market Supply Collateral and Borrow",E.BEND_VAULT_SUPPLY="Bend Vault Supply",E.BEND_VAULT_WITHDRAW="Bend Vault Withdraw",E.BEND_CURATOR_REALLOCATE="Bend Curator Reallocate",E.BEND_CURATOR_UPDATE_MARKET_SUPPLY_CAP="Bend Curator Update Market Supply Cap",E.BEND_CURATOR_REVOKE_PENDING_SUPPLY_CAP="Bend Curator Revoke Pending Supply Cap",E.BEND_CURATOR_ACCEPT_PENDING_SUPPLY_CAP="Bend Curator Accept Pending Supply Cap",E.BEND_CURATOR_UPDATE_SUPPLY_QUEUE="Bend Curator Update Supply Queue",E.BEND_CURATOR_UPDATE_WITHDRAW_QUEUE="Bend Curator Update Withdraw Queue",E.BEND_CURATOR_TRANSFER_OWNER="Bend Curator Transfer Owner",E.BEND_CURATOR_CHANGE_GUARDIAN="Bend Curator Change Guardian",E.BEND_CURATOR_SET_CURATOR="Bend Curator Set Curator",E.BEND_CURATOR_SET_ALLOCATOR="Bend Curator Set Allocator",E))(u||{});exports.a = L; exports.b = U; exports.c = I; exports.d = S; exports.e = A; exports.f = B; exports.g = P; exports.h = u;
2
+ //# sourceMappingURL=chunk-I7M43BB4.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/enum/contracts.ts","../src/enum/dex.ts","../src/enum/honey.ts","../src/enum/txnEnum.ts"],"names":["ContractName","OwnershipType","ParameterPreset","PoolCreationStep","Aggregators","SwapReferrer","HoneySwapAction","TransactionActionType"],"mappings":"AAGO,6EAAKA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,WAAA,CAAc,aAAA,CACdA,CAAAA,CAAA,gBAAA,CAAmB,iBAAA,CACnBA,CAAAA,CAAA,QAAA,CAAW,UAAA,CACXA,CAAAA,CAAA,KAAA,CAAQ,cAAA,CACRA,CAAAA,CAAA,OAAA,CAAU,gBAAA,CACVA,CAAAA,CAAA,eAAA,CAAkB,gBAAA,CAClBA,CAAAA,CAAA,8BAAA,CAAiC,8BAAA,CACjCA,CAAAA,CAAA,kBAAA,CAAqB,yBAAA,CARXA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CCHL,IAAKC,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,UAAA,CAAa,YAAA,CACbA,CAAAA,CAAA,KAAA,CAAQ,OAAA,CACRA,CAAAA,CAAA,MAAA,CAAS,QAAA,CAHCA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CAMAC,CAAAA,aAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,SAAA,CAAY,uBAAA,CACZA,CAAAA,CAAA,WAAA,CAAc,wBAAA,CAFJA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CAKAC,CAAAA,aAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,CAAAA,CAAA,aAAA,CAAgB,eAAA,CAChBA,CAAAA,CAAA,iBAAA,CAAoB,mBAAA,CACpBA,CAAAA,CAAA,cAAA,CAAiB,gBAAA,CACjBA,CAAAA,CAAA,QAAA,CAAW,UAAA,CALDA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CAQAC,CAAAA,aAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,OAAA,CAAU,MAAA,CACVA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,CAAAA,CAAA,GAAA,CAAM,KAAA,CACNA,CAAAA,CAAA,QAAA,CAAW,WAAA,CACXA,CAAAA,CAAA,IAAA,CAAO,MAAA,CACPA,CAAAA,CAAA,MAAA,CAAS,QAAA,CACTA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,CAAAA,CAAA,KAAA,CAAQ,OAAA,CACRA,CAAAA,CAAA,IAAA,CAAO,MAAA,CACPA,CAAAA,CAAA,WAAA,CAAc,aAAA,CACdA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,CAAAA,CAAA,KAAA,CAAQ,OAAA,CAbEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CAgBAC,CAAAA,aAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,IAAA,CAAO,MAAA,CACPA,CAAAA,CAAA,GAAA,CAAM,KAAA,CAFIA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CCnCL,IAAKC,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CACVA,CAAAA,CAAA,aAAA,CAAgB,eAAA,CAChBA,CAAAA,CAAA,kBAAA,CAAqB,oBAAA,CACrBA,CAAAA,CAAA,kBAAA,CAAqB,oBAAA,CACrBA,CAAAA,CAAA,kBAAA,CAAqB,oBAAA,CACrBA,CAAAA,CAAA,gBAAA,CAAmB,kBAAA,CACnBA,CAAAA,CAAA,cAAA,CAAiB,gBAAA,CACjBA,CAAAA,CAAA,6BAAA,CAAgC,+BAAA,CAChCA,CAAAA,CAAA,gBAAA,CAAmB,kBAAA,CACnBA,CAAAA,CAAA,oBAAA,CAAuB,sBAAA,CACvBA,CAAAA,CAAA,iBAAA,CAAoB,mBAAA,CAVVA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CCAL,IAAKC,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAIVA,CAAAA,CAAA,IAAA,CAAO,MAAA,CAGPA,CAAAA,CAAA,IAAA,CAAO,aAAA,CAEPA,CAAAA,CAAA,QAAA,CAAW,UAAA,CACXA,CAAAA,CAAA,IAAA,CAAO,MAAA,CACPA,CAAAA,CAAA,IAAA,CAAO,MAAA,CACPA,CAAAA,CAAA,MAAA,CAAS,QAAA,CAETA,CAAAA,CAAA,WAAA,CAAc,aAAA,CACdA,CAAAA,CAAA,aAAA,CAAgB,eAAA,CAChBA,CAAAA,CAAA,kBAAA,CAAqB,oBAAA,CAErBA,CAAAA,CAAA,QAAA,CAAW,UAAA,CACXA,CAAAA,CAAA,UAAA,CAAa,YAAA,CAEbA,CAAAA,CAAA,WAAA,CAAc,aAAA,CACdA,CAAAA,CAAA,cAAA,CAAiB,gBAAA,CACjBA,CAAAA,CAAA,oBAAA,CAAuB,sBAAA,CACvBA,CAAAA,CAAA,OAAA,CAAU,YAAA,CACVA,CAAAA,CAAA,aAAA,CAAgB,kBAAA,CAChBA,CAAAA,CAAA,cAAA,CAAiB,mBAAA,CACjBA,CAAAA,CAAA,YAAA,CAAe,cAAA,CAEfA,CAAAA,CAAA,SAAA,CAAY,WAAA,CACZA,CAAAA,CAAA,gBAAA,CAAmB,kBAAA,CAEnBA,CAAAA,CAAA,eAAA,CAAkB,iBAAA,CAClBA,CAAAA,CAAA,eAAA,CAAkB,iBAAA,CAClBA,CAAAA,CAAA,gBAAA,CAAmB,kBAAA,CACnBA,CAAAA,CAAA,cAAA,CAAiB,gBAAA,CACjBA,CAAAA,CAAA,IAAA,CAAO,MAAA,CAEPA,CAAAA,CAAA,sBAAA,CAAyB,wBAAA,CACzBA,CAAAA,CAAA,kBAAA,CAAqB,oBAAA,CACrBA,CAAAA,CAAA,iBAAA,CAAoB,mBAAA,CACpBA,CAAAA,CAAA,YAAA,CAAe,gBAAA,CACfA,CAAAA,CAAA,eAAA,CAAkB,qBAAA,CAClBA,CAAAA,CAAA,gBAAA,CAAmB,cAAA,CACnBA,CAAAA,CAAA,iBAAA,CAAoB,mBAAA,CAEpBA,CAAAA,CAAA,aAAA,CAAgB,mBAAA,CAEhBA,CAAAA,CAAA,UAAA,CAAa,YAAA,CAEbA,CAAAA,CAAA,UAAA,CAAa,YAAA,CACbA,CAAAA,CAAA,YAAA,CAAe,cAAA,CAEfA,CAAAA,CAAA,MAAA,CAAS,QAAA,CACTA,CAAAA,CAAA,QAAA,CAAW,UAAA,CACXA,CAAAA,CAAA,MAAA,CAAS,QAAA,CACTA,CAAAA,CAAA,KAAA,CAAQ,OAAA,CAERA,CAAAA,CAAA,KAAA,CAAQ,OAAA,CACRA,CAAAA,CAAA,OAAA,CAAU,SAAA,CAEVA,CAAAA,CAAA,UAAA,CAAa,YAAA,CAGbA,CAAAA,CAAA,WAAA,CAAc,aAAA,CACdA,CAAAA,CAAA,YAAA,CAAe,cAAA,CACfA,CAAAA,CAAA,UAAA,CAAa,YAAA,CACbA,CAAAA,CAAA,WAAA,CAAc,aAAA,CACdA,CAAAA,CAAA,YAAA,CAAe,cAAA,CACfA,CAAAA,CAAA,iBAAA,CAAoB,mBAAA,CACpBA,CAAAA,CAAA,gBAAA,CAAmB,kBAAA,CACnBA,CAAAA,CAAA,aAAA,CAAgB,eAAA,CAChBA,CAAAA,CAAA,sBAAA,CAAyB,wBAAA,CACzBA,CAAAA,CAAA,uBAAA,CAA0B,yBAAA,CAC1BA,CAAAA,CAAA,cAAA,CAAiB,gBAAA,CACjBA,CAAAA,CAAA,YAAA,CAAe,UAAA,CACfA,CAAAA,CAAA,UAAA,CAAa,QAAA,CACbA,CAAAA,CAAA,KAAA,CAAQ,OAAA,CAGRA,CAAAA,CAAA,oBAAA,CAAuB,qBAAA,CACvBA,CAAAA,CAAA,0BAAA,CAA6B,yBAAA,CAC7BA,CAAAA,CAAA,wBAAA,CAA2B,uBAAA,CAC3BA,CAAAA,CAAA,yBAAA,CAA4B,wBAAA,CAC5BA,CAAAA,CAAA,uBAAA,CAA0B,yBAAA,CAC1BA,CAAAA,CAAA,gCAAA,CAAmC,+BAAA,CACnCA,CAAAA,CAAA,0BAAA,CAA6B,yBAAA,CAE7BA,CAAAA,CAAA,YAAA,CAAe,YAAA,CACfA,CAAAA,CAAA,cAAA,CAAiB,gBAAA,CACjBA,CAAAA,CAAA,cAAA,CAAiB,cAAA,CACjBA,CAAAA,CAAA,oBAAA,CAAuB,oBAAA,CAGvBA,CAAAA,CAAA,yCAAA,CAA4C,2CAAA,CAC5CA,CAAAA,CAAA,wCAAA,CAA2C,0CAAA,CAC3CA,CAAAA,CAAA,iBAAA,CAAoB,mBAAA,CACpBA,CAAAA,CAAA,mBAAA,CAAsB,qBAAA,CAGtBA,CAAAA,CAAA,uBAAA,CAA0B,yBAAA,CAC1BA,CAAAA,CAAA,qCAAA,CAAwC,uCAAA,CACxCA,CAAAA,CAAA,sCAAA,CAAyC,wCAAA,CACzCA,CAAAA,CAAA,sCAAA,CAAyC,wCAAA,CACzCA,CAAAA,CAAA,gCAAA,CAAmC,kCAAA,CACnCA,CAAAA,CAAA,kCAAA,CAAqC,oCAAA,CACrCA,CAAAA,CAAA,2BAAA,CAA8B,6BAAA,CAC9BA,CAAAA,CAAA,4BAAA,CAA+B,8BAAA,CAC/BA,CAAAA,CAAA,wBAAA,CAA2B,0BAAA,CAC3BA,CAAAA,CAAA,0BAAA,CAA6B,4BAAA,CA7GnBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAA,CAAA,CAAA,CAAA,CAAA,uHAAA","file":"/Users/snowbera/Documents/workspace/monobera/packages/berajs/dist/chunk-I7M43BB4.cjs","sourcesContent":["/**\n * A list of contract names that are not mapped in the devrel's contract mapping or that are generated by factories (e.g. RewardVault).\n */\nexport enum ContractName {\n ENSO_ROUTER = \"enso.router\",\n POL_REWARD_VAULT = \"pol.rewardVault\",\n BEX_POOL = \"bex.pool\",\n ERC20 = \"others.erc20\",\n ERC4626 = \"others.erc4626\",\n POL_STAKE_VAULT = \"pol.stakeVault\",\n BEX_EXPLOITED_FUND_DISTRIBUTOR = \"bex.exploitedFundDistributor\",\n TW_MINIMAL_ACCOUNT = \"thirdweb.minimalAccount\",\n}\n","export enum OwnershipType {\n Governance = \"Governance\",\n Fixed = \"Fixed\",\n Custom = \"Custom\",\n}\n\nexport enum ParameterPreset {\n USDBACKED = \"USD-Backed Stablecoin\",\n ALGORITHMIC = \"Algorithmic Stablecoin\",\n}\n\nexport enum PoolCreationStep {\n POOL_TYPE = \"Pool Type\",\n SELECT_TOKENS = \"Select Tokens\",\n DEPOSIT_LIQUIDITY = \"Deposit Liquidity\",\n SET_PARAMETERS = \"Set Parameters\",\n SET_INFO = \"Set Info\",\n}\n\nexport enum Aggregators {\n ERC4626 = \"Mint\",\n Oogabooga = \"Oogabooga\",\n Fly = \"Fly\",\n HubPools = \"Hub Pools\",\n Wrap = \"Wrap\",\n Unwrap = \"Unwrap\",\n KyberSwap = \"KyberSwap\",\n OpenOcean = \"OpenOcean\",\n Haiku = \"Haiku\",\n Enso = \"Enso\",\n EnsoErc4626 = \"Enso (Mint)\",\n RedeemBgt = \"RedeemBgt\",\n Honey = \"Honey\",\n}\n\nexport enum SwapReferrer {\n SWAP = \"SWAP\",\n ZAP = \"ZAP\",\n}\n","export enum HoneySwapAction {\n RESET_AMOUNTS = \"RESET_AMOUNTS\",\n ACTION_TYPE_CHANGE = \"ACTION_TYPE_CHANGE\",\n COLLATERALS_CHANGE = \"COLLATERALS_CHANGE\",\n FROM_AMOUNT_CHANGE = \"FROM_AMOUNT_CHANGE\",\n TO_AMOUNT_CHANGE = \"TO_AMOUNT_CHANGE\",\n PREVIEW_CHANGE = \"PREVIEW_CHANGE\",\n IS_BASKET_MODE_ENABLED_CHANGE = \"IS_BASKET_MODE_ENABLED_CHANGE\",\n IS_TYPING_CHANGE = \"IS_TYPING_CHANGE\",\n IS_SUBMITTING_CHANGE = \"IS_SUBMITTING_CHANGE\",\n IS_LOADING_CHANGE = \"IS_LOADING_CHANGE\",\n}\n","export enum TransactionActionType {\n /**\n * Used for testing purposes.\n */\n TEST = \"Test\",\n\n // used to send gas token on ERC20\n SEND = \"Send tokens\",\n\n APPROVAL = \"Approval\",\n SWAP = \"Swap\",\n WRAP = \"Wrap\",\n UNWRAP = \"Unwrap\",\n\n CREATE_POOL = \"Create Pool\",\n ADD_LIQUIDITY = \"Add Liquidity\",\n WITHDRAW_LIQUIDITY = \"Withdraw Liquidity\",\n\n DELEGATE = \"Delegate\",\n REDELEGATE = \"Redelegate\",\n\n QUEUE_BOOST = \"Queue Boost\",\n ACTIVATE_BOOST = \"Activate Boost\",\n QUEUE_UNBOOSTING_ALL = \"Queue Drop Boost All\",\n UNBOOST = \"Drop Boost\",\n QUEUE_UNBOOST = \"Queue Drop Boost\",\n CANCEL_UNBOOST = \"Cancel Drop Boost\",\n CANCEL_BOOST = \"Cancel Boost\",\n\n UNBONDING = \"Unbonding\",\n CANCEL_UNBONDING = \"Cancel Unbonding\",\n\n SUBMIT_PROPOSAL = \"Submit Proposal\",\n CANCEL_PROPOSAL = \"Cancel Proposal\",\n EXECUTE_PROPOSAL = \"Execute Proposal\",\n QUEUE_PROPOSAL = \"Queue Proposal\",\n VOTE = \"Vote\",\n\n MODIFY_REWARD_DURATION = \"Change Reward Duration\",\n MODIFY_REWARD_RATE = \"Change Reward Rate\",\n RESET_REWARD_MODE = \"Reset Reward Mode\",\n CREATE_BRIBE = \"Add Incentives\",\n CLAIMING_BRIBES = \"Claiming Incentives\", // claiming others\n CLAIMING_REWARDS = \"Claiming BGT\",\n CLAIM_ALL_REWARDS = \"Claim All Rewards\",\n\n RECOVER_FUNDS = \"Recover Bex Funds\",\n\n REDEEM_BGT = \"Redeem BGT\",\n\n MINT_HONEY = \"Mint Honey\",\n REDEEM_HONEY = \"Redeem Honey\",\n\n SUPPLY = \"Supply\",\n WITHDRAW = \"Withdraw\",\n BORROW = \"Borrow\",\n REPAY = \"Repay\",\n\n STAKE = \"Stake\",\n UNSTAKE = \"Unstake\",\n\n ENSO_ROUTE = \"Enso Route\",\n // PERPS\n\n MARKET_LONG = \"Market Long\",\n MARKET_SHORT = \"Market Short\",\n LIMIT_LONG = \"Limit Long\",\n LIMIT_SHORT = \"Limit Short\",\n CANCEL_ORDER = \"Cancel Order\",\n CANCEL_ALL_ORDERS = \"Cancel All Orders\",\n EDIT_PERPS_ORDER = \"Edit Perps Order\",\n DEPOSIT_HONEY = \"Deposit Honey\",\n START_WITHDRAW_REQUEST = \"Start Withdraw Request\",\n CANCEL_WITHDRAW_REQUEST = \"Cancel Withdraw Request\",\n WITHDRAW_HONEY = \"Withdraw Honey\",\n DELEGATE_OCT = \"Delegate\",\n REVOKE_OCT = \"Revoke\",\n REFER = \"Refer\",\n\n // POL\n CREATE_REWARDS_VAULT = \"Create Reward Vault\",\n APPLYING_REWARD_ALLOCATION = \"Apply Reward Allocation\",\n APPLYING_OPERATOR_CHANGE = \"Apply Operator Change\",\n CANCELING_OPERATOR_CHANGE = \"Cancel Operator Change\",\n REQUEST_OPERATOR_CHANGE = \"Request Operator Change\",\n APPLYING_REWARD_ALLOCATOR_CHANGE = \"Apply Reward Allocator Change\",\n APPLYING_COMMISSION_CHANGE = \"Apply Commission Change\",\n\n BONDING_BERA = \"Stake BERA\",\n ZAP_STAKE_BERA = \"Zap Stake BERA\",\n UNBONDING_BERA = \"Unstake BERA\",\n QUEUE_UNBONDING_BERA = \"Queue Unstake BERA\",\n\n // BEND\n BEND_MARKET_REPAY_AND_WITHDRAW_COLLATERAL = \"Bend Market Repay and Withdraw Collateral\",\n BEND_MARKET_SUPPLY_COLLATERAL_AND_BORROW = \"Bend Market Supply Collateral and Borrow\",\n BEND_VAULT_SUPPLY = \"Bend Vault Supply\",\n BEND_VAULT_WITHDRAW = \"Bend Vault Withdraw\",\n\n // BEND CURATOR\n BEND_CURATOR_REALLOCATE = \"Bend Curator Reallocate\",\n BEND_CURATOR_UPDATE_MARKET_SUPPLY_CAP = \"Bend Curator Update Market Supply Cap\",\n BEND_CURATOR_REVOKE_PENDING_SUPPLY_CAP = \"Bend Curator Revoke Pending Supply Cap\",\n BEND_CURATOR_ACCEPT_PENDING_SUPPLY_CAP = \"Bend Curator Accept Pending Supply Cap\",\n BEND_CURATOR_UPDATE_SUPPLY_QUEUE = \"Bend Curator Update Supply Queue\",\n BEND_CURATOR_UPDATE_WITHDRAW_QUEUE = \"Bend Curator Update Withdraw Queue\",\n BEND_CURATOR_TRANSFER_OWNER = \"Bend Curator Transfer Owner\",\n BEND_CURATOR_CHANGE_GUARDIAN = \"Bend Curator Change Guardian\",\n BEND_CURATOR_SET_CURATOR = \"Bend Curator Set Curator\",\n BEND_CURATOR_SET_ALLOCATOR = \"Bend Curator Set Allocator\",\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import{a as qe}from"./chunk-NLVWRMGD.mjs";import{a as De,b as He,c as H}from"./chunk-BEKH5EYT.mjs";import{a as D,b as j,c as v,d as we,g as M}from"./chunk-QRAIGQF2.mjs";import{B as Je,D as K,F as Pe,a as k,b as le,c as Qe,d as Ue,e as ce,j as Ce,k as Le,l as S,m as Oe,r as Me,y as te,z as _e}from"./chunk-PLIH6KQM.mjs";import{a as c,b as ue,d as We,e as V}from"./chunk-IDFMLLDY.mjs";import{c as se,d as Ie,e as ee,f as P,g as $,h as x}from"./chunk-74QD4JAH.mjs";import{formatEther as Ut}from"viem";import{metaMorphoV11Abi as Wt}from"@berachain/abis/bend-metamorpho/metaMorphoV11";async function fo({sharesAmount:e,vaultAddress:t,publicClient:r}){let a=await r.readContract({address:t,abi:Wt,functionName:"convertToAssets",args:[e]});return{raw:a,formatted:Ut(a)}}import{ApolloClient as Lt,ServerError as Ot}from"@apollo/client";import{appConfig as Mt}from"@berachain/config/internal";var de=class extends Lt{url;constructor(t){super(t),this.url=t.url}async query(t){let r=Ht(t.query),a={url:this.url,type:"graphql"},o={"operation.type":"query","operation.source.url":a.url,"operation.source.type":a.type,"operation.source.queryName":r};try{let i=()=>super.query(t),l=await De.startSpan({name:`GraphQL ${r}`,op:"BeraApolloClient.query",attributes:o},i);if(l.error||l.data===void 0)throw new P({level:"fatal",tags:o,message:"Bera Apollo Client: No data returned from query, but error should be thrown since errorPolicy is none"});return{data:l.data}}catch(i){throw!Mt.env.isProduction&&console.error("BeraApolloClient error",i),Ot.is(i)?new $({response:i.response,cause:i,statusCode:i.statusCode,endpoint:a,tags:o}):i instanceof TypeError?new $({level:"fatal",reason:"TypeError",response:i,cause:i,endpoint:a,tags:o}):new $({response:i,tags:o,cause:i,endpoint:a})}}};function Ht(e){return e.definitions.find(r=>r.kind==="OperationDefinition")?.name?.value}import{InMemoryCache as _t}from"@apollo/client";import{HttpLink as Jt}from"@apollo/client/link/http";import{getUriFromLink as je}from"@berachain/config";import{currentDapp as $e}from"@berachain/config/internal";import $t from"@berachain/graphql/dex/api";import{gql as To}from"@apollo/client";function jt(e){if(!$e)return e;let t=typeof e=="string"?void 0:e.headers;return{uri:je(e),headers:{...t,"x-graphql-client-name":`berachain.${$e}.${process.env.NEXT_RUNTIME||"browser"}`,"x-graphql-client-version":`${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`}}}function _(e,{ssrMode:t,inMemoryCacheOptions:r}={}){let a=je(e),o=typeof e=="string"?void 0:e.headers;return new de({url:a,link:new Jt({uri:a,headers:o}),defaultOptions:{query:{errorPolicy:"none",fetchPolicy:"no-cache"}},cache:new _t(r),ssrMode:t})}function b(e,{...t}){let{config:r}=c(t);switch(e){case"api":return _(jt(r.api),{inMemoryCacheOptions:{possibleTypes:$t.possibleTypes}});case"bend.whisk":if(!r.bend.whiskApi)throw new P({message:"Bend whisk API is not configured on this chain",level:"error"});return _(r.bend.whiskApi);case"honey.subgraph":return _(r.honey.subgraph);case"pol.subgraph":return _(r.pol.subgraph);case"pol.fees":return _(r.pol.feesSubgraph);case"governance.subgraph":return _(r.governance.subgraph);case"bex.subgraph":return _(r.bex.subgraph)}}import{formatUnits as Kt,isAddress as Ke,zeroAddress as Yt}from"viem";var Ye=class e{static PATH_NOT_FOUND_REASON="NO_SWAP_PATHS";needsAccountForQuote=!1;notFoundMessages=[];config;chainId;constructor(t={}){let{config:r,chainId:a}=c(t);this.config=r,this.chainId=a}url="";parseAddresses(t,r){if(!Ke(t)||!Ke(r))throw new P({message:`Invalid address: ${t} or ${r}`,level:"error"});return{tokenInAddress:V(t,"BERA")?this.config.tokens.wbera:t,tokenOutAddress:V(r,"BERA")?this.config.tokens.wbera:r,isTokenInNative:V(t,"BERA"),isTokenOutNative:V(r,"BERA")}}getAmountAfterFees(t,r){if(r===void 0)throw new P({message:"aggregatorsFeeBps is required",level:"error"});let a=new k(t).times(r).dividedBy(1e4).toFixed(0,k.ROUND_DOWN);return new k(t).minus(a).toFixed(0,k.ROUND_DOWN)}getInputData({tokenIn:t,amountIn:r,isNative:a,isPermit2Approval:o=!1,permit2SpenderAddress:i}){return{tokenIn:t,amountIn:BigInt(r),isNative:a,isPermit2Approval:o,permit2SpenderAddress:i??Yt}}getMinAmountOut(t,r){if(r===void 0)throw new P({message:"slippage is required",level:"error"});let a=new k(t).times(1-r/100);return a.isNaN()||a.isZero()?0n:BigInt(a.toFixed(0))}parseAllowanceRequirements({tokenIn:t,rawAmount:r,spender:a}){return V(t,"BERA")?[]:[{token:t,amount:{raw:r,formatted:Kt(BigInt(r),t.decimals)},spender:a}]}checkChainSupport({tokenIn:t,tokenOut:r}){return this.supportedChains===null?!0:this.supportedChains.includes(t.chainId)&&this.supportedChains.includes(r.chainId)}assertChainSupport({tokenIn:t,tokenOut:r,underlyingToken:a}){if(!this.checkChainSupport({tokenIn:t,tokenOut:r,underlyingToken:a}))throw new P({message:`${this.name} does not support tokens chain ID: ${t.chainId} and ${r.chainId}`,level:"error"})}async fetch(t,r){try{return await Qe({url:t,name:this.name,type:this.type},{method:"GET",headers:{"Content-Type":"application/json"},...r})}catch(a){let o=D({cause:a});throw this.notFoundMessages.some(i=>o.message.includes(i))&&(o.reason=e.PATH_NOT_FOUND_REASON),o}}};import{API_CHAIN_NAMES as zt,BALANCER_QUERIES as Xt,BALANCER_RELAYER as Zt,BalancerApi as Oo,CHAINS as er,COMPOSABLE_STABLE_POOL_FACTORY as tr,NATIVE_ASSETS as rr,Token as ar,VAULT as or,WEIGHTED_POOL_FACTORY_BALANCER_V2 as nr}from"@berachain-foundation/berancer-sdk";import{zeroAddress as Be}from"viem";import{berachain as ze,berachainBepolia as ir}from"viem/chains";import{chainConfigs as sr}from"@berachain/config/internal";for(let e of Object.keys(sr)){let{config:t,chainId:r}=c({chainId:Number(e)});zt[r]=t.bex.chainName,er[r]=r===ze.id?ze:ir,Zt[r]=t.bex.relayer,or[r]=t.bex.vault,Xt[r]=t.bex.queries,nr[r]=Be,tr[r]=Be;let a=new ar(r,Be,ue.decimals,ue.name,ue.symbol,t.tokens.wbera);rr[r]=a}import{GetPools as lr}from"@berachain/graphql/dex/api";import{GqlPoolOrderBy as ur,GqlPoolOrderDirection as cr}from"@berachain/graphql/pol/api";async function Zo({textSearch:e,chain:t,first:r,orderBy:a,orderDirection:o,skip:i,fetchPolicy:l,userAddress:n,blacklistedPoolIds:s,...d}={}){let{config:u}=c(d),f=await b("api",d).query({query:lr,variables:{textSearch:e,chain:t??u.bex.chainName,first:r,orderBy:a??ur.TotalLiquidity,orderDirection:o??cr.Desc,skip:i,userAddress:n,blacklistedPoolIds:s},fetchPolicy:l});return{pools:f.data.poolGetPools??[],count:f.data.count??0}}import{GetPool as dr}from"@berachain/graphql/dex/api";async function on({poolId:e,account:t,...r}){let{config:a}=c(r),l=(await b("api",r).query({query:dr,variables:{id:e,userAddress:t,chain:a.bex.chainName},fetchPolicy:"no-cache"})).data.poolGetPool;if(!l)throw new Error(`Pool not found for id: ${e} and user ${t}`);return l}import{GetGlobalLiquidityAndSwapVolume as mr}from"@berachain/graphql/dex/api";async function cn(e={}){let{config:t}=c(e);return(await b("api",e).query({query:mr,variables:{chain:t.bex.chainName}})).data}import{weightedPoolV4Abi_V2 as pr}from"@berachain-foundation/berancer-sdk";async function Xe({publicClient:e,poolAddress:t}){let r=pr,a=await e.multicall({contracts:[{address:t,abi:r,functionName:"inRecoveryMode"},{address:t,abi:r,functionName:"getPausedState"}],allowFailure:!1});return{isPoolInRecoveryMode:a[0],isPoolPaused:a[1][0]}}import{stablePoolAbi_V3 as fr,vaultV2Abi as gr,weightedPoolFactoryAbi_V3 as Ze,weightedPoolV4Abi_V2 as me}from"@berachain-foundation/berancer-sdk";import{erc20Abi as et,formatEther as tt,formatUnits as br,isAddress as yr,isHex as Ar}from"viem";import{GqlPoolType as rt}from"@berachain/graphql/pol/api";async function Cn({poolId:e,publicClient:t,...r}){let{config:a}=c(r),o=e.slice(0,42);if(!yr(o)||!Ar(e))throw new x({property:"poolId",value:e,expected:"Hex"});try{let[i,l,n,s,d,u,m,f,g]=await Promise.all([t.readContract({address:o,abi:et,functionName:"name"}),t.readContract({address:a.bex.vault,abi:gr,functionName:"getPoolTokens",args:[e]}),t.readContract({address:o,abi:et,functionName:"totalSupply"}),t.readContract({address:o,abi:me,functionName:"getSwapFeePercentage"}),t.readContract({address:o,abi:me,functionName:"version"}),t.readContract({address:o,abi:me,functionName:"decimals"}),t.readContract({address:a.bex.factories.composableStable,abi:Ze,functionName:"isPoolFromFactory",args:[o]}),t.readContract({address:a.bex.factories.weighted,abi:Ze,functionName:"isPoolFromFactory",args:[o]}),Xe({publicClient:t,poolAddress:o})]),p=Number(u),A=JSON.parse(d),C,B,y;if(m?[C,y]=await Promise.all([t.readContract({address:o,abi:[{type:"function",name:"getActualSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]}],functionName:"getActualSupply"}),t.readContract({address:o,abi:fr,functionName:"getAmplificationParameter"})]):A.name==="WeightedPool"&&(B=await t.readContract({address:o,abi:me,functionName:"getNormalizedWeights"})),!m&&!f)throw new Error(`Pool ${o} is not a valid BEX pool`);return{name:i,address:o,id:e,poolTokens:[l[0],l[1].map(String),Number(l[2])],totalSupply:br(C??n,p),swapFee:tt(s),decimals:p,weights:B?.map(q=>tt(q)),version:A,factory:m?a.bex.factories.composableStable:a.bex.factories.weighted,type:m?rt.Stable:rt.Weighted,amplificationParameter:y?[Number(y[0]),y[1],Number(y[2])]:void 0,pausedState:g}}catch(i){throw D({cause:i})}}import{GetPoolEvents as hr}from"@berachain/graphql/dex/api";async function Vn({poolId:e,typeInArray:t,...r}){let{config:a}=c(r);return(await b("api",r).query({query:hr,variables:{poolId:e,typeIn:t,chain:a.bex.chainName}})).data}import{isHex as wr}from"viem";import{GetPoolHistoricalData as Cr}from"@berachain/graphql/dex/api";async function Tn({poolId:e,chain:t,...r}){if(!e||!wr(e))throw new x({property:"poolId",value:e,expected:"hex string"});let a=b("api",r),{data:o}=await a.query({query:Cr,variables:{poolId:e,chain:t}});return o.poolGetSnapshots}import{isAddress as at,isHex as Pr}from"viem";var Y=({fieldOrType:e,value:t,required:r=!0,baseUrl:a,components:o})=>{if(!["bool","string"].includes(e)&&r&&(t==null||t===""))return"Required";if(e.startsWith("uint")||e.startsWith("int")){if(typeof t!="string")return"Invalid amount";try{let l=BigInt(t);if(e.startsWith("uint")&&l<0n)return"Negative amount"}catch{return"Invalid amount"}return null}switch(e){case"string":return t!==void 0&&typeof t!="string"?"Invalid amount":null;case"bool":return typeof t!="boolean"?"Invalid amount":null;case"title":return t.length===0?"Required":null;case"description":return t.length===0?"Required":null;case"forumLink":if(t.length===0)return"Required";if(!URL.canParse(t))return"Invalid address";let l=new URL(a);return t.startsWith(l.toString())?null:"Must be a berachain forum link";case"address":return at(t,{strict:!0})?null:"Invalid address";case"hex":return Pr(t,{strict:!0})?null:"Invalid address";case"abi":try{JSON.parse(t)}catch{return"Invalid ABI"}return null;case"action":return at(t,{strict:!0})?null:"Invalid address";case"tuple":if(typeof t=="object"&&Array.isArray(o)){let n={};for(let s of o)n[s.name]=Y({fieldOrType:s.type,value:t[s.name],components:s.components});return Object.values(n).every(s=>s===null)?null:n}return null;case"tuple[]":if(Array.isArray(t)){let n=t.map(s=>Y({fieldOrType:"tuple",value:s,components:o}));return n.every(s=>s===null)?null:n}return null;case"logoURI":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS or IPFS";case"url":return t===void 0||t===""||URL.canParse(t)&&new URL(t).protocol==="https:"?null:"Must be HTTPS";default:return console.error(`Invalid field or type: ${e}`),null}};import{ProposalStatus as w}from"@berachain/graphql/governance";var Br=!1,Dn=[w.Active,w.PendingQueue,w.PendingExecution,w.Defeated,w.QuorumNotReached];function pe(e,t){let r=Date.now()/1e3;if(t!==void 0){if(e.status===w.CanceledByGuardian)return w.CanceledByGuardian;if(t===2)return Number(e.voteStartAt)<r?w.CanceledByUser:w.CanceledByGuardian;if(t===3)return e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?w.QuorumNotReached:w.Defeated:w.QuorumNotReached;if(t===4)return w.PendingQueue;if(t===5)return Number(e.queueEnd)<Date.now()/1e3?w.PendingExecution:w.InQueue;if(t===6)return console.warn("Unexpected expired state on proposal id: ",e.id),w.Defeated}return e.status===w.InQueue&&Number(e.queueEnd)<Date.now()/1e3?w.PendingExecution:Br&&t===1&&e.quorum&&BigInt(e.quorum)<BigInt(e.pollResult.totalTowardsQuorum)&&Number(e.pollResult.forPercentage)>Number(e.pollResult.againstPercentage)?w.PendingQueue:e.status===w.Pending?Number(e.voteStartAt)<r&&Number(e.voteEndAt)>r?w.Active:Number(e.voteEndAt)<r?e.pollResult?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?w.QuorumNotReached:e.pollResult?.against>e.pollResult?.for?w.Defeated:w.PendingQueue:w.QuorumNotReached:w.Pending:e.status===w.Active&&Number(e.voteEndAt)<r?!e.quorum||BigInt(e.quorum)>BigInt(e.pollResult.totalTowardsQuorum)?w.QuorumNotReached:BigInt(e.pollResult?.against??0n)>BigInt(e.pollResult?.for??0n)?w.Defeated:w.PendingQueue:e.status===w.InQueue&&Number(e.queueEnd)<Date.now()/1e3?w.PendingExecution:e.status}import{GetProposals as vr,SearchProposals as Rr}from"@berachain/graphql/governance";async function On({where:e,orderBy:t,orderDirection:r,offset:a=0,perPage:o=20,text:i,...l}){try{if(o>1e3)throw new Error("perPage must be less than 1000");let n=b("governance.subgraph",l),[s]=await Promise.all([i?n.query({query:Rr,variables:{offset:a,limit:o,where:e,text:i}}):n.query({query:vr,variables:{offset:a,limit:o,where:e,orderBy:t,orderDirection:r}})]);return s.data.proposals.map(d=>({...d,status:pe(d)}))}catch(n){throw console.error("getAllProposals:",n),n}}var _n=(e,t)=>{let r={};return r.title=Y({fieldOrType:"title",value:e.title}),r.description=Y({fieldOrType:"description",value:e.description}),r.forumLink=Y({fieldOrType:"forumLink",value:e.forumLink,baseUrl:t.forumLink}),r};import{GetProposal as Vr}from"@berachain/graphql/governance";async function Yn({proposalId:e,...t}){let a=await b("governance.subgraph",t).query({query:Vr,variables:{id:e}});if(a.data.proposal)return{...a.data.proposal,status:pe(a.data.proposal)}}import ot from"gray-matter";var Sr=e=>{let t=/#(?:([\w-]+)# )?(.+)\n([\s\S]*)/,r=e.match(t);if(r){let a=r[1]||null,o=r[2],i=r[3].replace(`
2
+ `,"<br />");return{type:a,title:o,content:i}}throw new Error("Invalid proposal body")},nt=e=>{if(!e)return{isFrontMatter:!1,data:{title:"Loading..."},content:"",matter:"",language:"",orig:"",stringify:()=>""};let t=e?.description??"";if(ot.test(t))return{...ot(t),isFrontMatter:!0};try{let r=Sr(t);return{isFrontMatter:!1,data:{title:r.title},content:r.content,matter:"",language:"",orig:t,stringify:()=>t}}catch{return{isFrontMatter:!1,data:{title:e?.description?.split(`
3
+ `)[0].slice(0,100)},content:t,matter:"",language:"",orig:t,stringify:()=>t}}};import{parseEventLogs as kr}from"viem";import{berachainGovernanceAbi as Nr}from"@berachain/abis/gov/berachainGovernance";import{ProposalStatus as Gr}from"@berachain/graphql/governance";async function ni(e){v(e.publicClient);let t;"tx"in e?t=e.tx:t=await e.publicClient.getTransactionReceipt({hash:e.txHash});let r=t?.logs?kr({abi:Nr,logs:t.logs,eventName:"ProposalCreated"})?.at(0):void 0;if(!t||!r)return null;let a=await e.publicClient.getBlock({blockNumber:t.blockNumber}),o=nt({description:r?.args.description});return{id:String(r.args.proposalId),proposalId:String(r?.args.proposalId),createdAt:a.timestamp.toString(),title:o.data.title,createdAtBlock:a.timestamp.toString(),voteStartAt:String(r?.args.voteStart),voteEndAt:String(r?.args.voteEnd),proposer:r?.args.proposer,description:o.content,unverifiedForumLink:o.data.forumLink,pollResult:{for:"0",forVotersCount:0,forPercentage:"0",against:"0",againstVotersCount:0,againstPercentage:"0",abstain:"0",abstainVotersCount:0,abstainPercentage:"0",total:"0",totalVotersCount:0,totalTowardsQuorum:"0"},status:Gr.Pending,quorum:null,topics:o.data.topics,votes:[],executableCalls:r?.args.targets.map((i,l)=>({__typename:"ExecutableCall",id:`${t.transactionHash}-${l}`,target:i,value:String(r?.args.values[l]),calldata:r?.args.calldatas[l]})),timelock:void 0}}import{GetProposalVotes as xr}from"@berachain/graphql/governance";async function ui({variables:e,...t}){return b("governance.subgraph",t).query({query:xr,variables:e})}import{Aggregation_Interval as Tr,GetChartData as Er}from"@berachain/graphql/honey";async function pi({days:e,...t}){return(await b("honey.subgraph",t).query({query:Er,variables:{interval:Tr.Day,first:e}})).data}import{honeyFactoryAbi as Fr}from"@berachain/abis/honey/honeyFactory";async function yi({client:e,collateralList:t,...r}){let{config:a}=c(r);try{let o=await e.readContract({address:a.honey.factory,abi:Fr,functionName:"getWeights"});return t.reduce((l,n,s)=>Object.assign(l,{[n.address]:o[s]}),{})}catch(o){throw console.log(o),o}}import{erc20Abi as ve}from"viem";async function it({address:e,publicClient:t,chainId:r}){try{if(!t)throw new Error("Public client not found");let[a,o,i]=await Promise.all([t.readContract({address:e,abi:ve,functionName:"decimals"}),t.readContract({address:e,abi:ve,functionName:"name"}),t.readContract({address:e,abi:ve,functionName:"symbol"})]),l={address:e,decimals:a,name:o,symbol:i,chainId:r};if(typeof l.decimals!="number"||typeof l.name!="string"||typeof l.symbol!="string")throw new Error(`Invalid ERC20 token. Address: ${e}`);return l}catch(a){throw console.error(a),D({cause:a})}}import{honeyFactoryAbi as Re}from"@berachain/abis/honey/honeyFactory";async function Ve({client:e,tokenData:t,preferredCollateralOrder:r,...a}){let{config:o}=c(a),[i,l]=await Promise.all([e.readContract({address:o.honey.factory,abi:Re,functionName:"numRegisteredAssets"}),e.readContract({address:o.honey.factory,abi:Re,functionName:"referenceCollateral"})]),n=[];for(let f=0;f<i;f++)n.push(e.readContract({address:o.honey.factory,abi:Re,functionName:"registeredAssets",args:[BigInt(f)]}));let s=await Promise.all(n),u=(await Promise.all(s.map(f=>{let g=t?.find(p=>V(p,f));return g||it({address:f,chainId:o.chainId,publicClient:e})}))).filter(f=>!!f).sort((f,g)=>s.indexOf(f.address)-s.indexOf(g.address)).map((f,g)=>({...f,order:g}));if(r?.length){let f=[];for(let g of r){let p=u.find(A=>V(A.address,g.address));p&&(f.push(p),u.splice(u.indexOf(p),1))}u.unshift(...f)}let m=u.find(f=>V(f,l));if(!u)throw new Error("Collateral tokens not found");if(!m)throw new Error("Reference collateral address not found");return{collaterals:u,referenceCollateral:m}}import{parseUnits as qr}from"viem";import{honeyFactoryAbi as st}from"@berachain/abis/honey/honeyFactory";import{honeyFactoryReaderAbi as Ir}from"@berachain/abis/honey/honeyFactoryReader";async function lt({client:e,collateral:t,latestPrices:r,isPythWrapperEnabled:a,...o}){let{config:i}=c(o);try{let l=e.readContract({address:i.honey.factory,abi:st,functionName:"isBadCollateralAsset",args:[t.address]}),n=e.readContract({address:i.honey.factory,abi:st,functionName:"isPegged",args:[t.address]});if(a&&r){let u=r.prices.map(m=>qr(m,18));n=e.readContract({address:i.honey.reader,abi:Ir,functionName:"isPeggedWithPrice",args:[t.address,u[0]]})}let[s,d]=await Promise.all([l,n]);return{isBlacklisted:s,isDepegged:!d}}catch(l){throw console.log(l),l}}import{parseEther as ct}from"viem";import{honeyFactoryAbi as Ur}from"@berachain/abis/honey/honeyFactory";import{parseEther as Dr}from"viem";import{collateralVaultAbi as Qr}from"@berachain/abis/honey/collateralVault";import{honeyFactoryAbi as ut}from"@berachain/abis/honey/honeyFactory";async function re({client:e,asset:t,amount:r,...a}){let{config:o}=c(a);try{let[i,l]=await Promise.all([e.readContract({address:o.honey.factory,abi:ut,functionName:"vaults",args:[t]}),e.readContract({address:o.honey.factory,abi:ut,functionName:"collectedFees",args:[o.honey.factory,t]})]);return await e.readContract({address:i,abi:Qr,functionName:"balanceOf",args:[o.honey.factory]})+Dr(r??"0")-l}catch(i){throw console.log(i),i}}var Wr=ct("1");async function _i({client:e,asset:t,amount:r,isMint:a,isPythWrapperEnabled:o,latestPrices:i,...l}){let{config:n}=c(l);try{let s=await e.readContract({address:n.honey.factory,abi:Ur,functionName:"globalCap"});if(s>=Wr)return!1;let[{collaterals:d},u]=await Promise.all([Ve({client:e}),Lr({client:e,asset:t,amount:r,latestPrices:i,isPythWrapperEnabled:o})]);if(!u)return;for(let m in u)if((a&&V(d[m],t)||!a&&V(d[m],t))&&u[m]>s-ce)return!0;return!1}catch(s){throw console.log(s),s}}async function Lr({client:e,asset:t,amount:r,latestPrices:a,isPythWrapperEnabled:o}){let{collaterals:i}=await Ve({client:e}),l=0n,n=[];for(let s of i){let d=await lt({client:e,collateral:t,latestPrices:a,isPythWrapperEnabled:o});if(d?.isBlacklisted||d?.isDepegged)continue;let u=await re({client:e,asset:s.address,amount:V(s,t)?r:"0"});u&&(l+=u,n.push(u))}if(l===0n)return n;for(let s in i)n[s]=ct(n[s].toString())/l;return n}import{GetGlobalData as Or}from"@berachain/graphql/honey";async function Ki({...e}={}){return(await b("honey.subgraph",e).query({query:Or})).data}import{parseUnits as dt}from"viem";import{honeyFactoryReaderAbi as mt}from"@berachain/abis/honey/honeyFactoryReader";var Mr=(s=>(s.Mint="previewMintHoney",s.MintWithPrice="previewMintHoneyWithPrices",s.RequiredCollateral="previewMintCollaterals",s.RequiredCollateralWithPrice="previewMintCollateralsWithPrices",s.Redeem="previewRedeemCollaterals",s.RedeemWithPrice="previewRedeemCollateralsWithPrices",s.HoneyToRedeem="previewRedeemHoney",s.HoneyToRedeemWithPrice="previewRedeemHoneyWithPrices",s))(Mr||{});async function es({client:e,collateral:t,collateralList:r,amount:a,method:o,latestPrices:i,isPythWrapperEnabled:l,...n}){let{config:s}=c(n);try{let d=o==="previewMintHoney"||o==="previewRedeemHoney"||o==="previewMintHoneyWithPrices"||o==="previewRedeemHoneyWithPrices",u=dt(a,d?t.decimals:18),m,f=[t.address,u];if(l&&i){let p=i.prices.map(A=>dt(A,18));f=[t.address,u,p]}if(d){let p=await e.readContract({address:s.honey.reader,abi:mt,functionName:o,args:f});m={collaterals:p[0],honey:p[1]}}else m={collaterals:await e.readContract({address:s.honey.reader,abi:mt,functionName:o,args:f}),honey:u};let g=r.reduce((p,A)=>{let C=A.order;return A.address===t.address&&m.collaterals[C]===BigInt(0)?Object.assign(p,{[A.address]:m.collaterals[0]}):Object.assign(p,{[A.address]:m.collaterals[C]})},{});return g[t.address]===BigInt(0)&&(g[t.address]=m.collaterals[0]),{collaterals:g,honey:m.honey}}catch(d){throw console.log("error",d),d}}import{formatUnits as Hr}from"viem";import{collateralVaultAbi as Se}from"@berachain/abis/honey/collateralVault";import{honeyFactoryAbi as pt}from"@berachain/abis/honey/honeyFactory";async function is({client:e,collateralList:t,honeyFactoryAddress:r,...a}){let{config:o}=c(a),i=r??o.honey.factory;return await Promise.all(t.map(async n=>{let s=await e.readContract({address:o.honey.factory,abi:pt,functionName:"vaults",args:[n.address]}),[d,u,[m,f]]=await Promise.all([e.readContract({address:s,abi:Se,functionName:"balanceOf",args:[i]}),e.readContract({address:i,abi:pt,functionName:"collectedAssetFees",args:[n.address]}),e.readContract({address:s,abi:Se,functionName:"custodyInfo"})]),g=await e.readContract({address:s,abi:Se,functionName:"convertToAssets",args:[d-u]});return{...n,balance:{raw:g.toString(),formatted:Hr(g,n.decimals)},vault:m?f:s}}))}import{HermesClient as _r}from"@pythnetwork/hermes-client";import{formatUnits as Jr}from"viem";var $r="https://hermes.pyth.network";async function ft({priceFeedId:e}){let r=await new _r($r,{}).getLatestPriceUpdates(e,{encoding:"hex",parsed:!0});return{calldata:r.binary.data.map(a=>`0x${a}`),prices:r.parsed?.flatMap(a=>Jr(BigInt(a.price.price),a.price.expo*-1))??[]}}import{parseEther as jr}from"viem";import{honeyFactoryAbi as Kr}from"@berachain/abis/honey/honeyFactory";async function bs({client:e,asset:t,amount:r,isMint:a,referenceCollateral:o,...i}){let{config:l}=c(i);if(t===o.address)return!1;try{let[n]=await Promise.all([e.readContract({address:l.honey.factory,abi:Kr,functionName:"relativeCap",args:[t]})]),[s,d]=await Promise.all([re({client:e,asset:t,amount:a?r:void 0}),re({client:e,asset:o.address,amount:a?void 0:r})]);return d===0n?s!==0n:jr((s??0n).toString())/(d??0n)>=n-ce}catch(n){throw console.log(n),n}}async function gt({client:e,priceFeedId:t,...r}){let{config:a}=c(r);try{return await e.readContract({address:a.external.pyth,abi:qe,functionName:"getUpdateFee",args:[t]})}catch(o){throw console.error("getPythUpdateFee",o),o}}import{parseUnits as bt}from"viem";import{honeyFactoryAbi as Yr}from"@berachain/abis/honey/honeyFactory";import{honeyFactoryPythWrapperAbi as zr}from"@berachain/abis/honey/honeyFactoryPythWrapper";var Ns=async({state:e,publicClient:t,priceFeedMap:r,collateralList:a,isPythWrapperEnabled:o,...i})=>{let{config:l}=c(i),n=We(i),{actionType:s,fromAmount:d,collaterals:u,isBasketModeEnabled:m}=e,f=o?l.honey.pythWrapper:l.honey.factory,g=a.map(p=>p.address);if(d[0]&&g.length){let p=s==="mint";if(o&&t&&r){let C=(await ft({priceFeedId:Object.values(r)})).calldata,B=0n;try{B=await gt({client:t,priceFeedId:C})}catch{B=Le(u.length)}return({account:y})=>{let q=[C,u[0]?.address,bt(d[0],(p?u[0]?.decimals:n?.decimals)??18),y,!!m];return{address:f,abi:zr,functionName:p?"mint":"redeem",params:q,value:B}}}return({account:A})=>{let C=[u[0]?.address,bt(d[0],(p?u[0]?.decimals:n?.decimals)??18),A,!!m];return{value:0n,address:f,abi:Yr,functionName:p?"mint":"redeem",params:C}}}throw new Error("Something went wrong while creating the Honey swap payload")};import{parseUnits as Xr}from"viem";import{honeyFactoryAbi as Zr}from"@berachain/abis/honey/honeyFactory";import{honeyFactoryReaderAbi as ea}from"@berachain/abis/honey/honeyFactoryReader";async function qs({client:e,isMint:t,collateralList:r,latestPrices:a,isPythWrapperEnabled:o,...i}){let{config:l}=c(i);if(o&&a){if(r.length===0)return;let s=a.prices.map(u=>Xr(u,18));return await e.readContract({address:l.honey.reader,abi:ea,functionName:"isBasketModeEnabledWithPrices",args:[t,s]})}return await e.readContract({address:l.honey.factory,abi:Zr,functionName:"isBasketModeEnabled",args:[t]})}async function Us({block:e,currentBlock:t,blockTime:r,publicClient:a}){if(j(e,"block"),v(a),t>e){let i=await a.getBlock({blockNumber:BigInt(e),includeTransactions:!1});return{timestamp:Number(i.timestamp)}}return{timestamp:S(Date.now())+r*(Number(e)-Number(t))}}import{formatUnits as ke}from"viem";import{rewardVaultAbi as z}from"@berachain/abis/pol/rewards/rewardVault";var ta=(a=>(a.Duration="duration",a.TargetRate="targetRate",a.TargetApr="targetApr",a))(ta||{});async function Hs(e,t){let[r,a,o,i,l,n]=await Promise.all([t.readContract({address:e,abi:z,functionName:"rewardsDuration"}),t.readContract({address:e,abi:z,functionName:"rewardVaultManager"}),t.readContract({address:e,abi:z,functionName:"rewardRate"}),t.readContract({address:e,abi:z,functionName:"periodFinish"}),t.readContract({address:e,abi:z,functionName:"targetRewardsPerSecond"}),t.readContract({address:e,abi:z,functionName:"minRewardDurationForTargetRate"})]),s=o*(i-BigInt(S(Date.now())))/10n**18n;return{rewardsDuration:Number(r),mode:l===0n?"duration":"targetRate",manager:a,rewardRate:ke(o,36),periodFinish:Number(i),availableRewards:ke(s,18),minRewardDurationForTargetRate:Number(n),targetRewardsPerSecond:ke(l,36)}}function fe(e,t,r){return e?r*t*te(1)/e:null}function ra(e,t,r){return r?e*r/(t*te(1)):0}function $s({availableRewards:e,periodFinish:t,tvl:r,bgtPrice:a,MIN_REWARD_DURATION:o,MAX_REWARD_DURATION:i,...l}){let n=S(Date.now());if(n>t)return{apr:0,duration:0,rewardRate:0,targetRate:null,periodFinish:0,mode:null};if(l.mode==="targetRate"||l.mode==="targetApr"){let m,{minRewardDurationForTargetRate:f,currentDuration:g}=l;if(l.mode==="targetRate"?m=l.rewardRate:m=ra(l.apr,a,r),m===0){let C=Math.min(g,i),B=e?e/C:0;return{apr:fe(r,a,B),duration:C,rewardRate:B,targetRate:null,periodFinish:C+n,mode:"duration"}}let p=f||o,A=e?e/m:0;if(A<p){let C=e?e/p:0;return{apr:fe(r,a,C),duration:p,rewardRate:C,targetRate:C.toString(),periodFinish:p+n,mode:null}}return{apr:fe(r,a,m),duration:A,rewardRate:m,targetRate:m.toString(),periodFinish:A+n,mode:null}}let{duration:s}=l,d=e/s;return{apr:fe(r,a,d),mode:null,targetRate:null,duration:s,rewardRate:d,periodFinish:s+n}}async function zs({address:e,account:t,...r}){let{config:a}=c(r),o=`${a.staking}/vaults/${e}/earnings/${t}`;return Ue({url:o,type:"rest"})}import{formatUnits as aa}from"viem";import{rewardVaultAbi as oa}from"@berachain/abis/pol/rewards/rewardVault";import{GetVaults as na}from"@berachain/graphql/pol/api";async function ge({filter:e,publicClient:t,...r}={}){let o=await b("api",r).query({query:na,variables:e}),i=await Promise.allSettled(o.data.polGetRewardVaults.vaults.map(async n=>{if(t)return Promise.allSettled(n.activeIncentives.map(s=>t.readContract({abi:oa,address:n.address,functionName:"incentives",args:[s.tokenAddress]})))})),l=o.data.polGetRewardVaults.vaults.map((n,s)=>{let d=0,u=n.activeIncentives.map((m,f)=>{let g=Number(m.remainingAmountUsd)&&Number(m.remainingAmount)?Number(m.remainingAmountUsd)/Number(m.remainingAmount):0,p=i[s]?.status==="fulfilled"&&i[s]?.value?.[f]?.status==="fulfilled"?aa(BigInt(i[s].value[f].value[2]),m.token.decimals):m.remainingAmount;return d+=Number(p)*Number(g),{...m,remainingAmount:p}});return{...n,dynamicData:{...n.dynamicData,allTimeReceivedBGTAmount:n.dynamicData?.allTimeReceivedBGTAmount??"0",bgtCapturePercentage:n.dynamicData?.bgtCapturePercentage??"0",activeIncentivesValueUsd:d.toString(),activeIncentivesRateUsd:n.dynamicData?.activeIncentivesRateUsd??"0",bgtCapturePerBlock:n.dynamicData?.bgtCapturePerBlock??"0"},activeIncentives:u}});return{pagination:o.data.polGetRewardVaults.pagination,gaugeList:l}}import{GlobalData as ia}from"@berachain/graphql/pol/api";async function yt(e={}){let{config:t}=c(e),a=await b("api",e).query({query:ia,variables:{chain:t.bex.chainName}});return{...a.data.polGetGlobalInfo,top3EmittingValidators:a.data.top3EmittingValidators.validators,allValidatorsCount:a.data.allValidatorsCount.pagination.totalCount}}import{formatEther as sa}from"viem";import{bgtAbi as la}from"@berachain/abis/pol/bgt";async function At({publicClient:e,...t}){let{config:r}=c(t);v(e);try{let a=await e.readContract({address:r.tokens.bgt,abi:la,functionName:"totalBoosts",args:[]});return sa(a)}catch(a){throw console.log(a),a}}import{erc20Abi as ua,formatEther as ca}from"viem";async function ht({publicClient:e,...t}){let{config:r}=c(t);v(e);try{let a=await e.readContract({address:r.tokens.bgt,abi:ua,functionName:"totalSupply",args:[]});return ca(a??0n)}catch(a){throw console.log(a),a}}import{GqlRewardVaultOrderBy as da,GqlRewardVaultOrderDirection as ma}from"@berachain/graphql/pol/api";async function wt(e){let{gaugeList:t}=await ge({filter:{orderBy:da.Apr,orderDirection:ma.Desc,pageSize:e,where:{includeNonWhitelisted:!1}}});return t}async function Vl(e){let[t,r,a,o]=await Promise.allSettled([yt(),wt(300),ht({publicClient:e}),At({publicClient:e})]);return t.status==="rejected"&&M.captureException(D({cause:t.reason,level:"warning"})),r.status==="rejected"&&M.captureException(D({cause:r.reason,level:"warning"})),a.status==="rejected"&&M.captureException(D({cause:a.reason,level:"warning"})),o.status==="rejected"&&M.captureException(D({cause:o.reason,level:"warning"})),{bgtTotalSupply:a.status==="fulfilled"?a.value:void 0,globalCuttingBoard:r.status==="fulfilled"?r.value:[],bgtTotalBoosts:o.status==="fulfilled"?o.value:void 0,...t.status==="fulfilled"?t.value:{}}}import{GetIncentiveFeeClaimStats as pa}from"@berachain/graphql/pol/fees";async function Ct({...e}){let t=b("pol.fees",e),{data:r}=await t.query({query:pa});if(r.incentiveFeeClaims.length>0){let a=r?.incentiveFeeClaims.reduce((l,n)=>l+Number(n.payoutAmount),3e4),i=(r?.incentiveFeeClaims.filter(l=>Number(l.timestamp)/1e3>Date.now()-Me(1))).reduce((l,n)=>l+Number(n.payoutAmount),0);return{sumAllClaims:a,sumClaimsInLast24Hours:i}}return{sumAllClaims:0,sumClaimsInLast24Hours:0}}async function El(e={}){let{config:t}=c(e);try{let a=await(await fetch(t.lists.rewardVaultList)).json();if(!a.protocols)throw new Error("Missing protocols in market list");return{marketList:a.protocols,marketDictionary:a.protocols.reduce((o,i)=>(o[i.name]=i,o),{})}}catch(r){throw console.error("Error fetching validator information",r),r}}async function Ql({account:e,validator:t,page:r=1,perPage:a=1e3,...o}){let{config:i}=c(o),l=await fetch(`${i.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/proofs/validator/${t.toLowerCase()}?page=${r}&per_page=${a}`,{cache:"no-store"});if(!l.ok){let s=await le(l);throw new P({message:"Failed to fetch proofs on server",cause:{error:s,result:l,account:e,validator:t},reason:s?.reason})}return await l.json()}import{formatUnits as fa,parseUnits as ga}from"viem";import{wberaStakerVaultAbi as ba}from"@berachain/abis/pol/wberaStakerVault";async function Ml({address:e,publicClient:t}){return v(t),t.readContract({address:e,abi:ba,functionName:"previewRedeem",args:[ga("1",18)]}).then(r=>Number(fa(r,18))).catch(()=>0)}import{GetRewardVault as ya}from"@berachain/graphql/pol/api";async function Kl({address:e,chainName:t,...r}){let{config:a}=c(r),o=t??a.bex.chainName,i=b("api",r),{data:l}=await i.query({query:ya,variables:{vaultId:e,chain:o}});if(!l?.rewardVault)throw new He({resource:"Reward vault",id:e,chainId:a.chainId});return l.rewardVault}import{isSameAddress as Pt}from"@berachain-foundation/berancer-sdk";import{erc20Abi as Ne,formatUnits as ae}from"viem";import{rewardVaultAbi as Ge}from"@berachain/abis/pol/rewards/rewardVault";async function ru({address:e,stakingToken:t,publicClient:r}){let a=await r.readContract({address:e,abi:Ge,functionName:"getWhitelistedTokens"}),i=a.findIndex(n=>Pt(t,n))!==-1?await r.readContract({address:e,abi:Ge,functionName:"totalSupply"}):0n,l=await Promise.allSettled(a.map(async n=>{let[s,d,u,m]=await Promise.all([r.readContract({address:e,abi:Ge,functionName:"incentives",args:[n]}),r.readContract({address:n,abi:Ne,functionName:"decimals"}),r.readContract({address:n,abi:Ne,functionName:"symbol"}),r.readContract({address:n,abi:Ne,functionName:"balanceOf",args:[e]})]),[f,g,p,A]=s;return{token:n,manager:A,minIncentiveRate:ae(f,d),incentiveRate:ae(g,d),remainingAmount:ae(p,d),symbol:u,decimals:d,pendingAmount:Pt(t,n)?ae(m-i-p,d):ae(m-p,d)}}));return l.forEach((n,s)=>{n.status==="rejected"&&M.captureException(new P({reason:n.reason,message:"Incorrect incentives token received.",level:"error",extra:{token:a[s],address:e,error:n.reason}}))}),l.map(n=>n.status==="fulfilled"?n.value:null).filter(n=>n!==null)}import{rewardVaultAbi as Aa}from"@berachain/abis/pol/rewards/rewardVault";async function nu({address:e,publicClient:t}){return await t.readContract({address:e,abi:Aa,functionName:"stakeToken"})}import{GetSWberaVaultMetadata as ha,GqlSWberaVaultMetadataResolution as Bt}from"@berachain/graphql/pol/api";function wa(e){return e==="DAY"?Bt.OneDay:Bt.SevenDays}async function cu({window:e,...t}){let{config:r}=c(t),a=b("api",t);try{let o=await a.query({query:ha,variables:{chain:r.bex.chainName,resolution:wa(e??"DAY")}}),{apr:i}=o.data.polGetSWberaVaultMetadata;return Number(i)}catch(o){throw console.error("Failed to get SW Bera APR",o),o}}import{GetSWberaVaultSnapshots as Ca,GqlVaultSnapshotDataRange as Pa}from"@berachain/graphql/pol/api";async function gu({chain:e,range:t=Pa.ThirtyDays,...r}={}){let{config:a}=c(r),o=b("api",r);try{return(await o.query({query:Ca,variables:{chain:e??a.bex.chainName,range:t}})).data.polGetSWberaVaultSnapshots}catch(i){throw console.error("Failed to get SW Bera Snapshots",i),i}}import{wberaStakerVaultAbi as Ba}from"@berachain/abis/pol/wberaStakerVault";async function oe({publicClient:e,address:t}){let r=await e.readContract({address:t,abi:Ba,functionName:"WITHDRAWAL_COOLDOWN"});return Number(r)}import{erc20Abi as be,erc4626Abi as ne}from"viem";async function vu({address:e,underlyingAsset:t,publicClient:r,blockTime:a}){v(r);let o=26;try{let i=await r.getBlock({blockTag:"latest"}),l=Math.floor(o*60*60/a),n=i.number-BigInt(l),[s,d,u,m,f,g,p,A,C,B,y]=await Promise.all([r.readContract({address:e,abi:ne,functionName:"totalAssets"}),r.readContract({address:e,abi:ne,functionName:"totalSupply"}),r.readContract({address:e,abi:ne,functionName:"previewRedeem",args:[10n**18n],blockNumber:i.number}),r.readContract({address:t,abi:be,functionName:"balanceOf",args:[e]}),r.readContract({address:e,abi:ne,functionName:"totalAssets",blockNumber:n}),r.readContract({address:e,abi:be,functionName:"totalSupply",blockNumber:n}),r.readContract({address:e,abi:ne,functionName:"previewRedeem",args:[10n**18n],blockNumber:n}),r.readContract({address:t,abi:be,functionName:"balanceOf",args:[e],blockNumber:n}),r.readContract({address:t,abi:be,functionName:"totalSupply"}),oe({publicClient:r,address:e}),Ct({})]),q=new k(p.toString()),N=new k(u.toString());return{address:e,current:{exchangeRate:N.toString(),totalSupply:new k(d.toString()).dividedBy(1e18).toString(),totalAssets:new k(s.toString()).dividedBy(1e18).toString(),tvl:new k(m.toString()).dividedBy(1e18).toString()},previous:{exchangeRate:q.toString(),totalSupply:new k(g.toString()).dividedBy(1e18).toString(),totalAssets:new k(f.toString()).dividedBy(1e18).toString(),tvl:new k(A.toString()).dividedBy(1e18).toString()},totalWBeraIssued:new k(C.toString()).dividedBy(1e18).toString(),lockPeriod:B,totalBuyBacks:y.sumAllClaims,totalBuyBacksInLast24Hours:y.sumClaimsInLast24Hours}}catch(i){throw console.error("Failed to get SW Bera Vault Metadata",i),i}}import{wberaStakerVaultAbi as ye}from"@berachain/abis/pol/wberaStakerVault";function vt(e){let t=Date.now(),r=e*1e3-t;if(r<=0)return;let a=S(r);return Je(a,!0,!0)}async function xu({contractAddress:e,accountAddress:t,publicClient:r,version:a}){let o=[];function i(l,n){let[s,d,u]=l,m=s,f=Number(u)+Number(n),g=S(Date.now()),p=f-g;if(m>0){let A=vt(p<=0?0:f);o.push({receiptTokenAddress:e,withdrawalAmount:m,timeRemaining:A})}}switch(a){case"V1":{let[l,n]=await Promise.all([r.readContract({address:e,abi:ye,functionName:"withdrawalRequests",args:[t]}),oe({publicClient:r,address:e})]);return i(l,n),o}case"V2":{let[l,n]=await Promise.all([r.readContract({address:e,abi:ye,functionName:"getERC721WithdrawalRequestIds",args:[t]}),oe({publicClient:r,address:e})]);if(V(e,"SWBERA")){let u=await r.readContract({address:e,abi:ye,functionName:"withdrawalRequests",args:[t]});i(u,n)}let d=(await Promise.all(l.map(async u=>{let m=await r.readContract({address:e,abi:ye,functionName:"getERC721WithdrawalRequest",args:[u]}),{assets:f,requestTime:g}=m;if(!f||!g)throw new Error("Invalid withdrawal request");let p=f,A=Number(g)+Number(n),C=S(Date.now()),B=A-C;if(p>0){let y=vt(B<=0?0:A);return{withdrawalAmount:p,timeRemaining:y,withdrawalRequestId:u,receiptTokenAddress:e}}return null}))).filter(u=>u!==null);return o.push(...d),o}}}import{wberaStakerVaultAbi as va}from"@berachain/abis/pol/wberaStakerVault";async function qu({vaultAddresses:e,publicClient:t}){v(t);try{let r=await Promise.all(e.map(async o=>await t.readContract({address:o,abi:va,functionName:"totalAssets"})));return e.reduce((o,i,l)=>(o[i]=r[l],o),{})}catch(r){throw console.error("Failed to get total staked amount",r),r}}async function Wu({account:e,...t}){let{config:r}=c(t),a=await fetch(`${r.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/rewards/aggregation`,{cache:"no-store"});if(!a.ok){let o=await le(a);throw new P({message:"Failed to fetch incentives on server",cause:{error:o,result:a,account:e},reason:o?.error})}return await a.json()}import{rewardVaultAbi as Ra}from"@berachain/abis/pol/rewards/rewardVault";async function Rt({account:e,vaultAddress:t,publicClient:r}){if(!r)throw new Error("Missing public client");if(!e)throw new Error("Missing user account");if(!t)throw new Error("Missing vault address");return await r.readContract({address:t,abi:Ra,functionName:"earned",args:[e]})}import{formatEther as xe}from"viem";import{rewardVaultAbi as Vt}from"@berachain/abis/pol/rewards/rewardVault";async function St({account:e,vaultAddress:t,publicClient:r}){v(r),we(e,"account"),we(t,"vaultAddress");try{let[a,o]=await Promise.all([r.readContract({address:t,abi:Vt,functionName:"balanceOf",args:[e]}),r.readContract({address:t,abi:Vt,functionName:"getTotalDelegateStaked",args:[e]})]);return{balance:a,delegated:o}}catch(a){throw console.log(a),a}}import{rewardVaultAbi as Va}from"@berachain/abis/pol/rewards/rewardVault";async function kt({vaultAddress:e,publicClient:t}){if(!t)throw new Error("Missing public client");if(!e)throw new Error("Missing vault address");try{return await t.readContract({address:e,abi:Va,functionName:"totalSupply",args:[]})}catch(r){throw console.log(r),r}}async function Zu({account:e,vaultAddress:t,publicClient:r}){let[a,o,i]=await Promise.all([St({account:e,vaultAddress:t,publicClient:r}),Rt({account:e,vaultAddress:t,publicClient:r}),kt({vaultAddress:t,publicClient:r})]),l=a.balance-a.delegated,n=i>0n?Number(Number.parseFloat(xe(a.balance))/Number.parseFloat(xe(i))).toString():"0";return{balance:a.balance,delegatedBalance:a.delegated,withdrawableBalance:l,rewards:xe(o),percentage:n}}import{formatUnits as Te}from"viem";import{rewardVaultAbi as Nt}from"@berachain/abis/pol/rewards/rewardVault";import{GetUserVaults as Sa}from"@berachain/graphql/pol/api";async function lc({account:e,publicClient:t,...r}){let{config:a}=c(r),l=(await b("api",r).query({query:Sa,variables:{userId:e,chain:a.bex.chainName}})).data?.userVaultDeposits?.deposits;if(!l)return{totalBgtRewards:"0",vaults:[],totalStakedValue:0};let[n,s]=await Promise.all([t.multicall({allowFailure:!1,contracts:l.map(g=>({address:g.vaultAddress,abi:Nt,functionName:"earned",args:[e]}))}),t.multicall({allowFailure:!1,contracts:l.map(g=>({address:g.vaultAddress,abi:Nt,functionName:"balanceOf",args:[e]}))})]),{userVaults:d,total:u}=l.reduce((g,p,A)=>{let C=n[A],B=s[A];if(g.total+=C,!p.vault)return M.captureException(new P({message:"Deposit data from API is missing vault",level:"error",extra:{deposit:p}})),console.error("Deposit data from API is missing vault",p),g;if(C>0n||B>0n){let y=p.vault.dynamicData?.tvl&&Number(p.vault.stakingTokenAmount)!==0?Number(p.vault.dynamicData?.tvl??0)/Number(p.vault.stakingTokenAmount):null;g.userVaults.push({...p,vault:p.vault,unclaimedBgt:Te(C,18),formattedBalance:Te(B,p.vault.stakingToken.decimals),stakingTokenPrice:y})}return g},{userVaults:[],total:0n}),m=[...d].sort((g,p)=>{if(g.vault.isVaultWhitelisted&&!p.vault.isVaultWhitelisted)return-1;if(!g.vault.isVaultWhitelisted&&p.vault.isVaultWhitelisted)return 1;let A=Number.parseFloat(g.unclaimedBgt);return Number.parseFloat(p.unclaimedBgt)-A});return{totalStakedValue:m.reduce((g,p)=>{let A=Number(p.vault.dynamicData?.tvl??0);if(A===0)return g;let C=Number.parseFloat(p.vault.stakingTokenAmount),B=A/C;return g+B*Number(p.formattedBalance)},0),totalBgtRewards:Te(u,18),vaults:m}}import{GetVaultHistory as ka}from"@berachain/graphql/pol/api";async function pc({vault:e,chain:t,...r}){let{config:a}=c(r);return(await b("api",r).query({query:ka,variables:{...r,vaultId:e,chain:t??a.bex.chainName}})).data.polGetRewardVaultSnapshots}import{GetVaultValidators as Na}from"@berachain/graphql/pol/api";async function yc({address:e,onlyActiveValidators:t,...r}){return(await b("api",r).query({query:Na,variables:{vaultId:e,isActive:t}})).data.validators.validators??[]}import{getAddress as Ga,zeroAddress as xa}from"viem";import{GetTokenCurrentPrices as Ta}from"@berachain/graphql/dex/api";async function Rc({addressIn:e,...t}){let{config:r,chainId:a}=c(t),o=e.map(n=>n.toLowerCase()).filter((n,s,d)=>n&&d.indexOf(n)===s),i=b("api",t),{data:l}=await i.query({query:Ta,variables:{chains:[r.bex.chainName],addressIn:o}});return l.tokenGetCurrentPrices.reduce((n,s)=>{if(!s.price||!s.address)return n;let d=s.address;return n[Ga(d)]={price:K(s.price.toString()),updatedAt:s.updatedAt,chainId:a},n[d.toLowerCase()]={price:K(s.price.toString()),updatedAt:s.updatedAt,chainId:a},V(d,"WBERA")&&(n[xa]={price:K(s.price.toString()),updatedAt:s.updatedAt,chainId:a},n[r.tokens.bgt.toLowerCase()]={price:K(s.price.toString()),updatedAt:s.updatedAt,chainId:a},n[r.tokens.bgt]={price:K(s.price.toString()),updatedAt:s.updatedAt,chainId:a}),n},{})}import{getPublicClient as Ea}from"@wagmi/core";import{erc20Abi as Fa,formatUnits as qa}from"viem";async function Gc({items:e,account:t,config:r}){j(e,"items"),j(r,"config"),j(t,"account");let a=Object.groupBy(e,i=>i.token.chainId);return(await Promise.allSettled(Object.entries(a).map(async([i,l])=>{if(!l)return[];let n=Ea(r,{chainId:Number(i)});return v(n,`publicClient ${i}`),(await n.multicall({contracts:l.map(u=>({address:u.token.address,abi:Fa,functionName:"allowance",args:[t,u.spender]}))})).map((u,m)=>{let f=l[m];return u.error?void 0:{token:f.token,spender:f.spender,amount:f.amount,allowance:{raw:u.result.toString(),formatted:qa(u.result,f.token.decimals)},needsApproval:u.result<BigInt(f.amount.raw)}}).filter(u=>!!u)}))).flatMap(i=>i.status==="fulfilled"?i.value:void 0).filter(i=>!!i)}import{getPublicClient as Qa,getWalletClient as Ua,switchChain as Wa}from"@wagmi/core";import{BaseError as La,createWalletClient as Oa,decodeErrorResult as Ma,HttpRequestError as Ha,http as _a}from"viem";import{ChainId as Ja,defaultChainId as Tt}from"@berachain/config/internal";import{AbiFunctionSignatureNotFoundError as Ia,decodeFunctionData as Da}from"viem";async function Gt({publicClient:e,abi:t,...r}){let a=[...se,...t??[]],o,i,l,n,s,d,u;if("txHash"in r){let m=await e.getTransaction({hash:r.txHash});if(!m.to)throw new x({property:"tx",value:m,expected:"Transaction",message:"Trying to get revert reason for a contract creation"});s=m.input,i=m.to,l=m.from,n=m.value,o=m.blockNumber}else if(o=r.blockNumber,i=r.to,l=r.account,n=r.value,"data"in r)s=r.data;else if("functionName"in r&&"args"in r)d=r.functionName,u=r.args;else if(!n)throw new x({property:"dataOrFunctionNameAndArgs",value:r,expected:"Hex or FunctionName and Args"});try{if(!a)if(s)await e.call({data:s,to:i,account:l,blockNumber:o,value:n});else throw new Error("Data is required if abi is not provided");if("functionName"in r&&"args"in r&&r.functionName)d=r.functionName,u=r.args;else if(s){if(!a){let m=await e.call({data:s,to:i,account:l,blockNumber:o,value:n});throw new Error(`Getting revert reason for successful simulation. Data: ${s}`,{cause:m})}try{let m=Da({abi:a,data:s});d=m.functionName,u=m.args}catch(m){throw m instanceof Ia&&await e.call({data:s,to:i,account:l,blockNumber:o,value:n}),new Error("Data is required if abi is not provided")}}else throw new Error("No data or function name and args provided");throw a&&d?(await e.simulateContract({functionName:d,args:u,abi:a,address:i,account:l,blockNumber:o}),new H({message:"Getting revert reason for successful simulation",functionName:d,to:i,txHash:"txHash"in r?r.txHash:void 0,input:r})):new Error("No data or function name and args provided")}catch(m){if(m instanceof Error)return ee({error:m,abi:a,revertIfUnknown:!0});throw m}}var $a=Oe(1),xt=(e,t)=>e*(100n+BigInt(t))/100n;function Ee({nonceResult:e,onWarning:t}){if(e.status==="fulfilled"){if(e.value&&e.value>Number.MAX_SAFE_INTEGER){t?.(new P({message:"Nonce is too large. No nonce will be provided to avoid IntegerOutOfRangeError.",cause:e.value,level:"debug"}));return}return e.value}}function ja(e=Tt){return e===Ja.BEPOLIA?process.env.NEXT_PUBLIC_80069_ANVIL_IMPERSONATE_ACCOUNT==="true":process.env.NEXT_PUBLIC_80094_ANVIL_IMPERSONATE_ACCOUNT==="true"}async function Xc(e){if(process.env.NODE_ENV==="development"&&!e.contractName&&e.address&&!("calls"in e||e.calls))throw console.warn("beraWriteContract: Contract name is required. Either update the contract mapping in devrel or provide a contract name in ContractName enum","This is a development error and will be thrown in development mode only."),new x({property:"contractName",value:e.contractName,expected:"ContractName",displayMessage:`[DEV] Contract name is required as it's not mapped in the devrel's contract mapping ${e.address}`,level:"error"});let{address:t,calls:r,value:a,gasLimit:o,onLoading:i,onSuccess:l,onWarning:n,onError:s,onSubmission:d,wagmiConfig:u,walletClient:m,account:f,txConfirmationTimeout:g=12e4,chainId:p=Tt,impersonateAccount:A=ja(p),errorsAbi:C=[],pollingInterval:B=$a,...y}=e;i?.(e);let q="data"in y?y.data:void 0,N=[...se,...C,..."abi"in y&&y.abi&&Array.isArray(y.abi)?y.abi:[]],T=m;if(!u){s?.(new x({property:"wagmiConfig",value:u,expected:"Config"}),e);return}if(!(T?.account?.type==="local"))try{await Wa(u,{chainId:p})}catch(R){let G=R;s?.(new P({cause:G,displayMessage:"There was an error switching to the chain."}),e);return}if(!T)try{T=await Ua(u,{chainId:p})}catch(R){s?.(new P({cause:R,displayMessage:"There was an error connecting to the wallet."}),e);return}if(!T){s?.(new x({displayMessage:"There was an error connecting to the wallet.",property:"walletClient",value:T,expected:"WalletClient"}),e);return}let I=f||T.account;if(!I){s?.(new x({property:"account",value:I,expected:"Account"}),e);return}let ie=typeof I=="string"?I:I.address,W=Qa(u,{chainId:p});try{v(W)}catch(R){s?.(R,e);return}if(A){let R=Pe(p);await R.impersonateAccount({address:ie}),T=Oa({transport:_a(R.transport.url),account:I,chain:T.chain})}let E,Z={calls:"calls"in y?y.calls:void 0,params:"params"in y?y.params:void 0,value:a,data:"data"in y?y.data:void 0};try{let R=W.getTransactionCount({address:ie,blockTag:"latest"}).catch(()=>{}),G={account:ie,to:t,address:t,chainId:p,value:a};if(r){let F=r.map(h=>{if("abi"in h&&Array.isArray(N)&&N.push(...h.abi),"data"in h)return{to:h.address,data:h.data,value:h.value??0n};if("abi"in h&&"functionName"in h){let L="params"in h?h.params:void 0;return{to:h.address,abi:h.abi,functionName:h.functionName,args:L,value:h.value??0n}}return{to:h.address,value:h.value??0n}});if(e.enableSimulateCalls){let h=await W.simulateCalls({calls:F,account:I}),L=h.results.findIndex(O=>O.status==="failure");if(L!==-1){if(h.block.number===null)throw new x({property:"blockNumber",value:h.block.number,expected:"bigint",message:"Block number is null"});let O=h.results[L],{reason:he}=O.data&&O.data!=="0x"?{reason:Ie(Ma({data:O.data,abi:N}))}:ee({error:O.error,revertIfUnknown:!1,abi:N});s?.(new H({cause:O.error,txHash:E,chainId:p,reason:he,abi:N,input:Z,blockNumber:h.block.number}),e);return}}if(process.env.NODE_ENV==="test")throw new x({displayMessage:"Batch calls are not supported in test environment",expected:"not test",property:"NODE_ENV",value:process.env.NODE_ENV,level:"fatal"});let Q=await T.sendCalls({calls:F,account:I,forceAtomic:!0});d?.({id:Q.id},e);let U=await T.waitForCallsStatus({id:Q.id,pollingInterval:B,timeout:g});if(U.status==="success"){let h=U.receipts?.[0];if(!h)throw new P({message:"Call status is success but no receipt was found",cause:U,level:"error",reason:"CALL_STATUS_SUCCESS_BUT_NO_RECEIPT"});return l?.(h,e),h}throw console.error("wallet_sendCalls: Call failed",U),new H({cause:U,level:"error",input:Z,txHash:E,abi:N,chainId:p})}if(q){let[F,Q,U]=await Promise.allSettled([W.call({...G,data:q}),o??W.estimateGas({...G,data:q}),R]);if(F.status==="rejected")throw F.reason;let h=Q.status==="fulfilled"?xt(Q.value,10):Ce;E=await T.sendTransaction({data:q,to:t,account:I,gas:h,chainId:p,nonce:Ee({nonceResult:U,onWarning(L){n?.(L,e)}}),value:a}),d?.({txHash:E},e)}else if("abi"in y&&"functionName"in y){let{abi:F,functionName:Q}=y,U="params"in y?y.params:void 0,[h,L,O]=await Promise.allSettled([W.simulateContract({...G,abi:N,functionName:Q,args:U,account:I}),o??W.estimateContractGas({...G,abi:N,functionName:Q,args:U}),R]);if(h.status==="rejected")throw h.reason;let he=o??(L.status==="fulfilled"?xt(L.value,10):Ce);E=await T.writeContract({...h.value.request,chainId:p,gas:he,nonce:Ee({nonceResult:O,onWarning(Qt){n?.(Qt,e)}})}),d?.({txHash:E},e)}else{let[F]=await Promise.allSettled([R]);E=await T.sendTransaction({chainId:p,to:t,value:a,account:I,nonce:Ee({nonceResult:F,onWarning(Q){n?.(Q,e)}})}),d?.({txHash:E},e)}process.env.NODE_ENV==="test"&&await Pe(p).mine({blocks:1});let J=await W.waitForTransactionReceipt({hash:E,pollingInterval:B,timeout:g,confirmations:1});if(J.status==="success")l?.(J,e);else{let F=await Gt({publicClient:W,blockNumber:J.blockNumber,to:t,account:ie,abi:N,args:"params"in y?y.params:void 0,functionName:"functionName"in y?y.functionName:void 0,value:a,data:q});process.env.NODE_ENV==="test"&&console.error("beraWriteContract: Revert reason",F),s?.(new H({reason:F.reason,txHash:E,receipt:J,to:t,functionName:"functionName"in y?y.functionName:void 0,input:Z,chainId:p,abi:N,blockNumber:J.blockNumber}),e)}return J}catch(R){if(R instanceof P)s?.(R,e);else if(R instanceof Error){let G=ee({error:R,revertIfUnknown:!1,abi:N});if(G&&G.rootCause instanceof La&&"url"in G.rootCause){s?.(new $({cause:G.rootCause,response:void 0,endpoint:{url:G.rootCause.url,type:"rpc"},statusCode:G.rootCause instanceof Ha?G.rootCause.status:void 0}),e);return}s?.(new H({cause:R,to:t,txHash:E,chainId:p,abi:N,functionName:"functionName"in y?y.functionName:void 0,input:Z}),e)}else s?.(new H({cause:R,txHash:E,to:t,chainId:p,functionName:"functionName"in y?y.functionName:void 0,input:Z,abi:N}),e)}}import{GetValidators as Ka}from"@berachain/graphql/pol/api";async function Et({variables:e={},...t}={}){let{config:r}=c(t);return(await b("api",t).query({query:Ka,variables:{chain:r.bex.chainName,...e}})).data}import{isAddressEqual as Ya}from"viem";async function id({allocation:e}){let t=await ge({filter:{where:{vaultAddressIn:e.weights.map(a=>a.receiver)}}}),r=e?.start.blockNumber??0;return e?.weights.map(a=>({percentage:a.percentage,receiver:a.receiver,startBlock:r,receivingVault:t?.gaugeList.find(o=>Ya(o.address,a.receiver))}))}import{GetValidator as za}from"@berachain/graphql/pol/api";async function dd({id:e,...t}){let{config:r}=c(t);return(await b("api",t).query({query:za,variables:{id:e,chain:r.bex.chainName}})).data}import{GetValidatorBlockStats as Xa}from"@berachain/graphql/pol/subgraph";async function gd({pubKey:e,first:t=1,...r}){let a=b("pol.subgraph",r);try{return(await a.query({query:Xa,variables:{pubKey:e,first:t}})).data}catch(o){throw console.error("GetValidatorBlockStats:",o),o}}import{beraChefAbi as Ft}from"@berachain/abis/pol/rewards/beraChef";function X(e,t){return{start:{blockNumber:Number(e.startBlock),timestamp:e.startBlock!==0n?t:0},weights:e.weights.map(r=>({receiver:r.receiver,percentage:Number(r.percentageNumerator)/1e4}))}}function Za(e,t){return e.start.blockNumber===t.start.blockNumber&&e.weights.every((r,a)=>r.percentage===t.weights[a].percentage)}async function hd({client:e,pubKey:t,...r}){let{config:a}=c(r);try{let[o,i]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:Ft,functionName:"getActiveRewardAllocation",args:[t]}),e.readContract({address:a.pol.beraChef,abi:Ft,functionName:"getSetActiveRewardAllocation",args:[t]})]),[l,n]=await Promise.all([o.startBlock!==0n?e.getBlock({blockNumber:BigInt(o.startBlock)}):{timestamp:0},i.startBlock!==0n?e.getBlock({blockNumber:BigInt(i.startBlock)}):{timestamp:0}]),s=X(o,Number(l.timestamp)),d=X(i,Number(n.timestamp)),u=!1;return d.start.blockNumber===0?u=!0:u=!Za(d,s),{activeRewardAllocation:s,setRewardAllocation:d,isBaseline:u,isNeverSet:d?.start.blockNumber===0}}catch(o){throw console.log("getValidatorRewardAllocation:",o),o}}import{beraChefAbi as eo}from"@berachain/abis/pol/rewards/beraChef";function vd(e){return e.start.blockNumber===0}async function Rd({client:e,...t}){let{config:r}=c(t),a=await e.readContract({address:r.pol.beraChef,abi:eo,functionName:"getDefaultRewardAllocation",args:[]});return X({...a,startBlock:0n},0)}async function Sd({client:e,valPubKey:t}){return 5614}import{formatEther as Ae}from"viem";import{bgtAbi as Fe}from"@berachain/abis/pol/bgt";async function qt({account:e,pubkey:t,publicClient:r,...a}){let{config:o}=c(a);if(!e)throw new Error("account is required");if(!r)throw new Error("publicClient is required");let[i,l,n]=await Promise.all([r.readContract({address:o.tokens.bgt,abi:Fe,functionName:"boosted",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:Fe,functionName:"boostedQueue",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:Fe,functionName:"dropBoostQueue",args:[e,t]})]),s=i-n[1];return{pubkey:t,droppableBoostAmount:Ae(s),activeBoostAmount:Ae(i),queuedBoostAmount:Ae(l[1]),queuedDropBoostAmount:Ae(n[1]),queuedBoostStartBlock:l[0],queuedDropBoostStartBlock:n[0],hasPendingBoosts:l[1]>0n||n[1]>0n,hasActiveBoosts:i>0n,hasDroppableBoosts:s>0n}}import{formatEther as ro,parseEther as Dt}from"viem";import{GetUserValidatorInformation as to}from"@berachain/graphql/pol/api";async function It({account:e,...t}){let{config:r}=c(t);return await b("api",t).query({query:to,variables:{address:e.toLowerCase(),chain:r.bex.chainName}})}async function Od({account:e,publicClient:t,chain:r,...a}){let{config:o}=c(a),i=r??o.bex.chainName,l=await It({account:e}),[n,s]=await Promise.all([Et({variables:{chain:i,where:{idIn:l.data.polGetValidatorBoosts.boosts.map(d=>d.validatorId)}}}),Promise.all(l.data.polGetValidatorBoosts.boosts.filter(d=>!!d.validator).map(d=>qt({account:e,pubkey:d.validator.pubkey,publicClient:t})))]);return n?.validators.validators.map(d=>{let u=s.find(f=>f.pubkey.toLowerCase()===d.pubkey.toLowerCase());if(!u)throw new Error("User deposited not found");let m=Dt(u?.activeBoostAmount??"0")-Dt(u?.queuedDropBoostAmount);return{...d,userBoosts:{pubkey:u.pubkey,activeBoostAmount:u?.activeBoostAmount,queuedBoostAmount:u?.queuedBoostAmount,queuedBoostStartBlock:Number(u?.queuedBoostStartBlock),queuedDropBoostAmount:u?.queuedDropBoostAmount,queuedDropBoostStartBlock:Number(u?.queuedDropBoostStartBlock),droppableBoostAmount:ro(m),hasPendingBoosts:Number(u?.queuedBoostAmount)>0||Number(u?.queuedDropBoostAmount)>0,hasActiveBoosts:Number(u?.activeBoostAmount)>0,hasDroppableBoosts:m>0n}}})}var ao=[{validatorAddress:"0x8f51e63d9921a461be29e73dca1c2385e1adc5943fbb36ded4ba96025ee8a783184d1118da08171f6ea831153c878a6d",earning:.045,staked:{amount:16114000000000000000n,formattedAmount:"161.14"},rewards:{amount:15214000000000000000n,formattedAmount:"152.14"}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0x97b21253b17f4e814fe7505c15c18e68c85ab2477274ad370a762df50e3eb4cb1a48451e089bc22e158d7448549a8ab9",earning:.045,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:16159000000000000000n,formattedAmount:"161.59"}],unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:S(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:S(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:S(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:S(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:S(Date.now()-72e6)}]}},{staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},validatorAddress:"0xa2705d6b27891f3f5651f26547d1bb79e256f95f249d1ad717cef087d77d38b037e5d6dbaa2538930fd0731ec9b02f3a",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:16159000000000000000n,formattedAmount:"161.59",timestamp:S(Date.now()-72e6)}]}},{staked:{amount:241514000000000000000n,formattedAmount:"2415.14"},validatorAddress:"0xa4e4b63514f54d61da5197359f11ff1fc2930788ba2ffdd30c2fc059cbe0221020197bf9446b16ac347f36c7517a8686",earning:.145,rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{unstake:[{amount:1159000000000000000n,formattedAmount:"11.59",timestamp:S(Date.now()-36e6)}]}},{validatorAddress:"0xb0511ec039591e98bd4e183ba70b85572214a7ad8ca1a43e96ad3495d3821054927bc542e5482ec9733e35b7ef0b1f03",earning:.045,staked:{amount:141514000000000000000n,formattedAmount:"1415.14"},rewards:{amount:15414000000000000000n,formattedAmount:"154.14"},queueData:{stake:[{amount:1159000000000000000n,formattedAmount:"11.59"}]}}];async function _d(e){return await new Promise(t=>setTimeout(t,2e3)),e==="0x4C368fFE3650379d6318C8d4630bc51f8Ad12bB6"?ao:[]}import{GetValidatorAnalytics as oo}from"@berachain/graphql/pol/subgraph";async function Yd({pubkey:e,dayRange:t,...r}){return(await b("pol.subgraph",r).query({query:oo,variables:{pubKey:e,timestamp:_e(t).toString()}})).data}import{beraChefAbi as no}from"@berachain/abis/pol/rewards/beraChef";async function em({client:e,pubKey:t,...r}){let{config:a}=c(r),o=await e.readContract({address:a.pol.beraChef,abi:no,functionName:"getValCommissionOnIncentiveTokens",args:[t]});return Number(o??0n)/1e4}var am=(e,t,r)=>{if(!t||!e)return 0;let a=te(1)/r;return(t?a*(Number(e.dynamicData?.stakedBeraAmount)/t):0)*Number.parseFloat(e.dynamicData?.rewardRate??"0")};import{beaconDepositAbi as io}from"@berachain/abis/pol/beaconDeposit";async function sm({client:e,pubKey:t,...r}){let{config:a}=c(r);try{return await e.readContract({address:a.depositContract,abi:io,functionName:"getOperator",args:[t]})}catch(o){throw console.log("getValidatorOperatorAddress:",o),o}}import{beraChefAbi as so}from"@berachain/abis/pol/rewards/beraChef";async function dm({client:e,pubKey:t,...r}){let{config:a}=c(r),o=await e.readContract({address:a.pol.beraChef,abi:so,functionName:"getValQueuedCommissionOnIncentiveTokens",args:[t]});return{blockNumberLast:o.blockNumberLast,commissionRate:Number(o.commissionRate)/1e4}}import{beaconDepositAbi as lo}from"@berachain/abis/pol/beaconDeposit";async function gm({client:e,pubKey:t,...r}){let{config:a}=c(r);try{return await e.readContract({address:a.depositContract,abi:lo,functionName:"queuedOperator",args:[t]})}catch(o){throw console.log("getValidatorQueuedOperatorAddress:",o),o}}import{beraChefAbi as uo}from"@berachain/abis/pol/rewards/beraChef";async function wm({client:e,pubKey:t,...r}){let{config:a}=c(r);try{let o=await e.readContract({address:a.pol.beraChef,abi:uo,functionName:"getQueuedRewardAllocation",args:[t]});return X(o,0)}catch(o){throw console.log("getValidatorQueuedRewardAllocation:",o),o}}export{fo as a,de as b,b as c,To as d,Ye as e,Oo as f,Zo as g,on as h,cn as i,Xe as j,Cn as k,Vn as l,Tn as m,Y as n,Dn as o,pe as p,On as q,_n as r,Yn as s,nt as t,ni as u,ui as v,pi as w,yi as x,it as y,Ve as z,lt as A,_i as B,Ki as C,Mr as D,es as E,is as F,ft as G,bs as H,gt as I,Ns as J,qs as K,Us as L,ta as M,Hs as N,$s as O,zs as P,ge as Q,Vl as R,Ct as S,El as T,Ql as U,Ml as V,Kl as W,ru as X,nu as Y,cu as Z,gu as _,oe as $,vu as aa,xu as ba,qu as ca,Wu as da,Rt as ea,Zu as fa,lc as ga,pc as ha,yc as ia,Rc as ja,Gc as ka,ja as la,Xc as ma,Et as na,id as oa,dd as pa,gd as qa,X as ra,Za as sa,hd as ta,vd as ua,Rd as va,Sd as wa,qt as xa,Od as ya,_d as za,Yd as Aa,em as Ba,am as Ca,sm as Da,dm as Ea,gm as Fa,wm as Ga};
4
+ //# sourceMappingURL=chunk-IBJOI5SN.mjs.map