From a393d2eae84e73f6ca6fe195641dd22cacc4ea69 Mon Sep 17 00:00:00 2001 From: Jaco Greeff Date: Fri, 19 Jun 2020 14:53:06 +0200 Subject: [PATCH] Fix targets with zero input (#2989) * Fix targets with zero input * Simpler or check --- packages/page-staking/src/Targets/index.tsx | 1 + packages/page-staking/src/useSortedTargets.ts | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) 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();