diff --git a/packages/page-staking/src/Targets/index.tsx b/packages/page-staking/src/Targets/index.tsx index c6e4d0dc5c..a721126099 100644 --- a/packages/page-staking/src/Targets/index.tsx +++ b/packages/page-staking/src/Targets/index.tsx @@ -110,6 +110,7 @@ function Targets ({ className = '', ownStashes, targets: { calcWith, lastReward, className='balanceInput' help={t('The amount that will be used on a per-validator basis to calculate profits for that validator.')} isFull + isZeroable={false} label={t('amount to use for estimation')} onChange={setCalcWith} value={calcWith} diff --git a/packages/page-staking/src/useSortedTargets.ts b/packages/page-staking/src/useSortedTargets.ts index b8dc795a3e..202b5afd60 100644 --- a/packages/page-staking/src/useSortedTargets.ts +++ b/packages/page-staking/src/useSortedTargets.ts @@ -84,9 +84,9 @@ function extractInfo (allAccounts: string[], amount: BN = baseBalance(), elected : (prefs as ValidatorPrefs).commission.unwrap().mul(perValidatorReward).div(PERBILL); const key = accountId.toString(); const rewardSplit = perValidatorReward.sub(validatorPayment); - const rewardPayout = rewardSplit.gtn(0) - ? amount.mul(rewardSplit).div(amount.add(bondTotal)) - : BN_ZERO; + const rewardPayout = amount.isZero() || rewardSplit.isZero() + ? BN_ZERO + : amount.mul(rewardSplit).div(amount.add(bondTotal)); const isNominating = exposure.others.reduce((isNominating, indv): boolean => { const nominator = indv.who.toString();