@berachain/berajs 0.2.13 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/clients/BeraApolloClient.d.ts.map +1 -1
- package/dist/actions/clients/clientName.d.ts +10 -0
- package/dist/actions/clients/clientName.d.ts.map +1 -0
- package/dist/actions/clients/clientName.unit.test.d.ts +2 -0
- package/dist/actions/clients/clientName.unit.test.d.ts.map +1 -0
- package/dist/actions/clients/exports.d.ts +2 -0
- package/dist/actions/clients/exports.d.ts.map +1 -1
- package/dist/actions/clients/exports.mjs +26 -7
- package/dist/actions/clients/exports.mjs.map +1 -1
- package/dist/actions/clients/fetchBeep.d.ts +2 -2
- package/dist/actions/clients/fetchBeep.d.ts.map +1 -1
- package/dist/actions/clients/fetchEnso.d.ts +17 -0
- package/dist/actions/clients/fetchEnso.d.ts.map +1 -0
- package/dist/actions/clients/fetchLayerzero.d.ts +12 -0
- package/dist/actions/clients/fetchLayerzero.d.ts.map +1 -0
- package/dist/actions/clients/fetchOpenApi.d.ts +4 -1
- package/dist/actions/clients/fetchOpenApi.d.ts.map +1 -1
- package/dist/actions/clients/getApolloClient.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/base.d.ts +30 -5
- package/dist/actions/dex/aggregators/base.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/bex.d.ts +11 -1
- package/dist/actions/dex/aggregators/bex.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/bgt.d.ts +2 -2
- package/dist/actions/dex/aggregators/bgt.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/enso/enso.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/enso/ensoErc4626.d.ts +1 -0
- package/dist/actions/dex/aggregators/enso/ensoErc4626.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/erc4626.d.ts +2 -2
- package/dist/actions/dex/aggregators/erc4626.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/fly.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/haiku.d.ts +7 -1
- package/dist/actions/dex/aggregators/haiku.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/honey.d.ts +2 -2
- package/dist/actions/dex/aggregators/honey.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/kyberswap.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/oogabooga.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/openOcean.d.ts.map +1 -1
- package/dist/actions/dex/aggregators/wbera.d.ts +3 -2
- package/dist/actions/dex/aggregators/wbera.d.ts.map +1 -1
- package/dist/actions/dex/getAllPools.d.ts.map +1 -1
- package/dist/actions/dex/getApiPool.d.ts.map +1 -1
- package/dist/actions/enso/getEnsoUserTokensWithBalances.d.ts.map +1 -1
- package/dist/actions/enso/util.d.ts +1 -6
- package/dist/actions/enso/util.d.ts.map +1 -1
- package/dist/actions/exports.d.ts +3 -5
- package/dist/actions/exports.d.ts.map +1 -1
- package/dist/actions/exports.mjs +33 -64
- package/dist/actions/exports.mjs.map +1 -1
- package/dist/actions/governance/exports.mjs +3 -3
- package/dist/actions/honey/getChartData.d.ts +1 -1
- package/dist/actions/honey/getChartData.d.ts.map +1 -1
- package/dist/actions/honey/getHoney24hVolume.d.ts +2 -2
- package/dist/actions/honey/getHoney24hVolume.d.ts.map +1 -1
- package/dist/actions/honey/getHoneyCollaterals.d.ts +1 -1
- package/dist/actions/honey/getHoneyCollaterals.d.ts.map +1 -1
- package/dist/actions/honey/getHoneyTxns.d.ts +1 -1
- package/dist/actions/honey/getHoneyTxns.d.ts.map +1 -1
- package/dist/actions/pol/getBGTGlobalInfo.d.ts +0 -1
- package/dist/actions/pol/getBGTGlobalInfo.d.ts.map +1 -1
- package/dist/actions/pol/getBeraTokenTotalSupply.d.ts.map +1 -1
- package/dist/actions/pol/getEarnedStakedBeraVault.d.ts +4 -27
- package/dist/actions/pol/getEarnedStakedBeraVault.d.ts.map +1 -1
- package/dist/actions/pol/getLSTStakeConfig.d.ts.map +1 -1
- package/dist/actions/pol/getRewardVaults.d.ts.map +1 -1
- package/dist/actions/pol/getSWBeraVaultMetadata.d.ts +1 -14
- package/dist/actions/pol/getSWBeraVaultMetadata.d.ts.map +1 -1
- package/dist/actions/pol/getStakedBeraAPY.d.ts +14 -0
- package/dist/actions/pol/getStakedBeraAPY.d.ts.map +1 -0
- package/dist/actions/pol/getStakedBeraSnapshots.d.ts +14 -4
- package/dist/actions/pol/getStakedBeraSnapshots.d.ts.map +1 -1
- package/dist/actions/pol/getStakingDailyAssets.d.ts +2 -2
- package/dist/actions/pol/getStakingDailyAssets.d.ts.map +1 -1
- package/dist/actions/server/exports.mjs +5 -5
- package/dist/actions/server/exports.mjs.map +1 -1
- package/dist/actions/server/getDailyValidatorBlockStats.d.ts +1 -1
- package/dist/actions/server/getDailyValidatorBlockStats.d.ts.map +1 -1
- package/dist/actions/validators/getActiveBoostAndCommissionChangeDelay.d.ts +1 -1
- package/dist/actions/validators/getActiveBoostAndCommissionChangeDelay.d.ts.map +1 -1
- package/dist/actions/validators/getUserActiveValidators.d.ts +37 -1
- package/dist/actions/validators/getUserActiveValidators.d.ts.map +1 -1
- package/dist/actions/validators/getValidatorIncentiveDistribution.d.ts +1 -1
- package/dist/actions/validators/getValidatorIncentiveDistribution.d.ts.map +1 -1
- package/dist/actions/validators/getValidatorRewardAllocation.d.ts +4 -0
- package/dist/actions/validators/getValidatorRewardAllocation.d.ts.map +1 -1
- package/dist/chunk-3TRTSTDH.mjs +19 -0
- package/dist/chunk-3TRTSTDH.mjs.map +1 -0
- package/dist/{chunk-ZWTGVIPJ.mjs → chunk-4576RF2K.mjs} +29 -4
- package/dist/chunk-4576RF2K.mjs.map +1 -0
- package/dist/{chunk-PHYZRH4I.mjs → chunk-5MUCX35C.mjs} +9 -13
- package/dist/chunk-5MUCX35C.mjs.map +1 -0
- package/dist/{chunk-UA3Z47LT.mjs → chunk-6D4S3EAC.mjs} +97 -26
- package/dist/chunk-6D4S3EAC.mjs.map +1 -0
- package/dist/{chunk-AEN6IJFU.mjs → chunk-7KN7TDUC.mjs} +2 -2
- package/dist/{chunk-LE4CYW7S.mjs → chunk-FWRYUIJK.mjs} +3 -3
- package/dist/chunk-GDUKRUHE.mjs +29 -0
- package/dist/chunk-GDUKRUHE.mjs.map +1 -0
- package/dist/{chunk-PJRLHTGC.mjs → chunk-HPRLNT6R.mjs} +3 -3
- package/dist/{chunk-DOZJB6IJ.mjs → chunk-KY7JMIIS.mjs} +394 -346
- package/dist/chunk-KY7JMIIS.mjs.map +1 -0
- package/dist/{chunk-P3YZ7F22.mjs → chunk-LL7XR2H5.mjs} +34 -3
- package/dist/chunk-LL7XR2H5.mjs.map +1 -0
- package/dist/{chunk-EJIGERYM.mjs → chunk-M3MIGSH3.mjs} +2 -2
- package/dist/{chunk-NZAH3SGT.mjs → chunk-MVNQY2D4.mjs} +9 -4
- package/dist/chunk-MVNQY2D4.mjs.map +1 -0
- package/dist/{chunk-TGN55GKE.mjs → chunk-SC3BSCTN.mjs} +2 -2
- package/dist/{chunk-QQASX4LJ.mjs → chunk-TXWDUJOY.mjs} +2 -2
- package/dist/{chunk-EGAB6NFQ.mjs → chunk-UWJQ6UKG.mjs} +2 -2
- package/dist/chunk-XO2BFPTB.mjs +50 -0
- package/dist/chunk-XO2BFPTB.mjs.map +1 -0
- package/dist/{chunk-7TFV6UKF.mjs → chunk-XXKPXNQD.mjs} +1 -2
- package/dist/chunk-XXKPXNQD.mjs.map +1 -0
- package/dist/{chunk-IFNIPVTZ.mjs → chunk-Z337NBBW.mjs} +5 -49
- package/dist/chunk-Z337NBBW.mjs.map +1 -0
- package/dist/{chunk-J3LTASDE.mjs → chunk-ZHV3MQ4F.mjs} +4 -4
- package/dist/contexts/BeraFlags/BeraFlags.d.ts +1 -1
- package/dist/contexts/BeraFlags/BeraFlags.d.ts.map +1 -1
- package/dist/contexts/BeraFlags/defaultFlags.d.ts +2 -2
- package/dist/contexts/BeraFlags/defaultFlags.d.ts.map +1 -1
- package/dist/contexts/BexStatusProvider.d.ts +1 -1
- package/dist/contexts/BexStatusProvider.d.ts.map +1 -1
- package/dist/contexts/TokensProvider.d.ts +1 -1
- package/dist/contexts/TokensProvider.d.ts.map +1 -1
- package/dist/contexts/exports.mjs +9 -9
- package/dist/enum/contracts.d.ts +3 -0
- package/dist/enum/contracts.d.ts.map +1 -1
- package/dist/enum/exports.mjs +6 -4
- package/dist/enum/exports.mjs.map +1 -1
- package/dist/enum/txnEnum.d.ts +1 -1
- package/dist/enum/txnEnum.d.ts.map +1 -1
- package/dist/errors/RequestError.d.ts +19 -0
- package/dist/errors/RequestError.d.ts.map +1 -1
- package/dist/errors/errorMap.d.ts +4 -3
- package/dist/errors/errorMap.d.ts.map +1 -1
- package/dist/errors/exports.mjs +5 -5
- package/dist/errors/getErrorMessage.unit.test.d.ts +2 -0
- package/dist/errors/getErrorMessage.unit.test.d.ts.map +1 -0
- package/dist/generated/beep.d.ts +1597 -0
- package/dist/generated/beep.d.ts.map +1 -0
- package/dist/generated/enso.d.ts +4957 -0
- package/dist/generated/enso.d.ts.map +1 -0
- package/dist/generated/layerzero.d.ts +2057 -0
- package/dist/generated/layerzero.d.ts.map +1 -0
- package/dist/hooks/dex/useAggregatorsQuotes.d.ts.map +1 -1
- package/dist/hooks/dex/useAllUserPools.d.ts.map +1 -1
- package/dist/hooks/dex/useCrossChainNativeFee.d.ts +32 -0
- package/dist/hooks/dex/useCrossChainNativeFee.d.ts.map +1 -0
- package/dist/hooks/dex/useCrossChainNativeFee.unit.test.d.ts +2 -0
- package/dist/hooks/dex/useCrossChainNativeFee.unit.test.d.ts.map +1 -0
- package/dist/hooks/dex/useOnChainPoolData.d.ts.map +1 -1
- package/dist/hooks/dex/usePools.d.ts.map +1 -1
- package/dist/hooks/dex/useSingleAggregatorQuote.d.ts.map +1 -1
- package/dist/hooks/dex/useSingleAggregatorQuote.unit.test.d.ts +2 -0
- package/dist/hooks/dex/useSingleAggregatorQuote.unit.test.d.ts.map +1 -0
- package/dist/hooks/enso/useBendZapSupply.d.ts +2 -2
- package/dist/hooks/enso/useBendZapSupply.d.ts.map +1 -1
- package/dist/hooks/enso/useBendZapSupply.unit.test.d.ts +2 -0
- package/dist/hooks/enso/useBendZapSupply.unit.test.d.ts.map +1 -0
- package/dist/hooks/enso/useEnsoUserTokensWithBalances.d.ts.map +1 -1
- package/dist/hooks/enso/useEnsoUserTokensWithBalances.unit.test.d.ts +2 -0
- package/dist/hooks/enso/useEnsoUserTokensWithBalances.unit.test.d.ts.map +1 -0
- package/dist/hooks/enso/useZapStakeBera.d.ts.map +1 -1
- package/dist/hooks/enso/useZapStakeBera.unit.test.d.ts +2 -0
- package/dist/hooks/enso/useZapStakeBera.unit.test.d.ts.map +1 -0
- package/dist/hooks/exports.d.ts +2 -5
- package/dist/hooks/exports.d.ts.map +1 -1
- package/dist/hooks/exports.mjs +615 -911
- package/dist/hooks/exports.mjs.map +1 -1
- package/dist/hooks/governance/exports.mjs +4 -4
- package/dist/hooks/honey/useHoneyChartData.d.ts +4 -4
- package/dist/hooks/honey/useHoneyChartData.d.ts.map +1 -1
- package/dist/hooks/pol/useAutoclaimedIncentives.d.ts.map +1 -1
- package/dist/hooks/pol/useAutoclaimedIncentivesTxHash.d.ts.map +1 -1
- package/dist/hooks/pol/useRewardTokenToBeraRate.d.ts.map +1 -1
- package/dist/hooks/pol/useRewardVaultBalanceFromStakingToken.d.ts.map +1 -1
- package/dist/hooks/pol/useRewardVaults.d.ts.map +1 -1
- package/dist/hooks/pol/useStakedAPY.d.ts +11 -0
- package/dist/hooks/pol/useStakedAPY.d.ts.map +1 -0
- package/dist/hooks/pol/useStakedData.d.ts +4 -2
- package/dist/hooks/pol/useStakedData.d.ts.map +1 -1
- package/dist/hooks/pol/useStakedSnapshots.d.ts +1 -1
- package/dist/hooks/pol/useStakedSnapshots.d.ts.map +1 -1
- package/dist/hooks/pol/useStakingVaultsMetadata.d.ts +0 -1
- package/dist/hooks/pol/useStakingVaultsMetadata.d.ts.map +1 -1
- package/dist/hooks/tokens/useMultipleTokenInformation.d.ts +30 -0
- package/dist/hooks/tokens/useMultipleTokenInformation.d.ts.map +1 -1
- package/dist/hooks/tokens/useMultipleTokenInformation.unit.test.d.ts +2 -0
- package/dist/hooks/tokens/useMultipleTokenInformation.unit.test.d.ts.map +1 -0
- package/dist/hooks/tokens/usePollBalance.d.ts.map +1 -1
- package/dist/hooks/validators/useUserActiveValidators.d.ts +5 -0
- package/dist/hooks/validators/useUserActiveValidators.d.ts.map +1 -1
- package/dist/hooks/validators/useValidator.d.ts +0 -1
- package/dist/hooks/validators/useValidator.d.ts.map +1 -1
- package/dist/hooks/validators/useValidatorIncentiveDistribution.d.ts +4 -5
- package/dist/hooks/validators/useValidatorIncentiveDistribution.d.ts.map +1 -1
- package/dist/hooks/validators/useValidatorRewardAllocation.d.ts +1 -0
- package/dist/hooks/validators/useValidatorRewardAllocation.d.ts.map +1 -1
- package/dist/types/beep/exports.d.ts +2 -0
- package/dist/types/beep/exports.d.ts.map +1 -0
- package/dist/types/beep/exports.mjs +1 -0
- package/dist/types/beep/exports.mjs.map +1 -0
- package/dist/types/bribeBoost.d.ts +0 -49
- package/dist/types/dex.d.ts +17 -0
- package/dist/types/enso.d.ts +1 -27
- package/dist/types/global.d.ts +7 -0
- package/dist/types/pol.d.ts +3 -48
- package/dist/utils/crossChainBridge.d.ts +74 -0
- package/dist/utils/crossChainBridge.d.ts.map +1 -0
- package/dist/utils/crossChainBridge.unit.test.d.ts +2 -0
- package/dist/utils/crossChainBridge.unit.test.d.ts.map +1 -0
- package/dist/utils/exports.d.ts +1 -1
- package/dist/utils/exports.d.ts.map +1 -1
- package/dist/utils/exports.mjs +142 -72
- package/dist/utils/exports.mjs.map +1 -1
- package/dist/utils/getTestClient.d.ts +5 -3
- package/dist/utils/getTestClient.d.ts.map +1 -1
- package/dist/utils/parseWhiskToken.d.ts.map +1 -1
- package/package.json +14 -10
- package/src/actions/clients/BeraApolloClient.ts +4 -2
- package/src/actions/clients/clientName.ts +17 -0
- package/src/actions/clients/clientName.unit.test.ts +39 -0
- package/src/actions/clients/exports.ts +2 -0
- package/src/actions/clients/fetchBeep.ts +6 -4
- package/src/actions/clients/fetchEnso.ts +47 -0
- package/src/actions/clients/fetchLayerzero.ts +33 -0
- package/src/actions/clients/fetchOpenApi.ts +9 -2
- package/src/actions/clients/fetchOpenApi.unit.test.ts +27 -12
- package/src/actions/clients/getApolloClient.ts +3 -11
- package/src/actions/dex/__tests__/aggregators.unit.test.ts +231 -2
- package/src/actions/dex/aggregators/base.ts +75 -17
- package/src/actions/dex/aggregators/bex.ts +41 -1
- package/src/actions/dex/aggregators/bgt.ts +11 -6
- package/src/actions/dex/aggregators/enso/enso.ts +1 -0
- package/src/actions/dex/aggregators/enso/ensoErc4626.ts +27 -9
- package/src/actions/dex/aggregators/erc4626.ts +19 -5
- package/src/actions/dex/aggregators/fly.ts +1 -0
- package/src/actions/dex/aggregators/haiku.ts +33 -2
- package/src/actions/dex/aggregators/honey.ts +17 -6
- package/src/actions/dex/aggregators/kyberswap.ts +1 -0
- package/src/actions/dex/aggregators/oogabooga.ts +1 -0
- package/src/actions/dex/aggregators/openOcean.ts +1 -0
- package/src/actions/dex/aggregators/wbera.ts +17 -11
- package/src/actions/enso/getBendMultiplyBundle.ts +1 -1
- package/src/actions/enso/getEnsoUserTokensWithBalances.ts +4 -8
- package/src/actions/enso/util.ts +0 -59
- package/src/actions/exports.ts +3 -5
- package/src/actions/honey/getChartData.ts +2 -3
- package/src/actions/honey/getHoney24hVolume.ts +4 -13
- package/src/actions/honey/getHoneyCollaterals.ts +1 -1
- package/src/actions/honey/getHoneyTxns.ts +2 -3
- package/src/actions/pol/getBGTGlobalInfo.ts +0 -2
- package/src/actions/pol/getBeraTokenTotalSupply.ts +3 -33
- package/src/actions/pol/getEarnedStakedBeraVault.ts +1 -1
- package/src/actions/pol/getLSTStakeConfig.ts +0 -6
- package/src/actions/pol/getRewardVaults.ts +0 -1
- package/src/actions/pol/getSWBeraVaultMetadata.ts +2 -106
- package/src/actions/pol/getStakedBeraAPY.ts +44 -0
- package/src/actions/pol/getStakedBeraSnapshots.ts +17 -34
- package/src/actions/pol/getStakingDailyAssets.ts +1 -1
- package/src/actions/server/getDailyValidatorBlockStats.ts +1 -2
- package/src/actions/validators/getActiveBoostAndCommissionChangeDelay.ts +1 -1
- package/src/actions/validators/getUserActiveValidators.ts +116 -54
- package/src/actions/validators/getValidatorIncentiveDistribution.ts +1 -2
- package/src/actions/validators/getValidatorRewardAllocation.ts +12 -1
- package/src/contexts/BeraFlags/BeraFlags.tsx +1 -4
- package/src/contexts/BeraFlags/defaultFlags.ts +1 -3
- package/src/contexts/BexStatusProvider.tsx +1 -1
- package/src/contexts/TokensProvider.tsx +1 -4
- package/src/enum/contracts.ts +3 -0
- package/src/enum/txnEnum.ts +1 -1
- package/src/errors/BeraError.unit.test.ts +23 -0
- package/src/errors/RequestError.ts +46 -9
- package/src/errors/RequestError.unit.test.ts +54 -0
- package/src/errors/errorMap.ts +8 -3
- package/src/errors/getErrorMessage.unit.test.ts +32 -0
- package/src/generated/beep.ts +1605 -0
- package/src/generated/enso.ts +4965 -0
- package/src/generated/layerzero.ts +2065 -0
- package/src/hooks/dex/useAggregatorsQuotes.ts +7 -1
- package/src/hooks/dex/useCrossChainNativeFee.ts +83 -0
- package/src/hooks/dex/useCrossChainNativeFee.unit.test.ts +63 -0
- package/src/hooks/dex/useOnChainPoolData.ts +30 -13
- package/src/hooks/dex/useSingleAggregatorQuote.ts +10 -5
- package/src/hooks/dex/useSingleAggregatorQuote.unit.test.ts +86 -0
- package/src/hooks/enso/useBendZapSupply.ts +10 -38
- package/src/hooks/enso/useBendZapSupply.unit.test.ts +98 -0
- package/src/hooks/enso/useEnsoUserTokensWithBalances.ts +13 -3
- package/src/hooks/enso/useEnsoUserTokensWithBalances.unit.test.ts +69 -0
- package/src/hooks/enso/useZapStakeBera.ts +8 -1
- package/src/hooks/enso/useZapStakeBera.unit.test.ts +97 -0
- package/src/hooks/exports.ts +2 -5
- package/src/hooks/pol/useAutoclaimedIncentives.ts +6 -3
- package/src/hooks/pol/useAutoclaimedIncentivesTxHash.ts +5 -2
- package/src/hooks/pol/useRewardTokenToBeraRate.ts +5 -4
- package/src/hooks/pol/useRewardVaultBalanceFromStakingToken.ts +0 -1
- package/src/hooks/pol/{useStakedAPR.ts → useStakedAPY.ts} +11 -9
- package/src/hooks/pol/useStakedData.ts +15 -14
- package/src/hooks/pol/useStakedSnapshots.ts +1 -1
- package/src/hooks/pol/useStakingVaultsMetadata.ts +3 -8
- package/src/hooks/tokens/useMultipleTokenInformation.ts +64 -21
- package/src/hooks/tokens/useMultipleTokenInformation.unit.test.ts +91 -0
- package/src/hooks/tokens/usePollBalance.ts +4 -2
- package/src/hooks/validators/useUserActiveValidators.ts +54 -9
- package/src/hooks/validators/useValidatorIncentiveDistribution.ts +4 -5
- package/src/types/beep/exports.ts +4 -0
- package/src/types/bribeBoost.d.ts +0 -49
- package/src/types/dex.d.ts +17 -0
- package/src/types/enso.d.ts +1 -27
- package/src/types/global.d.ts +7 -0
- package/src/types/pol.d.ts +3 -48
- package/src/utils/crossChainBridge.ts +290 -0
- package/src/utils/crossChainBridge.unit.test.ts +177 -0
- package/src/utils/exports.ts +1 -1
- package/dist/BeraError-7-A5JYy_.d.ts +0 -123
- package/dist/BexStatusProvider-DRymVlQf.d.ts +0 -70
- package/dist/HoneyConfigProvider-COOuDNra.d.ts +0 -390
- package/dist/RequestError-DkUbo3ro.d.ts +0 -145
- package/dist/actions/dex/b-sdk.d.ts +0 -3
- package/dist/actions/enso/getEnsoSwapBundle.d.ts +0 -3
- package/dist/actions/enso/getEnsoSwapBundle.d.ts.map +0 -1
- package/dist/actions/pol/getBgtIncentiveDistributorPaused.d.ts +0 -10
- package/dist/actions/pol/getBgtIncentiveDistributorPaused.d.ts.map +0 -1
- package/dist/actions/pol/getRewardProofsByValidator.d.ts +0 -9
- package/dist/actions/pol/getRewardProofsByValidator.d.ts.map +0 -1
- package/dist/actions/pol/getStakedBeraAPR.d.ts +0 -12
- package/dist/actions/pol/getStakedBeraAPR.d.ts.map +0 -1
- package/dist/actions/pol/getUserClaimableIncentives.d.ts +0 -9
- package/dist/actions/pol/getUserClaimableIncentives.d.ts.map +0 -1
- package/dist/actions/validators/getValidatorAnalytics.d.ts +0 -12
- package/dist/actions/validators/getValidatorAnalytics.d.ts.map +0 -1
- package/dist/chunk-7TFV6UKF.mjs.map +0 -1
- package/dist/chunk-BSOWLS3W.mjs +0 -40
- package/dist/chunk-BSOWLS3W.mjs.map +0 -1
- package/dist/chunk-DOZJB6IJ.mjs.map +0 -1
- package/dist/chunk-IFNIPVTZ.mjs.map +0 -1
- package/dist/chunk-NZAH3SGT.mjs.map +0 -1
- package/dist/chunk-P3YZ7F22.mjs.map +0 -1
- package/dist/chunk-PHYZRH4I.mjs.map +0 -1
- package/dist/chunk-UA3Z47LT.mjs.map +0 -1
- package/dist/chunk-ZWTGVIPJ.mjs.map +0 -1
- package/dist/contexts/block-time-provider.d.ts +0 -10
- package/dist/defaultFlags-D6KfkTZx.d.ts +0 -10
- package/dist/dex-C_BB0b0O.d.ts +0 -37
- package/dist/getApolloClient-MWm_iq4u.d.ts +0 -39
- package/dist/getProposalVotes-DAUrdX2n.d.ts +0 -12
- package/dist/getValidatorQueuedOperatorAddress-N2I7wHd6.d.ts +0 -511
- package/dist/global.d-CR3zicga.d.ts +0 -231
- package/dist/global.d-CiZJ2eHz.d.ts +0 -231
- package/dist/honey-CYm0RWf4.d.ts +0 -14
- package/dist/hooks/enso/useEnsoSwapBundle.d.ts +0 -26
- package/dist/hooks/enso/useEnsoSwapBundle.d.ts.map +0 -1
- package/dist/hooks/pol/useBgtIncentiveDistributorPaused.d.ts +0 -8
- package/dist/hooks/pol/useBgtIncentiveDistributorPaused.d.ts.map +0 -1
- package/dist/hooks/pol/useStakedAPR.d.ts +0 -11
- package/dist/hooks/pol/useStakedAPR.d.ts.map +0 -1
- package/dist/hooks/validators/useUserClaimableIncentives.d.ts +0 -8
- package/dist/hooks/validators/useUserClaimableIncentives.d.ts.map +0 -1
- package/dist/hooks/validators/useValidatorAnalytics.d.ts +0 -11
- package/dist/hooks/validators/useValidatorAnalytics.d.ts.map +0 -1
- package/dist/pol.d-CeRgXBL8.d.ts +0 -167
- package/dist/txnEnum-ByI5dtDi.d.ts +0 -106
- package/dist/types/bribe-boost.d.ts +0 -69
- package/dist/useHoneySwapState-CXVWAThr.d.ts +0 -32
- package/dist/useHoneySwapState-twi7NTaO.d.ts +0 -32
- package/dist/utils/formatIncentivesTokenMap.d.ts +0 -3
- package/dist/utils/formatIncentivesTokenMap.d.ts.map +0 -1
- package/dist/utils/layerZeroScan.d.ts +0 -39
- package/dist/utils/layerZeroScan.d.ts.map +0 -1
- package/src/actions/enso/getEnsoSwapBundle.ts +0 -72
- package/src/actions/pol/getBgtIncentiveDistributorPaused.ts +0 -28
- package/src/actions/pol/getRewardProofsByValidator.ts +0 -49
- package/src/actions/pol/getStakedBeraAPR.ts +0 -56
- package/src/actions/pol/getUserClaimableIncentives.ts +0 -40
- package/src/actions/validators/getValidatorAnalytics.ts +0 -37
- package/src/hooks/enso/useEnsoSwapBundle.ts +0 -121
- package/src/hooks/pol/useBgtIncentiveDistributorPaused.ts +0 -34
- package/src/hooks/validators/useUserClaimableIncentives.ts +0 -148
- package/src/hooks/validators/useValidatorAnalytics.ts +0 -37
- package/src/utils/formatIncentivesTokenMap.ts +0 -19
- package/src/utils/layerZeroScan.ts +0 -124
- /package/dist/{chunk-AEN6IJFU.mjs.map → chunk-7KN7TDUC.mjs.map} +0 -0
- /package/dist/{chunk-LE4CYW7S.mjs.map → chunk-FWRYUIJK.mjs.map} +0 -0
- /package/dist/{chunk-PJRLHTGC.mjs.map → chunk-HPRLNT6R.mjs.map} +0 -0
- /package/dist/{chunk-EJIGERYM.mjs.map → chunk-M3MIGSH3.mjs.map} +0 -0
- /package/dist/{chunk-TGN55GKE.mjs.map → chunk-SC3BSCTN.mjs.map} +0 -0
- /package/dist/{chunk-QQASX4LJ.mjs.map → chunk-TXWDUJOY.mjs.map} +0 -0
- /package/dist/{chunk-EGAB6NFQ.mjs.map → chunk-UWJQ6UKG.mjs.map} +0 -0
- /package/dist/{chunk-J3LTASDE.mjs.map → chunk-ZHV3MQ4F.mjs.map} +0 -0
package/src/actions/enso/util.ts
CHANGED
|
@@ -15,7 +15,6 @@ import type { AllowanceQueryItem, Token } from "../../types/dex";
|
|
|
15
15
|
import type {
|
|
16
16
|
GetEnsoWalletTransactionsWithApprovalArgs,
|
|
17
17
|
GetZapTransactions,
|
|
18
|
-
GetZapTransactionsArgs,
|
|
19
18
|
} from "../../types/enso";
|
|
20
19
|
|
|
21
20
|
/**
|
|
@@ -35,64 +34,6 @@ function toBigIntOrUndefined(
|
|
|
35
34
|
return typeof value === "bigint" ? value : BigInt(value);
|
|
36
35
|
}
|
|
37
36
|
|
|
38
|
-
/**
|
|
39
|
-
* Get the zap transactions for a given bundle.
|
|
40
|
-
* @returns The zap transaction & approval transaction if required.
|
|
41
|
-
*/
|
|
42
|
-
export async function getTransactionsFromBundle({
|
|
43
|
-
fromAddress,
|
|
44
|
-
amountIn,
|
|
45
|
-
tokenIn,
|
|
46
|
-
chainId,
|
|
47
|
-
ensoClient,
|
|
48
|
-
bundle,
|
|
49
|
-
publicClient,
|
|
50
|
-
}: GetZapTransactionsArgs): Promise<GetZapTransactions> {
|
|
51
|
-
const transactions: GetZapTransactions = [];
|
|
52
|
-
/**
|
|
53
|
-
* If the token is not the native token, we need to check if approval is required.
|
|
54
|
-
*/
|
|
55
|
-
if (tokenIn !== ethAddress) {
|
|
56
|
-
const approvalRequest = await ensoClient.getApprovalData({
|
|
57
|
-
fromAddress,
|
|
58
|
-
tokenAddress: tokenIn,
|
|
59
|
-
chainId,
|
|
60
|
-
amount: amountIn,
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
// check if approval is actually required by checking current allowance
|
|
64
|
-
let requiresApproval = true;
|
|
65
|
-
if (publicClient) {
|
|
66
|
-
const currentAllowance = await publicClient.readContract({
|
|
67
|
-
address: tokenIn as Address,
|
|
68
|
-
abi: erc20Abi,
|
|
69
|
-
functionName: "allowance",
|
|
70
|
-
args: [fromAddress, approvalRequest.spender],
|
|
71
|
-
});
|
|
72
|
-
requiresApproval = currentAllowance < BigInt(amountIn);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// Only add approval transaction if it's actually required
|
|
76
|
-
if (requiresApproval) {
|
|
77
|
-
const approvalValue = toBigIntOrUndefined(approvalRequest.tx.value) ?? 0n;
|
|
78
|
-
transactions.push({
|
|
79
|
-
to: approvalRequest.tx.to,
|
|
80
|
-
data: approvalRequest.tx.data as `0x${string}`,
|
|
81
|
-
value: approvalValue,
|
|
82
|
-
gasLimit: BigInt(approvalRequest.gas),
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
const bundleValue = toBigIntOrUndefined(bundle.tx.value) ?? 0n;
|
|
87
|
-
transactions.push({
|
|
88
|
-
to: bundle.tx.to,
|
|
89
|
-
data: bundle.tx.data as `0x${string}`,
|
|
90
|
-
value: bundleValue,
|
|
91
|
-
gasLimit: BigInt(bundle.gas),
|
|
92
|
-
});
|
|
93
|
-
return transactions;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
37
|
/**
|
|
97
38
|
* Get ensowallet transactions for a bundle with approval handling.
|
|
98
39
|
* Checks allowance on the ensowallet spender and prepends approval when needed.
|
package/src/actions/exports.ts
CHANGED
|
@@ -15,6 +15,7 @@ export {
|
|
|
15
15
|
} from "./clients/getApolloClient";
|
|
16
16
|
export * from "./clients/getEnsoClient";
|
|
17
17
|
export * from "./dex/aggregators/base";
|
|
18
|
+
export { ensoErc4626 } from "./dex/aggregators/enso/ensoErc4626";
|
|
18
19
|
export * from "./dex/bSdk";
|
|
19
20
|
export * from "./dex/getAllPools";
|
|
20
21
|
export * from "./dex/getApiPool";
|
|
@@ -47,14 +48,12 @@ export * from "./pol/getAutoclaimedIncentives";
|
|
|
47
48
|
export * from "./pol/getAutoclaimedIncentivesTxHash";
|
|
48
49
|
export * from "./pol/getBeraTokenTotalSupply";
|
|
49
50
|
export * from "./pol/getBgtAprSimulation";
|
|
50
|
-
export * from "./pol/getBgtIncentiveDistributorPaused";
|
|
51
51
|
export * from "./pol/getBlockTime";
|
|
52
52
|
export * from "./pol/getEarnedStakedBeraVault";
|
|
53
53
|
export * from "./pol/getGlobalData";
|
|
54
54
|
export * from "./pol/getHeroEarnVaults";
|
|
55
55
|
export * from "./pol/getLSTStakeConfig";
|
|
56
56
|
export * from "./pol/getMarkets";
|
|
57
|
-
export * from "./pol/getRewardProofsByValidator";
|
|
58
57
|
export * from "./pol/getRewardTokenToBeraRate";
|
|
59
58
|
export * from "./pol/getRewardVault";
|
|
60
59
|
export * from "./pol/getRewardVaultDurationConstants";
|
|
@@ -64,13 +63,12 @@ export * from "./pol/getRewardVaultIncentives";
|
|
|
64
63
|
export * from "./pol/getRewardVaultRewards";
|
|
65
64
|
export * from "./pol/getRewardVaultStakingToken";
|
|
66
65
|
export * from "./pol/getRewardVaults";
|
|
67
|
-
export * from "./pol/
|
|
66
|
+
export * from "./pol/getStakedBeraAPY";
|
|
68
67
|
export * from "./pol/getStakedBeraSnapshots";
|
|
69
68
|
export * from "./pol/getStakeWithdrawalCooldown";
|
|
70
69
|
export * from "./pol/getSWBeraVaultMetadata";
|
|
71
70
|
export * from "./pol/getSWBeraWithdrawal";
|
|
72
71
|
export * from "./pol/getTotalStakedAmount";
|
|
73
|
-
export * from "./pol/getUserClaimableIncentives";
|
|
74
72
|
export * from "./pol/getUserVaultInfo";
|
|
75
73
|
export * from "./pol/getUserVaults";
|
|
76
74
|
export * from "./pol/getVaultHistory";
|
|
@@ -90,9 +88,9 @@ export * from "./validators/getApiValidator";
|
|
|
90
88
|
export * from "./validators/getDefaultRewardAllocation";
|
|
91
89
|
export * from "./validators/getStakingPoolBatch";
|
|
92
90
|
export * from "./validators/getUserActiveValidators";
|
|
91
|
+
export * from "./validators/getUserBoosts";
|
|
93
92
|
export * from "./validators/getUserBoostsOnValidator";
|
|
94
93
|
export * from "./validators/getUserStakingPositions";
|
|
95
|
-
export * from "./validators/getValidatorAnalytics";
|
|
96
94
|
export * from "./validators/getValidatorCommission";
|
|
97
95
|
export * from "./validators/getValidatorEstimatedBgtPerYear";
|
|
98
96
|
export * from "./validators/getValidatorOperatorAddress";
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { HoneySnapshotResponse } from "@berachain/graphql/beep";
|
|
2
|
-
|
|
3
1
|
import { BeraError } from "../../errors/BeraError";
|
|
2
|
+
import type { HoneySnapshotResponse } from "../../generated/beep";
|
|
4
3
|
import { fetchBeep } from "../clients/fetchBeep";
|
|
5
4
|
|
|
6
5
|
/**
|
|
@@ -24,7 +23,7 @@ export async function getChartData({
|
|
|
24
23
|
});
|
|
25
24
|
}
|
|
26
25
|
|
|
27
|
-
// beep backend (next-gen), typed against
|
|
26
|
+
// beep backend (next-gen), typed against `src/generated/beep`. Queried
|
|
28
27
|
// directly from the browser — no Vercel proxy.
|
|
29
28
|
return fetchBeep("/v0/honey/snapshots/{interval}", {
|
|
30
29
|
path: { interval: "day" },
|
|
@@ -1,25 +1,16 @@
|
|
|
1
1
|
import BigNumber from "@berachain/utils/pkg/bignumber.js";
|
|
2
2
|
|
|
3
|
-
import { BeraError } from "../../errors/BeraError";
|
|
4
3
|
import { fetchBeep } from "../clients/fetchBeep";
|
|
5
4
|
|
|
6
5
|
/**
|
|
7
|
-
*
|
|
6
|
+
* Sums the last 24 hourly honey snapshots into a 24h volume.
|
|
8
7
|
*
|
|
9
8
|
* Reads from the `beep` backend (`fetchBeep`), which exposes `totalVolume` per
|
|
10
|
-
* snapshot.
|
|
9
|
+
* snapshot. Safe to call from either the browser or the server.
|
|
11
10
|
*/
|
|
12
11
|
export async function getHoney24hVolume(): Promise<BigNumber | undefined> {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
message:
|
|
16
|
-
"getHoney24hVolume is browser-only; call from a Client Component / SWR hook",
|
|
17
|
-
level: "error",
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
// beep backend (next-gen), typed against `@berachain/graphql/beep`. Queried
|
|
22
|
-
// directly from the browser — no Vercel proxy.
|
|
12
|
+
// beep backend (next-gen), typed against `src/generated/beep`. Queried
|
|
13
|
+
// directly, no Vercel proxy.
|
|
23
14
|
const snapshots = await fetchBeep("/v0/honey/snapshots/{interval}", {
|
|
24
15
|
path: { interval: "hour" },
|
|
25
16
|
query: { perPage: "24" },
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { PublicClient } from "viem";
|
|
2
2
|
|
|
3
3
|
import type { Address } from "@berachain/config";
|
|
4
|
-
import type { EdgeConfigSchema } from "@berachain/
|
|
4
|
+
import type { EdgeConfigSchema } from "@berachain/edge-config";
|
|
5
5
|
|
|
6
6
|
import { honeyFactoryAbi } from "@berachain/abis/honey/honeyFactory";
|
|
7
7
|
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { HoneyTransactionsLatestResponse } from "@berachain/graphql/beep";
|
|
2
|
-
|
|
3
1
|
import { BeraError } from "../../errors/BeraError";
|
|
2
|
+
import type { HoneyTransactionsLatestResponse } from "../../generated/beep";
|
|
4
3
|
import { fetchBeep } from "../clients/fetchBeep";
|
|
5
4
|
|
|
6
5
|
type HoneyTxn = HoneyTransactionsLatestResponse[number];
|
|
@@ -35,7 +34,7 @@ export async function getHoneyTxns({
|
|
|
35
34
|
});
|
|
36
35
|
}
|
|
37
36
|
|
|
38
|
-
// beep backend (next-gen), typed against
|
|
37
|
+
// beep backend (next-gen), typed against `src/generated/beep`. Queried
|
|
39
38
|
// directly from the browser — no Vercel proxy. beep's `page` is 1-indexed and
|
|
40
39
|
// filters server-side by `type`; `fetchOpenApi` omits `type` when `txnType`
|
|
41
40
|
// is undefined (the "all" tab), so each tab paginates its own filtered feed.
|
|
@@ -9,7 +9,6 @@ import { parseBaseArgs } from "../../utils/parseBaseArgs";
|
|
|
9
9
|
import { getApolloClient } from "../clients/getApolloClient";
|
|
10
10
|
|
|
11
11
|
type ReturnedFromQuery = GlobalDataQuery["polGetGlobalInfo"] & {
|
|
12
|
-
top3EmittingValidators: GlobalDataQuery["top3EmittingValidators"]["validators"];
|
|
13
12
|
allValidatorsCount: number;
|
|
14
13
|
};
|
|
15
14
|
|
|
@@ -37,7 +36,6 @@ export async function getBGTGlobalInfo(
|
|
|
37
36
|
// allValidatorCount include inactive validators for the purpose of ranking
|
|
38
37
|
return {
|
|
39
38
|
...data.polGetGlobalInfo,
|
|
40
|
-
top3EmittingValidators: apiRes.data.top3EmittingValidators.validators,
|
|
41
39
|
allValidatorsCount: apiRes.data.allValidatorsCount.pagination.totalCount,
|
|
42
40
|
} satisfies GlobalInfo;
|
|
43
41
|
}
|
|
@@ -1,14 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
import { beraFetchJson } from "../../utils/beraFetch";
|
|
4
|
-
import { parseBaseArgs } from "../../utils/parseBaseArgs";
|
|
5
|
-
|
|
6
|
-
interface SupplyMonitorBeraStatsResponse {
|
|
7
|
-
/** Total BERA supply, in whole BERA units. */
|
|
8
|
-
totalSupply: number;
|
|
9
|
-
/** Circulating BERA supply, in whole BERA units. */
|
|
10
|
-
circulatingSupply: number;
|
|
11
|
-
}
|
|
1
|
+
import { fetchBeep } from "../clients/fetchBeep";
|
|
12
2
|
|
|
13
3
|
export type GetBeraTokenTotalSupplyArgs = BeraJS.BaseFunctionArgs;
|
|
14
4
|
|
|
@@ -19,27 +9,7 @@ export type GetBeraTokenTotalSupplyArgs = BeraJS.BaseFunctionArgs;
|
|
|
19
9
|
export async function getBeraTokenTotalSupply(
|
|
20
10
|
args: GetBeraTokenTotalSupplyArgs = {},
|
|
21
11
|
): Promise<string> {
|
|
22
|
-
const
|
|
23
|
-
// supply-monitor only exposes BERA stats for mainnet/bepolia; returns 0 on other chains.
|
|
24
|
-
const network = config.chainId === ChainId.MAINNET ? "mainnet" : "bepolia";
|
|
25
|
-
|
|
26
|
-
// `supplyMonitor` is typed as `HttpLink` (string | { uri, name, ... }).
|
|
27
|
-
// Both forms are accepted; pick the URL out of whichever shape was used.
|
|
28
|
-
const supplyMonitor = config.pol.supplyMonitor;
|
|
29
|
-
const baseUrl =
|
|
30
|
-
typeof supplyMonitor === "string" ? supplyMonitor : supplyMonitor.uri;
|
|
31
|
-
|
|
32
|
-
const data = await beraFetchJson<SupplyMonitorBeraStatsResponse>(
|
|
33
|
-
{
|
|
34
|
-
url: `${baseUrl}/api/stats/bera?network=${network}`,
|
|
35
|
-
name:
|
|
36
|
-
typeof supplyMonitor === "string"
|
|
37
|
-
? "supply-monitor-bera"
|
|
38
|
-
: supplyMonitor.name,
|
|
39
|
-
type: "rest",
|
|
40
|
-
},
|
|
41
|
-
{ cache: "no-store" },
|
|
42
|
-
);
|
|
12
|
+
const res = await fetchBeep("/v0/stats/bera", {}, args);
|
|
43
13
|
|
|
44
|
-
return
|
|
14
|
+
return res.totalSupply;
|
|
45
15
|
}
|
|
@@ -17,7 +17,7 @@ export async function getEarnedStakedBeraVault({
|
|
|
17
17
|
account,
|
|
18
18
|
...args
|
|
19
19
|
}: BeraJS.BaseFunctionArgs & GetEarnedStakedBeraVaultArgs) {
|
|
20
|
-
// beep backend (next-gen), typed against
|
|
20
|
+
// beep backend (next-gen), typed against `src/generated/beep`.
|
|
21
21
|
return fetchBeep(
|
|
22
22
|
"/v0/stake/{vault}/earnings/{owner}",
|
|
23
23
|
{ path: { vault: address, owner: account } },
|
|
@@ -5,7 +5,6 @@ import { lstStakerVaultAbi } from "@berachain/abis/pol/lst/lstStakerVault";
|
|
|
5
5
|
import { assertPublicClient } from "../../errors/assert";
|
|
6
6
|
import type { TokenWithMetadata } from "../../types/dex";
|
|
7
7
|
import type { StakingConfig } from "../../types/staking";
|
|
8
|
-
import { parseBaseArgs } from "../../utils/parseBaseArgs";
|
|
9
8
|
import { isToken } from "../../utils/tokens";
|
|
10
9
|
|
|
11
10
|
export type GetLSTStakeConfigArgs = {
|
|
@@ -25,11 +24,6 @@ export async function getLSTStakeConfig({
|
|
|
25
24
|
}: GetLSTStakeConfigArgs): Promise<StakingConfig[]> {
|
|
26
25
|
assertPublicClient(publicClient);
|
|
27
26
|
|
|
28
|
-
const { config } = parseBaseArgs({
|
|
29
|
-
...args,
|
|
30
|
-
chainId: publicClient.chain?.id ?? args.chainId,
|
|
31
|
-
});
|
|
32
|
-
|
|
33
27
|
const lstStakingTokens = tokenList.filter((token) =>
|
|
34
28
|
lstStakingVaults.includes(token.address),
|
|
35
29
|
);
|
|
@@ -87,7 +87,6 @@ export async function getRewardVaults({
|
|
|
87
87
|
...vault,
|
|
88
88
|
dynamicData: {
|
|
89
89
|
...vault.dynamicData,
|
|
90
|
-
allTimeRewards: vault.dynamicData?.allTimeRewards ?? "0",
|
|
91
90
|
rewardCapturePercentage:
|
|
92
91
|
vault.dynamicData?.rewardCapturePercentage ?? 0,
|
|
93
92
|
activeIncentivesValueUsd: totalIncentiveInUsdc.toString(),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Address,
|
|
1
|
+
import { type Address, erc4626Abi, type PublicClient } from "viem";
|
|
2
2
|
|
|
3
3
|
import BigNumber from "@berachain/utils/pkg/bignumber.js";
|
|
4
4
|
|
|
@@ -7,150 +7,46 @@ import { getStakeWithdrawalCooldown } from "./getStakeWithdrawalCooldown";
|
|
|
7
7
|
|
|
8
8
|
export interface VaultMetadata {
|
|
9
9
|
current: {
|
|
10
|
-
exchangeRate: string;
|
|
11
|
-
totalSupply: string;
|
|
12
10
|
totalAssets: string;
|
|
13
|
-
tvl: string;
|
|
14
11
|
};
|
|
15
|
-
previous: {
|
|
16
|
-
exchangeRate: string;
|
|
17
|
-
totalSupply: string;
|
|
18
|
-
totalAssets: string;
|
|
19
|
-
tvl: string;
|
|
20
|
-
};
|
|
21
|
-
totalWBeraIssued: string;
|
|
22
12
|
lockPeriod?: number;
|
|
23
13
|
address: Address;
|
|
24
14
|
}
|
|
25
15
|
/**
|
|
26
16
|
*
|
|
27
17
|
* @param address - The address of the vault
|
|
28
|
-
* @param underlyingAsset - The address of the vault's underlying asset token
|
|
29
18
|
* @throws {Error} If the vault is not found
|
|
30
19
|
* @returns
|
|
31
20
|
*/
|
|
32
21
|
export async function getSWBeraVaultMetadata({
|
|
33
22
|
address,
|
|
34
|
-
underlyingAsset,
|
|
35
23
|
publicClient,
|
|
36
|
-
blockTime,
|
|
37
24
|
}: {
|
|
38
25
|
address: Address;
|
|
39
|
-
underlyingAsset: Address;
|
|
40
26
|
publicClient?: PublicClient;
|
|
41
|
-
blockTime: number;
|
|
42
27
|
}): Promise<VaultMetadata> {
|
|
43
28
|
assertPublicClient(publicClient);
|
|
44
29
|
|
|
45
|
-
const hoursWindow = 26; // 26 hours is the window for the vault to ensure at least 1 claim per APR window.
|
|
46
30
|
try {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
const blocksPerWindow = Math.floor((hoursWindow * 60 * 60) / blockTime); // hoursWindow * 60 minutes * 60 seconds / actual block time
|
|
50
|
-
const blockWindowAgo = currentBlock.number - BigInt(blocksPerWindow);
|
|
51
|
-
|
|
52
|
-
const [
|
|
53
|
-
curretTotalAssets,
|
|
54
|
-
currentTotalSupply,
|
|
55
|
-
currentOneShareWorth,
|
|
56
|
-
currentTVL,
|
|
57
|
-
totalAssets24HoursAgo,
|
|
58
|
-
totalSupply24HoursAgo,
|
|
59
|
-
oneShareWorthWindowAgo,
|
|
60
|
-
tvl24HoursAgo,
|
|
61
|
-
underlyingTotalSupply,
|
|
62
|
-
lockPeriod,
|
|
63
|
-
] = await Promise.all([
|
|
64
|
-
publicClient.readContract({
|
|
65
|
-
address,
|
|
66
|
-
abi: erc4626Abi,
|
|
67
|
-
functionName: "totalAssets",
|
|
68
|
-
}),
|
|
69
|
-
publicClient.readContract({
|
|
70
|
-
address,
|
|
71
|
-
abi: erc4626Abi,
|
|
72
|
-
functionName: "totalSupply",
|
|
73
|
-
}),
|
|
74
|
-
publicClient.readContract({
|
|
75
|
-
address,
|
|
76
|
-
abi: erc4626Abi,
|
|
77
|
-
functionName: "previewRedeem",
|
|
78
|
-
args: [10n ** 18n],
|
|
79
|
-
blockNumber: currentBlock.number,
|
|
80
|
-
}),
|
|
81
|
-
publicClient.readContract({
|
|
82
|
-
address: underlyingAsset,
|
|
83
|
-
abi: erc20Abi,
|
|
84
|
-
functionName: "balanceOf",
|
|
85
|
-
args: [address],
|
|
86
|
-
}),
|
|
31
|
+
const [curretTotalAssets, lockPeriod] = await Promise.all([
|
|
87
32
|
publicClient.readContract({
|
|
88
33
|
address,
|
|
89
34
|
abi: erc4626Abi,
|
|
90
35
|
functionName: "totalAssets",
|
|
91
|
-
blockNumber: blockWindowAgo,
|
|
92
|
-
}),
|
|
93
|
-
publicClient.readContract({
|
|
94
|
-
address,
|
|
95
|
-
abi: erc20Abi,
|
|
96
|
-
functionName: "totalSupply",
|
|
97
|
-
blockNumber: blockWindowAgo,
|
|
98
|
-
}),
|
|
99
|
-
publicClient.readContract({
|
|
100
|
-
address,
|
|
101
|
-
abi: erc4626Abi,
|
|
102
|
-
functionName: "previewRedeem",
|
|
103
|
-
args: [10n ** 18n],
|
|
104
|
-
blockNumber: blockWindowAgo,
|
|
105
|
-
}),
|
|
106
|
-
publicClient.readContract({
|
|
107
|
-
address: underlyingAsset,
|
|
108
|
-
abi: erc20Abi,
|
|
109
|
-
functionName: "balanceOf",
|
|
110
|
-
args: [address],
|
|
111
|
-
blockNumber: blockWindowAgo,
|
|
112
|
-
}),
|
|
113
|
-
publicClient.readContract({
|
|
114
|
-
address: underlyingAsset,
|
|
115
|
-
abi: erc20Abi,
|
|
116
|
-
functionName: "totalSupply",
|
|
117
36
|
}),
|
|
118
37
|
getStakeWithdrawalCooldown({
|
|
119
38
|
publicClient,
|
|
120
39
|
address,
|
|
121
40
|
}),
|
|
122
41
|
]);
|
|
123
|
-
const exchangeRateWindowAgo = new BigNumber(
|
|
124
|
-
oneShareWorthWindowAgo.toString(),
|
|
125
|
-
);
|
|
126
|
-
|
|
127
|
-
const currentExchangeRate = new BigNumber(currentOneShareWorth.toString());
|
|
128
42
|
|
|
129
43
|
return {
|
|
130
44
|
address,
|
|
131
45
|
current: {
|
|
132
|
-
exchangeRate: currentExchangeRate.toString(),
|
|
133
|
-
totalSupply: new BigNumber(currentTotalSupply.toString())
|
|
134
|
-
.dividedBy(1e18)
|
|
135
|
-
.toString(),
|
|
136
46
|
totalAssets: new BigNumber(curretTotalAssets.toString())
|
|
137
47
|
.dividedBy(1e18)
|
|
138
48
|
.toString(),
|
|
139
|
-
tvl: new BigNumber(currentTVL.toString()).dividedBy(1e18).toString(),
|
|
140
|
-
},
|
|
141
|
-
previous: {
|
|
142
|
-
exchangeRate: exchangeRateWindowAgo.toString(),
|
|
143
|
-
totalSupply: new BigNumber(totalSupply24HoursAgo.toString())
|
|
144
|
-
.dividedBy(1e18)
|
|
145
|
-
.toString(),
|
|
146
|
-
totalAssets: new BigNumber(totalAssets24HoursAgo.toString())
|
|
147
|
-
.dividedBy(1e18)
|
|
148
|
-
.toString(),
|
|
149
|
-
tvl: new BigNumber(tvl24HoursAgo.toString()).dividedBy(1e18).toString(),
|
|
150
49
|
},
|
|
151
|
-
totalWBeraIssued: new BigNumber(underlyingTotalSupply.toString())
|
|
152
|
-
.dividedBy(1e18)
|
|
153
|
-
.toString(),
|
|
154
50
|
lockPeriod,
|
|
155
51
|
};
|
|
156
52
|
} catch (error) {
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { paths } from "../../generated/beep";
|
|
2
|
+
import { fetchBeep } from "../clients/fetchBeep";
|
|
3
|
+
|
|
4
|
+
type StakedBeraAPYWindow = "DAY" | "WEEK" | "6HOURS" | "12HOURS" | "18HOURS";
|
|
5
|
+
|
|
6
|
+
function getBeepResolutionEnum(
|
|
7
|
+
window: StakedBeraAPYWindow,
|
|
8
|
+
): paths["/v0/stake/apr"]["get"]["parameters"]["query"]["interval"] {
|
|
9
|
+
switch (window) {
|
|
10
|
+
case "18HOURS":
|
|
11
|
+
return "EIGHTEEN_HOURS";
|
|
12
|
+
case "12HOURS":
|
|
13
|
+
return "TWELVE_HOURS";
|
|
14
|
+
case "6HOURS":
|
|
15
|
+
return "SIX_HOURS";
|
|
16
|
+
case "DAY":
|
|
17
|
+
return "ONE_DAY";
|
|
18
|
+
case "WEEK":
|
|
19
|
+
return "SEVEN_DAYS";
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
*
|
|
24
|
+
* @throws {Error} If the vault is not found
|
|
25
|
+
* @returns
|
|
26
|
+
*/
|
|
27
|
+
export async function getStakedBeraAPY({
|
|
28
|
+
window,
|
|
29
|
+
}: {
|
|
30
|
+
/**
|
|
31
|
+
* APY might vary depending on the annualized time window (day or week)
|
|
32
|
+
*/
|
|
33
|
+
window: StakedBeraAPYWindow;
|
|
34
|
+
} & BeraJS.BaseFunctionArgs): Promise<number> {
|
|
35
|
+
const { apy } = await fetchBeep("/v0/stake/apr", {
|
|
36
|
+
query: {
|
|
37
|
+
interval: getBeepResolutionEnum(window),
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
// apy can be null if no claims have been made.
|
|
42
|
+
// this happens only on early stages of the protocol when there are no claims yet.
|
|
43
|
+
return apy === null ? 0 : Number(apy);
|
|
44
|
+
}
|
|
@@ -1,17 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
type GetSWberaVaultSnapshotsQuery,
|
|
4
|
-
type GetSWberaVaultSnapshotsQueryVariables,
|
|
5
|
-
type GqlChain,
|
|
6
|
-
GqlVaultSnapshotDataRange,
|
|
7
|
-
} from "@berachain/graphql/pol/api";
|
|
1
|
+
import type { paths } from "../../generated/beep";
|
|
2
|
+
import { fetchBeep } from "../clients/fetchBeep";
|
|
8
3
|
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Look-back span (in days) for the beep sWBERA APR history endpoint.
|
|
6
|
+
* The values are the literal `days` query params accepted by
|
|
7
|
+
* `/v0/stake/apr/history`, so they can be passed straight through.
|
|
8
|
+
*/
|
|
9
|
+
export enum StakeSnapshotRange {
|
|
10
|
+
SevenDays = "7",
|
|
11
|
+
ThirtyDays = "30",
|
|
12
|
+
SixtyDays = "60",
|
|
13
|
+
NinetyDays = "90",
|
|
14
|
+
}
|
|
11
15
|
|
|
12
16
|
export type GetStakedBeraSnapshotsArgs = {
|
|
13
|
-
|
|
14
|
-
range?: GqlVaultSnapshotDataRange;
|
|
17
|
+
range?: StakeSnapshotRange;
|
|
15
18
|
} & BeraJS.BaseFunctionArgs;
|
|
16
19
|
|
|
17
20
|
/**
|
|
@@ -20,29 +23,9 @@ export type GetStakedBeraSnapshotsArgs = {
|
|
|
20
23
|
* @returns
|
|
21
24
|
*/
|
|
22
25
|
export async function getStakedBeraSnapshots({
|
|
23
|
-
|
|
24
|
-
range = GqlVaultSnapshotDataRange.ThirtyDays,
|
|
25
|
-
...args
|
|
26
|
+
range = StakeSnapshotRange.ThirtyDays,
|
|
26
27
|
}: GetStakedBeraSnapshotsArgs = {}): Promise<
|
|
27
|
-
|
|
28
|
+
paths["/v0/stake/apr/history"]["get"]["responses"]["200"]["content"]["application/json"]
|
|
28
29
|
> {
|
|
29
|
-
|
|
30
|
-
const bexApiGraphqlClient = getApolloClient("api", args);
|
|
31
|
-
try {
|
|
32
|
-
const data = await bexApiGraphqlClient.query<
|
|
33
|
-
GetSWberaVaultSnapshotsQuery,
|
|
34
|
-
GetSWberaVaultSnapshotsQueryVariables
|
|
35
|
-
>({
|
|
36
|
-
query: GetSWberaVaultSnapshots,
|
|
37
|
-
variables: {
|
|
38
|
-
chain: chain ?? (config.bex.chainName as GqlChain),
|
|
39
|
-
range,
|
|
40
|
-
},
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
return data.data.polGetSWberaVaultSnapshots;
|
|
44
|
-
} catch (error) {
|
|
45
|
-
console.error("Failed to get SW Bera Snapshots", error);
|
|
46
|
-
throw error;
|
|
47
|
-
}
|
|
30
|
+
return await fetchBeep("/v0/stake/apr/history", { query: { days: range } });
|
|
48
31
|
}
|
|
@@ -9,7 +9,7 @@ export async function getStakingDailyAssets({
|
|
|
9
9
|
address: Address;
|
|
10
10
|
range: 30 | 60 | 90;
|
|
11
11
|
}) {
|
|
12
|
-
// beep backend (next-gen), typed against
|
|
12
|
+
// beep backend (next-gen), typed against `src/generated/beep`.
|
|
13
13
|
return fetchBeep("/v0/stake/{vault}/stats-by-day", {
|
|
14
14
|
path: { vault: address },
|
|
15
15
|
query: { days: `${range}` },
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { PublicClient } from "viem";
|
|
2
2
|
|
|
3
|
-
import type { EdgeConfigSchema } from "@berachain/
|
|
3
|
+
import type { EdgeConfigSchema } from "@berachain/edge-config";
|
|
4
4
|
|
|
5
5
|
import { bgtAbi } from "@berachain/abis/pol/bgt";
|
|
6
6
|
import { beraChefAbi } from "@berachain/abis/pol/rewards/beraChef";
|