@berachain/berajs 0.1.0 → 0.1.2
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.
- package/dist/{dex-jD95agMv.d.cts → HoneyConfigProvider-6PXZJMSU.d.cts} +172 -172
- package/dist/{dex-CxzGqVLe.d.ts → HoneyConfigProvider-CwDFrt02.d.ts} +172 -172
- package/dist/abi/index.cjs +2 -1
- package/dist/abi/index.cjs.map +1 -0
- package/dist/abi/index.mjs +2 -1
- package/dist/abi/index.mjs.map +1 -0
- package/dist/actions/index.cjs +2 -1
- package/dist/actions/index.cjs.map +1 -0
- package/dist/actions/index.d.cts +8 -8
- package/dist/actions/index.d.ts +8 -8
- package/dist/actions/index.mjs +2 -1
- package/dist/actions/index.mjs.map +1 -0
- package/dist/chunk-22MQVFHP.cjs +2 -0
- package/dist/chunk-22MQVFHP.cjs.map +1 -0
- package/dist/chunk-3TKSVFZ3.mjs +2 -0
- package/dist/chunk-3TKSVFZ3.mjs.map +1 -0
- package/dist/chunk-6VF3RF53.cjs +3 -0
- package/dist/chunk-6VF3RF53.cjs.map +1 -0
- package/dist/{chunk-2422CKAT.mjs → chunk-6W22TFYA.mjs} +2 -1
- package/dist/chunk-6W22TFYA.mjs.map +1 -0
- package/dist/chunk-AMRJ4B36.mjs +2 -0
- package/dist/chunk-AMRJ4B36.mjs.map +1 -0
- package/dist/{chunk-4IBBLGNS.mjs → chunk-DS2ZDVKU.mjs} +1 -0
- package/dist/chunk-DS2ZDVKU.mjs.map +1 -0
- package/dist/{chunk-B47PDJZM.cjs → chunk-ED43NYSE.cjs} +2 -1
- package/dist/chunk-ED43NYSE.cjs.map +1 -0
- package/dist/chunk-EU4WFADK.cjs +2 -0
- package/dist/chunk-EU4WFADK.cjs.map +1 -0
- package/dist/{chunk-ASRHUDAH.mjs → chunk-HCTFDGXL.mjs} +1 -0
- package/dist/chunk-HCTFDGXL.mjs.map +1 -0
- package/dist/{chunk-K4NZIO2Z.mjs → chunk-IOSYBHKU.mjs} +1 -0
- package/dist/chunk-IOSYBHKU.mjs.map +1 -0
- package/dist/{chunk-4GY57XKG.cjs → chunk-JMKLDDKY.cjs} +1 -0
- package/dist/chunk-JMKLDDKY.cjs.map +1 -0
- package/dist/chunk-KMKUXP2S.mjs +3 -0
- package/dist/chunk-KMKUXP2S.mjs.map +1 -0
- package/dist/chunk-OJXJ6CZ4.mjs +4 -0
- package/dist/chunk-OJXJ6CZ4.mjs.map +1 -0
- package/dist/{chunk-VA37UBED.mjs → chunk-PHIOKO3A.mjs} +2 -1
- package/dist/chunk-PHIOKO3A.mjs.map +1 -0
- package/dist/{chunk-IKAE7CQU.cjs → chunk-QCK474XD.cjs} +1 -0
- package/dist/chunk-QCK474XD.cjs.map +1 -0
- package/dist/chunk-REDXXUK7.cjs +2 -0
- package/dist/chunk-REDXXUK7.cjs.map +1 -0
- package/dist/{chunk-K2FCHQHA.cjs → chunk-S74ZMG2G.cjs} +2 -1
- package/dist/chunk-S74ZMG2G.cjs.map +1 -0
- package/dist/{chunk-NOV7UCGA.cjs → chunk-TOAXF4YW.cjs} +1 -0
- package/dist/chunk-TOAXF4YW.cjs.map +1 -0
- package/dist/chunk-UZ5CB33M.cjs +2 -0
- package/dist/chunk-UZ5CB33M.cjs.map +1 -0
- package/dist/chunk-VYWYJR63.mjs +2 -0
- package/dist/chunk-VYWYJR63.mjs.map +1 -0
- package/dist/{chunk-WZLPSG5R.cjs → chunk-XFPTQMAK.cjs} +3 -2
- package/dist/chunk-XFPTQMAK.cjs.map +1 -0
- package/dist/chunk-YK4NINF5.mjs +2 -0
- package/dist/chunk-YK4NINF5.mjs.map +1 -0
- package/dist/contexts/index.cjs +2 -1
- package/dist/contexts/index.cjs.map +1 -0
- package/dist/contexts/index.d.cts +7 -5
- package/dist/contexts/index.d.ts +7 -5
- package/dist/contexts/index.mjs +2 -1
- package/dist/contexts/index.mjs.map +1 -0
- package/dist/enum/index.cjs +2 -1
- package/dist/enum/index.cjs.map +1 -0
- package/dist/enum/index.d.cts +1 -1
- package/dist/enum/index.d.ts +1 -1
- package/dist/enum/index.mjs +2 -1
- package/dist/enum/index.mjs.map +1 -0
- package/dist/errors/index.cjs +2 -1
- package/dist/errors/index.cjs.map +1 -0
- package/dist/errors/index.d.cts +1 -1
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.mjs +2 -1
- package/dist/errors/index.mjs.map +1 -0
- package/dist/{getValidatorQueuedOperatorAddress-9jSXlAse.d.ts → getValidatorQueuedOperatorAddress-9xY2RUGe.d.cts} +2 -2
- package/dist/{getValidatorQueuedOperatorAddress-BCYlvah3.d.cts → getValidatorQueuedOperatorAddress-Ne2zoiiV.d.ts} +2 -2
- package/dist/hooks/index.cjs +3 -2
- package/dist/hooks/index.cjs.map +1 -0
- package/dist/hooks/index.d.cts +9 -9
- package/dist/hooks/index.d.ts +9 -9
- package/dist/hooks/index.mjs +3 -2
- package/dist/hooks/index.mjs.map +1 -0
- package/dist/{staking-Bw46L2PT.d.ts → staking-F9Nx9TKD.d.ts} +1 -1
- package/dist/{staking-BxYDlMtj.d.cts → staking-f4BpYH7l.d.cts} +1 -1
- package/dist/{txnEnum-Diichv9Z.d.cts → txnEnum-BQKDfaeH.d.cts} +1 -0
- package/dist/{txnEnum-Diichv9Z.d.ts → txnEnum-BQKDfaeH.d.ts} +1 -0
- package/dist/types/index.cjs +2 -1
- package/dist/types/index.cjs.map +1 -0
- package/dist/types/index.d.cts +5 -5
- package/dist/types/index.d.ts +5 -5
- package/dist/types/index.mjs +2 -1
- package/dist/types/index.mjs.map +1 -0
- package/dist/{useHoneySwapState-YfMSTWY3.d.cts → useHoneySwapState-C-9BV4VB.d.cts} +1 -1
- package/dist/{useHoneySwapState-CD8v6y1k.d.ts → useHoneySwapState-CUY5Sm1b.d.ts} +1 -1
- package/dist/utils/index.cjs +2 -1
- package/dist/utils/index.cjs.map +1 -0
- package/dist/utils/index.d.cts +5 -5
- package/dist/utils/index.d.ts +5 -5
- package/dist/utils/index.mjs +2 -1
- package/dist/utils/index.mjs.map +1 -0
- package/package.json +4 -3
- package/src/abi/bend/bundler.ts +60 -0
- package/src/abi/bend/generalAdapter.ts +362 -0
- package/src/abi/bend/metaMorpho.ts +2584 -0
- package/src/abi/bend/morpho.ts +444 -0
- package/src/abi/bend/morphoVault.ts +1456 -0
- package/src/abi/bend/publicAllocator.ts +355 -0
- package/src/abi/bex/aggregatorsRouter.ts +492 -0
- package/src/abi/bex/balancerComposableStablePoolFactoryV6.ts +283 -0
- package/src/abi/bex/balancerPoolCreationHelper.ts +267 -0
- package/src/abi/bex/balancerVault.ts +757 -0
- package/src/abi/enso/ensoRouterAbi.ts +140 -0
- package/src/abi/governance/governance.ts +1016 -0
- package/src/abi/governance/governanceTimelock.ts +589 -0
- package/src/abi/honey/collateralVault.ts +1144 -0
- package/src/abi/honey/honey.ts +563 -0
- package/src/abi/honey/honeyFactory.ts +1270 -0
- package/src/abi/honey/honeyFactoryReader.ts +894 -0
- package/src/abi/honey/honeyRootOracle.ts +492 -0
- package/src/abi/honey/pythPriceOracle.ts +619 -0
- package/src/abi/honey/pythWrapper.ts +446 -0
- package/src/abi/index.ts +35 -0
- package/src/abi/pol/beaconDeposit.ts +595 -0
- package/src/abi/pol/beraChef.ts +1019 -0
- package/src/abi/pol/bgt.ts +1008 -0
- package/src/abi/pol/bgtIncentiveDistributor.ts +640 -0
- package/src/abi/pol/bgtStaker.ts +1034 -0
- package/src/abi/pol/rewardAllocationFactory.ts +408 -0
- package/src/abi/pol/rewardVault.ts +1928 -0
- package/src/abi/pol/rewardVaultFactory.ts +586 -0
- package/src/abi/pol/rewardVaultHelper.ts +882 -0
- package/src/abi/pol/stakeBeraVault.ts +1116 -0
- package/src/abi/pol/stakeBeraVaultWithdrawalRequest.ts +618 -0
- package/src/abi/pol/wbera.ts +366 -0
- package/src/abi/pyth/pyth.ts +566 -0
- package/src/abi/pyth/pythErrors.ts +72 -0
- package/src/abi/utils/EIP7702StatelessDelegator.ts +523 -0
- package/src/abi/utils/bundler3errors.ts +6 -0
- package/src/abi/utils/commonAbiErrors.ts +9 -0
- package/src/abi/utils/erc20errors.ts +74 -0
- package/src/abi/utils/merkleDistributor.ts +838 -0
- package/src/abi/utils/multicall3.ts +242 -0
- package/src/abi/utils/openChainErrors.ts +139 -0
- package/src/abi/utils/upgradableBeacon.ts +86 -0
- package/src/actions/bend/getConvertToAssets.ts +23 -0
- package/src/actions/bend/getMaxDeposit.ts +21 -0
- package/src/actions/clients/BeraApolloClient.ts +125 -0
- package/src/actions/clients/getApolloClient.ts +109 -0
- package/src/actions/clients/getEnsoClient.ts +24 -0
- package/src/actions/dex/__tests__/aggregators.unit.test.ts +112 -0
- package/src/actions/dex/__tests__/allPools.integration.test.ts +13 -0
- package/src/actions/dex/__tests__/getOnChainPool.unit.test.ts +15 -0
- package/src/actions/dex/__tests__/haiku.integration.test.ts +40 -0
- package/src/actions/dex/aggregators/base.ts +174 -0
- package/src/actions/dex/aggregators/bex.ts +255 -0
- package/src/actions/dex/aggregators/bgt.ts +50 -0
- package/src/actions/dex/aggregators/enso.ts +113 -0
- package/src/actions/dex/aggregators/fly.ts +136 -0
- package/src/actions/dex/aggregators/haiku.ts +171 -0
- package/src/actions/dex/aggregators/honey.ts +245 -0
- package/src/actions/dex/aggregators/kyberswap.ts +142 -0
- package/src/actions/dex/aggregators/oogabooga.ts +110 -0
- package/src/actions/dex/aggregators/openOcean.ts +142 -0
- package/src/actions/dex/aggregators/wbera.ts +72 -0
- package/src/actions/dex/b-sdk.ts +48 -0
- package/src/actions/dex/getAllPools.ts +60 -0
- package/src/actions/dex/getApiPool.ts +47 -0
- package/src/actions/dex/getGlobalLiquidityAndSwapVolume.ts +29 -0
- package/src/actions/dex/getIsTokenExploited.ts +63 -0
- package/src/actions/dex/getOnChainPool.ts +216 -0
- package/src/actions/dex/getPoolEvents.ts +35 -0
- package/src/actions/dex/getPoolHistoricalData.ts +51 -0
- package/src/actions/dex/getPoolPausedState.ts +40 -0
- package/src/actions/dex/getPoolWithState.ts +24 -0
- package/src/actions/dex/getSubgraphPool.ts +30 -0
- package/src/actions/dex/getTransactionCount.ts +29 -0
- package/src/actions/dex/getVaultPausedState.ts +21 -0
- package/src/actions/enso/bend.ts +143 -0
- package/src/actions/enso/getEnsoUserToken.debug.test.ts +57 -0
- package/src/actions/enso/getEnsoUserToken.ts +133 -0
- package/src/actions/enso/util.ts +60 -0
- package/src/actions/enso/zap.ts +78 -0
- package/src/actions/governance/__tests__/checkProposalField.unit.test.ts +108 -0
- package/src/actions/governance/__tests__/getDecodedFunctionData.integration.test.ts +127 -0
- package/src/actions/governance/__tests__/getQuorum.integration.test.ts +39 -0
- package/src/actions/governance/checkProposalField.ts +211 -0
- package/src/actions/governance/computeActualStatus.ts +154 -0
- package/src/actions/governance/constants.ts +7 -0
- package/src/actions/governance/getAllProposals.ts +75 -0
- package/src/actions/governance/getBodyErrors.ts +28 -0
- package/src/actions/governance/getDecodedFunctionData.ts +170 -0
- package/src/actions/governance/getProposalDetails.ts +40 -0
- package/src/actions/governance/getProposalFromTx.ts +101 -0
- package/src/actions/governance/getProposalParams.ts +247 -0
- package/src/actions/governance/getProposalVotes.ts +20 -0
- package/src/actions/governance/getQuorum.ts +38 -0
- package/src/actions/governance/parseProposalBody.ts +73 -0
- package/src/actions/honey/getChartData.ts +27 -0
- package/src/actions/honey/getCollateralWeights.ts +50 -0
- package/src/actions/honey/getGlobalCapLimit.ts +148 -0
- package/src/actions/honey/getHoneyCollaterals.ts +139 -0
- package/src/actions/honey/getHoneyFees.ts +100 -0
- package/src/actions/honey/getHoneyGlobalData.ts +21 -0
- package/src/actions/honey/getHoneyPausedState.ts +25 -0
- package/src/actions/honey/getHoneyPreview.ts +152 -0
- package/src/actions/honey/getHoneyPythPriceOracle.ts +21 -0
- package/src/actions/honey/getHoneyRootPriceOracle.ts +23 -0
- package/src/actions/honey/getHoneyVaultsBalance.ts +86 -0
- package/src/actions/honey/getPythLatestPrices.ts +54 -0
- package/src/actions/honey/getRelativeCapLimit.ts +83 -0
- package/src/actions/honey/getSharesWithoutFees.ts +65 -0
- package/src/actions/honey/getSwapPayload.ts +128 -0
- package/src/actions/honey/isBadCollateralAsset.ts +77 -0
- package/src/actions/honey/isBasketModeEnabled.ts +47 -0
- package/src/actions/honey/tests/pyth.integration.test.ts +63 -0
- package/src/actions/index.ts +105 -0
- package/src/actions/misc/getBlockTimestamp.ts +41 -0
- package/src/actions/pol/__tests__/getAllValidators.integration.test.ts +55 -0
- package/src/actions/pol/__tests__/getValidator.integration.test.ts +32 -0
- package/src/actions/pol/__tests__/rewardVaults.integration.test.ts +34 -0
- package/src/actions/pol/getBGTGlobalInfo.ts +43 -0
- package/src/actions/pol/getBgtAprSimulation.ts +207 -0
- package/src/actions/pol/getBgtAprSimultaion.unit.test.ts +297 -0
- package/src/actions/pol/getBgtTokenTotalBoosts.ts +30 -0
- package/src/actions/pol/getBgtTokenTotalSupply.ts +29 -0
- package/src/actions/pol/getBlockTime.ts +43 -0
- package/src/actions/pol/getGlobalCuttingBoard.ts +25 -0
- package/src/actions/pol/getGlobalData.ts +74 -0
- package/src/actions/pol/getIncentiveFeeClaimStats.ts +43 -0
- package/src/actions/pol/getMarkets.ts +36 -0
- package/src/actions/pol/getRewardProofsByValidator.ts +49 -0
- package/src/actions/pol/getRewardTokenToBeraRate.ts +30 -0
- package/src/actions/pol/getRewardVault.ts +54 -0
- package/src/actions/pol/getRewardVaultBeaconImplementation.integration.test.ts +18 -0
- package/src/actions/pol/getRewardVaultBeaconImplementation.ts +35 -0
- package/src/actions/pol/getRewardVaultDurationConstants.integration.test.ts +24 -0
- package/src/actions/pol/getRewardVaultDurationConstants.ts +45 -0
- package/src/actions/pol/getRewardVaultFromToken.ts +30 -0
- package/src/actions/pol/getRewardVaultIncentives.ts +122 -0
- package/src/actions/pol/getRewardVaultRewards.ts +109 -0
- package/src/actions/pol/getRewardVaultStakingToken.ts +19 -0
- package/src/actions/pol/getRewardVaults.ts +106 -0
- package/src/actions/pol/getSWBeraVaultMetadata.ts +166 -0
- package/src/actions/pol/getSWBeraWithdrawal.ts +165 -0
- package/src/actions/pol/getStakeWithdrawalCooldown.ts +21 -0
- package/src/actions/pol/getStakedBeraAPR.ts +56 -0
- package/src/actions/pol/getStakedBeraSnapshots.ts +48 -0
- package/src/actions/pol/getStakingTokenInformation.ts +60 -0
- package/src/actions/pol/getUserClaimableIncentives.ts +40 -0
- package/src/actions/pol/getUserVaultInfo.ts +52 -0
- package/src/actions/pol/getUserVaults.ts +185 -0
- package/src/actions/pol/getUserVaultsBalance.ts +54 -0
- package/src/actions/pol/getUserVaultsReward.ts +32 -0
- package/src/actions/pol/getVaultHistory.ts +43 -0
- package/src/actions/pol/getVaultValidators.ts +31 -0
- package/src/actions/pol/getVaultsSupply.ts +28 -0
- package/src/actions/prices/__tests__/prices.integration.test.ts +29 -0
- package/src/actions/prices/getTokenCurrentPrices.ts +79 -0
- package/src/actions/pyth/getHoneyPythFeeds.ts +46 -0
- package/src/actions/pyth/getUpdateFee.ts +27 -0
- package/src/actions/tokens/getAllowances.ts +59 -0
- package/src/actions/tokens/getTokenInformation.ts +57 -0
- package/src/actions/tokens/getTokens.ts +19 -0
- package/src/actions/tokens/getWalletBalances.integration.test.ts +40 -0
- package/src/actions/tokens/getWalletBalances.ts +123 -0
- package/src/actions/transactions/beraWriteContract.integration.test.ts +251 -0
- package/src/actions/transactions/beraWriteContract.ts +722 -0
- package/src/actions/validators/getActiveBoostAndCommissionChangeDelay.integration.test.ts +40 -0
- package/src/actions/validators/getActiveBoostAndCommissionChangeDelay.ts +109 -0
- package/src/actions/validators/getAllValidators.ts +33 -0
- package/src/actions/validators/getApiEnrichedAllocation.ts +33 -0
- package/src/actions/validators/getApiValidator.ts +38 -0
- package/src/actions/validators/getBaselineRewardAllocation.ts +26 -0
- package/src/actions/validators/getDailyValidatorBlockStats.ts +37 -0
- package/src/actions/validators/getDefaultRewardAllocation.ts +39 -0
- package/src/actions/validators/getManagedValidatorByAccount.ts +32 -0
- package/src/actions/validators/getStakingPoolBatch.ts +20 -0
- package/src/actions/validators/getUserActiveValidators.ts +101 -0
- package/src/actions/validators/getUserBoosts.ts +28 -0
- package/src/actions/validators/getUserBoostsOnValidator.ts +70 -0
- package/src/actions/validators/getUserStakingPositions.ts +225 -0
- package/src/actions/validators/getValidatorAnalytics.ts +34 -0
- package/src/actions/validators/getValidatorCommission.ts +24 -0
- package/src/actions/validators/getValidatorEstimatedBgtPerYear.ts +25 -0
- package/src/actions/validators/getValidatorOperatorAddress.ts +27 -0
- package/src/actions/validators/getValidatorQueuedCommission.ts +30 -0
- package/src/actions/validators/getValidatorQueuedOperatorAddress.ts +32 -0
- package/src/actions/validators/getValidatorQueuedRewardAllocation.ts +31 -0
- package/src/actions/validators/getValidatorRewardAllocation.ts +158 -0
- package/src/actions/validators/getValidatorRewardAllocatorAddress.ts +38 -0
- package/src/actions/validators/utils/__tests__/validatorUtils.integration.test.ts +36 -0
- package/src/actions/validators/utils/getValidatorBoostApy.ts +59 -0
- package/src/contexts/BeraFlags/BeraFlags.tsx +69 -0
- package/src/contexts/BeraFlags/defaultFlags.ts +42 -0
- package/src/contexts/BexStatusProvider.tsx +125 -0
- package/src/contexts/HoneyConfigProvider.tsx +73 -0
- package/src/contexts/SwrFallback.tsx +34 -0
- package/src/contexts/TokensProvider.tsx +66 -0
- package/src/contexts/berajsProvider/context.tsx +49 -0
- package/src/contexts/berajsProvider/index.ts +2 -0
- package/src/contexts/berajsProvider/useBeraJs.ts +18 -0
- package/src/contexts/block-time-provider.tsx +34 -0
- package/src/contexts/index.ts +14 -0
- package/src/data/contracts.ts +398 -0
- package/src/enum/dex.ts +10 -0
- package/src/enum/index.ts +4 -0
- package/src/enum/polling.ts +8 -0
- package/src/enum/slippage.ts +19 -0
- package/src/enum/txnEnum.ts +101 -0
- package/src/errors/BeraError.ts +202 -0
- package/src/errors/InvalidArgumentError.ts +81 -0
- package/src/errors/NotFoundError.ts +34 -0
- package/src/errors/RequestError.ts +207 -0
- package/src/errors/TransactionFailedError.ts +93 -0
- package/src/errors/assert.ts +144 -0
- package/src/errors/assert.unit.test.ts +110 -0
- package/src/errors/errorMap.ts +1157 -0
- package/src/errors/getErrorMessage.ts +40 -0
- package/src/errors/getRevertReason.integration.test.ts +449 -0
- package/src/errors/getRevertReason.ts +179 -0
- package/src/errors/index.ts +8 -0
- package/src/errors/initBeraError.ts +46 -0
- package/src/errors/parseViemError.ts +239 -0
- package/src/hooks/bend/useGetConvertToAssets.ts +42 -0
- package/src/hooks/dex/useAggregatorsQuotes.ts +502 -0
- package/src/hooks/dex/useAggregatorsRouterFeeBps.ts +34 -0
- package/src/hooks/dex/useAllUserPools.ts +38 -0
- package/src/hooks/dex/useApiPool.ts +53 -0
- package/src/hooks/dex/useBexStatus.ts +1 -0
- package/src/hooks/dex/useCreatePool.ts +437 -0
- package/src/hooks/dex/useExploitedTokens.ts +57 -0
- package/src/hooks/dex/useGlobalLiquidityAndSwapVolume.ts +22 -0
- package/src/hooks/dex/useLiquidityMismatch.ts +195 -0
- package/src/hooks/dex/useLpPosition.ts +115 -0
- package/src/hooks/dex/useMultipleTokenApprovalsWithSlippage.ts +92 -0
- package/src/hooks/dex/useOnChainPoolData.ts +126 -0
- package/src/hooks/dex/usePollPoolCreationRelayerApproval.ts +54 -0
- package/src/hooks/dex/usePollVaultIsPaused.ts +30 -0
- package/src/hooks/dex/usePool.ts +59 -0
- package/src/hooks/dex/usePoolEvents.ts +22 -0
- package/src/hooks/dex/usePoolHistoricalData.ts +44 -0
- package/src/hooks/dex/usePools.ts +83 -0
- package/src/hooks/enso/useBendTransactionRequests.ts +247 -0
- package/src/hooks/enso/useEnsoZap.ts +166 -0
- package/src/hooks/enso/useZapTransactionRequests.ts +81 -0
- package/src/hooks/governance/useCreateProposal.ts +88 -0
- package/src/hooks/governance/useGetPastVotes.ts +63 -0
- package/src/hooks/governance/useHasVoted.ts +38 -0
- package/src/hooks/governance/useIsCanceller.ts +43 -0
- package/src/hooks/governance/usePollAllProposals.ts +232 -0
- package/src/hooks/governance/usePollProposal.ts +96 -0
- package/src/hooks/governance/usePollProposalThreshold.ts +41 -0
- package/src/hooks/governance/usePollProposalVotes.ts +64 -0
- package/src/hooks/governance/usePollUserDelegates.ts +70 -0
- package/src/hooks/governance/useProposalFromTx.ts +37 -0
- package/src/hooks/governance/useProposalSnapshot.ts +44 -0
- package/src/hooks/governance/useProposalState.ts +48 -0
- package/src/hooks/governance/useProposalTimelockState.ts +61 -0
- package/src/hooks/governance/useQuorum.ts +42 -0
- package/src/hooks/honey/useCappedGlobally.ts +92 -0
- package/src/hooks/honey/useCappedRelatively.ts +88 -0
- package/src/hooks/honey/useCollateralWeights.ts +48 -0
- package/src/hooks/honey/useHoneyAlerts.ts +314 -0
- package/src/hooks/honey/useHoneyBalances.ts +79 -0
- package/src/hooks/honey/useHoneyChartData.ts +17 -0
- package/src/hooks/honey/useHoneyGlobalData.ts +22 -0
- package/src/hooks/honey/useHoneySwapState.ts +202 -0
- package/src/hooks/honey/useHoneyVaultsBalance.ts +41 -0
- package/src/hooks/honey/useIsBadCollateralAsset.ts +73 -0
- package/src/hooks/honey/useIsBasketModeEnabled.ts +70 -0
- package/src/hooks/honey/usePythLatestPrices.ts +41 -0
- package/src/hooks/index.ts +124 -0
- package/src/hooks/perps/usePythUpdateFee.ts +43 -0
- package/src/hooks/pol/useBgtAprSimulation.ts +22 -0
- package/src/hooks/pol/useBgtUnstakedBalance.ts +50 -0
- package/src/hooks/pol/useClaimableFees.ts +38 -0
- package/src/hooks/pol/useEarnedStakedBeraVault.ts +59 -0
- package/src/hooks/pol/useHighestVaultsAPR.ts +57 -0
- package/src/hooks/pol/useOnChainRewardVault.ts +114 -0
- package/src/hooks/pol/usePollGlobalData.ts +31 -0
- package/src/hooks/pol/usePollMarkets.ts +32 -0
- package/src/hooks/pol/useQueuedBeraUnlock.ts +70 -0
- package/src/hooks/pol/useRewardTokenToBeraRate.ts +45 -0
- package/src/hooks/pol/useRewardVault.ts +51 -0
- package/src/hooks/pol/useRewardVaultBalanceFromStakingToken.ts +82 -0
- package/src/hooks/pol/useRewardVaultFromToken.ts +58 -0
- package/src/hooks/pol/useRewardVaultIncentives.ts +37 -0
- package/src/hooks/pol/useRewardVaultRewards.ts +37 -0
- package/src/hooks/pol/useRewardVaults.ts +45 -0
- package/src/hooks/pol/useStakedBeraSnapshots.ts +27 -0
- package/src/hooks/pol/useUserVaultInfo.ts +46 -0
- package/src/hooks/pol/useUserVaults.ts +40 -0
- package/src/hooks/pol/useVaultAddress.ts +31 -0
- package/src/hooks/pol/useVaultHistory.ts +29 -0
- package/src/hooks/pol/useVaultValidators.ts +33 -0
- package/src/hooks/tokens/useBeraCurrentPrice.ts +12 -0
- package/src/hooks/tokens/useMultipleTokenInformation.ts +62 -0
- package/src/hooks/tokens/usePollAllowances.ts +60 -0
- package/src/hooks/tokens/usePollBalance.ts +113 -0
- package/src/hooks/tokens/usePollWalletBalances.ts +75 -0
- package/src/hooks/tokens/useStakingTokenInformation.ts +54 -0
- package/src/hooks/tokens/useTokenCurrentPrice.ts +19 -0
- package/src/hooks/tokens/useTokenCurrentPrices.ts +57 -0
- package/src/hooks/tokens/useTokenInformation.ts +59 -0
- package/src/hooks/tokens/useTokens.ts +26 -0
- package/src/hooks/tokens/useTotalSupply.ts +22 -0
- package/src/hooks/transactions/TransactionStoreContext.tsx +59 -0
- package/src/hooks/transactions/transactionStore.ts +275 -0
- package/src/hooks/transactions/transactionStore.unit.test.ts +508 -0
- package/src/hooks/transactions/useAddRecentTransaction.ts +29 -0
- package/src/hooks/transactions/useRecentTransactions.ts +27 -0
- package/src/hooks/useBlockToTimestamp.ts +51 -0
- package/src/hooks/useContractWrite/index.ts +2 -0
- package/src/hooks/useContractWrite/stateReducer.ts +60 -0
- package/src/hooks/useContractWrite/types.ts +88 -0
- package/src/hooks/useContractWrite/useBeraContractWrite.ts +137 -0
- package/src/hooks/useGetVerifiedAbi.ts +47 -0
- package/src/hooks/useHistoryState.ts +64 -0
- package/src/hooks/usePrevious.ts +13 -0
- package/src/hooks/validators/useAllValidators.ts +48 -0
- package/src/hooks/validators/useApiEnrichedAllocation.ts +17 -0
- package/src/hooks/validators/useApiValidator.ts +37 -0
- package/src/hooks/validators/useBaselineRewardAllocation.ts +16 -0
- package/src/hooks/validators/useDailyValidatorBlockStats.ts +35 -0
- package/src/hooks/validators/useDefaultRewardAllocation.ts +32 -0
- package/src/hooks/validators/useManagedValidatorByAccount.ts +40 -0
- package/src/hooks/validators/useManagedValidatorRole.ts +119 -0
- package/src/hooks/validators/useOnChainValidator.ts +66 -0
- package/src/hooks/validators/useStakingPoolBatch.ts +45 -0
- package/src/hooks/validators/useSubgraphUserValidators.ts +36 -0
- package/src/hooks/validators/useUserActiveValidators.ts +44 -0
- package/src/hooks/validators/useUserBoostsOnValidator.ts +45 -0
- package/src/hooks/validators/useUserClaimableIncentives.ts +149 -0
- package/src/hooks/validators/useUserStakingPositions.ts +62 -0
- package/src/hooks/validators/useValidator.ts +83 -0
- package/src/hooks/validators/useValidatorAnalytics.ts +36 -0
- package/src/hooks/validators/useValidatorCommission.ts +36 -0
- package/src/hooks/validators/useValidatorEstimatedBgtPerYear.ts +24 -0
- package/src/hooks/validators/useValidatorQueuedCommission.ts +41 -0
- package/src/hooks/validators/useValidatorQueuedOperatorAddress.ts +39 -0
- package/src/hooks/validators/useValidatorQueuedRewardAllocation.ts +37 -0
- package/src/hooks/validators/useValidatorRewardAllocation.ts +36 -0
- package/src/hooks/validators/validatorRoleManager.ts +0 -0
- package/src/types/bribe-boost.ts +50 -0
- package/src/types/dex.ts +196 -0
- package/src/types/enso.ts +42 -0
- package/src/types/global.ts +230 -0
- package/src/types/governance.ts +174 -0
- package/src/types/honeySwap.ts +35 -0
- package/src/types/index.ts +8 -0
- package/src/types/pol.ts +52 -0
- package/src/types/staking.ts +7 -0
- package/src/utils/beraFetch.ts +55 -0
- package/src/utils/constants.ts +35 -0
- package/src/utils/formatAggregatorsQuotes.ts +57 -0
- package/src/utils/formatAggregatorsQuotes.unit.test.ts +191 -0
- package/src/utils/formatIncentivesTokenMap.ts +19 -0
- package/src/utils/formatInputTokenValue.ts +12 -0
- package/src/utils/formatNumber.ts +225 -0
- package/src/utils/formatNumber.unit.test.ts +245 -0
- package/src/utils/formatTimestamps.ts +155 -0
- package/src/utils/formatTimestamps.unit.test.ts +395 -0
- package/src/utils/formatTokenList.ts +61 -0
- package/src/utils/formatUsd.ts +46 -0
- package/src/utils/getContractName.ts +27 -0
- package/src/utils/getContractName.unit.test.ts +64 -0
- package/src/utils/getErrorResponse.ts +20 -0
- package/src/utils/getHoneySwapMessage.test.ts +116 -0
- package/src/utils/getHoneySwapMessage.ts +70 -0
- package/src/utils/getServerSideClient.ts +49 -0
- package/src/utils/getTestClient.ts +19 -0
- package/src/utils/hasAnyTruthyValues.ts +17 -0
- package/src/utils/index.ts +27 -0
- package/src/utils/isDifferenceExceedingThreshold.ts +13 -0
- package/src/utils/isSubgraphStale.ts +10 -0
- package/src/utils/math.ts +28 -0
- package/src/utils/math.unit.test.ts +49 -0
- package/src/utils/parseBaseArgs.ts +23 -0
- package/src/utils/parseBaseArgs.unit.test.ts +55 -0
- package/src/utils/poolNamings.ts +54 -0
- package/src/utils/pythHoneyUtils.ts +3 -0
- package/src/utils/sentryBeforeSend.ts +52 -0
- package/src/utils/test-utils.ts +2 -0
- package/src/utils/time.ts +106 -0
- package/src/utils/time.unit.test.ts +76 -0
- package/src/utils/tokenWrapping.ts +16 -0
- package/src/utils/tokens.ts +106 -0
- package/src/utils/tokens.unit.test.ts +98 -0
- package/src/utils/truncateHash.ts +20 -0
- package/src/utils/truncateHash.unit.test.ts +19 -0
- package/src/utils/validatorUptimeStatus.ts +30 -0
- package/dist/chunk-3V2MGZRD.mjs +0 -2
- package/dist/chunk-4E5JGLUM.cjs +0 -1
- package/dist/chunk-AHAZC5K3.mjs +0 -1
- package/dist/chunk-ELUMRVNE.mjs +0 -1
- package/dist/chunk-JHCSZSJS.mjs +0 -1
- package/dist/chunk-KIA6GUIN.cjs +0 -1
- package/dist/chunk-LX5CM4Y6.cjs +0 -1
- package/dist/chunk-LZPBQLKP.mjs +0 -3
- package/dist/chunk-M5BKM52U.cjs +0 -1
- package/dist/chunk-MTBICGRP.mjs +0 -1
- package/dist/chunk-WDFIETJS.cjs +0 -2
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } 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 _chunkKIA6GUINcjs = require('./chunk-KIA6GUIN.cjs');var _chunkK2FCHQHAcjs = require('./chunk-K2FCHQHA.cjs');var _chunk4E5JGLUMcjs = require('./chunk-4E5JGLUM.cjs');var _chunkM5BKM52Ucjs = require('./chunk-M5BKM52U.cjs');var _chunkB47PDJZMcjs = require('./chunk-B47PDJZM.cjs');var _chunk4GY57XKGcjs = require('./chunk-4GY57XKG.cjs');var _viem = require('viem');async function vo({sharesAmount:e,vaultAddress:t,publicClient:r}){let a=await r.readContract({address:t,abi:_chunkKIA6GUINcjs.a,functionName:"convertToAssets",args:[e]});return{raw:a,formatted:_viem.formatEther.call(void 0, a)}}async function No({vaultAddress:e,publicClient:t}){let r=await t.readContract({address:e,abi:_chunkKIA6GUINcjs.a,functionName:"maxDeposit",args:[e]});return _viem.formatEther.call(void 0, r)}var _client = require('@apollo/client');var _http = require('@apollo/client/link/http');var _config = require('@berachain/config');var _internal = require('@berachain/config/internal');var _api = require('@berachain/graphql/dex/api'); var _api2 = _interopRequireDefault(_api);var _nextjs = require('@sentry/nextjs'); var st = _interopRequireWildcard(_nextjs); var ce = _interopRequireWildcard(_nextjs); var Ut = _interopRequireWildcard(_nextjs); var $t = _interopRequireWildcard(_nextjs);var Ce=class extends _client.ApolloClient{constructor(t){super(t),this.url=t.url}async query(t){let r=sr(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 n=await st.startSpan({name:`GraphQL ${r}`,op:"BeraApolloClient.query",attributes:o},async()=>super.query(t));if(n.error||n.data===void 0)throw new (0, _chunk4GY57XKGcjs.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:n.data}}catch(n){throw!_internal.appConfig.env.isProduction&&console.error("BeraApolloClient error",n),_client.ServerError.is(n)?new (0, _chunkB47PDJZMcjs.a)({response:n.response,cause:n,statusCode:n.statusCode,endpoint:a,tags:o}):n instanceof TypeError?new (0, _chunkB47PDJZMcjs.a)({level:"fatal",reason:"TypeError",response:n,cause:n,endpoint:a,tags:o}):new (0, _chunkB47PDJZMcjs.a)({response:n,tags:o,cause:n,endpoint:a})}}};function sr(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])}function dr(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 Y(e,{ssrMode:t,inMemoryCacheOptions:r}={}){let a=_config.getUriFromLink.call(void 0, e),o=typeof e=="string"?void 0:e.headers;return new Ce({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 f(e,{...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);switch(e){case"api":return Y(dr(r.api),{inMemoryCacheOptions:{possibleTypes:_api2.default.possibleTypes}});case"bend.whisk":if(!r.bend.whiskApi)throw new (0, _chunk4GY57XKGcjs.f)({message:"Bend whisk API is not configured on this chain",level:"error"});return Y(r.bend.whiskApi);case"honey.subgraph":return Y(r.honey.subgraph);case"pol.subgraph":return Y(r.pol.subgraph);case"governance.subgraph":return Y(r.governance.subgraph);case"blocks.subgraph":return Y(r.blocksSubgraph);case"bex.subgraph":return Y(r.bex.subgraph)}}var _bignumberjs = require('bignumber.js'); var _bignumberjs2 = _interopRequireDefault(_bignumberjs);var dt= (_class =class e{static __initStatic() {this.PATH_NOT_FOUND_REASON="NO_SWAP_PATHS"}__init() {this.notFoundMessages=[]}constructor(t={}){;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);let{config:r,chainId:a}=_chunkM5BKM52Ucjs.a.call(void 0, t);this.config=r,this.chainId=a}__init2() {this.url=""}parseAddresses(t,r){if(!_viem.isAddress.call(void 0, t)||!_viem.isAddress.call(void 0, r))throw new (0, _chunk4GY57XKGcjs.f)({message:`Invalid address: ${t} or ${r}`,level:"error"});return{tokenInAddress:_chunkM5BKM52Ucjs.e.call(void 0, t,"BERA")?this.config.tokens.wbera:t,tokenOutAddress:_chunkM5BKM52Ucjs.e.call(void 0, r,"BERA")?this.config.tokens.wbera:r,isTokenInNative:_chunkM5BKM52Ucjs.e.call(void 0, t,"BERA"),isTokenOutNative:_chunkM5BKM52Ucjs.e.call(void 0, r,"BERA")}}getAmountAfterFees(t,r){if(r===void 0)throw new (0, _chunk4GY57XKGcjs.f)({message:"aggregatorsFeeBps is required",level:"error"});let a=new (0, _bignumberjs.BigNumber)(t).times(r).dividedBy(1e4).toFixed(0,_bignumberjs.BigNumber.ROUND_DOWN);return new (0, _bignumberjs.BigNumber)(t).minus(a).toFixed(0,_bignumberjs.BigNumber.ROUND_DOWN)}getInputData({tokenIn:t,amountIn:r,isNative:a,isPermit2Approval:o=!1,permit2SpenderAddress:n=_viem.zeroAddress}){return{tokenIn:t,amountIn:BigInt(r),isNative:a,isPermit2Approval:o,permit2SpenderAddress:n}}getMinAmountOut(t,r){if(r===void 0)throw new (0, _chunk4GY57XKGcjs.f)({message:"slippage is required",level:"error"});let a=new (0, _bignumberjs.BigNumber)(t).times(1-r/100);return a.isNaN()||a.isZero()?0n:BigInt(a.toFixed(0))}checkChainSupport(){if(!this.supportedChains.includes(this.chainId))throw new (0, _chunk4GY57XKGcjs.f)({message:`${this.name} is not supported on chain ${this.chainId}`,level:"error"})}async fetch(t,r){try{return await _chunk4E5JGLUMcjs.b.call(void 0, {url:t,name:this.name,type:this.type},{method:"GET",headers:{"Content-Type":"application/json"},...r})}catch(a){let o=_chunkK2FCHQHAcjs.a.call(void 0, {cause:a});throw this.notFoundMessages.some(n=>o.message.includes(n))&&(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}=_chunkM5BKM52Ucjs.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,_chunkM5BKM52Ucjs.b.decimals,_chunkM5BKM52Ucjs.b.name,_chunkM5BKM52Ucjs.b.symbol,t.tokens.wbera);_berancersdk.NATIVE_ASSETS[r]=a}var _api3 = require('@berachain/graphql/pol/api');async function pn({textSearch:e,chain:t,first:r,orderBy:a,orderDirection:o,skip:n,fetchPolicy:s,userAddress:i,blacklistedPoolIds:l,...u}={}){let{config:m}=_chunkM5BKM52Ucjs.a.call(void 0, u),b=await f("api",u).query({query:_api.GetPools,variables:{textSearch:e,chain:_nullishCoalesce(t, () => (m.bex.chainName)),first:r,orderBy:_nullishCoalesce(a, () => (_api3.GqlPoolOrderBy.TotalLiquidity)),orderDirection:_nullishCoalesce(o, () => (_api3.GqlPoolOrderDirection.Desc)),skip:n,userAddress:i,blacklistedPoolIds:l},fetchPolicy:s});return{pools:_nullishCoalesce(b.data.poolGetPools, () => ([])),count:_nullishCoalesce(b.data.count, () => (0))}}async function An({poolId:e,account:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),s=(await f("api",r).query({query:_api.GetPool,variables:{id:e,userAddress:t,chain:a.bex.chainName},fetchPolicy:"no-cache"})).data.poolGetPool;if(!s)throw new Error(`Pool not found for id: ${e} and user ${t}`);return s}async function Bn(e={}){let{config:t}=_chunkM5BKM52Ucjs.a.call(void 0, e);return(await f("api",e).query({query:_api.GetGlobalLiquidityAndSwapVolume,variables:{chain:t.bex.chainName}})).data}async function pt({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 Dn({poolId:e,publicClient:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.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, _chunk4GY57XKGcjs.g)({property:"poolId",value:e,expected:"Hex"});try{let[n,s,i,l,u,m,d,b,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]}),pt({publicClient:t,poolAddress:o})]),p=Number(m),A=JSON.parse(u),P,V,y;if(d?[P,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"&&(V=await t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"getNormalizedWeights"})),!d&&!b)throw new Error(`Pool ${o} is not a valid BEX pool`);return{name:n,address:o,id:e,poolTokens:[s[0],s[1].map(String),Number(s[2])],totalSupply:_viem.formatUnits.call(void 0, _nullishCoalesce(P, () => (i)),p),swapFee:_viem.formatEther.call(void 0, l),decimals:p,weights:_optionalChain([V, 'optionalAccess', _7 => _7.map, 'call', _8 => _8(F=>_viem.formatEther.call(void 0, F))]),version:A,factory:d?a.bex.factories.composableStable:a.bex.factories.weighted,type:d?_api3.GqlPoolType.Stable:_api3.GqlPoolType.Weighted,amplificationParameter:y?[Number(y[0]),y[1],Number(y[2])]:void 0,pausedState:g}}catch(n){throw _chunkK2FCHQHAcjs.a.call(void 0, {cause:n})}}async function Wn({poolId:e,typeInArray:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);return(await f("api",r).query({query:_api.GetPoolEvents,variables:{poolId:e,typeIn:t,chain:a.bex.chainName}})).data}async function Hn({poolId:e,chain:t,...r}){if(!e||!_viem.isHex.call(void 0, e))throw new (0, _chunk4GY57XKGcjs.g)({property:"poolId",value:e,expected:"hex string"});let a=f("api",r),{data:o}=await a.query({query:_api.GetPoolHistoricalData,variables:{poolId:e,chain:t}});return o.poolGetSnapshots}var jn=e=>({type:_berancersdk.mapPoolType.call(void 0, e.type),protocolVersion:e.protocolVersion,tokens:e.tokens.map(t=>({...t,address:t.address})),id:e.id,address:e.address});var _subgraph = require('@berachain/graphql/dex/subgraph');async function Zn({poolId:e,...t}){if(!_viem.isHex.call(void 0, e))throw new Error("poolId is not a valid hex string");return(await f("bex.subgraph",t).query({query:_subgraph.GetSubgraphPool,variables:{id:e}})).data.pool}async function ai({publicClient:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);return(await e.readContract({address:r.bex.vault,abi:_chunkKIA6GUINcjs.b,functionName:"getPausedState"}))[0]}var re=({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 s=BigInt(t);if(e.startsWith("uint")&&s<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 s=new URL(a);return t.startsWith(s.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 i={};for(let l of o)i[l.name]=re({fieldOrType:l.type,value:t[l.name],components:l.components});return Object.values(i).every(l=>l===null)?null:i}return null;case"tuple[]":if(Array.isArray(t)){let i=t.map(l=>re({fieldOrType:"tuple",value:l,components:o}));return i.every(l=>l===null)?null:i}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 Lr=!1,li= exports.r =[_governance.ProposalStatus.Active,_governance.ProposalStatus.PendingQueue,_governance.ProposalStatus.PendingExecution,_governance.ProposalStatus.Defeated,_governance.ProposalStatus.QuorumNotReached];function Be(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:Lr&&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 pi({where:e,orderBy:t,orderDirection:r,offset:a=0,perPage:o=20,text:n,...s}){try{if(o>1e3)throw new Error("perPage must be less than 1000");let i=f("governance.subgraph",s),[l]=await Promise.all([n?i.query({query:_governance.SearchProposals,variables:{offset:a,limit:o,where:e,text:n}}):i.query({query:_governance.GetProposals,variables:{offset:a,limit:o,where:e,orderBy:t,orderDirection:r}})]);return l.data.proposals.map(u=>({...u,status:Be(u)}))}catch(i){throw console.error("getAllProposals:",i),i}}var bi=(e,t)=>{let r={};return r.title=re({fieldOrType:"title",value:e.title}),r.description=re({fieldOrType:"description",value:e.description}),r.forumLink=re({fieldOrType:"forumLink",value:e.forumLink,baseUrl:t.forumLink}),r};function zr(e){return e.some(t=>t.name==="implementation"||t.name==="proxyType"||t.type==="constructor"&&_optionalChain([t, 'access', _17 => _17.inputs, 'optionalAccess', _18 => _18[0], 'optionalAccess', _19 => _19.name])==="implementation")}async function Ct({contractAddress:e,chainId:t,publicClient:r}){let a=`https://api.etherscan.io/v2/api?module=contract&action=getabi&address=${e}&apikey=${_internal.appConfig.apiKeys.private.etherscan}&chainId=${t}`,o=await fetch(a,{next:{revalidate:_chunk4E5JGLUMcjs.k.call(void 0, 1)}});if(!o.ok)throw new Error(`Failed to fetch ABI: ${o.statusText}`);let n=await o.json();if(n.status==="0")throw new Error(n.result);let s=JSON.parse(n.result);if(!zr(s))return s;let i=await r.getStorageAt({address:e,slot:"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"});if(!i||_viem.trim.call(void 0, i)==="0x00")return s;let l=_viem.pad.call(void 0, _viem.trim.call(void 0, i),{size:20});return Ct({contractAddress:l,chainId:t,publicClient:r})}async function Xr({address:e,callData:t,knownAbi:r,chainId:a,publicClient:o}){try{if(_viem.decodeFunctionData.call(void 0, {data:t,abi:r}))return r}catch (e4){}try{return await Ct({contractAddress:e,chainId:a,publicClient:o})}catch (e5){}}function Zr(e,t){try{return _viem.decodeFunctionData.call(void 0, {data:e,abi:t})}catch (e6){return}}function ea(e,t){return e.find(r=>r.type==="function"&&r.name===t)}function ta(e){if(e)try{return _viem.toFunctionSignature.call(void 0, e)}catch(t){console.error(t)}}async function Bi({address:e,callData:t,chainId:r=_internal.defaultChainId,publicClient:a}){let o=[..._chunkKIA6GUINcjs.l,..._chunkKIA6GUINcjs.n,..._viem.erc20Abi],n=await Xr({address:e,callData:t,knownAbi:o,chainId:r,publicClient:a}),s=Zr(t,n);if(!n||!s)return{args:[]};let i=ea(n,s.functionName),l=ta(i);return{abiItem:i,functionSignature:l,functionName:s.functionName,args:s.args}}async function Vi({proposalId:e,...t}){let a=await f("governance.subgraph",t).query({query:_governance.GetProposal,variables:{id:e}});if(a.data.proposal)return{...a.data.proposal,status:Be(a.data.proposal)}}var _graymatter = require('gray-matter'); var _graymatter2 = _interopRequireDefault(_graymatter);var aa=e=>{let t=/#(?:([\w-]+)# )?(.+)\n([\s\S]*)/,r=e.match(t);if(r){let a=r[1]||null,o=r[2],n=r[3].replace(`
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } 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 _chunkEU4WFADKcjs = require('./chunk-EU4WFADK.cjs');var _chunkS74ZMG2Gcjs = require('./chunk-S74ZMG2G.cjs');var _chunkREDXXUK7cjs = require('./chunk-REDXXUK7.cjs');var _chunk22MQVFHPcjs = require('./chunk-22MQVFHP.cjs');var _chunkED43NYSEcjs = require('./chunk-ED43NYSE.cjs');var _chunkJMKLDDKYcjs = require('./chunk-JMKLDDKY.cjs');var _viem = require('viem');async function vo({sharesAmount:e,vaultAddress:t,publicClient:r}){let a=await r.readContract({address:t,abi:_chunkEU4WFADKcjs.a,functionName:"convertToAssets",args:[e]});return{raw:a,formatted:_viem.formatEther.call(void 0, a)}}async function No({vaultAddress:e,publicClient:t}){let r=await t.readContract({address:e,abi:_chunkEU4WFADKcjs.a,functionName:"maxDeposit",args:[e]});return _viem.formatEther.call(void 0, r)}var _client = require('@apollo/client');var _http = require('@apollo/client/link/http');var _config = require('@berachain/config');var _internal = require('@berachain/config/internal');var _api = require('@berachain/graphql/dex/api'); var _api2 = _interopRequireDefault(_api);var _nextjs = require('@sentry/nextjs'); var st = _interopRequireWildcard(_nextjs); var ce = _interopRequireWildcard(_nextjs); var Ut = _interopRequireWildcard(_nextjs); var $t = _interopRequireWildcard(_nextjs);var Ce=class extends _client.ApolloClient{constructor(t){super(t),this.url=t.url}async query(t){let r=sr(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 n=await st.startSpan({name:`GraphQL ${r}`,op:"BeraApolloClient.query",attributes:o},async()=>super.query(t));if(n.error||n.data===void 0)throw new (0, _chunkJMKLDDKYcjs.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:n.data}}catch(n){throw!_internal.appConfig.env.isProduction&&console.error("BeraApolloClient error",n),_client.ServerError.is(n)?new (0, _chunkED43NYSEcjs.a)({response:n.response,cause:n,statusCode:n.statusCode,endpoint:a,tags:o}):n instanceof TypeError?new (0, _chunkED43NYSEcjs.a)({level:"fatal",reason:"TypeError",response:n,cause:n,endpoint:a,tags:o}):new (0, _chunkED43NYSEcjs.a)({response:n,tags:o,cause:n,endpoint:a})}}};function sr(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])}function dr(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 Y(e,{ssrMode:t,inMemoryCacheOptions:r}={}){let a=_config.getUriFromLink.call(void 0, e),o=typeof e=="string"?void 0:e.headers;return new Ce({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 f(e,{...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);switch(e){case"api":return Y(dr(r.api),{inMemoryCacheOptions:{possibleTypes:_api2.default.possibleTypes}});case"bend.whisk":if(!r.bend.whiskApi)throw new (0, _chunkJMKLDDKYcjs.f)({message:"Bend whisk API is not configured on this chain",level:"error"});return Y(r.bend.whiskApi);case"honey.subgraph":return Y(r.honey.subgraph);case"pol.subgraph":return Y(r.pol.subgraph);case"governance.subgraph":return Y(r.governance.subgraph);case"blocks.subgraph":return Y(r.blocksSubgraph);case"bex.subgraph":return Y(r.bex.subgraph)}}var _bignumberjs = require('bignumber.js'); var _bignumberjs2 = _interopRequireDefault(_bignumberjs);var dt= (_class =class e{static __initStatic() {this.PATH_NOT_FOUND_REASON="NO_SWAP_PATHS"}__init() {this.notFoundMessages=[]}constructor(t={}){;_class.prototype.__init.call(this);_class.prototype.__init2.call(this);let{config:r,chainId:a}=_chunk22MQVFHPcjs.b.call(void 0, t);this.config=r,this.chainId=a}__init2() {this.url=""}parseAddresses(t,r){if(!_viem.isAddress.call(void 0, t)||!_viem.isAddress.call(void 0, r))throw new (0, _chunkJMKLDDKYcjs.f)({message:`Invalid address: ${t} or ${r}`,level:"error"});return{tokenInAddress:_chunk22MQVFHPcjs.f.call(void 0, t,"BERA")?this.config.tokens.wbera:t,tokenOutAddress:_chunk22MQVFHPcjs.f.call(void 0, r,"BERA")?this.config.tokens.wbera:r,isTokenInNative:_chunk22MQVFHPcjs.f.call(void 0, t,"BERA"),isTokenOutNative:_chunk22MQVFHPcjs.f.call(void 0, r,"BERA")}}getAmountAfterFees(t,r){if(r===void 0)throw new (0, _chunkJMKLDDKYcjs.f)({message:"aggregatorsFeeBps is required",level:"error"});let a=new (0, _bignumberjs.BigNumber)(t).times(r).dividedBy(1e4).toFixed(0,_bignumberjs.BigNumber.ROUND_DOWN);return new (0, _bignumberjs.BigNumber)(t).minus(a).toFixed(0,_bignumberjs.BigNumber.ROUND_DOWN)}getInputData({tokenIn:t,amountIn:r,isNative:a,isPermit2Approval:o=!1,permit2SpenderAddress:n=_viem.zeroAddress}){return{tokenIn:t,amountIn:BigInt(r),isNative:a,isPermit2Approval:o,permit2SpenderAddress:n}}getMinAmountOut(t,r){if(r===void 0)throw new (0, _chunkJMKLDDKYcjs.f)({message:"slippage is required",level:"error"});let a=new (0, _bignumberjs.BigNumber)(t).times(1-r/100);return a.isNaN()||a.isZero()?0n:BigInt(a.toFixed(0))}checkChainSupport(){if(!this.supportedChains.includes(this.chainId))throw new (0, _chunkJMKLDDKYcjs.f)({message:`${this.name} is not supported on chain ${this.chainId}`,level:"error"})}async fetch(t,r){try{return await _chunkREDXXUK7cjs.b.call(void 0, {url:t,name:this.name,type:this.type},{method:"GET",headers:{"Content-Type":"application/json"},...r})}catch(a){let o=_chunkS74ZMG2Gcjs.a.call(void 0, {cause:a});throw this.notFoundMessages.some(n=>o.message.includes(n))&&(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}=_chunk22MQVFHPcjs.b.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,_chunk22MQVFHPcjs.c.decimals,_chunk22MQVFHPcjs.c.name,_chunk22MQVFHPcjs.c.symbol,t.tokens.wbera);_berancersdk.NATIVE_ASSETS[r]=a}var _api3 = require('@berachain/graphql/pol/api');async function pn({textSearch:e,chain:t,first:r,orderBy:a,orderDirection:o,skip:n,fetchPolicy:s,userAddress:i,blacklistedPoolIds:l,...u}={}){let{config:m}=_chunk22MQVFHPcjs.b.call(void 0, u),b=await f("api",u).query({query:_api.GetPools,variables:{textSearch:e,chain:_nullishCoalesce(t, () => (m.bex.chainName)),first:r,orderBy:_nullishCoalesce(a, () => (_api3.GqlPoolOrderBy.TotalLiquidity)),orderDirection:_nullishCoalesce(o, () => (_api3.GqlPoolOrderDirection.Desc)),skip:n,userAddress:i,blacklistedPoolIds:l},fetchPolicy:s});return{pools:_nullishCoalesce(b.data.poolGetPools, () => ([])),count:_nullishCoalesce(b.data.count, () => (0))}}async function An({poolId:e,account:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),s=(await f("api",r).query({query:_api.GetPool,variables:{id:e,userAddress:t,chain:a.bex.chainName},fetchPolicy:"no-cache"})).data.poolGetPool;if(!s)throw new Error(`Pool not found for id: ${e} and user ${t}`);return s}async function Bn(e={}){let{config:t}=_chunk22MQVFHPcjs.b.call(void 0, e);return(await f("api",e).query({query:_api.GetGlobalLiquidityAndSwapVolume,variables:{chain:t.bex.chainName}})).data}async function pt({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 Dn({poolId:e,publicClient:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.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, _chunkJMKLDDKYcjs.g)({property:"poolId",value:e,expected:"Hex"});try{let[n,s,i,l,u,m,d,b,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]}),pt({publicClient:t,poolAddress:o})]),p=Number(m),A=JSON.parse(u),P,V,y;if(d?[P,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"&&(V=await t.readContract({address:o,abi:_berancersdk.weightedPoolV4Abi_V2,functionName:"getNormalizedWeights"})),!d&&!b)throw new Error(`Pool ${o} is not a valid BEX pool`);return{name:n,address:o,id:e,poolTokens:[s[0],s[1].map(String),Number(s[2])],totalSupply:_viem.formatUnits.call(void 0, _nullishCoalesce(P, () => (i)),p),swapFee:_viem.formatEther.call(void 0, l),decimals:p,weights:_optionalChain([V, 'optionalAccess', _7 => _7.map, 'call', _8 => _8(F=>_viem.formatEther.call(void 0, F))]),version:A,factory:d?a.bex.factories.composableStable:a.bex.factories.weighted,type:d?_api3.GqlPoolType.Stable:_api3.GqlPoolType.Weighted,amplificationParameter:y?[Number(y[0]),y[1],Number(y[2])]:void 0,pausedState:g}}catch(n){throw _chunkS74ZMG2Gcjs.a.call(void 0, {cause:n})}}async function Wn({poolId:e,typeInArray:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);return(await f("api",r).query({query:_api.GetPoolEvents,variables:{poolId:e,typeIn:t,chain:a.bex.chainName}})).data}async function Hn({poolId:e,chain:t,...r}){if(!e||!_viem.isHex.call(void 0, e))throw new (0, _chunkJMKLDDKYcjs.g)({property:"poolId",value:e,expected:"hex string"});let a=f("api",r),{data:o}=await a.query({query:_api.GetPoolHistoricalData,variables:{poolId:e,chain:t}});return o.poolGetSnapshots}var jn=e=>({type:_berancersdk.mapPoolType.call(void 0, e.type),protocolVersion:e.protocolVersion,tokens:e.tokens.map(t=>({...t,address:t.address})),id:e.id,address:e.address});var _subgraph = require('@berachain/graphql/dex/subgraph');async function Zn({poolId:e,...t}){if(!_viem.isHex.call(void 0, e))throw new Error("poolId is not a valid hex string");return(await f("bex.subgraph",t).query({query:_subgraph.GetSubgraphPool,variables:{id:e}})).data.pool}async function ai({publicClient:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);return(await e.readContract({address:r.bex.vault,abi:_chunkEU4WFADKcjs.b,functionName:"getPausedState"}))[0]}var re=({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 s=BigInt(t);if(e.startsWith("uint")&&s<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 s=new URL(a);return t.startsWith(s.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 i={};for(let l of o)i[l.name]=re({fieldOrType:l.type,value:t[l.name],components:l.components});return Object.values(i).every(l=>l===null)?null:i}return null;case"tuple[]":if(Array.isArray(t)){let i=t.map(l=>re({fieldOrType:"tuple",value:l,components:o}));return i.every(l=>l===null)?null:i}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 Lr=!1,li= exports.r =[_governance.ProposalStatus.Active,_governance.ProposalStatus.PendingQueue,_governance.ProposalStatus.PendingExecution,_governance.ProposalStatus.Defeated,_governance.ProposalStatus.QuorumNotReached];function Be(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:Lr&&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 pi({where:e,orderBy:t,orderDirection:r,offset:a=0,perPage:o=20,text:n,...s}){try{if(o>1e3)throw new Error("perPage must be less than 1000");let i=f("governance.subgraph",s),[l]=await Promise.all([n?i.query({query:_governance.SearchProposals,variables:{offset:a,limit:o,where:e,text:n}}):i.query({query:_governance.GetProposals,variables:{offset:a,limit:o,where:e,orderBy:t,orderDirection:r}})]);return l.data.proposals.map(u=>({...u,status:Be(u)}))}catch(i){throw console.error("getAllProposals:",i),i}}var bi=(e,t)=>{let r={};return r.title=re({fieldOrType:"title",value:e.title}),r.description=re({fieldOrType:"description",value:e.description}),r.forumLink=re({fieldOrType:"forumLink",value:e.forumLink,baseUrl:t.forumLink}),r};function zr(e){return e.some(t=>t.name==="implementation"||t.name==="proxyType"||t.type==="constructor"&&_optionalChain([t, 'access', _17 => _17.inputs, 'optionalAccess', _18 => _18[0], 'optionalAccess', _19 => _19.name])==="implementation")}async function Ct({contractAddress:e,chainId:t,publicClient:r}){let a=`https://api.etherscan.io/v2/api?module=contract&action=getabi&address=${e}&apikey=${_internal.appConfig.apiKeys.private.etherscan}&chainId=${t}`,o=await fetch(a,{next:{revalidate:_chunkREDXXUK7cjs.k.call(void 0, 1)}});if(!o.ok)throw new Error(`Failed to fetch ABI: ${o.statusText}`);let n=await o.json();if(n.status==="0")throw new Error(n.result);let s=JSON.parse(n.result);if(!zr(s))return s;let i=await r.getStorageAt({address:e,slot:"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"});if(!i||_viem.trim.call(void 0, i)==="0x00")return s;let l=_viem.pad.call(void 0, _viem.trim.call(void 0, i),{size:20});return Ct({contractAddress:l,chainId:t,publicClient:r})}async function Xr({address:e,callData:t,knownAbi:r,chainId:a,publicClient:o}){try{if(_viem.decodeFunctionData.call(void 0, {data:t,abi:r}))return r}catch (e4){}try{return await Ct({contractAddress:e,chainId:a,publicClient:o})}catch (e5){}}function Zr(e,t){try{return _viem.decodeFunctionData.call(void 0, {data:e,abi:t})}catch (e6){return}}function ea(e,t){return e.find(r=>r.type==="function"&&r.name===t)}function ta(e){if(e)try{return _viem.toFunctionSignature.call(void 0, e)}catch(t){console.error(t)}}async function Bi({address:e,callData:t,chainId:r=_internal.defaultChainId,publicClient:a}){let o=[..._chunkEU4WFADKcjs.c,..._chunkEU4WFADKcjs.d,..._viem.erc20Abi],n=await Xr({address:e,callData:t,knownAbi:o,chainId:r,publicClient:a}),s=Zr(t,n);if(!n||!s)return{args:[]};let i=ea(n,s.functionName),l=ta(i);return{abiItem:i,functionSignature:l,functionName:s.functionName,args:s.args}}async function Vi({proposalId:e,...t}){let a=await f("governance.subgraph",t).query({query:_governance.GetProposal,variables:{id:e}});if(a.data.proposal)return{...a.data.proposal,status:Be(a.data.proposal)}}var _graymatter = require('gray-matter'); var _graymatter2 = _interopRequireDefault(_graymatter);var aa=e=>{let t=/#(?:([\w-]+)# )?(.+)\n([\s\S]*)/,r=e.match(t);if(r){let a=r[1]||null,o=r[2],n=r[3].replace(`
|
|
2
2
|
`,"<br />");return{type:a,title:o,content:n}}throw new Error("Invalid proposal body")},Bt= exports.x =e=>{if(!e)return{isFrontMatter:!1,data:{title:"Loading..."},content:"",matter:"",language:"",orig:"",stringify:()=>""};let t=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _20 => _20.description]), () => (""));if(_graymatter2.default.test(t))return{..._graymatter2.default.call(void 0, t),isFrontMatter:!0};try{let r=aa(t);return{isFrontMatter:!1,data:{title:r.title},content:r.content,matter:"",language:"",orig:t,stringify:()=>t}}catch (e7){return{isFrontMatter:!1,data:{title:_optionalChain([e, 'optionalAccess', _21 => _21.description, 'optionalAccess', _22 => _22.split, 'call', _23 => _23(`
|
|
3
|
-
`), 'access', _24 => _24[0], 'access', _25 => _25.slice, 'call', _26 => _26(0,100)])},content:t,matter:"",language:"",orig:t,stringify:()=>t}}};async function qi(e){_chunkK2FCHQHAcjs.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', _27 => _27.logs])?_optionalChain([_viem.parseEventLogs.call(void 0, {abi:_chunkKIA6GUINcjs.c,logs:t.logs,eventName:"ProposalCreated"}), 'optionalAccess', _28 => _28.at, 'call', _29 => _29(0)]):void 0;if(!t||!r)return null;let a=await e.publicClient.getBlock({blockNumber:t.blockNumber}),o=Bt({description:_optionalChain([r, 'optionalAccess', _30 => _30.args, 'access', _31 => _31.description])});return{id:String(r.args.proposalId),proposalId:String(_optionalChain([r, 'optionalAccess', _32 => _32.args, 'access', _33 => _33.proposalId])),createdAt:a.timestamp.toString(),title:o.data.title,createdAtBlock:a.timestamp.toString(),voteStartAt:String(_optionalChain([r, 'optionalAccess', _34 => _34.args, 'access', _35 => _35.voteStart])),voteEndAt:String(_optionalChain([r, 'optionalAccess', _36 => _36.args, 'access', _37 => _37.voteEnd])),proposer:_optionalChain([r, 'optionalAccess', _38 => _38.args, 'access', _39 => _39.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', _40 => _40.args, 'access', _41 => _41.targets, 'access', _42 => _42.map, 'call', _43 => _43((n,s)=>({__typename:"ExecutableCall",id:`${t.transactionHash}-${s}`,target:n,value:String(_optionalChain([r, 'optionalAccess', _44 => _44.args, 'access', _45 => _45.values, 'access', _46 => _46[s]])),calldata:_optionalChain([r, 'optionalAccess', _47 => _47.args, 'access', _48 => _48.calldatas, 'access', _49 => _49[s]])}))]),timelock:void 0}}async function Oi({variables:e,...t}){return f("governance.subgraph",t).query({query:_governance.GetProposalVotes,variables:e})}var _honey = require('@berachain/graphql/honey');async function Hi({days:e,...t}){return(await f("honey.subgraph",t).query({query:_honey.GetChartData,variables:{interval:_honey.Aggregation_Interval.Day,first:e}})).data}async function Ki({client:e,collateralList:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{let o=await e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"getWeights"});return t.reduce((s,i,l)=>Object.assign(s,{[i.address]:o[l]}),{})}catch(o){throw console.log(o),o}}async function xt({address:e,publicClient:t}){try{if(!t)throw new Error("Public client not found");let[r,a,o]=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"})]),n={address:e,decimals:r,name:a,symbol:o};if(typeof n.decimals!="number"||typeof n.name!="string"||typeof n.symbol!="string")throw new Error(`Invalid ERC20 token. Address: ${e}`);return n}catch(r){throw console.error(r),_chunkK2FCHQHAcjs.a.call(void 0, {cause:r})}}async function Fe({client:e,tokenData:t,preferredCollateralOrder:r,...a}){let{config:o}=_chunkM5BKM52Ucjs.a.call(void 0, a),[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"numRegisteredAssets"}),e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"referenceCollateral"})]),i=[];for(let b=0;b<n;b++)i.push(e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"registeredAssets",args:[BigInt(b)]}));let l=await Promise.all(i),m=(await Promise.all(l.map(b=>{let g=_optionalChain([t, 'optionalAccess', _50 => _50.find, 'call', _51 => _51(p=>_chunkM5BKM52Ucjs.e.call(void 0, p,b))]);return g||xt({address:b,publicClient:e})}))).filter(b=>!!b).sort((b,g)=>l.indexOf(b.address)-l.indexOf(g.address)).map((b,g)=>({...b,order:g}));if(_optionalChain([r, 'optionalAccess', _52 => _52.length])){let b=[];for(let g of r){let p=m.find(A=>_chunkM5BKM52Ucjs.e.call(void 0, A.address,g.address));p&&(b.push(p),m.splice(m.indexOf(p),1))}m.unshift(...b)}let d=m.find(b=>_chunkM5BKM52Ucjs.e.call(void 0, b,s));if(!m)throw new Error("Collateral tokens not found");if(!d)throw new Error("Reference collateral address not found");return{collaterals:m,referenceCollateral:d}}async function le({client:e,asset:t,amount:r,...a}){let{config:o}=_chunkM5BKM52Ucjs.a.call(void 0, a);try{let[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"vaults",args:[t]}),e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"collectedFees",args:[o.honey.factory,t]})]);return await e.readContract({address:n,abi:_chunkKIA6GUINcjs.d,functionName:"balanceOf",args:[o.honey.factory]})+_viem.parseEther.call(void 0, _nullishCoalesce(r, () => ("0")))-s}catch(n){throw console.log(n),n}}async function vt({client:e,collateral:t,latestPrices:r,isPythWrapperEnabled:a,...o}){let{config:n}=_chunkM5BKM52Ucjs.a.call(void 0, o);try{let s=e.readContract({address:n.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"isBadCollateralAsset",args:[t.address]}),i=e.readContract({address:n.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"isPegged",args:[t.address]});if(a&&r){let m=r.prices.map(d=>_viem.parseUnits.call(void 0, d,18));i=e.readContract({address:n.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:"isPeggedWithPrice",args:[t.address,m[0]]})}let[l,u]=await Promise.all([s,i]);return{isBlacklisted:l,isDepegged:!u}}catch(s){throw console.log(s),s}}var da=_viem.parseEther.call(void 0, "1");async function Bs({client:e,asset:t,amount:r,isMint:a,isPythWrapperEnabled:o,latestPrices:n,...s}){let{config:i}=_chunkM5BKM52Ucjs.a.call(void 0, s);try{let l=await e.readContract({address:i.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"globalCap"});if(l>=da)return!1;let[{collaterals:u},m]=await Promise.all([Fe({client:e}),ma({client:e,asset:t,amount:r,latestPrices:n,isPythWrapperEnabled:o})]);if(!m)return;for(let d in m)if((a&&_chunkM5BKM52Ucjs.e.call(void 0, u[d],t)||!a&&_chunkM5BKM52Ucjs.e.call(void 0, u[d],t))&&m[d]>l-_chunk4E5JGLUMcjs.r)return!0;return!1}catch(l){throw console.log(l),l}}async function ma({client:e,asset:t,amount:r,latestPrices:a,isPythWrapperEnabled:o}){let{collaterals:n}=await Fe({client:e}),s=0n,i=[];for(let l of n){let u=await vt({client:e,collateral:t,latestPrices:a,isPythWrapperEnabled:o});if(_optionalChain([u, 'optionalAccess', _53 => _53.isBlacklisted])||_optionalChain([u, 'optionalAccess', _54 => _54.isDepegged]))continue;let m=await le({client:e,asset:l.address,amount:_chunkM5BKM52Ucjs.e.call(void 0, l,t)?r:"0"});m&&(s+=m,i.push(m))}if(s===0n)return i;for(let l in n)i[l]=_viem.parseEther.call(void 0, i[l].toString())/s;return i}async function Vs({client:e,collateralList:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{let o={mint:[],redeem:[]};for(let l of t)o.mint.push(e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"mintRates",args:[l.address]})),o.redeem.push(e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"redeemRates",args:[l.address]}));let[n,s,i]=await Promise.all([Promise.all(o.mint),Promise.all(o.redeem),e.readContract({address:a.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"getWeights"})]);return t.reduce((l,u)=>{let m=t.indexOf(u);return l.single[u.address]={mintFee:1-+_viem.formatUnits.call(void 0, n[m],18),redeemFee:1-+_viem.formatUnits.call(void 0, s[m],18)},l.basket.mintFee+=l.single[u.address].mintFee*+_viem.formatUnits.call(void 0, i[m],18),l.basket.redeemFee+=l.single[u.address].redeemFee*+_viem.formatUnits.call(void 0, i[m],18),l},{single:{},basket:{mintFee:0,redeemFee:0}})}catch(o){throw console.log(o),o}}async function Ts({...e}={}){return(await f("honey.subgraph",e).query({query:_honey.GetGlobalData})).data}async function Es({client:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t),a=r.honey.token;return await e.readContract({address:a,abi:_chunkKIA6GUINcjs.e,functionName:"paused"})}var fa=(l=>(l.Mint="previewMintHoney",l.MintWithPrice="previewMintHoneyWithPrices",l.RequiredCollateral="previewMintCollaterals",l.RequiredCollateralWithPrice="previewMintCollateralsWithPrices",l.Redeem="previewRedeemCollaterals",l.RedeemWithPrice="previewRedeemCollateralsWithPrices",l.HoneyToRedeem="previewRedeemHoney",l.HoneyToRedeemWithPrice="previewRedeemHoneyWithPrices",l))(fa||{});async function Os({client:e,collateral:t,collateralList:r,amount:a,method:o,latestPrices:n,isPythWrapperEnabled:s,...i}){let{config:l}=_chunkM5BKM52Ucjs.a.call(void 0, i);try{let u=o==="previewMintHoney"||o==="previewRedeemHoney"||o==="previewMintHoneyWithPrices"||o==="previewRedeemHoneyWithPrices",m=_viem.parseUnits.call(void 0, a,u?t.decimals:18),d,b=[t.address,m];if(s&&n){let p=n.prices.map(A=>_viem.parseUnits.call(void 0, A,18));b=[t.address,m,p]}if(u){let p=await e.readContract({address:l.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:o,args:b});d={collaterals:p[0],honey:p[1]}}else d={collaterals:await e.readContract({address:l.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:o,args:b}),honey:m};let g=r.reduce((p,A)=>{let P=A.order;return A.address===t.address&&d.collaterals[P]===BigInt(0)?Object.assign(p,{[A.address]:d.collaterals[0]}):Object.assign(p,{[A.address]:d.collaterals[P]})},{});return g[t.address]===BigInt(0)&&(g[t.address]=d.collaterals[0]),{collaterals:g,honey:d.honey}}catch(u){throw console.log("error",u),u}}async function _s({pythOracle:e,publicClient:t}){return await t.readContract({address:e,abi:_chunkKIA6GUINcjs.h,functionName:"pythOracle"})}async function js({publicClient:e,factory:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);return await e.readContract({address:_nullishCoalesce(t, () => (a.honey.factory)),abi:_chunkKIA6GUINcjs.f,functionName:"priceOracle"})}async function el({client:e,collateralList:t,honeyFactoryAddress:r,...a}){let{config:o}=_chunkM5BKM52Ucjs.a.call(void 0, a),n=_nullishCoalesce(r, () => (o.honey.factory));try{return await Promise.all(t.map(async i=>{let l=await e.readContract({address:o.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"vaults",args:[i.address]}),[u,m,[d,b]]=await Promise.all([e.readContract({address:l,abi:_chunkKIA6GUINcjs.d,functionName:"balanceOf",args:[n]}),e.readContract({address:n,abi:_chunkKIA6GUINcjs.f,functionName:"collectedAssetFees",args:[i.address]}),e.readContract({address:l,abi:_chunkKIA6GUINcjs.d,functionName:"custodyInfo"})]),g=await e.readContract({address:l,abi:_chunkKIA6GUINcjs.d,functionName:"convertToAssets",args:[u-m]});return{address:i.address,balance:g.toString(),formattedBalance:_viem.formatUnits.call(void 0, g,i.decimals),vault:d?b:l}}))}catch(s){throw console.log(s),s}}var _hermesclient = require('@pythnetwork/hermes-client');var Aa="https://hermes.pyth.network";async function Vt({priceFeedId:e}){let r=await new (0, _hermesclient.HermesClient)(Aa,{}).getLatestPriceUpdates(e,{encoding:"hex",parsed:!0});return{calldata:r.binary.data.map(a=>`0x${a}`),prices:_nullishCoalesce(_optionalChain([r, 'access', _55 => _55.parsed, 'optionalAccess', _56 => _56.flatMap, 'call', _57 => _57(a=>_viem.formatUnits.call(void 0, BigInt(a.price.price),a.price.expo*-1))]), () => ([]))}}async function ul({client:e,asset:t,amount:r,isMint:a,referenceCollateral:o,...n}){let{config:s}=_chunkM5BKM52Ucjs.a.call(void 0, n);if(t===o.address)return!1;try{let[i]=await Promise.all([e.readContract({address:s.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"relativeCap",args:[t]})]),[l,u]=await Promise.all([le({client:e,asset:t,amount:a?r:void 0}),le({client:e,asset:o.address,amount:a?void 0:r})]);return u===0n?l!==0n:_viem.parseEther.call(void 0, (_nullishCoalesce(l, () => (0n))).toString())/(_nullishCoalesce(u, () => (0n)))>=i-_chunk4E5JGLUMcjs.r}catch(i){throw console.log(i),i}}async function Nt({client:e,priceFeedId:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{return await e.readContract({address:a.external.pyth,abi:_chunkKIA6GUINcjs.q,functionName:"getUpdateFee",args:[t]})}catch(o){throw console.error("getPythUpdateFee",o),o}}var Bl=async({state:e,account:t,publicClient:r,priceFeedMap:a,collateralList:o,isPythWrapperEnabled:n,...s})=>{let{config:i}=_chunkM5BKM52Ucjs.a.call(void 0, s),l=_chunkM5BKM52Ucjs.d.call(void 0, s),{actionType:u,fromAmount:m,collaterals:d,isBasketModeEnabled:b}=e,g=n?i.honey.pythWrapper:i.honey.factory,p=o.map(A=>A.address);if(t&&m[0]&&p.length){let A=u==="mint";if(n&&r&&a){let y=(await Vt({priceFeedId:Object.values(a)})).calldata,F;try{F=await Nt({client:r,priceFeedId:y})}catch (e8){F=_chunk4E5JGLUMcjs.x.call(void 0, d.length)}let G=[y,_optionalChain([d, 'access', _58 => _58[0], 'optionalAccess', _59 => _59.address]),_viem.parseUnits.call(void 0, m[0],_nullishCoalesce((A?_optionalChain([d, 'access', _60 => _60[0], 'optionalAccess', _61 => _61.decimals]):_optionalChain([l, 'optionalAccess', _62 => _62.decimals])), () => (18))),t,!!b];return{address:g,abi:_chunkKIA6GUINcjs.j,functionName:A?"mint":"redeem",params:G,value:F}}let P=[_optionalChain([d, 'access', _63 => _63[0], 'optionalAccess', _64 => _64.address]),_viem.parseUnits.call(void 0, m[0],_nullishCoalesce((A?_optionalChain([d, 'access', _65 => _65[0], 'optionalAccess', _66 => _66.decimals]):_optionalChain([l, 'optionalAccess', _67 => _67.decimals])), () => (18))),t,!!b];return{address:g,abi:_chunkKIA6GUINcjs.f,functionName:A?"mint":"redeem",params:P}}throw new Error("Something went wrong while creating the Honey swap payload")};async function Nl({client:e,isMint:t,collateralList:r,latestPrices:a,isPythWrapperEnabled:o,...n}){let{config:s}=_chunkM5BKM52Ucjs.a.call(void 0, n);if(o&&a){if(r.length===0)return;let l=a.prices.map(m=>_viem.parseUnits.call(void 0, m,18));return await e.readContract({address:s.honey.reader,abi:_chunkKIA6GUINcjs.g,functionName:"isBasketModeEnabledWithPrices",args:[t,l]})}return await e.readContract({address:s.honey.factory,abi:_chunkKIA6GUINcjs.f,functionName:"isBasketModeEnabled",args:[t]})}async function Fl({block:e,currentBlock:t,blockTime:r,publicClient:a}){if(_chunkK2FCHQHAcjs.b.call(void 0, e,"block"),_chunkK2FCHQHAcjs.c.call(void 0, a),t>e){let n=await a.getBlock({blockNumber:BigInt(e),includeTransactions:!1});return{timestamp:Number(n.timestamp)}}return{timestamp:_chunk4E5JGLUMcjs.d.call(void 0, Date.now())+r*(Number(e)-Number(t))}}var Ca=(a=>(a.Duration="duration",a.TargetRate="targetRate",a.TargetApr="targetApr",a))(Ca||{});async function Ql(e,t){let[r,a,o,n,s,i]=await Promise.all([t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"rewardsDuration"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"rewardVaultManager"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"rewardRate"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"periodFinish"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"targetRewardsPerSecond"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"minRewardDurationForTargetRate"})]),l=o*(n-BigInt(_chunk4E5JGLUMcjs.d.call(void 0, Date.now())))/10n**18n;return{rewardsDuration:Number(r),mode:s===0n?"duration":"targetRate",manager:a,rewardRate:_viem.formatUnits.call(void 0, o,36),periodFinish:Number(n),availableRewards:_viem.formatUnits.call(void 0, l,18),minRewardDurationForTargetRate:Number(i),targetRewardsPerSecond:_viem.formatUnits.call(void 0, s,36)}}function ve(e,t,r){return e?r*t*_chunk4E5JGLUMcjs.q.call(void 0, 1)/e:null}function Pa(e,t,r){return r?e*r/(t*_chunk4E5JGLUMcjs.q.call(void 0, 1)):0}function Ol({availableRewards:e,periodFinish:t,tvl:r,bgtPrice:a,MIN_REWARD_DURATION:o,MAX_REWARD_DURATION:n,...s}){let i=_chunk4E5JGLUMcjs.d.call(void 0, Date.now());if(i>t)return{apr:0,duration:0,rewardRate:0,targetRate:null,periodFinish:0,mode:null};if(s.mode==="targetRate"||s.mode==="targetApr"){let d,{minRewardDurationForTargetRate:b,currentDuration:g}=s;if(s.mode==="targetRate"?d=s.rewardRate:d=Pa(s.apr,a,r),d===0){let P=Math.min(g,n),V=e?e/P:0;return{apr:ve(r,a,V),duration:P,rewardRate:V,targetRate:null,periodFinish:P+i,mode:"duration"}}let p=b||o,A=e?e/d:0;if(A<p){let P=e?e/p:0;return{apr:ve(r,a,P),duration:p,rewardRate:P,targetRate:P.toString(),periodFinish:p+i,mode:null}}return{apr:ve(r,a,d),duration:A,rewardRate:d,targetRate:d.toString(),periodFinish:A+i,mode:null}}let{duration:l}=s,u=e/l;return{apr:ve(r,a,u),mode:null,targetRate:null,duration:l,rewardRate:u,periodFinish:l+i}}var _chain = require('@berachain/graphql/chain');async function Gt({defaultBlockTime:e,blocksSpan:t,...r}={}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),o=f("blocks.subgraph",r),n=_nullishCoalesce(e, () => (a.averageBlockTime)),s=_nullishCoalesce(t, () => (Math.floor(_chunk4E5JGLUMcjs.i.call(void 0, 1)/n))),l=(await o.query({query:_chain.GetBlocksTimeStamp,variables:{skip:s}})).data;return(_chunk4E5JGLUMcjs.d.call(void 0, Date.now())-Number(_optionalChain([l, 'optionalAccess', _68 => _68.oldest, 'access', _69 => _69[0], 'optionalAccess', _70 => _70.timestamp])))/(Number(_optionalChain([l, 'optionalAccess', _71 => _71.newest, 'access', _72 => _72[0], 'optionalAccess', _73 => _73.number]))-Number(_optionalChain([l, 'optionalAccess', _74 => _74.oldest, 'access', _75 => _75[0], 'optionalAccess', _76 => _76.number])))}async function Tt(e={}){let{config:t}=_chunkM5BKM52Ucjs.a.call(void 0, e),a=await f("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}}async function Ft({publicClient:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);_chunkK2FCHQHAcjs.c.call(void 0, e);try{let a=await e.readContract({address:r.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"totalBoosts",args:[]});return _viem.formatEther.call(void 0, a)}catch(a){throw console.log(a),a}}async function Dt({publicClient:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);_chunkK2FCHQHAcjs.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 Re({filter:e,publicClient:t,...r}={}){let o=await f("api",r).query({query:_api3.GetVaults,variables:e}),n=await Promise.allSettled(o.data.polGetRewardVaults.vaults.map(async i=>{if(t)return Promise.allSettled(i.activeIncentives.map(l=>t.readContract({abi:_chunkKIA6GUINcjs.n,address:i.address,functionName:"incentives",args:[l.tokenAddress]})))})),s=o.data.polGetRewardVaults.vaults.map((i,l)=>{let u=0,m=i.activeIncentives.map((d,b)=>{let g=Number(d.remainingAmountUsd)&&Number(d.remainingAmount)?Number(d.remainingAmountUsd)/Number(d.remainingAmount):0,p=_optionalChain([n, 'access', _77 => _77[l], 'optionalAccess', _78 => _78.status])==="fulfilled"&&_optionalChain([n, 'access', _79 => _79[l], 'optionalAccess', _80 => _80.value, 'optionalAccess', _81 => _81[b], 'optionalAccess', _82 => _82.status])==="fulfilled"?_viem.formatUnits.call(void 0, BigInt(n[l].value[b].value[2]),d.token.decimals):d.remainingAmount;return u+=Number(p)*Number(g),{...d,remainingAmount:p}});return{...i,dynamicData:{...i.dynamicData,allTimeReceivedBGTAmount:_nullishCoalesce(_optionalChain([i, 'access', _83 => _83.dynamicData, 'optionalAccess', _84 => _84.allTimeReceivedBGTAmount]), () => ("0")),bgtCapturePercentage:_nullishCoalesce(_optionalChain([i, 'access', _85 => _85.dynamicData, 'optionalAccess', _86 => _86.bgtCapturePercentage]), () => ("0")),activeIncentivesValueUsd:u.toString(),activeIncentivesRateUsd:_nullishCoalesce(_optionalChain([i, 'access', _87 => _87.dynamicData, 'optionalAccess', _88 => _88.activeIncentivesRateUsd]), () => ("0")),bgtCapturePerBlock:_nullishCoalesce(_optionalChain([i, 'access', _89 => _89.dynamicData, 'optionalAccess', _90 => _90.bgtCapturePerBlock]), () => ("0"))},activeIncentives:m}});return{pagination:o.data.polGetRewardVaults.pagination,gaugeList:s}}async function It(e){let{gaugeList:t}=await Re({filter:{orderBy:_api3.GqlRewardVaultOrderBy.Apr,orderDirection:_api3.GqlRewardVaultOrderDirection.Desc,pageSize:e,where:{includeNonWhitelisted:!1}}});return t}async function hc(e){let[t,r,a,o]=await Promise.allSettled([Tt(),It(300),Dt({publicClient:e}),Ft({publicClient:e})]);return t.status==="rejected"&&ce.captureException(t.reason,{level:"warning"}),r.status==="rejected"&&ce.captureException(r.reason,{level:"warning"}),a.status==="rejected"&&ce.captureException(a.reason,{level:"warning"}),o.status==="rejected"&&ce.captureException(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 _subgraph3 = require('@berachain/graphql/pol/subgraph');async function Et({...e}){let t=f("pol.subgraph",e),{data:r}=await t.query({query:_subgraph3.GetIncentiveFeeClaimStats});if(r.incentiveFeeClaims.length>0){let a=_optionalChain([r, 'optionalAccess', _91 => _91.incentiveFeeClaims, 'access', _92 => _92.reduce, 'call', _93 => _93((s,i)=>s+Number(i.payoutAmount),3e4)]),n=(_optionalChain([r, 'optionalAccess', _94 => _94.incentiveFeeClaims, 'access', _95 => _95.filter, 'call', _96 => _96(s=>Number(s.timestamp)/1e3>Date.now()-_chunk4E5JGLUMcjs.j.call(void 0, 1))])).reduce((s,i)=>s+Number(i.payoutAmount),0);return{sumAllClaims:a,sumClaimsInLast24Hours:n}}return{sumAllClaims:0,sumClaimsInLast24Hours:0}}async function Rc(e={}){let{config:t}=_chunkM5BKM52Ucjs.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,n)=>(o[n.name]=n,o),{})}}catch(r){throw console.error("Error fetching validator information",r),r}}async function Gc({account:e,validator:t,page:r=1,perPage:a=1e3,...o}){let{config:n}=_chunkM5BKM52Ucjs.a.call(void 0, o),s=await fetch(`${n.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/proofs/validator/${t.toLowerCase()}?page=${r}&per_page=${a}`,{cache:"no-store"});if(!s.ok){let l=await _chunk4E5JGLUMcjs.a.call(void 0, s);throw new (0, _chunk4GY57XKGcjs.f)({message:"Failed to fetch proofs on server",cause:{error:l,result:s,account:e,validator:t},reason:_optionalChain([l, 'optionalAccess', _97 => _97.reason])})}return await s.json()}async function Ec({address:e,publicClient:t}){return _chunkK2FCHQHAcjs.c.call(void 0, t),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"previewRedeem",args:[_viem.parseUnits.call(void 0, "1",18)]}).then(r=>Number(_viem.formatUnits.call(void 0, r,18))).catch(()=>0)}async function Mc({address:e,chainName:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),o=_nullishCoalesce(t, () => (a.bex.chainName)),n=f("api",r),{data:s}=await n.query({query:_api3.GetRewardVault,variables:{vaultId:e,chain:o}});if(!_optionalChain([s, 'optionalAccess', _98 => _98.rewardVault]))throw new (0, _chunkK2FCHQHAcjs.f)({resource:"Reward vault",id:e,chainId:a.chainId});return s.rewardVault}var qt=[{inputs:[{internalType:"address",name:"initialOwner",type:"address"},{internalType:"address",name:"initialImplementation",type:"address"}],stateMutability:"payable",type:"constructor"},{inputs:[],name:"NewImplementationHasNoCode",type:"error"},{inputs:[],name:"NewOwnerIsZeroAddress",type:"error"},{inputs:[],name:"Unauthorized",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"implementation",type:"address"}],name:"Upgraded",type:"event"},{inputs:[],name:"implementation",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newImplementation",type:"address"}],name:"upgradeTo",outputs:[],stateMutability:"nonpayable",type:"function"}];async function Qt({publicClient:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t),a=r.pol.factory;_chunkK2FCHQHAcjs.b.call(void 0, e,"publicClient"),_chunkK2FCHQHAcjs.d.call(void 0, r.pol.factory,"factoryAddress");let o=await e.readContract({address:a,abi:_chunkKIA6GUINcjs.o,functionName:"beacon"});return await e.readContract({address:o,abi:qt,functionName:"implementation"})}async function Zc({publicClient:e,...t}){_chunkK2FCHQHAcjs.c.call(void 0, e);let r=await Qt({publicClient:e,...t}),[a,o]=await Promise.all([e.readContract({address:r,abi:_chunkKIA6GUINcjs.n,functionName:"MIN_REWARD_DURATION"}),e.readContract({address:r,abi:_chunkKIA6GUINcjs.n,functionName:"MAX_REWARD_DURATION"})]);return{minRewardDuration:Number(a),maxRewardDuration:Number(o)}}async function ou({tokenAddress:e,publicClient:t,factoryAddress:r,...a}){let{config:o}=_chunkM5BKM52Ucjs.a.call(void 0, a),n=await t.readContract({address:_nullishCoalesce(r, () => (o.pol.factory)),abi:_chunkKIA6GUINcjs.o,functionName:"getVault",args:[e]});return n===_viem.zeroAddress?null:n}async function uu({address:e,stakingToken:t,publicClient:r}){let a=await r.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"getWhitelistedTokens"}),n=a.findIndex(i=>_berancersdk.isSameAddress.call(void 0, t,i))!==-1?await r.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"totalSupply"}):0n,s=await Promise.allSettled(a.map(async i=>{let[l,u,m,d]=await Promise.all([r.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"incentives",args:[i]}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"decimals"}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"symbol"}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]})]),[b,g,p,A]=l;return{token:i,manager:A,minIncentiveRate:_viem.formatUnits.call(void 0, b,u),incentiveRate:_viem.formatUnits.call(void 0, g,u),remainingAmount:_viem.formatUnits.call(void 0, p,u),symbol:m,decimals:u,pendingAmount:_berancersdk.isSameAddress.call(void 0, t,i)?_viem.formatUnits.call(void 0, d-n-p,u):_viem.formatUnits.call(void 0, d-p,u)}}));return s.forEach((i,l)=>{i.status==="rejected"&&Ut.captureException(new (0, _chunk4GY57XKGcjs.f)({reason:i.reason,message:"Incorrect incentives token received.",level:"error"}),{extra:{token:a[l],address:e,error:i.reason}})}),s.map(i=>i.status==="fulfilled"?i.value:null).filter(i=>i!==null)}async function pu({address:e,publicClient:t}){return await t.readContract({address:e,abi:_chunkKIA6GUINcjs.n,functionName:"stakeToken"})}function Qa(e){return e==="DAY"?_api3.GqlSWberaVaultMetadataResolution.OneDay:_api3.GqlSWberaVaultMetadataResolution.SevenDays}async function Au({window:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t),a=f("api",t);try{let o=await a.query({query:_api3.GetSWberaVaultMetadata,variables:{chain:r.bex.chainName,resolution:Qa(_nullishCoalesce(e, () => ("DAY")))}}),{apr:n}=o.data.polGetSWberaVaultMetadata;return Number(n)}catch(o){throw console.error("Failed to get SW Bera APR",o),o}}async function Bu({chain:e,range:t=_api3.GqlVaultSnapshotDataRange.ThirtyDays,...r}={}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),o=f("api",r);try{return(await o.query({query:_api3.GetSWberaVaultSnapshots,variables:{chain:_nullishCoalesce(e, () => (a.bex.chainName)),range:t}})).data.polGetSWberaVaultSnapshots}catch(n){throw console.error("Failed to get SW Bera Snapshots",n),n}}async function de({publicClient:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t),a=await e.readContract({address:r.tokens.swbera,abi:_chunkKIA6GUINcjs.p,functionName:"WITHDRAWAL_COOLDOWN"});return Number(a)}async function Eu({address:e,publicClient:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);_chunkK2FCHQHAcjs.c.call(void 0, t);let o=26;try{let[n,s]=await Promise.all([t.getBlock({blockTag:"latest"}),Gt()]),i=Math.floor(o*60*60/s),l=n.number-BigInt(i),[u,m,d,b,g,p,A,P,V,y,F]=await Promise.all([t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"totalAssets"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"totalSupply"}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"previewRedeem",args:[10n**18n],blockNumber:n.number}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"totalAssets",blockNumber:l}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"totalSupply",blockNumber:l}),t.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"previewRedeem",args:[10n**18n],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"totalSupply"}),de({publicClient:t}),Et({})]),G=new (0, _bignumberjs2.default)(A.toString());return{current:{exchangeRate:new (0, _bignumberjs2.default)(d.toString()).toString(),totalSupply:new (0, _bignumberjs2.default)(m.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _bignumberjs2.default)(u.toString()).dividedBy(1e18).toString(),tvl:new (0, _bignumberjs2.default)(b.toString()).dividedBy(1e18).toString()},previous:{exchangeRate:G.toString(),totalSupply:new (0, _bignumberjs2.default)(p.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _bignumberjs2.default)(g.toString()).dividedBy(1e18).toString(),tvl:new (0, _bignumberjs2.default)(P.toString()).dividedBy(1e18).toString()},totalWBeraIssued:new (0, _bignumberjs2.default)(V.toString()).dividedBy(1e18).toString(),lockPeriod:y,totalBuyBacks:F.sumAllClaims,totalBuyBacksInLast24Hours:F.sumClaimsInLast24Hours}}catch(n){throw console.error("Failed to get SW Bera Vault Metadata",n),n}}function Mt(e){let t=Date.now(),r=e*1e3-t;if(r<=0)return;let a=_chunk4E5JGLUMcjs.d.call(void 0, r);return _chunk4E5JGLUMcjs.G.call(void 0, a,!0,!0)}async function Ou(e,t,r,a){let o=[];function n(s,i){let[l,u,m]=s,d=l,b=Number(m)+Number(i),g=_chunk4E5JGLUMcjs.d.call(void 0, Date.now()),p=b-g;if(d>0){let A=Mt(p<=0?0:b);o.push({withdrawalAmount:d,timeRemaining:A})}}switch(a){case"V1":{let[s,i]=await Promise.all([r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"withdrawalRequests",args:[t]}),de({publicClient:r})]);return n(s,i),o}case"V2":{let[s,i,l]=await Promise.all([r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"withdrawalRequests",args:[t]}),r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"getERC721WithdrawalRequestIds",args:[t]}),de({publicClient:r})]);n(s,l);let m=(await Promise.all(i.map(async d=>{let b=await r.readContract({address:e,abi:_chunkKIA6GUINcjs.p,functionName:"getERC721WithdrawalRequest",args:[d]}),{assets:g,requestTime:p}=b;if(!g||!p)throw new Error("Invalid withdrawal request");let A=g,P=Number(p)+Number(l),V=_chunk4E5JGLUMcjs.d.call(void 0, Date.now()),y=P-V;if(A>0){let F=Mt(y<=0?0:P);return{withdrawalAmount:A,timeRemaining:F,withdrawalRequestId:d}}return null}))).filter(d=>d!==null);return o.push(...m),o}}}async function Ju({account:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.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 _chunk4E5JGLUMcjs.a.call(void 0, a);throw new (0, _chunk4GY57XKGcjs.f)({message:"Failed to fetch incentives on server",cause:{error:o,result:a,account:e},reason:_optionalChain([o, 'optionalAccess', _99 => _99.error])})}return await a.json()}async function _t({account:e,vaultAddress:t,publicClient:r}){if(_chunkK2FCHQHAcjs.c.call(void 0, r),!e||!_viem.isAddress.call(void 0, e))throw new (0, _chunk4GY57XKGcjs.g)({property:"account",value:e,expected:"Address"});if(!t||!_viem.isAddress.call(void 0, t))throw new (0, _chunk4GY57XKGcjs.g)({property:"vaultAddress",value:t,expected:"Address"});try{let[a,o]=await Promise.all([r.readContract({address:t,abi:_chunkKIA6GUINcjs.n,functionName:"balanceOf",args:[e]}),r.readContract({address:t,abi:_chunkKIA6GUINcjs.n,functionName:"getTotalDelegateStaked",args:[e]})]);return{balance:a,delegated:o}}catch(a){throw console.log(a),a}}async function Ht({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:_chunkKIA6GUINcjs.n,functionName:"earned",args:[e]})}async function Jt({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:_chunkKIA6GUINcjs.n,functionName:"totalSupply",args:[]})}catch(r){throw console.log(r),r}}async function id({account:e,vaultAddress:t,publicClient:r}){let[a,o,n]=await Promise.all([_t({account:e,vaultAddress:t,publicClient:r}),Ht({account:e,vaultAddress:t,publicClient:r}),Jt({vaultAddress:t,publicClient:r})]),s=a.balance-a.delegated,i=n>0n?Number(Number.parseFloat(_viem.formatEther.call(void 0, a.balance))/Number.parseFloat(_viem.formatEther.call(void 0, n))).toString():"0";return{balance:a.balance,delegatedBalance:a.delegated,withdrawableBalance:s,rewards:_viem.formatEther.call(void 0, o),percentage:i}}async function pd({account:e,publicClient:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),s=await _asyncOptionalChain([(await f("api",r).query({query:_api3.GetUserVaults,variables:{userId:e,chain:a.bex.chainName}})), 'access', async _100 => _100.data, 'optionalAccess', async _101 => _101.userVaultDeposits, 'optionalAccess', async _102 => _102.deposits]);if(!s)return{totalBgtRewards:"0",vaults:[],totalStakedValue:0};let[i,l]=await Promise.all([t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:_chunkKIA6GUINcjs.n,functionName:"earned",args:[e]}))}),t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:_chunkKIA6GUINcjs.n,functionName:"balanceOf",args:[e]}))})]),{userVaults:u,total:m}=s.reduce((g,p,A)=>{let P=i[A],V=l[A];if(g.total+=P,!p.vault)return $t.captureException(new Error("Deposit data from API is missing vault"),{data:{deposit:p}}),console.error("Deposit data from API is missing vault",p),g;if(P>0n||V>0n){let y=_optionalChain([p, 'access', _103 => _103.vault, 'access', _104 => _104.dynamicData, 'optionalAccess', _105 => _105.tvl])&&Number(p.vault.stakingTokenAmount)!==0?Number(_nullishCoalesce(_optionalChain([p, 'access', _106 => _106.vault, 'access', _107 => _107.dynamicData, 'optionalAccess', _108 => _108.tvl]), () => (0)))/Number(p.vault.stakingTokenAmount):null;g.userVaults.push({...p,vault:p.vault,unclaimedBgt:_viem.formatUnits.call(void 0, P,18),formattedBalance:_viem.formatUnits.call(void 0, V,p.vault.stakingToken.decimals),stakingTokenPrice:y})}return g},{userVaults:[],total:0n}),d=[...u].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:d.reduce((g,p)=>{let A=Number(_nullishCoalesce(_optionalChain([p, 'access', _109 => _109.vault, 'access', _110 => _110.dynamicData, 'optionalAccess', _111 => _111.tvl]), () => (0)));if(A===0)return g;let P=Number.parseFloat(p.vault.stakingTokenAmount),V=A/P;return g+V*Number(p.formattedBalance)},0),totalBgtRewards:_viem.formatUnits.call(void 0, m,18),vaults:d}}async function Ad({vault:e,chain:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);return(await f("api",r).query({query:_api3.GetVaultHistory,variables:{...r,vaultId:e,chain:_nullishCoalesce(t, () => (a.bex.chainName))}})).data.polGetRewardVaultSnapshots}async function Pd({address:e,onlyActiveValidators:t,...r}){returnawait _asyncNullishCoalesce((await f("api",r).query({query:_api3.GetVaultValidators,variables:{vaultId:e,isActive:t}})).data.validators.validators, async () => ([]))}async function kd({addressIn:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t),a=e.map(s=>s.toLowerCase()).filter((s,i,l)=>s&&l.indexOf(s)===i),o=f("api",t),{data:n}=await o.query({query:_api.GetTokenCurrentPrices,variables:{chains:[r.bex.chainName],addressIn:a}});return n.tokenGetCurrentPrices.reduce((s,i)=>{if(!i.price||!i.address)return s;let l=i.address;return s[_viem.getAddress.call(void 0, l)]={price:_chunk4E5JGLUMcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[l.toLowerCase()]={price:_chunk4E5JGLUMcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},_chunkM5BKM52Ucjs.e.call(void 0, l,"WBERA")&&(s[_viem.zeroAddress]={price:_chunk4E5JGLUMcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt.toLowerCase()]={price:_chunk4E5JGLUMcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt]={price:_chunk4E5JGLUMcjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt}),s},{})}async function Dd({tokenList:e,publicClient:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{let o=await Promise.all(e.map(n=>t.readContract({address:a.honey.pythOracle,abi:_chunkKIA6GUINcjs.i,functionName:"feeds",args:[n]})));return e.reduce((n,s,i)=>({...n,[s]:o[i]}),{})}catch(o){throw console.error("getPythPriceFeedId",o),o}}async function qd({tokens:e,account:t,spender:r,publicClient:a}){if(!a||!e||!r)throw new Error("missing publicClient, tokens, or spender");if(t){let o=e.map(i=>({address:i.address,abi:_viem.erc20Abi,functionName:"allowance",args:[t,r]}));return(await a.multicall({contracts:o})).map((i,l)=>{let u=e[l];return i.error?{balance:0,...u}:{allowance:i.result,formattedAllowance:_viem.formatUnits.call(void 0, i.result,_optionalChain([u, 'optionalAccess', _112 => _112.decimals])||18),...u}})}}async function Od({url:e,...t}={}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);returnawait _asyncNullishCoalesce((await _chunk4E5JGLUMcjs.c.call(void 0, {url:_nullishCoalesce(e, () => (r.lists.tokenList)),type:"rest",name:"GitHub"})).tokens, async () => ([]))}function za({token:e,account:t,multicallAddress:r}){return _chunkM5BKM52Ucjs.e.call(void 0, e,"BERA")||_chunkM5BKM52Ucjs.e.call(void 0, e,"ETH")?{address:r,abi:_chunkKIA6GUINcjs.r,functionName:"getEthBalance",args:[t]}:{address:e.address,abi:_viem.erc20Abi,functionName:"balanceOf",args:[t]}}async function $d({account:e,tokenList:t,publicClient:r}){if(!r)throw new Error("publicClient is not defined");if(!e||!t)throw new Error("account or tokenList is not defined");if(!_viem.isAddress.call(void 0, e))throw new Error("account is not a valid address");let a=t.filter(u=>_viem.isAddress.call(void 0, u.address));_chunkK2FCHQHAcjs.b.call(void 0, r.chain,"publicClient.chain"),_chunkK2FCHQHAcjs.b.call(void 0, r.chain.contracts,"publicClient.chain.contracts"),_chunkK2FCHQHAcjs.b.call(void 0, r.chain.contracts.multicall3,"publicClient.chain.contracts.multicall3");let{multicall3:o}=r.chain.contracts,n=typeof o=="string"?o:o.address;_chunkK2FCHQHAcjs.d.call(void 0, n,"multicall3Address");let s=a.map(u=>za({token:u,account:e,multicallAddress:n})),i=await r.multicall({contracts:s});return await Promise.all(i.map(async(u,m)=>{let d=a[m];if(u.error)return{balance:0n,formattedBalance:"0",...d};let b=_viem.formatUnits.call(void 0, u.result,_optionalChain([d, 'optionalAccess', _113 => _113.decimals])||18);return{balance:u.result,formattedBalance:b.includes("e")?"0":b,...d}}))}var _core = require('@wagmi/core');async function Kt({publicClient:e,abi:t,...r}){let a=[..._chunk4GY57XKGcjs.c,..._nullishCoalesce(t, () => ([]))],o,n,s,i,l,u,m;if("txHash"in r){let d=await e.getTransaction({hash:r.txHash});if(!d.to)throw new (0, _chunk4GY57XKGcjs.g)({property:"tx",value:d,expected:"Transaction",message:"Trying to get revert reason for a contract creation"});l=d.input,n=d.to,s=d.from,i=d.value,o=d.blockNumber}else if(o=r.blockNumber,n=r.to,s=r.account,i=r.value,"data"in r)l=r.data;else if("functionName"in r&&"args"in r)u=r.functionName,m=r.args;else if(!i)throw new (0, _chunk4GY57XKGcjs.g)({property:"dataOrFunctionNameAndArgs",value:r,expected:"Hex or FunctionName and Args"});try{if(!a)if(l)await e.call({data:l,to:n,account:s,blockNumber:o,value:i});else throw new Error("Data is required if abi is not provided");if("functionName"in r&&"args"in r&&r.functionName)u=r.functionName,m=r.args;else if(l){if(!a){let d=await e.call({data:l,to:n,account:s,blockNumber:o,value:i});throw new Error(`Getting revert reason for successful simulation. Data: ${l}`,{cause:d})}try{let d=_viem.decodeFunctionData.call(void 0, {abi:a,data:l});u=d.functionName,m=d.args}catch(d){throw d instanceof _viem.AbiFunctionSignatureNotFoundError&&await e.call({data:l,to:n,account:s,blockNumber:o,value:i}),new Error("Data is required if abi is not provided")}}else throw new Error("No data or function name and args provided");throw a&&u?(await e.simulateContract({functionName:u,args:m,abi:a,address:n,account:s,blockNumber:o}),new (0, _chunkK2FCHQHAcjs.g)({message:"Getting revert reason for successful simulation",functionName:u,to:n,txHash:"txHash"in r?r.txHash:void 0,input:r})):new Error("No data or function name and args provided")}catch(d){if(d instanceof Error)return _chunk4GY57XKGcjs.e.call(void 0, {error:d,abi:a,revertIfUnknown:!0});throw d}}var co=_chunk4E5JGLUMcjs.e.call(void 0, 1),Yt=(e,t)=>e*(100n+BigInt(t))/100n;function Qe({nonceResult:e,onWarning:t}){if(e.status==="fulfilled"){if(e.value&&e.value>Number.MAX_SAFE_INTEGER){_optionalChain([t, 'optionalCall', _114 => _114(new (0, _chunk4GY57XKGcjs.f)({message:"Nonce is too large. No nonce will be provided to avoid IntegerOutOfRangeError.",cause:e.value,level:"debug"}))]);return}return e.value}}function uo(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 gm(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, _chunk4GY57XKGcjs.g)({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:n,onSuccess:s,onWarning:i,onError:l,onSubmission:u,wagmiConfig:m,walletClient:d,account:b,txConfirmationTimeout:g=12e4,chainId:p=_internal.defaultChainId,impersonateAccount:A=uo(p),errorsAbi:P=[],pollingInterval:V=co,...y}=e;_optionalChain([n, 'optionalCall', _115 => _115(e)]);let F="data"in y?y.data:void 0,G=[..._chunk4GY57XKGcjs.c,...P,..."abi"in y&&y.abi&&Array.isArray(y.abi)?y.abi:[]],I=d;if(!m){_optionalChain([l, 'optionalCall', _116 => _116(new (0, _chunk4GY57XKGcjs.g)({property:"wagmiConfig",value:m,expected:"Config"}),e)]);return}if(!(_optionalChain([I, 'optionalAccess', _117 => _117.account, 'optionalAccess', _118 => _118.type])==="local"))try{await _core.switchChain.call(void 0, m,{chainId:p})}catch(S){let E=S;_optionalChain([l, 'optionalCall', _119 => _119(new (0, _chunk4GY57XKGcjs.f)({cause:E,displayMessage:"There was an error switching to the chain."}),e)]);return}if(!I)try{I=await _core.getWalletClient.call(void 0, m,{chainId:p})}catch(S){_optionalChain([l, 'optionalCall', _120 => _120(new (0, _chunk4GY57XKGcjs.f)({cause:S,displayMessage:"There was an error connecting to the wallet."}),e)]);return}if(!I){_optionalChain([l, 'optionalCall', _121 => _121(new (0, _chunk4GY57XKGcjs.g)({displayMessage:"There was an error connecting to the wallet.",property:"walletClient",value:I,expected:"WalletClient"}),e)]);return}let W=b||I.account;if(!W){_optionalChain([l, 'optionalCall', _122 => _122(new (0, _chunk4GY57XKGcjs.g)({property:"account",value:W,expected:"Account"}),e)]);return}let me=typeof W=="string"?W:W.address,M=_core.getPublicClient.call(void 0, m,{chainId:p});try{_chunkK2FCHQHAcjs.c.call(void 0, M)}catch(S){_optionalChain([l, 'optionalCall', _123 => _123(S,e)]);return}if(A){let S=_chunk4E5JGLUMcjs.L.call(void 0, p);await S.impersonateAccount({address:me}),I=_viem.createWalletClient.call(void 0, {transport:_viem.http.call(void 0, S.transport.url),account:W,chain:I.chain})}let q,oe={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 S=M.getTransactionCount({address:me,blockTag:"latest"}).catch(()=>{}),E={account:me,to:t,address:t,chainId:p,value:a};if(r){let Q=r.map(h=>{if("abi"in h&&Array.isArray(G)&&G.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 M.simulateCalls({calls:Q,account:W}),L=h.results.findIndex(_=>_.status==="failure");if(L!==-1){if(h.block.number===null)throw new (0, _chunk4GY57XKGcjs.g)({property:"blockNumber",value:h.block.number,expected:"bigint",message:"Block number is null"});let _=h.results[L],{reason:Ve}=_.data&&_.data!=="0x"?{reason:_chunk4GY57XKGcjs.d.call(void 0, _viem.decodeErrorResult.call(void 0, {data:_.data,abi:G}))}:_chunk4GY57XKGcjs.e.call(void 0, {error:_.error,revertIfUnknown:!1,abi:G});_optionalChain([l, 'optionalCall', _124 => _124(new (0, _chunkK2FCHQHAcjs.g)({cause:_.error,txHash:q,chainId:p,reason:Ve,abi:G,input:oe,blockNumber:h.block.number}),e)]);return}}if(process.env.NODE_ENV==="test")throw new (0, _chunk4GY57XKGcjs.g)({displayMessage:"Batch calls are not supported in test environment",expected:"not test",property:"NODE_ENV",value:process.env.NODE_ENV,level:"fatal"});let U=await I.sendCalls({calls:Q,account:W,forceAtomic:!0});_optionalChain([u, 'optionalCall', _125 => _125({id:U.id},e)]);let O=await I.waitForCallsStatus({id:U.id,pollingInterval:V,timeout:g});if(O.status==="success"){let h=_optionalChain([O, 'access', _126 => _126.receipts, 'optionalAccess', _127 => _127[0]]);if(!h)throw new (0, _chunk4GY57XKGcjs.f)({message:"Call status is success but no receipt was found",cause:O,level:"error",reason:"CALL_STATUS_SUCCESS_BUT_NO_RECEIPT"});return _optionalChain([s, 'optionalCall', _128 => _128(h,e)]),h}throw console.error("wallet_sendCalls: Call failed",O),new (0, _chunkK2FCHQHAcjs.g)({cause:O,level:"error",input:oe,txHash:q,abi:G,chainId:p})}if(F){let[Q,U,O]=await Promise.allSettled([M.call({...E,data:F}),_nullishCoalesce(o, () => (M.estimateGas({...E,data:F}))),S]);if(Q.status==="rejected")throw Q.reason;let h=U.status==="fulfilled"?Yt(U.value,10):_chunk4E5JGLUMcjs.w;q=await I.sendTransaction({data:F,to:t,account:W,gas:h,chainId:p,nonce:Qe({nonceResult:O,onWarning(L){_optionalChain([i, 'optionalCall', _129 => _129(L,e)])}}),value:a}),_optionalChain([u, 'optionalCall', _130 => _130({txHash:q},e)])}else if("abi"in y&&"functionName"in y){let{abi:Q,functionName:U}=y,O="params"in y?y.params:void 0,[h,L,_]=await Promise.allSettled([M.simulateContract({...E,abi:G,functionName:U,args:O,account:W}),_nullishCoalesce(o, () => (M.estimateContractGas({...E,abi:G,functionName:U,args:O}))),S]);if(h.status==="rejected")throw h.reason;let Ve=_nullishCoalesce(o, () => ((L.status==="fulfilled"?Yt(L.value,10):_chunk4E5JGLUMcjs.w)));q=await I.writeContract({...h.value.request,chainId:p,gas:Ve,nonce:Qe({nonceResult:_,onWarning(tr){_optionalChain([i, 'optionalCall', _131 => _131(tr,e)])}})}),_optionalChain([u, 'optionalCall', _132 => _132({txHash:q},e)])}else{let[Q]=await Promise.allSettled([S]);q=await I.sendTransaction({chainId:p,to:t,value:a,account:W,nonce:Qe({nonceResult:Q,onWarning(U){_optionalChain([i, 'optionalCall', _133 => _133(U,e)])}})}),_optionalChain([u, 'optionalCall', _134 => _134({txHash:q},e)])}process.env.NODE_ENV==="test"&&await _chunk4E5JGLUMcjs.L.call(void 0, p).mine({blocks:1});let z=await M.waitForTransactionReceipt({hash:q,pollingInterval:V,timeout:g,confirmations:1});if(z.status==="success")_optionalChain([s, 'optionalCall', _135 => _135(z,e)]);else{let Q=await Kt({publicClient:M,blockNumber:z.blockNumber,to:t,account:me,abi:G,args:"params"in y?y.params:void 0,functionName:"functionName"in y?y.functionName:void 0,value:a,data:F});process.env.NODE_ENV==="test"&&console.error("beraWriteContract: Revert reason",Q),_optionalChain([l, 'optionalCall', _136 => _136(new (0, _chunkK2FCHQHAcjs.g)({reason:Q.reason,txHash:q,receipt:z,to:t,functionName:"functionName"in y?y.functionName:void 0,input:oe,chainId:p,abi:G,blockNumber:z.blockNumber}),e)])}return z}catch(S){if(S instanceof _chunk4GY57XKGcjs.f)_optionalChain([l, 'optionalCall', _137 => _137(S,e)]);else if(S instanceof Error){let E=_chunk4GY57XKGcjs.e.call(void 0, {error:S,revertIfUnknown:!1,abi:G});if(E&&E.rootCause instanceof _viem.BaseError&&"url"in E.rootCause){_optionalChain([l, 'optionalCall', _138 => _138(new (0, _chunkB47PDJZMcjs.a)({cause:E.rootCause,response:void 0,endpoint:{url:E.rootCause.url,type:"rpc"},statusCode:E.rootCause instanceof _viem.HttpRequestError?E.rootCause.status:void 0}),e)]);return}_optionalChain([l, 'optionalCall', _139 => _139(new (0, _chunkK2FCHQHAcjs.g)({cause:S,to:t,txHash:q,chainId:p,abi:G,functionName:"functionName"in y?y.functionName:void 0,input:oe}),e)])}else _optionalChain([l, 'optionalCall', _140 => _140(new (0, _chunkK2FCHQHAcjs.g)({cause:S,txHash:q,to:t,chainId:p,functionName:"functionName"in y?y.functionName:void 0,input:oe,abi:G}),e)])}}async function wm({publicClient:e,ui:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),[o,n,s,i,l,u,m,d]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"MAX_COMMISSION_RATE"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"commissionChangeDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"rewardAllocationBlockDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"maxWeightPerVault"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"maxNumWeightsPerRewardAllocation"}),e.readContract({address:a.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"dropBoostDelay"}),e.readContract({address:a.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"activateBoostDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"rewardAllocationInactivityBlockSpan"})]);return{maxCommissionRate:Number(o)/1e4,boostDelay:Number(m),unboostDelay:Number(u),commissionChangeDelay:Number(n),rewardAllocationBlockDelay:Number(s),maxWeightPerVault:Number(i)/1e4,maxNumWeightsPerRewardAllocation:Number(l),rewardAllocationInactivityBlockSpan:Number(d),ui:t}}async function Xt({variables:e={},...t}={}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);return(await f("api",t).query({query:_api3.GetValidators,variables:{chain:r.bex.chainName,...e}})).data}async function Vm({allocation:e}){let t=await Re({filter:{where:{vaultAddressIn:e.weights.map(a=>a.receiver)}}}),r=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _141 => _141.start, 'access', _142 => _142.blockNumber]), () => (0));return _optionalChain([e, 'optionalAccess', _143 => _143.weights, 'access', _144 => _144.map, 'call', _145 => _145(a=>({percentage:a.percentage,receiver:a.receiver,startBlock:r,receivingVault:_optionalChain([t, 'optionalAccess', _146 => _146.gaugeList, 'access', _147 => _147.find, 'call', _148 => _148(o=>_viem.isAddressEqual.call(void 0, o.address,a.receiver))])}))])}async function Fm({id:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t);return(await f("api",t).query({query:_api3.GetValidator,variables:{id:e,chain:r.bex.chainName}})).data}async function qm({pubKey:e,first:t=1,...r}){let a=f("pol.subgraph",r);try{return(await a.query({query:_subgraph3.GetValidatorBlockStats,variables:{pubKey:e,first:t}})).data}catch(o){throw console.error("GetValidatorBlockStats:",o),o}}function ae(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 bo(e,t){return e.start.blockNumber===t.start.blockNumber&&e.weights.every((r,a)=>r.percentage===t.weights[a].percentage)}async function Om({client:e,pubKey:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{let[o,n]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getActiveRewardAllocation",args:[t]}),e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getSetActiveRewardAllocation",args:[t]})]),[s,i]=await Promise.all([o.startBlock!==0n?e.getBlock({blockNumber:BigInt(o.startBlock)}):{timestamp:0},n.startBlock!==0n?e.getBlock({blockNumber:BigInt(n.startBlock)}):{timestamp:0}]),l=ae(o,Number(s.timestamp)),u=ae(n,Number(i.timestamp)),m=!1;return u.start.blockNumber===0?m=!0:m=!bo(u,l),{activeRewardAllocation:l,setRewardAllocation:u,isBaseline:m,isNeverSet:_optionalChain([u, 'optionalAccess', _149 => _149.start, 'access', _150 => _150.blockNumber])===0}}catch(o){throw console.log("getValidatorRewardAllocation:",o),o}}function Jm(e){return e.start.blockNumber===0}async function $m({client:e,...t}){let{config:r}=_chunkM5BKM52Ucjs.a.call(void 0, t),a=await e.readContract({address:r.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getDefaultRewardAllocation",args:[]});return ae({...a,startBlock:0n},0)}async function zm({account:e,...t}){try{return(await f("pol.subgraph",t).query({query:_subgraph3.GetValidatorByAccount,variables:{account:e}})).data}catch(r){throw console.error("getManagedValidatorByAccount:",r),r}}async function Zm({client:e,valPubKey:t}){return 5614}async function Zt({account:e,block:t,...r}){return await f("pol.subgraph",r).query({query:_subgraph3.GetUserValidatorInformation,variables:{address:e.toLowerCase(),block:t}})}async function er({account:e,pubkey:t,publicClient:r,...a}){let{config:o}=_chunkM5BKM52Ucjs.a.call(void 0, a);if(!e)throw new Error("account is required");if(!r)throw new Error("publicClient is required");let[n,s,i]=await Promise.all([r.readContract({address:o.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"boosted",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"boostedQueue",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_chunkKIA6GUINcjs.m,functionName:"dropBoostQueue",args:[e,t]})]);return{pubkey:t,activeBoostAmount:_viem.formatEther.call(void 0, n),queuedBoostAmount:_viem.formatEther.call(void 0, s[1]),queuedDropBoostAmount:_viem.formatEther.call(void 0, i[1]),queuedBoostStartBlock:s[0],queuedDropBoostStartBlock:i[0],hasPendingBoosts:Number(s[1])>0||Number(i[1])>0,hasActiveBoosts:Number(n)>0}}async function pp({account:e,publicClient:t,chain:r,...a}){let{config:o}=_chunkM5BKM52Ucjs.a.call(void 0, a),n=_nullishCoalesce(r, () => (o.bex.chainName)),s=await Zt({account:e}),[i,l]=await Promise.all([Xt({variables:{chain:n,where:{idIn:s.data.userValidatorInformations.map(u=>u.validator.id)}}}),t&&_chunk4E5JGLUMcjs.N.call(void 0, {lastBlockTimestamp:_optionalChain([s, 'access', _151 => _151.data, 'access', _152 => _152._meta, 'optionalAccess', _153 => _153.block, 'access', _154 => _154.timestamp]),blockTime:o.averageBlockTime})?Promise.all(s.data.userValidatorInformations.map(u=>er({account:e,pubkey:u.validator.publicKey,publicClient:t}))):void 0]);return _optionalChain([i, 'optionalAccess', _155 => _155.validators, 'access', _156 => _156.validators, 'access', _157 => _157.map, 'call', _158 => _158(u=>{let m=l?l.find(d=>d.pubkey.toLowerCase()===u.pubkey.toLowerCase()):s.data.userValidatorInformations.find(d=>d.validator.id.toLowerCase()===u.id.toLowerCase());if(!m)throw new Error("User deposited not found");return{...u,userBoosts:{pubkey:"pubkey"in m?m.pubkey:m.validator.publicKey,activeBoostAmount:_optionalChain([m, 'optionalAccess', _159 => _159.activeBoostAmount]),queuedBoostAmount:_optionalChain([m, 'optionalAccess', _160 => _160.queuedBoostAmount]),queuedBoostStartBlock:Number(_optionalChain([m, 'optionalAccess', _161 => _161.queuedBoostStartBlock])),queuedDropBoostAmount:_optionalChain([m, 'optionalAccess', _162 => _162.queuedDropBoostAmount]),queuedDropBoostStartBlock:Number(_optionalChain([m, 'optionalAccess', _163 => _163.queuedDropBoostStartBlock])),hasPendingBoosts:Number(_optionalChain([m, 'optionalAccess', _164 => _164.queuedBoostAmount]))>0||Number(_optionalChain([m, 'optionalAccess', _165 => _165.queuedDropBoostAmount]))>0,hasActiveBoosts:Number(_optionalChain([m, 'optionalAccess', _166 => _166.activeBoostAmount]))>0}}})])}var ho=[{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:_chunk4E5JGLUMcjs.d.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:_chunk4E5JGLUMcjs.d.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:_chunk4E5JGLUMcjs.d.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:_chunk4E5JGLUMcjs.d.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:_chunk4E5JGLUMcjs.d.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:_chunk4E5JGLUMcjs.d.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:_chunk4E5JGLUMcjs.d.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 bp(e){return await new Promise(t=>setTimeout(t,2e3)),e==="0x4C368fFE3650379d6318C8d4630bc51f8Ad12bB6"?ho:[]}async function Cp({pubkey:e,dayRange:t,...r}){return(await f("pol.subgraph",r).query({query:_subgraph3.GetValidatorAnalytics,variables:{pubKey:e,timestamp:_chunk4E5JGLUMcjs.E.call(void 0, t).toString()}})).data}async function vp({client:e,pubKey:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getValCommissionOnIncentiveTokens",args:[t]});return Number(_nullishCoalesce(o, () => (0n)))/1e4}var Vp=(e,t,r)=>{if(!t||!e)return 0;let a=_chunk4E5JGLUMcjs.q.call(void 0, 1)/r;return(t?a*(Number(_optionalChain([e, 'access', _167 => _167.dynamicData, 'optionalAccess', _168 => _168.stakedBeraAmount]))/t):0)*Number.parseFloat(_nullishCoalesce(_optionalChain([e, 'access', _169 => _169.dynamicData, 'optionalAccess', _170 => _170.rewardRate]), () => ("0")))};async function Tp({client:e,pubKey:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_chunkKIA6GUINcjs.k,functionName:"getOperator",args:[t]})}catch(o){throw console.log("getValidatorOperatorAddress:",o),o}}async function Ep({client:e,pubKey:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getValQueuedCommissionOnIncentiveTokens",args:[t]});return{blockNumberLast:o.blockNumberLast,commissionRate:Number(o.commissionRate)/1e4}}async function Up({client:e,pubKey:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_chunkKIA6GUINcjs.k,functionName:"queuedOperator",args:[t]})}catch(o){throw console.log("getValidatorQueuedOperatorAddress:",o),o}}async function Hp({client:e,pubKey:t,...r}){let{config:a}=_chunkM5BKM52Ucjs.a.call(void 0, r);try{let o=await e.readContract({address:a.pol.beraChef,abi:_chunkKIA6GUINcjs.l,functionName:"getQueuedRewardAllocation",args:[t]});return ae(o,0)}catch(o){throw console.log("getValidatorQueuedRewardAllocation:",o),o}}function Co(e){return _optionalChain([e, 'optionalAccess', _171 => _171.rewardAllocationWeights, 'optionalAccess', _172 => _172.reduce, 'call', _173 => _173((t,r)=>{if(!r)return t;let a=_nullishCoalesce(_optionalChain([r, 'access', _174 => _174.receivingVault, 'optionalAccess', _175 => _175.activeIncentives, 'access', _176 => _176.filter, 'call', _177 => _177(o=>Number(o.remainingAmount)>0), 'access', _178 => _178.reduce, 'call', _179 => _179((o,n)=>{let s=Number(n.remainingAmountUsd)/Number(n.remainingAmount);return o+Number(n.incentiveRate)*s},0)]), () => (0));return t+a*r.percentage},0)])}function $p({validator:e,bgtPrice:t}){let r=Number(_nullishCoalesce(_optionalChain([e, 'access', _180 => _180.dynamicData, 'optionalAccess', _181 => _181.activeBoostAmount]), () => (0))),a=Co(e);return!a||!r?0:a*Number(_nullishCoalesce(_optionalChain([e, 'access', _182 => _182.dynamicData, 'optionalAccess', _183 => _183.lastDayDistributedBGTAmount]), () => (0)))*365/(r*t)}exports.a = vo; exports.b = No; exports.c = f; exports.d = _client.gql; exports.e = dt; exports.f = _berancersdk.BalancerApi; exports.g = pn; exports.h = An; exports.i = Bn; exports.j = pt; exports.k = Dn; exports.l = Wn; exports.m = Hn; exports.n = jn; exports.o = Zn; exports.p = ai; exports.q = re; exports.r = li; exports.s = Be; exports.t = pi; exports.u = bi; exports.v = Bi; exports.w = Vi; exports.x = Bt; exports.y = qi; exports.z = Oi; exports.A = Hi; exports.B = Ki; exports.C = xt; exports.D = Fe; exports.E = vt; exports.F = Bs; exports.G = Vs; exports.H = Ts; exports.I = Es; exports.J = fa; exports.K = Os; exports.L = _s; exports.M = js; exports.N = el; exports.O = Vt; exports.P = ul; exports.Q = Nt; exports.R = Bl; exports.S = Nl; exports.T = Fl; exports.U = Ca; exports.V = Ql; exports.W = Ol; exports.X = Gt; exports.Y = Re; exports.Z = hc; exports._ = Et; exports.$ = Rc; exports.aa = Gc; exports.ba = Ec; exports.ca = Mc; exports.da = Zc; exports.ea = ou; exports.fa = uu; exports.ga = pu; exports.ha = Au; exports.ia = Bu; exports.ja = de; exports.ka = Eu; exports.la = Ou; exports.ma = Ju; exports.na = Ht; exports.oa = id; exports.pa = pd; exports.qa = Ad; exports.ra = Pd; exports.sa = kd; exports.ta = Dd; exports.ua = qd; exports.va = Od; exports.wa = za; exports.xa = $d; exports.ya = uo; exports.za = gm; exports.Aa = wm; exports.Ba = Xt; exports.Ca = Vm; exports.Da = Fm; exports.Ea = qm; exports.Fa = ae; exports.Ga = bo; exports.Ha = Om; exports.Ia = Jm; exports.Ja = $m; exports.Ka = zm; exports.La = Zm; exports.Ma = er; exports.Na = pp; exports.Oa = bp; exports.Pa = Cp; exports.Qa = vp; exports.Ra = Vp; exports.Sa = Tp; exports.Ta = Ep; exports.Ua = Up; exports.Va = Hp; exports.Wa = Co; exports.Xa = $p;
|
|
3
|
+
`), 'access', _24 => _24[0], 'access', _25 => _25.slice, 'call', _26 => _26(0,100)])},content:t,matter:"",language:"",orig:t,stringify:()=>t}}};async function qi(e){_chunkS74ZMG2Gcjs.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', _27 => _27.logs])?_optionalChain([_viem.parseEventLogs.call(void 0, {abi:_chunkEU4WFADKcjs.e,logs:t.logs,eventName:"ProposalCreated"}), 'optionalAccess', _28 => _28.at, 'call', _29 => _29(0)]):void 0;if(!t||!r)return null;let a=await e.publicClient.getBlock({blockNumber:t.blockNumber}),o=Bt({description:_optionalChain([r, 'optionalAccess', _30 => _30.args, 'access', _31 => _31.description])});return{id:String(r.args.proposalId),proposalId:String(_optionalChain([r, 'optionalAccess', _32 => _32.args, 'access', _33 => _33.proposalId])),createdAt:a.timestamp.toString(),title:o.data.title,createdAtBlock:a.timestamp.toString(),voteStartAt:String(_optionalChain([r, 'optionalAccess', _34 => _34.args, 'access', _35 => _35.voteStart])),voteEndAt:String(_optionalChain([r, 'optionalAccess', _36 => _36.args, 'access', _37 => _37.voteEnd])),proposer:_optionalChain([r, 'optionalAccess', _38 => _38.args, 'access', _39 => _39.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', _40 => _40.args, 'access', _41 => _41.targets, 'access', _42 => _42.map, 'call', _43 => _43((n,s)=>({__typename:"ExecutableCall",id:`${t.transactionHash}-${s}`,target:n,value:String(_optionalChain([r, 'optionalAccess', _44 => _44.args, 'access', _45 => _45.values, 'access', _46 => _46[s]])),calldata:_optionalChain([r, 'optionalAccess', _47 => _47.args, 'access', _48 => _48.calldatas, 'access', _49 => _49[s]])}))]),timelock:void 0}}async function Oi({variables:e,...t}){return f("governance.subgraph",t).query({query:_governance.GetProposalVotes,variables:e})}var _honey = require('@berachain/graphql/honey');async function Hi({days:e,...t}){return(await f("honey.subgraph",t).query({query:_honey.GetChartData,variables:{interval:_honey.Aggregation_Interval.Day,first:e}})).data}async function Ki({client:e,collateralList:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{let o=await e.readContract({address:a.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"getWeights"});return t.reduce((s,i,l)=>Object.assign(s,{[i.address]:o[l]}),{})}catch(o){throw console.log(o),o}}async function xt({address:e,publicClient:t}){try{if(!t)throw new Error("Public client not found");let[r,a,o]=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"})]),n={address:e,decimals:r,name:a,symbol:o};if(typeof n.decimals!="number"||typeof n.name!="string"||typeof n.symbol!="string")throw new Error(`Invalid ERC20 token. Address: ${e}`);return n}catch(r){throw console.error(r),_chunkS74ZMG2Gcjs.a.call(void 0, {cause:r})}}async function Fe({client:e,tokenData:t,preferredCollateralOrder:r,...a}){let{config:o}=_chunk22MQVFHPcjs.b.call(void 0, a),[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"numRegisteredAssets"}),e.readContract({address:o.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"referenceCollateral"})]),i=[];for(let b=0;b<n;b++)i.push(e.readContract({address:o.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"registeredAssets",args:[BigInt(b)]}));let l=await Promise.all(i),m=(await Promise.all(l.map(b=>{let g=_optionalChain([t, 'optionalAccess', _50 => _50.find, 'call', _51 => _51(p=>_chunk22MQVFHPcjs.f.call(void 0, p,b))]);return g||xt({address:b,publicClient:e})}))).filter(b=>!!b).sort((b,g)=>l.indexOf(b.address)-l.indexOf(g.address)).map((b,g)=>({...b,order:g}));if(_optionalChain([r, 'optionalAccess', _52 => _52.length])){let b=[];for(let g of r){let p=m.find(A=>_chunk22MQVFHPcjs.f.call(void 0, A.address,g.address));p&&(b.push(p),m.splice(m.indexOf(p),1))}m.unshift(...b)}let d=m.find(b=>_chunk22MQVFHPcjs.f.call(void 0, b,s));if(!m)throw new Error("Collateral tokens not found");if(!d)throw new Error("Reference collateral address not found");return{collaterals:m,referenceCollateral:d}}async function le({client:e,asset:t,amount:r,...a}){let{config:o}=_chunk22MQVFHPcjs.b.call(void 0, a);try{let[n,s]=await Promise.all([e.readContract({address:o.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"vaults",args:[t]}),e.readContract({address:o.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"collectedFees",args:[o.honey.factory,t]})]);return await e.readContract({address:n,abi:_chunkEU4WFADKcjs.g,functionName:"balanceOf",args:[o.honey.factory]})+_viem.parseEther.call(void 0, _nullishCoalesce(r, () => ("0")))-s}catch(n){throw console.log(n),n}}async function vt({client:e,collateral:t,latestPrices:r,isPythWrapperEnabled:a,...o}){let{config:n}=_chunk22MQVFHPcjs.b.call(void 0, o);try{let s=e.readContract({address:n.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"isBadCollateralAsset",args:[t.address]}),i=e.readContract({address:n.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"isPegged",args:[t.address]});if(a&&r){let m=r.prices.map(d=>_viem.parseUnits.call(void 0, d,18));i=e.readContract({address:n.honey.reader,abi:_chunkEU4WFADKcjs.h,functionName:"isPeggedWithPrice",args:[t.address,m[0]]})}let[l,u]=await Promise.all([s,i]);return{isBlacklisted:l,isDepegged:!u}}catch(s){throw console.log(s),s}}var da=_viem.parseEther.call(void 0, "1");async function Bs({client:e,asset:t,amount:r,isMint:a,isPythWrapperEnabled:o,latestPrices:n,...s}){let{config:i}=_chunk22MQVFHPcjs.b.call(void 0, s);try{let l=await e.readContract({address:i.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"globalCap"});if(l>=da)return!1;let[{collaterals:u},m]=await Promise.all([Fe({client:e}),ma({client:e,asset:t,amount:r,latestPrices:n,isPythWrapperEnabled:o})]);if(!m)return;for(let d in m)if((a&&_chunk22MQVFHPcjs.f.call(void 0, u[d],t)||!a&&_chunk22MQVFHPcjs.f.call(void 0, u[d],t))&&m[d]>l-_chunkREDXXUK7cjs.r)return!0;return!1}catch(l){throw console.log(l),l}}async function ma({client:e,asset:t,amount:r,latestPrices:a,isPythWrapperEnabled:o}){let{collaterals:n}=await Fe({client:e}),s=0n,i=[];for(let l of n){let u=await vt({client:e,collateral:t,latestPrices:a,isPythWrapperEnabled:o});if(_optionalChain([u, 'optionalAccess', _53 => _53.isBlacklisted])||_optionalChain([u, 'optionalAccess', _54 => _54.isDepegged]))continue;let m=await le({client:e,asset:l.address,amount:_chunk22MQVFHPcjs.f.call(void 0, l,t)?r:"0"});m&&(s+=m,i.push(m))}if(s===0n)return i;for(let l in n)i[l]=_viem.parseEther.call(void 0, i[l].toString())/s;return i}async function Vs({client:e,collateralList:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{let o={mint:[],redeem:[]};for(let l of t)o.mint.push(e.readContract({address:a.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"mintRates",args:[l.address]})),o.redeem.push(e.readContract({address:a.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"redeemRates",args:[l.address]}));let[n,s,i]=await Promise.all([Promise.all(o.mint),Promise.all(o.redeem),e.readContract({address:a.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"getWeights"})]);return t.reduce((l,u)=>{let m=t.indexOf(u);return l.single[u.address]={mintFee:1-+_viem.formatUnits.call(void 0, n[m],18),redeemFee:1-+_viem.formatUnits.call(void 0, s[m],18)},l.basket.mintFee+=l.single[u.address].mintFee*+_viem.formatUnits.call(void 0, i[m],18),l.basket.redeemFee+=l.single[u.address].redeemFee*+_viem.formatUnits.call(void 0, i[m],18),l},{single:{},basket:{mintFee:0,redeemFee:0}})}catch(o){throw console.log(o),o}}async function Ts({...e}={}){return(await f("honey.subgraph",e).query({query:_honey.GetGlobalData})).data}async function Es({client:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t),a=r.honey.token;return await e.readContract({address:a,abi:_chunkEU4WFADKcjs.i,functionName:"paused"})}var fa=(l=>(l.Mint="previewMintHoney",l.MintWithPrice="previewMintHoneyWithPrices",l.RequiredCollateral="previewMintCollaterals",l.RequiredCollateralWithPrice="previewMintCollateralsWithPrices",l.Redeem="previewRedeemCollaterals",l.RedeemWithPrice="previewRedeemCollateralsWithPrices",l.HoneyToRedeem="previewRedeemHoney",l.HoneyToRedeemWithPrice="previewRedeemHoneyWithPrices",l))(fa||{});async function Os({client:e,collateral:t,collateralList:r,amount:a,method:o,latestPrices:n,isPythWrapperEnabled:s,...i}){let{config:l}=_chunk22MQVFHPcjs.b.call(void 0, i);try{let u=o==="previewMintHoney"||o==="previewRedeemHoney"||o==="previewMintHoneyWithPrices"||o==="previewRedeemHoneyWithPrices",m=_viem.parseUnits.call(void 0, a,u?t.decimals:18),d,b=[t.address,m];if(s&&n){let p=n.prices.map(A=>_viem.parseUnits.call(void 0, A,18));b=[t.address,m,p]}if(u){let p=await e.readContract({address:l.honey.reader,abi:_chunkEU4WFADKcjs.h,functionName:o,args:b});d={collaterals:p[0],honey:p[1]}}else d={collaterals:await e.readContract({address:l.honey.reader,abi:_chunkEU4WFADKcjs.h,functionName:o,args:b}),honey:m};let g=r.reduce((p,A)=>{let P=A.order;return A.address===t.address&&d.collaterals[P]===BigInt(0)?Object.assign(p,{[A.address]:d.collaterals[0]}):Object.assign(p,{[A.address]:d.collaterals[P]})},{});return g[t.address]===BigInt(0)&&(g[t.address]=d.collaterals[0]),{collaterals:g,honey:d.honey}}catch(u){throw console.log("error",u),u}}async function _s({pythOracle:e,publicClient:t}){return await t.readContract({address:e,abi:_chunkEU4WFADKcjs.j,functionName:"pythOracle"})}async function js({publicClient:e,factory:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);return await e.readContract({address:_nullishCoalesce(t, () => (a.honey.factory)),abi:_chunkEU4WFADKcjs.f,functionName:"priceOracle"})}async function el({client:e,collateralList:t,honeyFactoryAddress:r,...a}){let{config:o}=_chunk22MQVFHPcjs.b.call(void 0, a),n=_nullishCoalesce(r, () => (o.honey.factory));try{return await Promise.all(t.map(async i=>{let l=await e.readContract({address:o.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"vaults",args:[i.address]}),[u,m,[d,b]]=await Promise.all([e.readContract({address:l,abi:_chunkEU4WFADKcjs.g,functionName:"balanceOf",args:[n]}),e.readContract({address:n,abi:_chunkEU4WFADKcjs.f,functionName:"collectedAssetFees",args:[i.address]}),e.readContract({address:l,abi:_chunkEU4WFADKcjs.g,functionName:"custodyInfo"})]),g=await e.readContract({address:l,abi:_chunkEU4WFADKcjs.g,functionName:"convertToAssets",args:[u-m]});return{address:i.address,balance:g.toString(),formattedBalance:_viem.formatUnits.call(void 0, g,i.decimals),vault:d?b:l}}))}catch(s){throw console.log(s),s}}var _hermesclient = require('@pythnetwork/hermes-client');var Aa="https://hermes.pyth.network";async function Vt({priceFeedId:e}){let r=await new (0, _hermesclient.HermesClient)(Aa,{}).getLatestPriceUpdates(e,{encoding:"hex",parsed:!0});return{calldata:r.binary.data.map(a=>`0x${a}`),prices:_nullishCoalesce(_optionalChain([r, 'access', _55 => _55.parsed, 'optionalAccess', _56 => _56.flatMap, 'call', _57 => _57(a=>_viem.formatUnits.call(void 0, BigInt(a.price.price),a.price.expo*-1))]), () => ([]))}}async function ul({client:e,asset:t,amount:r,isMint:a,referenceCollateral:o,...n}){let{config:s}=_chunk22MQVFHPcjs.b.call(void 0, n);if(t===o.address)return!1;try{let[i]=await Promise.all([e.readContract({address:s.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"relativeCap",args:[t]})]),[l,u]=await Promise.all([le({client:e,asset:t,amount:a?r:void 0}),le({client:e,asset:o.address,amount:a?void 0:r})]);return u===0n?l!==0n:_viem.parseEther.call(void 0, (_nullishCoalesce(l, () => (0n))).toString())/(_nullishCoalesce(u, () => (0n)))>=i-_chunkREDXXUK7cjs.r}catch(i){throw console.log(i),i}}async function Nt({client:e,priceFeedId:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{return await e.readContract({address:a.external.pyth,abi:_chunkEU4WFADKcjs.l,functionName:"getUpdateFee",args:[t]})}catch(o){throw console.error("getPythUpdateFee",o),o}}var Bl=async({state:e,account:t,publicClient:r,priceFeedMap:a,collateralList:o,isPythWrapperEnabled:n,...s})=>{let{config:i}=_chunk22MQVFHPcjs.b.call(void 0, s),l=_chunk22MQVFHPcjs.e.call(void 0, s),{actionType:u,fromAmount:m,collaterals:d,isBasketModeEnabled:b}=e,g=n?i.honey.pythWrapper:i.honey.factory,p=o.map(A=>A.address);if(t&&m[0]&&p.length){let A=u==="mint";if(n&&r&&a){let y=(await Vt({priceFeedId:Object.values(a)})).calldata,F;try{F=await Nt({client:r,priceFeedId:y})}catch (e8){F=_chunkREDXXUK7cjs.x.call(void 0, d.length)}let G=[y,_optionalChain([d, 'access', _58 => _58[0], 'optionalAccess', _59 => _59.address]),_viem.parseUnits.call(void 0, m[0],_nullishCoalesce((A?_optionalChain([d, 'access', _60 => _60[0], 'optionalAccess', _61 => _61.decimals]):_optionalChain([l, 'optionalAccess', _62 => _62.decimals])), () => (18))),t,!!b];return{address:g,abi:_chunkEU4WFADKcjs.k,functionName:A?"mint":"redeem",params:G,value:F}}let P=[_optionalChain([d, 'access', _63 => _63[0], 'optionalAccess', _64 => _64.address]),_viem.parseUnits.call(void 0, m[0],_nullishCoalesce((A?_optionalChain([d, 'access', _65 => _65[0], 'optionalAccess', _66 => _66.decimals]):_optionalChain([l, 'optionalAccess', _67 => _67.decimals])), () => (18))),t,!!b];return{address:g,abi:_chunkEU4WFADKcjs.f,functionName:A?"mint":"redeem",params:P}}throw new Error("Something went wrong while creating the Honey swap payload")};async function Nl({client:e,isMint:t,collateralList:r,latestPrices:a,isPythWrapperEnabled:o,...n}){let{config:s}=_chunk22MQVFHPcjs.b.call(void 0, n);if(o&&a){if(r.length===0)return;let l=a.prices.map(m=>_viem.parseUnits.call(void 0, m,18));return await e.readContract({address:s.honey.reader,abi:_chunkEU4WFADKcjs.h,functionName:"isBasketModeEnabledWithPrices",args:[t,l]})}return await e.readContract({address:s.honey.factory,abi:_chunkEU4WFADKcjs.f,functionName:"isBasketModeEnabled",args:[t]})}async function Fl({block:e,currentBlock:t,blockTime:r,publicClient:a}){if(_chunkS74ZMG2Gcjs.b.call(void 0, e,"block"),_chunkS74ZMG2Gcjs.c.call(void 0, a),t>e){let n=await a.getBlock({blockNumber:BigInt(e),includeTransactions:!1});return{timestamp:Number(n.timestamp)}}return{timestamp:_chunkREDXXUK7cjs.d.call(void 0, Date.now())+r*(Number(e)-Number(t))}}var Ca=(a=>(a.Duration="duration",a.TargetRate="targetRate",a.TargetApr="targetApr",a))(Ca||{});async function Ql(e,t){let[r,a,o,n,s,i]=await Promise.all([t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"rewardsDuration"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"rewardVaultManager"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"rewardRate"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"periodFinish"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"targetRewardsPerSecond"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"minRewardDurationForTargetRate"})]),l=o*(n-BigInt(_chunkREDXXUK7cjs.d.call(void 0, Date.now())))/10n**18n;return{rewardsDuration:Number(r),mode:s===0n?"duration":"targetRate",manager:a,rewardRate:_viem.formatUnits.call(void 0, o,36),periodFinish:Number(n),availableRewards:_viem.formatUnits.call(void 0, l,18),minRewardDurationForTargetRate:Number(i),targetRewardsPerSecond:_viem.formatUnits.call(void 0, s,36)}}function ve(e,t,r){return e?r*t*_chunkREDXXUK7cjs.q.call(void 0, 1)/e:null}function Pa(e,t,r){return r?e*r/(t*_chunkREDXXUK7cjs.q.call(void 0, 1)):0}function Ol({availableRewards:e,periodFinish:t,tvl:r,bgtPrice:a,MIN_REWARD_DURATION:o,MAX_REWARD_DURATION:n,...s}){let i=_chunkREDXXUK7cjs.d.call(void 0, Date.now());if(i>t)return{apr:0,duration:0,rewardRate:0,targetRate:null,periodFinish:0,mode:null};if(s.mode==="targetRate"||s.mode==="targetApr"){let d,{minRewardDurationForTargetRate:b,currentDuration:g}=s;if(s.mode==="targetRate"?d=s.rewardRate:d=Pa(s.apr,a,r),d===0){let P=Math.min(g,n),V=e?e/P:0;return{apr:ve(r,a,V),duration:P,rewardRate:V,targetRate:null,periodFinish:P+i,mode:"duration"}}let p=b||o,A=e?e/d:0;if(A<p){let P=e?e/p:0;return{apr:ve(r,a,P),duration:p,rewardRate:P,targetRate:P.toString(),periodFinish:p+i,mode:null}}return{apr:ve(r,a,d),duration:A,rewardRate:d,targetRate:d.toString(),periodFinish:A+i,mode:null}}let{duration:l}=s,u=e/l;return{apr:ve(r,a,u),mode:null,targetRate:null,duration:l,rewardRate:u,periodFinish:l+i}}var _chain = require('@berachain/graphql/chain');async function Gt({defaultBlockTime:e,blocksSpan:t,...r}={}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),o=f("blocks.subgraph",r),n=_nullishCoalesce(e, () => (a.averageBlockTime)),s=_nullishCoalesce(t, () => (Math.floor(_chunkREDXXUK7cjs.i.call(void 0, 1)/n))),l=(await o.query({query:_chain.GetBlocksTimeStamp,variables:{skip:s}})).data;return(_chunkREDXXUK7cjs.d.call(void 0, Date.now())-Number(_optionalChain([l, 'optionalAccess', _68 => _68.oldest, 'access', _69 => _69[0], 'optionalAccess', _70 => _70.timestamp])))/(Number(_optionalChain([l, 'optionalAccess', _71 => _71.newest, 'access', _72 => _72[0], 'optionalAccess', _73 => _73.number]))-Number(_optionalChain([l, 'optionalAccess', _74 => _74.oldest, 'access', _75 => _75[0], 'optionalAccess', _76 => _76.number])))}async function Tt(e={}){let{config:t}=_chunk22MQVFHPcjs.b.call(void 0, e),a=await f("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}}async function Ft({publicClient:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);_chunkS74ZMG2Gcjs.c.call(void 0, e);try{let a=await e.readContract({address:r.tokens.bgt,abi:_chunkEU4WFADKcjs.m,functionName:"totalBoosts",args:[]});return _viem.formatEther.call(void 0, a)}catch(a){throw console.log(a),a}}async function Dt({publicClient:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);_chunkS74ZMG2Gcjs.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 Re({filter:e,publicClient:t,...r}={}){let o=await f("api",r).query({query:_api3.GetVaults,variables:e}),n=await Promise.allSettled(o.data.polGetRewardVaults.vaults.map(async i=>{if(t)return Promise.allSettled(i.activeIncentives.map(l=>t.readContract({abi:_chunkEU4WFADKcjs.d,address:i.address,functionName:"incentives",args:[l.tokenAddress]})))})),s=o.data.polGetRewardVaults.vaults.map((i,l)=>{let u=0,m=i.activeIncentives.map((d,b)=>{let g=Number(d.remainingAmountUsd)&&Number(d.remainingAmount)?Number(d.remainingAmountUsd)/Number(d.remainingAmount):0,p=_optionalChain([n, 'access', _77 => _77[l], 'optionalAccess', _78 => _78.status])==="fulfilled"&&_optionalChain([n, 'access', _79 => _79[l], 'optionalAccess', _80 => _80.value, 'optionalAccess', _81 => _81[b], 'optionalAccess', _82 => _82.status])==="fulfilled"?_viem.formatUnits.call(void 0, BigInt(n[l].value[b].value[2]),d.token.decimals):d.remainingAmount;return u+=Number(p)*Number(g),{...d,remainingAmount:p}});return{...i,dynamicData:{...i.dynamicData,allTimeReceivedBGTAmount:_nullishCoalesce(_optionalChain([i, 'access', _83 => _83.dynamicData, 'optionalAccess', _84 => _84.allTimeReceivedBGTAmount]), () => ("0")),bgtCapturePercentage:_nullishCoalesce(_optionalChain([i, 'access', _85 => _85.dynamicData, 'optionalAccess', _86 => _86.bgtCapturePercentage]), () => ("0")),activeIncentivesValueUsd:u.toString(),activeIncentivesRateUsd:_nullishCoalesce(_optionalChain([i, 'access', _87 => _87.dynamicData, 'optionalAccess', _88 => _88.activeIncentivesRateUsd]), () => ("0")),bgtCapturePerBlock:_nullishCoalesce(_optionalChain([i, 'access', _89 => _89.dynamicData, 'optionalAccess', _90 => _90.bgtCapturePerBlock]), () => ("0"))},activeIncentives:m}});return{pagination:o.data.polGetRewardVaults.pagination,gaugeList:s}}async function It(e){let{gaugeList:t}=await Re({filter:{orderBy:_api3.GqlRewardVaultOrderBy.Apr,orderDirection:_api3.GqlRewardVaultOrderDirection.Desc,pageSize:e,where:{includeNonWhitelisted:!1}}});return t}async function hc(e){let[t,r,a,o]=await Promise.allSettled([Tt(),It(300),Dt({publicClient:e}),Ft({publicClient:e})]);return t.status==="rejected"&&ce.captureException(t.reason,{level:"warning"}),r.status==="rejected"&&ce.captureException(r.reason,{level:"warning"}),a.status==="rejected"&&ce.captureException(a.reason,{level:"warning"}),o.status==="rejected"&&ce.captureException(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 _subgraph3 = require('@berachain/graphql/pol/subgraph');async function Et({...e}){let t=f("pol.subgraph",e),{data:r}=await t.query({query:_subgraph3.GetIncentiveFeeClaimStats});if(r.incentiveFeeClaims.length>0){let a=_optionalChain([r, 'optionalAccess', _91 => _91.incentiveFeeClaims, 'access', _92 => _92.reduce, 'call', _93 => _93((s,i)=>s+Number(i.payoutAmount),3e4)]),n=(_optionalChain([r, 'optionalAccess', _94 => _94.incentiveFeeClaims, 'access', _95 => _95.filter, 'call', _96 => _96(s=>Number(s.timestamp)/1e3>Date.now()-_chunkREDXXUK7cjs.j.call(void 0, 1))])).reduce((s,i)=>s+Number(i.payoutAmount),0);return{sumAllClaims:a,sumClaimsInLast24Hours:n}}return{sumAllClaims:0,sumClaimsInLast24Hours:0}}async function Rc(e={}){let{config:t}=_chunk22MQVFHPcjs.b.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,n)=>(o[n.name]=n,o),{})}}catch(r){throw console.error("Error fetching validator information",r),r}}async function Gc({account:e,validator:t,page:r=1,perPage:a=1e3,...o}){let{config:n}=_chunk22MQVFHPcjs.b.call(void 0, o),s=await fetch(`${n.pol.bribeBoostApi}/api/v1/wallets/${e.toLowerCase()}/proofs/validator/${t.toLowerCase()}?page=${r}&per_page=${a}`,{cache:"no-store"});if(!s.ok){let l=await _chunkREDXXUK7cjs.a.call(void 0, s);throw new (0, _chunkJMKLDDKYcjs.f)({message:"Failed to fetch proofs on server",cause:{error:l,result:s,account:e,validator:t},reason:_optionalChain([l, 'optionalAccess', _97 => _97.reason])})}return await s.json()}async function Ec({address:e,publicClient:t}){return _chunkS74ZMG2Gcjs.c.call(void 0, t),t.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"previewRedeem",args:[_viem.parseUnits.call(void 0, "1",18)]}).then(r=>Number(_viem.formatUnits.call(void 0, r,18))).catch(()=>0)}async function Mc({address:e,chainName:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),o=_nullishCoalesce(t, () => (a.bex.chainName)),n=f("api",r),{data:s}=await n.query({query:_api3.GetRewardVault,variables:{vaultId:e,chain:o}});if(!_optionalChain([s, 'optionalAccess', _98 => _98.rewardVault]))throw new (0, _chunkS74ZMG2Gcjs.f)({resource:"Reward vault",id:e,chainId:a.chainId});return s.rewardVault}var qt=[{inputs:[{internalType:"address",name:"initialOwner",type:"address"},{internalType:"address",name:"initialImplementation",type:"address"}],stateMutability:"payable",type:"constructor"},{inputs:[],name:"NewImplementationHasNoCode",type:"error"},{inputs:[],name:"NewOwnerIsZeroAddress",type:"error"},{inputs:[],name:"Unauthorized",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"implementation",type:"address"}],name:"Upgraded",type:"event"},{inputs:[],name:"implementation",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"result",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newImplementation",type:"address"}],name:"upgradeTo",outputs:[],stateMutability:"nonpayable",type:"function"}];async function Qt({publicClient:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t),a=r.pol.factory;_chunkS74ZMG2Gcjs.b.call(void 0, e,"publicClient"),_chunkS74ZMG2Gcjs.d.call(void 0, r.pol.factory,"factoryAddress");let o=await e.readContract({address:a,abi:_chunkEU4WFADKcjs.o,functionName:"beacon"});return await e.readContract({address:o,abi:qt,functionName:"implementation"})}async function Zc({publicClient:e,...t}){_chunkS74ZMG2Gcjs.c.call(void 0, e);let r=await Qt({publicClient:e,...t}),[a,o]=await Promise.all([e.readContract({address:r,abi:_chunkEU4WFADKcjs.d,functionName:"MIN_REWARD_DURATION"}),e.readContract({address:r,abi:_chunkEU4WFADKcjs.d,functionName:"MAX_REWARD_DURATION"})]);return{minRewardDuration:Number(a),maxRewardDuration:Number(o)}}async function ou({tokenAddress:e,publicClient:t,factoryAddress:r,...a}){let{config:o}=_chunk22MQVFHPcjs.b.call(void 0, a),n=await t.readContract({address:_nullishCoalesce(r, () => (o.pol.factory)),abi:_chunkEU4WFADKcjs.o,functionName:"getVault",args:[e]});return n===_viem.zeroAddress?null:n}async function uu({address:e,stakingToken:t,publicClient:r}){let a=await r.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"getWhitelistedTokens"}),n=a.findIndex(i=>_berancersdk.isSameAddress.call(void 0, t,i))!==-1?await r.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"totalSupply"}):0n,s=await Promise.allSettled(a.map(async i=>{let[l,u,m,d]=await Promise.all([r.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"incentives",args:[i]}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"decimals"}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"symbol"}),r.readContract({address:i,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]})]),[b,g,p,A]=l;return{token:i,manager:A,minIncentiveRate:_viem.formatUnits.call(void 0, b,u),incentiveRate:_viem.formatUnits.call(void 0, g,u),remainingAmount:_viem.formatUnits.call(void 0, p,u),symbol:m,decimals:u,pendingAmount:_berancersdk.isSameAddress.call(void 0, t,i)?_viem.formatUnits.call(void 0, d-n-p,u):_viem.formatUnits.call(void 0, d-p,u)}}));return s.forEach((i,l)=>{i.status==="rejected"&&Ut.captureException(new (0, _chunkJMKLDDKYcjs.f)({reason:i.reason,message:"Incorrect incentives token received.",level:"error"}),{extra:{token:a[l],address:e,error:i.reason}})}),s.map(i=>i.status==="fulfilled"?i.value:null).filter(i=>i!==null)}async function pu({address:e,publicClient:t}){return await t.readContract({address:e,abi:_chunkEU4WFADKcjs.d,functionName:"stakeToken"})}function Qa(e){return e==="DAY"?_api3.GqlSWberaVaultMetadataResolution.OneDay:_api3.GqlSWberaVaultMetadataResolution.SevenDays}async function Au({window:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t),a=f("api",t);try{let o=await a.query({query:_api3.GetSWberaVaultMetadata,variables:{chain:r.bex.chainName,resolution:Qa(_nullishCoalesce(e, () => ("DAY")))}}),{apr:n}=o.data.polGetSWberaVaultMetadata;return Number(n)}catch(o){throw console.error("Failed to get SW Bera APR",o),o}}async function Bu({chain:e,range:t=_api3.GqlVaultSnapshotDataRange.ThirtyDays,...r}={}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),o=f("api",r);try{return(await o.query({query:_api3.GetSWberaVaultSnapshots,variables:{chain:_nullishCoalesce(e, () => (a.bex.chainName)),range:t}})).data.polGetSWberaVaultSnapshots}catch(n){throw console.error("Failed to get SW Bera Snapshots",n),n}}async function de({publicClient:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t),a=await e.readContract({address:r.tokens.swbera,abi:_chunkEU4WFADKcjs.n,functionName:"WITHDRAWAL_COOLDOWN"});return Number(a)}async function Eu({address:e,publicClient:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);_chunkS74ZMG2Gcjs.c.call(void 0, t);let o=26;try{let[n,s]=await Promise.all([t.getBlock({blockTag:"latest"}),Gt()]),i=Math.floor(o*60*60/s),l=n.number-BigInt(i),[u,m,d,b,g,p,A,P,V,y,F]=await Promise.all([t.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"totalAssets"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"totalSupply"}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"previewRedeem",args:[10n**18n],blockNumber:n.number}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e]}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"totalAssets",blockNumber:l}),t.readContract({address:e,abi:_viem.erc20Abi,functionName:"totalSupply",blockNumber:l}),t.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"previewRedeem",args:[10n**18n],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"balanceOf",args:[e],blockNumber:l}),t.readContract({address:a.tokens.wbera,abi:_viem.erc20Abi,functionName:"totalSupply"}),de({publicClient:t}),Et({})]),G=new (0, _bignumberjs2.default)(A.toString());return{current:{exchangeRate:new (0, _bignumberjs2.default)(d.toString()).toString(),totalSupply:new (0, _bignumberjs2.default)(m.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _bignumberjs2.default)(u.toString()).dividedBy(1e18).toString(),tvl:new (0, _bignumberjs2.default)(b.toString()).dividedBy(1e18).toString()},previous:{exchangeRate:G.toString(),totalSupply:new (0, _bignumberjs2.default)(p.toString()).dividedBy(1e18).toString(),totalAssets:new (0, _bignumberjs2.default)(g.toString()).dividedBy(1e18).toString(),tvl:new (0, _bignumberjs2.default)(P.toString()).dividedBy(1e18).toString()},totalWBeraIssued:new (0, _bignumberjs2.default)(V.toString()).dividedBy(1e18).toString(),lockPeriod:y,totalBuyBacks:F.sumAllClaims,totalBuyBacksInLast24Hours:F.sumClaimsInLast24Hours}}catch(n){throw console.error("Failed to get SW Bera Vault Metadata",n),n}}function Mt(e){let t=Date.now(),r=e*1e3-t;if(r<=0)return;let a=_chunkREDXXUK7cjs.d.call(void 0, r);return _chunkREDXXUK7cjs.G.call(void 0, a,!0,!0)}async function Ou(e,t,r,a){let o=[];function n(s,i){let[l,u,m]=s,d=l,b=Number(m)+Number(i),g=_chunkREDXXUK7cjs.d.call(void 0, Date.now()),p=b-g;if(d>0){let A=Mt(p<=0?0:b);o.push({withdrawalAmount:d,timeRemaining:A})}}switch(a){case"V1":{let[s,i]=await Promise.all([r.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"withdrawalRequests",args:[t]}),de({publicClient:r})]);return n(s,i),o}case"V2":{let[s,i,l]=await Promise.all([r.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"withdrawalRequests",args:[t]}),r.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"getERC721WithdrawalRequestIds",args:[t]}),de({publicClient:r})]);n(s,l);let m=(await Promise.all(i.map(async d=>{let b=await r.readContract({address:e,abi:_chunkEU4WFADKcjs.n,functionName:"getERC721WithdrawalRequest",args:[d]}),{assets:g,requestTime:p}=b;if(!g||!p)throw new Error("Invalid withdrawal request");let A=g,P=Number(p)+Number(l),V=_chunkREDXXUK7cjs.d.call(void 0, Date.now()),y=P-V;if(A>0){let F=Mt(y<=0?0:P);return{withdrawalAmount:A,timeRemaining:F,withdrawalRequestId:d}}return null}))).filter(d=>d!==null);return o.push(...m),o}}}async function Ju({account:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.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 _chunkREDXXUK7cjs.a.call(void 0, a);throw new (0, _chunkJMKLDDKYcjs.f)({message:"Failed to fetch incentives on server",cause:{error:o,result:a,account:e},reason:_optionalChain([o, 'optionalAccess', _99 => _99.error])})}return await a.json()}async function _t({account:e,vaultAddress:t,publicClient:r}){if(_chunkS74ZMG2Gcjs.c.call(void 0, r),!e||!_viem.isAddress.call(void 0, e))throw new (0, _chunkJMKLDDKYcjs.g)({property:"account",value:e,expected:"Address"});if(!t||!_viem.isAddress.call(void 0, t))throw new (0, _chunkJMKLDDKYcjs.g)({property:"vaultAddress",value:t,expected:"Address"});try{let[a,o]=await Promise.all([r.readContract({address:t,abi:_chunkEU4WFADKcjs.d,functionName:"balanceOf",args:[e]}),r.readContract({address:t,abi:_chunkEU4WFADKcjs.d,functionName:"getTotalDelegateStaked",args:[e]})]);return{balance:a,delegated:o}}catch(a){throw console.log(a),a}}async function Ht({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:_chunkEU4WFADKcjs.d,functionName:"earned",args:[e]})}async function Jt({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:_chunkEU4WFADKcjs.d,functionName:"totalSupply",args:[]})}catch(r){throw console.log(r),r}}async function id({account:e,vaultAddress:t,publicClient:r}){let[a,o,n]=await Promise.all([_t({account:e,vaultAddress:t,publicClient:r}),Ht({account:e,vaultAddress:t,publicClient:r}),Jt({vaultAddress:t,publicClient:r})]),s=a.balance-a.delegated,i=n>0n?Number(Number.parseFloat(_viem.formatEther.call(void 0, a.balance))/Number.parseFloat(_viem.formatEther.call(void 0, n))).toString():"0";return{balance:a.balance,delegatedBalance:a.delegated,withdrawableBalance:s,rewards:_viem.formatEther.call(void 0, o),percentage:i}}async function pd({account:e,publicClient:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),s=await _asyncOptionalChain([(await f("api",r).query({query:_api3.GetUserVaults,variables:{userId:e,chain:a.bex.chainName}})), 'access', async _100 => _100.data, 'optionalAccess', async _101 => _101.userVaultDeposits, 'optionalAccess', async _102 => _102.deposits]);if(!s)return{totalBgtRewards:"0",vaults:[],totalStakedValue:0};let[i,l]=await Promise.all([t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:_chunkEU4WFADKcjs.d,functionName:"earned",args:[e]}))}),t.multicall({allowFailure:!1,contracts:s.map(g=>({address:g.vaultAddress,abi:_chunkEU4WFADKcjs.d,functionName:"balanceOf",args:[e]}))})]),{userVaults:u,total:m}=s.reduce((g,p,A)=>{let P=i[A],V=l[A];if(g.total+=P,!p.vault)return $t.captureException(new Error("Deposit data from API is missing vault"),{data:{deposit:p}}),console.error("Deposit data from API is missing vault",p),g;if(P>0n||V>0n){let y=_optionalChain([p, 'access', _103 => _103.vault, 'access', _104 => _104.dynamicData, 'optionalAccess', _105 => _105.tvl])&&Number(p.vault.stakingTokenAmount)!==0?Number(_nullishCoalesce(_optionalChain([p, 'access', _106 => _106.vault, 'access', _107 => _107.dynamicData, 'optionalAccess', _108 => _108.tvl]), () => (0)))/Number(p.vault.stakingTokenAmount):null;g.userVaults.push({...p,vault:p.vault,unclaimedBgt:_viem.formatUnits.call(void 0, P,18),formattedBalance:_viem.formatUnits.call(void 0, V,p.vault.stakingToken.decimals),stakingTokenPrice:y})}return g},{userVaults:[],total:0n}),d=[...u].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:d.reduce((g,p)=>{let A=Number(_nullishCoalesce(_optionalChain([p, 'access', _109 => _109.vault, 'access', _110 => _110.dynamicData, 'optionalAccess', _111 => _111.tvl]), () => (0)));if(A===0)return g;let P=Number.parseFloat(p.vault.stakingTokenAmount),V=A/P;return g+V*Number(p.formattedBalance)},0),totalBgtRewards:_viem.formatUnits.call(void 0, m,18),vaults:d}}async function Ad({vault:e,chain:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);return(await f("api",r).query({query:_api3.GetVaultHistory,variables:{...r,vaultId:e,chain:_nullishCoalesce(t, () => (a.bex.chainName))}})).data.polGetRewardVaultSnapshots}async function Pd({address:e,onlyActiveValidators:t,...r}){returnawait _asyncNullishCoalesce((await f("api",r).query({query:_api3.GetVaultValidators,variables:{vaultId:e,isActive:t}})).data.validators.validators, async () => ([]))}async function kd({addressIn:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t),a=e.map(s=>s.toLowerCase()).filter((s,i,l)=>s&&l.indexOf(s)===i),o=f("api",t),{data:n}=await o.query({query:_api.GetTokenCurrentPrices,variables:{chains:[r.bex.chainName],addressIn:a}});return n.tokenGetCurrentPrices.reduce((s,i)=>{if(!i.price||!i.address)return s;let l=i.address;return s[_viem.getAddress.call(void 0, l)]={price:_chunkREDXXUK7cjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[l.toLowerCase()]={price:_chunkREDXXUK7cjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},_chunk22MQVFHPcjs.f.call(void 0, l,"WBERA")&&(s[_viem.zeroAddress]={price:_chunkREDXXUK7cjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt.toLowerCase()]={price:_chunkREDXXUK7cjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt},s[r.tokens.bgt]={price:_chunkREDXXUK7cjs.C.call(void 0, i.price.toString()),updatedAt:i.updatedAt}),s},{})}async function Dd({tokenList:e,publicClient:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{let o=await Promise.all(e.map(n=>t.readContract({address:a.honey.pythOracle,abi:_chunkEU4WFADKcjs.p,functionName:"feeds",args:[n]})));return e.reduce((n,s,i)=>({...n,[s]:o[i]}),{})}catch(o){throw console.error("getPythPriceFeedId",o),o}}async function qd({tokens:e,account:t,spender:r,publicClient:a}){if(!a||!e||!r)throw new Error("missing publicClient, tokens, or spender");if(t){let o=e.map(i=>({address:i.address,abi:_viem.erc20Abi,functionName:"allowance",args:[t,r]}));return(await a.multicall({contracts:o})).map((i,l)=>{let u=e[l];return i.error?{balance:0,...u}:{allowance:i.result,formattedAllowance:_viem.formatUnits.call(void 0, i.result,_optionalChain([u, 'optionalAccess', _112 => _112.decimals])||18),...u}})}}async function Od({url:e,...t}={}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);returnawait _asyncNullishCoalesce((await _chunkREDXXUK7cjs.c.call(void 0, {url:_nullishCoalesce(e, () => (r.lists.tokenList)),type:"rest",name:"GitHub"})).tokens, async () => ([]))}function za({token:e,account:t,multicallAddress:r}){return _chunk22MQVFHPcjs.f.call(void 0, e,"BERA")||_chunk22MQVFHPcjs.f.call(void 0, e,"ETH")?{address:r,abi:_chunkEU4WFADKcjs.q,functionName:"getEthBalance",args:[t]}:{address:e.address,abi:_viem.erc20Abi,functionName:"balanceOf",args:[t]}}async function $d({account:e,tokenList:t,publicClient:r}){if(!r)throw new Error("publicClient is not defined");if(!e||!t)throw new Error("account or tokenList is not defined");if(!_viem.isAddress.call(void 0, e))throw new Error("account is not a valid address");let a=t.filter(u=>_viem.isAddress.call(void 0, u.address));_chunkS74ZMG2Gcjs.b.call(void 0, r.chain,"publicClient.chain"),_chunkS74ZMG2Gcjs.b.call(void 0, r.chain.contracts,"publicClient.chain.contracts"),_chunkS74ZMG2Gcjs.b.call(void 0, r.chain.contracts.multicall3,"publicClient.chain.contracts.multicall3");let{multicall3:o}=r.chain.contracts,n=typeof o=="string"?o:o.address;_chunkS74ZMG2Gcjs.d.call(void 0, n,"multicall3Address");let s=a.map(u=>za({token:u,account:e,multicallAddress:n})),i=await r.multicall({contracts:s});return await Promise.all(i.map(async(u,m)=>{let d=a[m];if(u.error)return{balance:0n,formattedBalance:"0",...d};let b=_viem.formatUnits.call(void 0, u.result,_optionalChain([d, 'optionalAccess', _113 => _113.decimals])||18);return{balance:u.result,formattedBalance:b.includes("e")?"0":b,...d}}))}var _core = require('@wagmi/core');async function Kt({publicClient:e,abi:t,...r}){let a=[..._chunkJMKLDDKYcjs.c,..._nullishCoalesce(t, () => ([]))],o,n,s,i,l,u,m;if("txHash"in r){let d=await e.getTransaction({hash:r.txHash});if(!d.to)throw new (0, _chunkJMKLDDKYcjs.g)({property:"tx",value:d,expected:"Transaction",message:"Trying to get revert reason for a contract creation"});l=d.input,n=d.to,s=d.from,i=d.value,o=d.blockNumber}else if(o=r.blockNumber,n=r.to,s=r.account,i=r.value,"data"in r)l=r.data;else if("functionName"in r&&"args"in r)u=r.functionName,m=r.args;else if(!i)throw new (0, _chunkJMKLDDKYcjs.g)({property:"dataOrFunctionNameAndArgs",value:r,expected:"Hex or FunctionName and Args"});try{if(!a)if(l)await e.call({data:l,to:n,account:s,blockNumber:o,value:i});else throw new Error("Data is required if abi is not provided");if("functionName"in r&&"args"in r&&r.functionName)u=r.functionName,m=r.args;else if(l){if(!a){let d=await e.call({data:l,to:n,account:s,blockNumber:o,value:i});throw new Error(`Getting revert reason for successful simulation. Data: ${l}`,{cause:d})}try{let d=_viem.decodeFunctionData.call(void 0, {abi:a,data:l});u=d.functionName,m=d.args}catch(d){throw d instanceof _viem.AbiFunctionSignatureNotFoundError&&await e.call({data:l,to:n,account:s,blockNumber:o,value:i}),new Error("Data is required if abi is not provided")}}else throw new Error("No data or function name and args provided");throw a&&u?(await e.simulateContract({functionName:u,args:m,abi:a,address:n,account:s,blockNumber:o}),new (0, _chunkS74ZMG2Gcjs.g)({message:"Getting revert reason for successful simulation",functionName:u,to:n,txHash:"txHash"in r?r.txHash:void 0,input:r})):new Error("No data or function name and args provided")}catch(d){if(d instanceof Error)return _chunkJMKLDDKYcjs.e.call(void 0, {error:d,abi:a,revertIfUnknown:!0});throw d}}var co=_chunkREDXXUK7cjs.e.call(void 0, 1),Yt=(e,t)=>e*(100n+BigInt(t))/100n;function Qe({nonceResult:e,onWarning:t}){if(e.status==="fulfilled"){if(e.value&&e.value>Number.MAX_SAFE_INTEGER){_optionalChain([t, 'optionalCall', _114 => _114(new (0, _chunkJMKLDDKYcjs.f)({message:"Nonce is too large. No nonce will be provided to avoid IntegerOutOfRangeError.",cause:e.value,level:"debug"}))]);return}return e.value}}function uo(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 gm(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, _chunkJMKLDDKYcjs.g)({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:n,onSuccess:s,onWarning:i,onError:l,onSubmission:u,wagmiConfig:m,walletClient:d,account:b,txConfirmationTimeout:g=12e4,chainId:p=_internal.defaultChainId,impersonateAccount:A=uo(p),errorsAbi:P=[],pollingInterval:V=co,...y}=e;_optionalChain([n, 'optionalCall', _115 => _115(e)]);let F="data"in y?y.data:void 0,G=[..._chunkJMKLDDKYcjs.c,...P,..."abi"in y&&y.abi&&Array.isArray(y.abi)?y.abi:[]],I=d;if(!m){_optionalChain([l, 'optionalCall', _116 => _116(new (0, _chunkJMKLDDKYcjs.g)({property:"wagmiConfig",value:m,expected:"Config"}),e)]);return}if(!(_optionalChain([I, 'optionalAccess', _117 => _117.account, 'optionalAccess', _118 => _118.type])==="local"))try{await _core.switchChain.call(void 0, m,{chainId:p})}catch(S){let E=S;_optionalChain([l, 'optionalCall', _119 => _119(new (0, _chunkJMKLDDKYcjs.f)({cause:E,displayMessage:"There was an error switching to the chain."}),e)]);return}if(!I)try{I=await _core.getWalletClient.call(void 0, m,{chainId:p})}catch(S){_optionalChain([l, 'optionalCall', _120 => _120(new (0, _chunkJMKLDDKYcjs.f)({cause:S,displayMessage:"There was an error connecting to the wallet."}),e)]);return}if(!I){_optionalChain([l, 'optionalCall', _121 => _121(new (0, _chunkJMKLDDKYcjs.g)({displayMessage:"There was an error connecting to the wallet.",property:"walletClient",value:I,expected:"WalletClient"}),e)]);return}let W=b||I.account;if(!W){_optionalChain([l, 'optionalCall', _122 => _122(new (0, _chunkJMKLDDKYcjs.g)({property:"account",value:W,expected:"Account"}),e)]);return}let me=typeof W=="string"?W:W.address,M=_core.getPublicClient.call(void 0, m,{chainId:p});try{_chunkS74ZMG2Gcjs.c.call(void 0, M)}catch(S){_optionalChain([l, 'optionalCall', _123 => _123(S,e)]);return}if(A){let S=_chunkREDXXUK7cjs.L.call(void 0, p);await S.impersonateAccount({address:me}),I=_viem.createWalletClient.call(void 0, {transport:_viem.http.call(void 0, S.transport.url),account:W,chain:I.chain})}let q,oe={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 S=M.getTransactionCount({address:me,blockTag:"latest"}).catch(()=>{}),E={account:me,to:t,address:t,chainId:p,value:a};if(r){let Q=r.map(h=>{if("abi"in h&&Array.isArray(G)&&G.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 M.simulateCalls({calls:Q,account:W}),L=h.results.findIndex(_=>_.status==="failure");if(L!==-1){if(h.block.number===null)throw new (0, _chunkJMKLDDKYcjs.g)({property:"blockNumber",value:h.block.number,expected:"bigint",message:"Block number is null"});let _=h.results[L],{reason:Ve}=_.data&&_.data!=="0x"?{reason:_chunkJMKLDDKYcjs.d.call(void 0, _viem.decodeErrorResult.call(void 0, {data:_.data,abi:G}))}:_chunkJMKLDDKYcjs.e.call(void 0, {error:_.error,revertIfUnknown:!1,abi:G});_optionalChain([l, 'optionalCall', _124 => _124(new (0, _chunkS74ZMG2Gcjs.g)({cause:_.error,txHash:q,chainId:p,reason:Ve,abi:G,input:oe,blockNumber:h.block.number}),e)]);return}}if(process.env.NODE_ENV==="test")throw new (0, _chunkJMKLDDKYcjs.g)({displayMessage:"Batch calls are not supported in test environment",expected:"not test",property:"NODE_ENV",value:process.env.NODE_ENV,level:"fatal"});let U=await I.sendCalls({calls:Q,account:W,forceAtomic:!0});_optionalChain([u, 'optionalCall', _125 => _125({id:U.id},e)]);let O=await I.waitForCallsStatus({id:U.id,pollingInterval:V,timeout:g});if(O.status==="success"){let h=_optionalChain([O, 'access', _126 => _126.receipts, 'optionalAccess', _127 => _127[0]]);if(!h)throw new (0, _chunkJMKLDDKYcjs.f)({message:"Call status is success but no receipt was found",cause:O,level:"error",reason:"CALL_STATUS_SUCCESS_BUT_NO_RECEIPT"});return _optionalChain([s, 'optionalCall', _128 => _128(h,e)]),h}throw console.error("wallet_sendCalls: Call failed",O),new (0, _chunkS74ZMG2Gcjs.g)({cause:O,level:"error",input:oe,txHash:q,abi:G,chainId:p})}if(F){let[Q,U,O]=await Promise.allSettled([M.call({...E,data:F}),_nullishCoalesce(o, () => (M.estimateGas({...E,data:F}))),S]);if(Q.status==="rejected")throw Q.reason;let h=U.status==="fulfilled"?Yt(U.value,10):_chunkREDXXUK7cjs.w;q=await I.sendTransaction({data:F,to:t,account:W,gas:h,chainId:p,nonce:Qe({nonceResult:O,onWarning(L){_optionalChain([i, 'optionalCall', _129 => _129(L,e)])}}),value:a}),_optionalChain([u, 'optionalCall', _130 => _130({txHash:q},e)])}else if("abi"in y&&"functionName"in y){let{abi:Q,functionName:U}=y,O="params"in y?y.params:void 0,[h,L,_]=await Promise.allSettled([M.simulateContract({...E,abi:G,functionName:U,args:O,account:W}),_nullishCoalesce(o, () => (M.estimateContractGas({...E,abi:G,functionName:U,args:O}))),S]);if(h.status==="rejected")throw h.reason;let Ve=_nullishCoalesce(o, () => ((L.status==="fulfilled"?Yt(L.value,10):_chunkREDXXUK7cjs.w)));q=await I.writeContract({...h.value.request,chainId:p,gas:Ve,nonce:Qe({nonceResult:_,onWarning(tr){_optionalChain([i, 'optionalCall', _131 => _131(tr,e)])}})}),_optionalChain([u, 'optionalCall', _132 => _132({txHash:q},e)])}else{let[Q]=await Promise.allSettled([S]);q=await I.sendTransaction({chainId:p,to:t,value:a,account:W,nonce:Qe({nonceResult:Q,onWarning(U){_optionalChain([i, 'optionalCall', _133 => _133(U,e)])}})}),_optionalChain([u, 'optionalCall', _134 => _134({txHash:q},e)])}process.env.NODE_ENV==="test"&&await _chunkREDXXUK7cjs.L.call(void 0, p).mine({blocks:1});let z=await M.waitForTransactionReceipt({hash:q,pollingInterval:V,timeout:g,confirmations:1});if(z.status==="success")_optionalChain([s, 'optionalCall', _135 => _135(z,e)]);else{let Q=await Kt({publicClient:M,blockNumber:z.blockNumber,to:t,account:me,abi:G,args:"params"in y?y.params:void 0,functionName:"functionName"in y?y.functionName:void 0,value:a,data:F});process.env.NODE_ENV==="test"&&console.error("beraWriteContract: Revert reason",Q),_optionalChain([l, 'optionalCall', _136 => _136(new (0, _chunkS74ZMG2Gcjs.g)({reason:Q.reason,txHash:q,receipt:z,to:t,functionName:"functionName"in y?y.functionName:void 0,input:oe,chainId:p,abi:G,blockNumber:z.blockNumber}),e)])}return z}catch(S){if(S instanceof _chunkJMKLDDKYcjs.f)_optionalChain([l, 'optionalCall', _137 => _137(S,e)]);else if(S instanceof Error){let E=_chunkJMKLDDKYcjs.e.call(void 0, {error:S,revertIfUnknown:!1,abi:G});if(E&&E.rootCause instanceof _viem.BaseError&&"url"in E.rootCause){_optionalChain([l, 'optionalCall', _138 => _138(new (0, _chunkED43NYSEcjs.a)({cause:E.rootCause,response:void 0,endpoint:{url:E.rootCause.url,type:"rpc"},statusCode:E.rootCause instanceof _viem.HttpRequestError?E.rootCause.status:void 0}),e)]);return}_optionalChain([l, 'optionalCall', _139 => _139(new (0, _chunkS74ZMG2Gcjs.g)({cause:S,to:t,txHash:q,chainId:p,abi:G,functionName:"functionName"in y?y.functionName:void 0,input:oe}),e)])}else _optionalChain([l, 'optionalCall', _140 => _140(new (0, _chunkS74ZMG2Gcjs.g)({cause:S,txHash:q,to:t,chainId:p,functionName:"functionName"in y?y.functionName:void 0,input:oe,abi:G}),e)])}}async function wm({publicClient:e,ui:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),[o,n,s,i,l,u,m,d]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"MAX_COMMISSION_RATE"}),e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"commissionChangeDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"rewardAllocationBlockDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"maxWeightPerVault"}),e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"maxNumWeightsPerRewardAllocation"}),e.readContract({address:a.tokens.bgt,abi:_chunkEU4WFADKcjs.m,functionName:"dropBoostDelay"}),e.readContract({address:a.tokens.bgt,abi:_chunkEU4WFADKcjs.m,functionName:"activateBoostDelay"}),e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"rewardAllocationInactivityBlockSpan"})]);return{maxCommissionRate:Number(o)/1e4,boostDelay:Number(m),unboostDelay:Number(u),commissionChangeDelay:Number(n),rewardAllocationBlockDelay:Number(s),maxWeightPerVault:Number(i)/1e4,maxNumWeightsPerRewardAllocation:Number(l),rewardAllocationInactivityBlockSpan:Number(d),ui:t}}async function Xt({variables:e={},...t}={}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);return(await f("api",t).query({query:_api3.GetValidators,variables:{chain:r.bex.chainName,...e}})).data}async function Vm({allocation:e}){let t=await Re({filter:{where:{vaultAddressIn:e.weights.map(a=>a.receiver)}}}),r=_nullishCoalesce(_optionalChain([e, 'optionalAccess', _141 => _141.start, 'access', _142 => _142.blockNumber]), () => (0));return _optionalChain([e, 'optionalAccess', _143 => _143.weights, 'access', _144 => _144.map, 'call', _145 => _145(a=>({percentage:a.percentage,receiver:a.receiver,startBlock:r,receivingVault:_optionalChain([t, 'optionalAccess', _146 => _146.gaugeList, 'access', _147 => _147.find, 'call', _148 => _148(o=>_viem.isAddressEqual.call(void 0, o.address,a.receiver))])}))])}async function Fm({id:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t);return(await f("api",t).query({query:_api3.GetValidator,variables:{id:e,chain:r.bex.chainName}})).data}async function qm({pubKey:e,first:t=1,...r}){let a=f("pol.subgraph",r);try{return(await a.query({query:_subgraph3.GetValidatorBlockStats,variables:{pubKey:e,first:t}})).data}catch(o){throw console.error("GetValidatorBlockStats:",o),o}}function ae(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 bo(e,t){return e.start.blockNumber===t.start.blockNumber&&e.weights.every((r,a)=>r.percentage===t.weights[a].percentage)}async function Om({client:e,pubKey:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{let[o,n]=await Promise.all([e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"getActiveRewardAllocation",args:[t]}),e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"getSetActiveRewardAllocation",args:[t]})]),[s,i]=await Promise.all([o.startBlock!==0n?e.getBlock({blockNumber:BigInt(o.startBlock)}):{timestamp:0},n.startBlock!==0n?e.getBlock({blockNumber:BigInt(n.startBlock)}):{timestamp:0}]),l=ae(o,Number(s.timestamp)),u=ae(n,Number(i.timestamp)),m=!1;return u.start.blockNumber===0?m=!0:m=!bo(u,l),{activeRewardAllocation:l,setRewardAllocation:u,isBaseline:m,isNeverSet:_optionalChain([u, 'optionalAccess', _149 => _149.start, 'access', _150 => _150.blockNumber])===0}}catch(o){throw console.log("getValidatorRewardAllocation:",o),o}}function Jm(e){return e.start.blockNumber===0}async function $m({client:e,...t}){let{config:r}=_chunk22MQVFHPcjs.b.call(void 0, t),a=await e.readContract({address:r.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"getDefaultRewardAllocation",args:[]});return ae({...a,startBlock:0n},0)}async function zm({account:e,...t}){try{return(await f("pol.subgraph",t).query({query:_subgraph3.GetValidatorByAccount,variables:{account:e}})).data}catch(r){throw console.error("getManagedValidatorByAccount:",r),r}}async function Zm({client:e,valPubKey:t}){return 5614}async function Zt({account:e,block:t,...r}){return await f("pol.subgraph",r).query({query:_subgraph3.GetUserValidatorInformation,variables:{address:e.toLowerCase(),block:t}})}async function er({account:e,pubkey:t,publicClient:r,...a}){let{config:o}=_chunk22MQVFHPcjs.b.call(void 0, a);if(!e)throw new Error("account is required");if(!r)throw new Error("publicClient is required");let[n,s,i]=await Promise.all([r.readContract({address:o.tokens.bgt,abi:_chunkEU4WFADKcjs.m,functionName:"boosted",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_chunkEU4WFADKcjs.m,functionName:"boostedQueue",args:[e,t]}),r.readContract({address:o.tokens.bgt,abi:_chunkEU4WFADKcjs.m,functionName:"dropBoostQueue",args:[e,t]})]);return{pubkey:t,activeBoostAmount:_viem.formatEther.call(void 0, n),queuedBoostAmount:_viem.formatEther.call(void 0, s[1]),queuedDropBoostAmount:_viem.formatEther.call(void 0, i[1]),queuedBoostStartBlock:s[0],queuedDropBoostStartBlock:i[0],hasPendingBoosts:Number(s[1])>0||Number(i[1])>0,hasActiveBoosts:Number(n)>0}}async function pp({account:e,publicClient:t,chain:r,...a}){let{config:o}=_chunk22MQVFHPcjs.b.call(void 0, a),n=_nullishCoalesce(r, () => (o.bex.chainName)),s=await Zt({account:e}),[i,l]=await Promise.all([Xt({variables:{chain:n,where:{idIn:s.data.userValidatorInformations.map(u=>u.validator.id)}}}),t&&_chunkREDXXUK7cjs.N.call(void 0, {lastBlockTimestamp:_optionalChain([s, 'access', _151 => _151.data, 'access', _152 => _152._meta, 'optionalAccess', _153 => _153.block, 'access', _154 => _154.timestamp]),blockTime:o.averageBlockTime})?Promise.all(s.data.userValidatorInformations.map(u=>er({account:e,pubkey:u.validator.publicKey,publicClient:t}))):void 0]);return _optionalChain([i, 'optionalAccess', _155 => _155.validators, 'access', _156 => _156.validators, 'access', _157 => _157.map, 'call', _158 => _158(u=>{let m=l?l.find(d=>d.pubkey.toLowerCase()===u.pubkey.toLowerCase()):s.data.userValidatorInformations.find(d=>d.validator.id.toLowerCase()===u.id.toLowerCase());if(!m)throw new Error("User deposited not found");return{...u,userBoosts:{pubkey:"pubkey"in m?m.pubkey:m.validator.publicKey,activeBoostAmount:_optionalChain([m, 'optionalAccess', _159 => _159.activeBoostAmount]),queuedBoostAmount:_optionalChain([m, 'optionalAccess', _160 => _160.queuedBoostAmount]),queuedBoostStartBlock:Number(_optionalChain([m, 'optionalAccess', _161 => _161.queuedBoostStartBlock])),queuedDropBoostAmount:_optionalChain([m, 'optionalAccess', _162 => _162.queuedDropBoostAmount]),queuedDropBoostStartBlock:Number(_optionalChain([m, 'optionalAccess', _163 => _163.queuedDropBoostStartBlock])),hasPendingBoosts:Number(_optionalChain([m, 'optionalAccess', _164 => _164.queuedBoostAmount]))>0||Number(_optionalChain([m, 'optionalAccess', _165 => _165.queuedDropBoostAmount]))>0,hasActiveBoosts:Number(_optionalChain([m, 'optionalAccess', _166 => _166.activeBoostAmount]))>0}}})])}var ho=[{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:_chunkREDXXUK7cjs.d.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:_chunkREDXXUK7cjs.d.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:_chunkREDXXUK7cjs.d.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:_chunkREDXXUK7cjs.d.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:_chunkREDXXUK7cjs.d.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:_chunkREDXXUK7cjs.d.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:_chunkREDXXUK7cjs.d.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 bp(e){return await new Promise(t=>setTimeout(t,2e3)),e==="0x4C368fFE3650379d6318C8d4630bc51f8Ad12bB6"?ho:[]}async function Cp({pubkey:e,dayRange:t,...r}){return(await f("pol.subgraph",r).query({query:_subgraph3.GetValidatorAnalytics,variables:{pubKey:e,timestamp:_chunkREDXXUK7cjs.E.call(void 0, t).toString()}})).data}async function vp({client:e,pubKey:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"getValCommissionOnIncentiveTokens",args:[t]});return Number(_nullishCoalesce(o, () => (0n)))/1e4}var Vp=(e,t,r)=>{if(!t||!e)return 0;let a=_chunkREDXXUK7cjs.q.call(void 0, 1)/r;return(t?a*(Number(_optionalChain([e, 'access', _167 => _167.dynamicData, 'optionalAccess', _168 => _168.stakedBeraAmount]))/t):0)*Number.parseFloat(_nullishCoalesce(_optionalChain([e, 'access', _169 => _169.dynamicData, 'optionalAccess', _170 => _170.rewardRate]), () => ("0")))};async function Tp({client:e,pubKey:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_chunkEU4WFADKcjs.r,functionName:"getOperator",args:[t]})}catch(o){throw console.log("getValidatorOperatorAddress:",o),o}}async function Ep({client:e,pubKey:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r),o=await e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"getValQueuedCommissionOnIncentiveTokens",args:[t]});return{blockNumberLast:o.blockNumberLast,commissionRate:Number(o.commissionRate)/1e4}}async function Up({client:e,pubKey:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{return await e.readContract({address:a.depositContract,abi:_chunkEU4WFADKcjs.r,functionName:"queuedOperator",args:[t]})}catch(o){throw console.log("getValidatorQueuedOperatorAddress:",o),o}}async function Hp({client:e,pubKey:t,...r}){let{config:a}=_chunk22MQVFHPcjs.b.call(void 0, r);try{let o=await e.readContract({address:a.pol.beraChef,abi:_chunkEU4WFADKcjs.c,functionName:"getQueuedRewardAllocation",args:[t]});return ae(o,0)}catch(o){throw console.log("getValidatorQueuedRewardAllocation:",o),o}}function Co(e){return _optionalChain([e, 'optionalAccess', _171 => _171.rewardAllocationWeights, 'optionalAccess', _172 => _172.reduce, 'call', _173 => _173((t,r)=>{if(!r)return t;let a=_nullishCoalesce(_optionalChain([r, 'access', _174 => _174.receivingVault, 'optionalAccess', _175 => _175.activeIncentives, 'access', _176 => _176.filter, 'call', _177 => _177(o=>Number(o.remainingAmount)>0), 'access', _178 => _178.reduce, 'call', _179 => _179((o,n)=>{let s=Number(n.remainingAmountUsd)/Number(n.remainingAmount);return o+Number(n.incentiveRate)*s},0)]), () => (0));return t+a*r.percentage},0)])}function $p({validator:e,bgtPrice:t}){let r=Number(_nullishCoalesce(_optionalChain([e, 'access', _180 => _180.dynamicData, 'optionalAccess', _181 => _181.activeBoostAmount]), () => (0))),a=Co(e);return!a||!r?0:a*Number(_nullishCoalesce(_optionalChain([e, 'access', _182 => _182.dynamicData, 'optionalAccess', _183 => _183.lastDayDistributedBGTAmount]), () => (0)))*365/(r*t)}exports.a = vo; exports.b = No; exports.c = f; exports.d = _client.gql; exports.e = dt; exports.f = _berancersdk.BalancerApi; exports.g = pn; exports.h = An; exports.i = Bn; exports.j = pt; exports.k = Dn; exports.l = Wn; exports.m = Hn; exports.n = jn; exports.o = Zn; exports.p = ai; exports.q = re; exports.r = li; exports.s = Be; exports.t = pi; exports.u = bi; exports.v = Bi; exports.w = Vi; exports.x = Bt; exports.y = qi; exports.z = Oi; exports.A = Hi; exports.B = Ki; exports.C = xt; exports.D = Fe; exports.E = vt; exports.F = Bs; exports.G = Vs; exports.H = Ts; exports.I = Es; exports.J = fa; exports.K = Os; exports.L = _s; exports.M = js; exports.N = el; exports.O = Vt; exports.P = ul; exports.Q = Nt; exports.R = Bl; exports.S = Nl; exports.T = Fl; exports.U = Ca; exports.V = Ql; exports.W = Ol; exports.X = Gt; exports.Y = Re; exports.Z = hc; exports._ = Et; exports.$ = Rc; exports.aa = Gc; exports.ba = Ec; exports.ca = Mc; exports.da = Zc; exports.ea = ou; exports.fa = uu; exports.ga = pu; exports.ha = Au; exports.ia = Bu; exports.ja = de; exports.ka = Eu; exports.la = Ou; exports.ma = Ju; exports.na = Ht; exports.oa = id; exports.pa = pd; exports.qa = Ad; exports.ra = Pd; exports.sa = kd; exports.ta = Dd; exports.ua = qd; exports.va = Od; exports.wa = za; exports.xa = $d; exports.ya = uo; exports.za = gm; exports.Aa = wm; exports.Ba = Xt; exports.Ca = Vm; exports.Da = Fm; exports.Ea = qm; exports.Fa = ae; exports.Ga = bo; exports.Ha = Om; exports.Ia = Jm; exports.Ja = $m; exports.Ka = zm; exports.La = Zm; exports.Ma = er; exports.Na = pp; exports.Oa = bp; exports.Pa = Cp; exports.Qa = vp; exports.Ra = Vp; exports.Sa = Tp; exports.Ta = Ep; exports.Ua = Up; exports.Va = Hp; exports.Wa = Co; exports.Xa = $p;
|
|
4
|
+
//# sourceMappingURL=chunk-XFPTQMAK.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/pong/coding/monobera/packages/berajs/dist/chunk-XFPTQMAK.cjs","../src/actions/bend/getConvertToAssets.ts","../src/actions/bend/getMaxDeposit.ts","../src/actions/clients/getApolloClient.ts","../src/actions/clients/BeraApolloClient.ts","../src/actions/governance/parseProposalBody.ts","../src/actions/honey/getCollateralWeights.ts"],"names":["getConvertToAssets","sharesAmount","vaultAddress","publicClient","convertToAssets","metaMorphoAbi","formatEther","getMaxDeposit","maxDeposit","BeraApolloClient","ApolloClient","options","queryName","getQueryName","endpoint","tags","res"],"mappings":"AAAA,uvDAA2K,wDAA8E,wDAAyK,wDAAgE,wDAAyC,wDAAwE,4BCAthB,MAU7D,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,mBAAAA,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,MASA,SAAsBC,EAAAA,CAAc,CAClC,YAAA,CAAAL,CAAAA,CACA,YAAA,CAAAC,CACF,CAAA,CAAwC,CACtC,IAAMK,CAAAA,CAAa,MAAML,CAAAA,CAAa,YAAA,CAAa,CACjD,OAAA,CAASD,CAAAA,CACT,GAAA,CAAKG,mBAAAA,CACL,YAAA,CAAc,YAAA,CACd,IAAA,CAAM,CAACH,CAAY,CACrB,CAAC,CAAA,CACD,OAAOI,+BAAAA,CAAsB,CAC/B,CCpBA,wCAAwD,gDAC/B,2CAGM,sDACH,2FAEL,oNCAC,IAaXG,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,CAAM,MAAa,EAAA,CAAA,SAAA,CACvB,CACE,IAAA,CAAM,CAAA,QAAA,EAAWJ,CAAS,CAAA,CAAA;ACDQ;AChChB","file":"/Users/pong/coding/monobera/packages/berajs/dist/chunk-XFPTQMAK.cjs","sourcesContent":[null,"import { type Address, formatEther, type PublicClient } from \"viem\";\n\nimport { metaMorphoAbi } from \"~/abi/bend/metaMorpho\";\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 { type Address, formatEther, type PublicClient } from \"viem\";\n\nimport { metaMorphoAbi } from \"~/abi/bend/metaMorpho\";\n\ninterface GetMaxDepositProps {\n vaultAddress: Address;\n publicClient: PublicClient;\n}\n\nexport async function getMaxDeposit({\n vaultAddress,\n publicClient,\n}: GetMaxDepositProps): Promise<string> {\n const maxDeposit = await publicClient.readContract({\n address: vaultAddress,\n abi: metaMorphoAbi,\n functionName: \"maxDeposit\",\n args: [vaultAddress],\n });\n return formatEther(maxDeposit);\n}\n","import { InMemoryCache, type InMemoryCacheConfig } from \"@apollo/client\";\nimport { HttpLink } from \"@apollo/client/link/http\";\n\nimport type { HttpLink as BeraConfigHttpLink } from \"@berachain/config\";\nimport { getUriFromLink } from \"@berachain/config\";\nimport { currentDapp } from \"@berachain/config/internal\";\n\nimport apiResults from \"@berachain/graphql/dex/api\";\n\nimport { BeraError } from \"~/errors/BeraError\";\nimport { parseBaseArgs } from \"~/utils/parseBaseArgs\";\nimport { BeraApolloClient } from \"./BeraApolloClient\";\n\n/**\n * If currentDapp is set, it will add the stellate client name and version to the headers.\n * @see {@link https://stellate.co/docs/graphql-metrics/tracking/clients}\n */\nfunction applyStellateClientName(url: BeraConfigHttpLink): BeraConfigHttpLink {\n if (!currentDapp) {\n return url;\n }\n const headers = typeof url === \"string\" ? undefined : url.headers;\n return {\n uri: getUriFromLink(url),\n headers: {\n ...headers,\n \"x-graphql-client-name\": `berachain.${currentDapp}.${process.env.NEXT_RUNTIME || \"browser\"}`,\n \"x-graphql-client-version\": `${process.env.VERCEL_TARGET_ENV}.${process.env.VERCEL_GIT_COMMIT_SHA}`,\n },\n };\n}\n\nexport { gql } from \"@apollo/client\";\n\nfunction getClient(\n endpoint: BeraConfigHttpLink,\n {\n ssrMode,\n inMemoryCacheOptions,\n }: {\n ssrMode?: boolean;\n inMemoryCacheOptions?: InMemoryCacheConfig;\n } = {},\n) {\n const url = getUriFromLink(endpoint);\n const headers = typeof endpoint === \"string\" ? undefined : endpoint.headers;\n\n return new BeraApolloClient({\n url,\n link: new HttpLink({\n uri: url,\n headers,\n }),\n defaultOptions: {\n query: {\n // With the default none error policy, an error causes the promise to reject.\n errorPolicy: \"none\",\n fetchPolicy: \"no-cache\",\n },\n },\n cache: new InMemoryCache(inMemoryCacheOptions),\n ssrMode,\n });\n}\n\ntype GraphqlClient =\n | \"honey.subgraph\"\n | \"pol.subgraph\"\n | \"governance.subgraph\"\n | \"blocks.subgraph\"\n | \"bex.subgraph\"\n | \"api\"\n | \"bend.whisk\";\n\nexport function getApolloClient(\n clientName: GraphqlClient,\n { ...args }: BeraJS.BaseFunctionArgs,\n): BeraApolloClient {\n const { config } = parseBaseArgs(args);\n\n switch (clientName) {\n case \"api\":\n return getClient(applyStellateClientName(config.api), {\n inMemoryCacheOptions: {\n possibleTypes: apiResults.possibleTypes,\n },\n });\n\n case \"bend.whisk\":\n if (!config.bend.whiskApi) {\n throw new BeraError({\n message: \"Bend whisk API is not configured on this chain\",\n level: \"error\",\n });\n }\n return getClient(config.bend.whiskApi);\n\n case \"honey.subgraph\":\n return getClient(config.honey.subgraph);\n case \"pol.subgraph\":\n return getClient(config.pol.subgraph);\n case \"governance.subgraph\":\n return getClient(config.governance.subgraph);\n case \"blocks.subgraph\":\n return getClient(config.blocksSubgraph);\n case \"bex.subgraph\":\n return getClient(config.bex.subgraph);\n }\n}\n","import {\n ApolloClient,\n type DocumentNode,\n type ErrorLike,\n type OperationVariables,\n ServerError,\n} from \"@apollo/client\";\nimport * as Sentry from \"@sentry/nextjs\";\n\nimport { appConfig } from \"@berachain/config/internal\";\n\nimport { BeraError } from \"~/errors/BeraError\";\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 res = await Sentry.startSpan(\n {\n name: `GraphQL ${queryName}`,\n op: \"BeraApolloClient.query\",\n attributes: tags,\n },\n async () =>\n super.query<TData, TVariables>(\n options as ApolloClient.QueryOptions<TData, TVariables>,\n ),\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 type { Address, PublicClient } from \"viem\";\n\nimport { honeyFactoryAbi } from \"~/abi/honey/honeyFactory\";\nimport type { Token } from \"~/types\";\nimport { parseBaseArgs } from \"~/utils/parseBaseArgs\";\n\n/**\n * Arguments for the getCollateralWeights function.\n */\ninterface GetCollateralWeightsArgs extends BeraJS.BaseFunctionArgs {\n client: PublicClient;\n collateralList: Token[];\n}\n\n/**\n * Fetches the weights of collaterals from the honey factory contract.\n * and returns a record of collateral addresses and their weights.\n *\n * @param {getCollateralWeightsArgs} args - The arguments for the function.\n * @returns {Promise<Record<Address, bigint> | undefined>} A promise that resolves to a record of collateral addresses and their weights, or undefined if an error occurs.\n */\nexport async function getCollateralWeights({\n client,\n collateralList,\n ...args\n}: GetCollateralWeightsArgs): Promise<Record<Address, bigint> | undefined> {\n const { config } = parseBaseArgs(args);\n\n try {\n // Fetch the weights for all collateral assets\n const collateralWeights = await client.readContract({\n address: config.honey.factory,\n abi: honeyFactoryAbi,\n functionName: \"getWeights\",\n });\n\n // Combine the addresses and weights into a single object\n // where each address maps to its corresponding weight\n const weightsWithAddress: Record<Address, bigint> = collateralList.reduce(\n (agg, key, idx) =>\n Object.assign(agg, { [key.address]: collateralWeights[idx] }),\n {},\n );\n\n return weightsWithAddress;\n } catch (e) {\n console.log(e);\n throw e;\n }\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e=(R=>(R.Governance="Governance",R.Fixed="Fixed",R.Custom="Custom",R))(e||{}),D=(C=>(C.USDBACKED="USD-Backed Stablecoin",C.ALGORITHMIC="Algorithmic Stablecoin",C))(D||{});var O=(_=>(_[_.FAST=1e4]="FAST",_[_.NORMAL=1e5]="NORMAL",_[_.SLOW=18e4]="SLOW",_[_.REFRESH_BLOCK_INTERVAL=1e4]="REFRESH_BLOCK_INTERVAL",_))(O||{});var B=.5,L=25,l=60,U=(R=>(R.AUTO="auto",R.CUSTOM="custom",R.DEGEN="degen",R))(U||{}),N=(R=>(R.AUTO="auto",R.CUSTOM="custom",R.INFINITY="infinity",R))(N||{});var S=(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.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.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))(S||{});export{e as a,D as b,O as c,B as d,L as e,l as f,U as g,N as h,S as i};
|
|
2
|
+
//# sourceMappingURL=chunk-YK4NINF5.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/enum/dex.ts","../src/enum/polling.ts","../src/enum/slippage.ts","../src/enum/txnEnum.ts"],"sourcesContent":["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","enum POLLING {\n FAST = 10000, // 10 sec\n NORMAL = 100000, // 100 sec\n SLOW = 180000, // 3 min\n REFRESH_BLOCK_INTERVAL = 10000, // 10 sec\n}\n\nexport { POLLING };\n","export const DEFAULT_SLIPPAGE = 0.5 as const; // 2%\nexport const SLIPPAGE_DEGEN_VALUE = 25 as const; // 25%\n\n/**\n * Default\n */\nexport const DEFAULT_DEADLINE = 60 as const; // seconds\n\nexport enum SLIPPAGE_MODE {\n AUTO = \"auto\",\n CUSTOM = \"custom\",\n DEGEN = \"degen\",\n}\n\nexport enum TRANSACTION_MODE {\n AUTO = \"auto\",\n CUSTOM = \"custom\",\n INFINITY = \"infinity\",\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 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 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"],"mappings":"AAAO,IAAKA,OACVA,EAAA,WAAa,aACbA,EAAA,MAAQ,QACRA,EAAA,OAAS,SAHCA,OAAA,IAMAC,OACVA,EAAA,UAAY,wBACZA,EAAA,YAAc,yBAFJA,OAAA,ICNZ,IAAKC,OACHA,IAAA,KAAO,KAAP,OACAA,IAAA,OAAS,KAAT,SACAA,IAAA,KAAO,MAAP,OACAA,IAAA,uBAAyB,KAAzB,yBAJGA,OAAA,ICAE,IAAMC,EAAmB,GACnBC,EAAuB,GAKvBC,EAAmB,GAEpBC,OACVA,EAAA,KAAO,OACPA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAHEA,OAAA,IAMAC,OACVA,EAAA,KAAO,OACPA,EAAA,OAAS,SACTA,EAAA,SAAW,WAHDA,OAAA,ICdL,IAAKC,OAIVA,EAAA,KAAO,OAGPA,EAAA,KAAO,cAEPA,EAAA,SAAW,WACXA,EAAA,KAAO,OACPA,EAAA,KAAO,OACPA,EAAA,OAAS,SAETA,EAAA,YAAc,cACdA,EAAA,cAAgB,gBAChBA,EAAA,mBAAqB,qBAErBA,EAAA,SAAW,WACXA,EAAA,WAAa,aACbA,EAAA,UAAY,YACZA,EAAA,iBAAmB,mBAEnBA,EAAA,gBAAkB,kBAClBA,EAAA,gBAAkB,kBAClBA,EAAA,iBAAmB,mBACnBA,EAAA,eAAiB,iBACjBA,EAAA,KAAO,OAEPA,EAAA,uBAAyB,yBACzBA,EAAA,mBAAqB,qBACrBA,EAAA,kBAAoB,oBACpBA,EAAA,aAAe,iBACfA,EAAA,gBAAkB,sBAClBA,EAAA,iBAAmB,eACnBA,EAAA,kBAAoB,oBAEpBA,EAAA,cAAgB,oBAEhBA,EAAA,WAAa,aAEbA,EAAA,WAAa,aACbA,EAAA,aAAe,eAEfA,EAAA,OAAS,SACTA,EAAA,SAAW,WACXA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAERA,EAAA,MAAQ,QACRA,EAAA,QAAU,UAEVA,EAAA,WAAa,aAGbA,EAAA,YAAc,cACdA,EAAA,aAAe,eACfA,EAAA,WAAa,aACbA,EAAA,YAAc,cACdA,EAAA,aAAe,eACfA,EAAA,kBAAoB,oBACpBA,EAAA,iBAAmB,mBACnBA,EAAA,cAAgB,gBAChBA,EAAA,uBAAyB,yBACzBA,EAAA,wBAA0B,0BAC1BA,EAAA,eAAiB,iBACjBA,EAAA,aAAe,WACfA,EAAA,WAAa,SACbA,EAAA,MAAQ,QAGRA,EAAA,qBAAuB,sBACvBA,EAAA,2BAA6B,0BAC7BA,EAAA,yBAA2B,wBAC3BA,EAAA,0BAA4B,yBAC5BA,EAAA,wBAA0B,0BAC1BA,EAAA,iCAAmC,gCACnCA,EAAA,2BAA6B,0BAE7BA,EAAA,aAAe,aACfA,EAAA,eAAiB,eACjBA,EAAA,qBAAuB,qBAGvBA,EAAA,0CAA4C,4CAC5CA,EAAA,yCAA2C,2CAC3CA,EAAA,kBAAoB,oBACpBA,EAAA,oBAAsB,sBAGtBA,EAAA,wBAA0B,0BAC1BA,EAAA,sCAAwC,wCACxCA,EAAA,uCAAyC,yCACzCA,EAAA,uCAAyC,yCACzCA,EAAA,iCAAmC,mCACnCA,EAAA,mCAAqC,qCACrCA,EAAA,4BAA8B,8BAC9BA,EAAA,6BAA+B,+BAC/BA,EAAA,yBAA2B,2BAC3BA,EAAA,2BAA6B,6BAnGnBA,OAAA","names":["OwnershipType","ParameterPreset","POLLING","DEFAULT_SLIPPAGE","SLIPPAGE_DEGEN_VALUE","DEFAULT_DEADLINE","SLIPPAGE_MODE","TRANSACTION_MODE","TransactionActionType"]}
|
package/dist/contexts/index.cjs
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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; }"use client";var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 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; }"use client";var _chunk6VF3RF53cjs = require('../chunk-6VF3RF53.cjs');require('../chunk-22MQVFHP.cjs');require('../chunk-JMKLDDKY.cjs');var _react = require('react');var _bignumberjs = require('bignumber.js'); var _bignumberjs2 = _interopRequireDefault(_bignumberjs);var _hooks = require('@berachain/wagmi/hooks');var _jsxruntime = require('react/jsx-runtime');_bignumberjs2.default.config({EXPONENTIAL_AT:1e9});var n=_react.createContext.call(void 0, void 0);function X({children:e}){let[r,t]=_react.useState.call(void 0, !1),{walletClient:o}=_hooks.useBeraWagmi.call(void 0, ),{wallet:a}=_hooks.useBeraAccount.call(void 0, );return _react.useEffect.call(void 0, ()=>t(!0),[]),_jsxruntime.jsx.call(void 0, n.Provider,{value:{isReady:_react.useMemo.call(void 0, ()=>!!_optionalChain([a, 'optionalAccess', _ => _.address])&&r,[_optionalChain([a, 'optionalAccess', _2 => _2.address]),r,o])},children:_jsxruntime.jsx.call(void 0, _chunk6VF3RF53cjs.l,{children:e})})}function y(){let e=_react.useContext.call(void 0, n);if(e===void 0)throw new Error("bera js context undefined");return e}var C=y;var _nextjs = require('@sentry/nextjs'); var f = _interopRequireWildcard(_nextjs);var _swr = require('swr');function Y({fallback:e,children:r}){return _react.useEffect.call(void 0, ()=>{Object.entries(e).some(([t,o])=>t?!1:(console.warn("SWRFallback",t,o),f.captureException("Empty key in SWRFallback. This will lead to wrong query returns when key is null. Should be reported to SWR."),!0))},[e]),_jsxruntime.jsx.call(void 0, _swr.SWRConfig,{value:{fallback:e},children:r})}exports.BeraFlagsProvider = _chunk6VF3RF53cjs.a; exports.BeraJsContext = n; exports.BeraJsProvider = X; exports.BexStateContext = _chunk6VF3RF53cjs.d; exports.BexStatusProvider = _chunk6VF3RF53cjs.f; exports.BlockTimeContext = _chunk6VF3RF53cjs.o; exports.BlockTimeProvider = _chunk6VF3RF53cjs.p; exports.HoneyConfigContext = _chunk6VF3RF53cjs.q; exports.HoneyConfigProvider = _chunk6VF3RF53cjs.r; exports.SWRFallback = Y; exports.TokenContext = _chunk6VF3RF53cjs.t; exports.TokensProvider = _chunk6VF3RF53cjs.u; exports.useBeraFlag = _chunk6VF3RF53cjs.c; exports.useBeraFlags = _chunk6VF3RF53cjs.b; exports.useBeraJs = C; exports.useBexStatus = _chunk6VF3RF53cjs.e; exports.useBlockTime = _chunk6VF3RF53cjs.n; exports.useHoneyConfig = _chunk6VF3RF53cjs.s;
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/pong/coding/monobera/packages/berajs/dist/contexts/index.cjs","../../src/contexts/berajsProvider/context.tsx","../../src/contexts/berajsProvider/useBeraJs.ts","../../src/contexts/SwrFallback.tsx"],"names":["BigNumber","BeraJsContext","createContext","BeraJsProvider","children","isMounted","setIsMounted","useState","walletClient","useBeraWagmi","wallet","useBeraAccount","useEffect","jsx","useMemo","TransactionStoreProvider","useBeraJs","beraJsContext","useContext","useBeraJs_default","SWRFallback","fallback","key","value","SWRConfig"],"mappings":"AAAA,28BAAY,CAAC,yDAA2I,iCAA8B,iCAA8B,8BCQ7M,qGACe,+CAEuB,+CAiCvC,qBA7BNA,CAAU,MAAA,CAAO,CACf,cAAA,CAAgB,GAClB,CAAC,CAAA,CASM,IAAMC,CAAAA,CAAgBC,kCAAAA,KAAsC,CAAS,CAAA,CAErE,SAASC,CAAAA,CAAe,CAAE,QAAA,CAAAC,CAAS,CAAA,CAAsB,CAC9D,GAAM,CAACC,CAAAA,CAAWC,CAAY,CAAA,CAAIC,6BAAAA,CAAS,CAAK,CAAA,CAC1C,CAAE,YAAA,CAAAC,CAAa,CAAA,CAAIC,iCAAAA,CAAa,CAChC,CAAE,MAAA,CAAAC,CAAO,CAAA,CAAIC,mCAAAA,CAAe,CAElC,OAAAC,8BAAAA,CAAU,CAAA,EAAMN,CAAAA,CAAa,CAAA,CAAI,CAAA,CAAG,CAAC,CAAC,CAAA,CAGpCO,6BAAAA,CAACZ,CAAc,QAAA,CAAd,CACC,KAAA,CAAO,CACL,OAAA,CAASa,4BAAAA,CACP,CAAA,EAAM,CAAC,iBAACJ,CAAAA,2BAAQ,SAAA,EAAWL,CAAAA,CAC3B,iBAACK,CAAAA,6BAAQ,SAAA,CAASL,CAAAA,CAAWG,CAAY,CAC3C,CACF,CAAA,CAEA,QAAA,CAAAK,6BAAAA,mBAACE,CAAA,CAA0B,QAAA,CAAAX,CAAAA,CAAS,CAAA,CACtC,CAEJ,CC/CA,SAOgBY,CAAAA,CAAAA,CAAY,CAC1B,IAAMC,CAAAA,CAAgBC,+BAAAA,CAAwB,CAAA,CAE9C,EAAA,CAAID,CAAAA,GAAkB,KAAA,CAAA,CACpB,MAAM,IAAI,KAAA,CAAM,2BAA2B,CAAA,CAG7C,OAAOA,CACT,CAEA,IAAOE,CAAAA,CAAQH,CAAAA,CChBf,kFACwB,0BACE,SAEVI,CAAAA,CAAY,CAC1B,QAAA,CAAAC,CAAAA,CACA,QAAA,CAAAjB,CACF,CAAA,CAGG,CACD,OAAAQ,8BAAAA,CAAU,CAAA,EAAM,CACd,MAAA,CAAO,OAAA,CAAQS,CAAQ,CAAA,CAAE,IAAA,CAAK,CAAC,CAACC,CAAAA,CAAKC,CAAK,CAAA,CAAA,EACnCD,CAAAA,CAMS,CAAA,CAAA,CAAA,CALZ,OAAA,CAAQ,IAAA,CAAK,aAAA,CAAeA,CAAAA,CAAKC,CAAK,CAAA,CAC/B,CAAA,CAAA,gBAAA,CACL,8GACF,CAAA,CACO,CAAA,CAAA,CAEV,CACH,CAAA,CAAG,CAACF,CAAQ,CAAC,CAAA,CAGXR,6BAAAA,cAACW,CAAA,CACC,KAAA,CAAO,CACL,QAAA,CAAAH,CACF,CAAA,CAEC,QAAA,CAAAjB,CAAAA,CACH,CAEJ,CAAA,ovBAAA","file":"/Users/pong/coding/monobera/packages/berajs/dist/contexts/index.cjs","sourcesContent":[null,"\"use client\";\n\nimport {\n createContext,\n type PropsWithChildren,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport BigNumber from \"bignumber.js\";\n\nimport { useBeraAccount, useBeraWagmi } from \"@berachain/wagmi/hooks\";\n\nimport { TransactionStoreProvider } from \"~/hooks/transactions/TransactionStoreContext\";\n\nBigNumber.config({\n EXPONENTIAL_AT: 1e9,\n});\n\nexport interface IBeraJsAPI {\n /**\n * @deprecated check `useBeraAccount.isConnected` instead and wrap transaction in ActionButton to ensure it's wallet chain is connected.\n */\n isReady?: boolean;\n}\n\nexport const BeraJsContext = createContext<IBeraJsAPI | undefined>(undefined);\n\nexport function BeraJsProvider({ children }: PropsWithChildren) {\n const [isMounted, setIsMounted] = useState(false);\n const { walletClient } = useBeraWagmi();\n const { wallet } = useBeraAccount();\n\n useEffect(() => setIsMounted(true), []);\n\n return (\n <BeraJsContext.Provider\n value={{\n isReady: useMemo(\n () => !!wallet?.address && isMounted,\n [wallet?.address, isMounted, walletClient],\n ),\n }}\n >\n <TransactionStoreProvider>{children}</TransactionStoreProvider>\n </BeraJsContext.Provider>\n );\n}\nexport default BeraJsProvider;\n","import { useContext } from \"react\";\n\nimport { BeraJsContext } from \"./context\";\n\n/**\n * @deprecated use useBeraAccount and useBeraWagmi instead\n */\nexport function useBeraJs() {\n const beraJsContext = useContext(BeraJsContext);\n\n if (beraJsContext === undefined) {\n throw new Error(\"bera js context undefined\");\n }\n\n return beraJsContext;\n}\n\nexport default useBeraJs;\n","import type React from \"react\";\nimport { useEffect } from \"react\";\nimport * as Sentry from \"@sentry/nextjs\";\nimport { SWRConfig } from \"swr\";\n\nexport function SWRFallback({\n fallback,\n children,\n}: {\n fallback: Record<string, any>;\n children: React.ReactNode;\n}) {\n useEffect(() => {\n Object.entries(fallback).some(([key, value]) => {\n if (!key) {\n console.warn(\"SWRFallback\", key, value);\n Sentry.captureException(\n \"Empty key in SWRFallback. This will lead to wrong query returns when key is null. Should be reported to SWR.\",\n );\n return true;\n } else return false;\n });\n }, [fallback]);\n\n return (\n <SWRConfig\n value={{\n fallback,\n }}\n >\n {children}\n </SWRConfig>\n );\n}\n"]}
|