diff --git a/packages/react-hooks/src/useInflation.ts b/packages/react-hooks/src/useInflation.ts index adeeb90220..a200bcc1ad 100644 --- a/packages/react-hooks/src/useInflation.ts +++ b/packages/react-hooks/src/useInflation.ts @@ -13,6 +13,8 @@ import { BN_MILLION } from '@polkadot/util'; import { useApi } from './useApi'; import { useCall } from './useCall'; +const EMPTY: Inflation = { inflation: 0, stakedReturn: 0 }; + export function calcInflation (api: ApiPromise, totalStaked: BN, totalIssuance: BN): Inflation { const { falloff, idealStake, maxInflation, minInflation } = getInflationParams(api); const stakedFraction = totalStaked.mul(BN_MILLION).div(totalIssuance).toNumber() / BN_MILLION.toNumber(); @@ -25,14 +27,16 @@ export function calcInflation (api: ApiPromise, totalStaked: BN, totalIssuance: return { inflation, - stakedReturn: inflation / stakedFraction + stakedReturn: stakedFraction + ? (inflation / stakedFraction) + : 0 }; } export function useInflation (totalStaked?: BN): Inflation { const { api } = useApi(); const totalIssuance = useCall(api.query.balances.totalIssuance); - const [state, setState] = useState({ inflation: 0, stakedReturn: 0 }); + const [state, setState] = useState(EMPTY); useEffect((): void => { totalIssuance && totalStaked && setState(