diff --git a/packages/page-accounts/src/Accounts/index.tsx b/packages/page-accounts/src/Accounts/index.tsx index 887a9b388d..ac57c67679 100644 --- a/packages/page-accounts/src/Accounts/index.tsx +++ b/packages/page-accounts/src/Accounts/index.tsx @@ -11,7 +11,7 @@ import React, { useCallback, useEffect, useMemo, useState } from 'react'; import styled from 'styled-components'; import keyring from '@polkadot/ui-keyring'; import { getLedger, isLedger } from '@polkadot/react-api'; -import { useAccounts, useFavorites, useToggle } from '@polkadot/react-hooks'; +import { useApi, useAccounts, useFavorites, useToggle } from '@polkadot/react-hooks'; import { FormatBalance } from '@polkadot/react-query'; import { Button, Input, Table } from '@polkadot/react-components'; @@ -92,6 +92,7 @@ function sortAccounts (addresses: string[], favorites: string[]): SortedAccount[ function Overview ({ className, onStatusChange }: Props): React.ReactElement { const { t } = useTranslation(); + const { api } = useApi(); const { allAccounts } = useAccounts(); const [isCreateOpen, toggleCreate] = useToggle(); const [isImportOpen, toggleImport] = useToggle(); @@ -208,6 +209,7 @@ function Overview ({ className, onStatusChange }: Props): React.ReactElement diff --git a/packages/page-staking/src/Actions/NewNominator.tsx b/packages/page-staking/src/Actions/NewNominator.tsx index d62d358a82..6a2e2c81c3 100644 --- a/packages/page-staking/src/Actions/NewNominator.tsx +++ b/packages/page-staking/src/Actions/NewNominator.tsx @@ -7,7 +7,8 @@ import { SortedTargets } from '../types'; import React, { useCallback, useState } from 'react'; import { Button, Modal, TxButton } from '@polkadot/react-components'; -import { useToggle } from '@polkadot/react-hooks'; +import { useApi, useToggle } from '@polkadot/react-hooks'; +import { isFunction } from '@polkadot/util'; import { useTranslation } from '../translate'; import BondPartial from './partials/Bond'; @@ -25,10 +26,12 @@ const NUM_STEPS = 2; function NewNominator ({ isInElection, next, targets, validators }: Props): React.ReactElement { const { t } = useTranslation(); + const { api } = useApi(); const [isVisible, toggleVisible] = useToggle(); const [{ bondOwnTx, bondTx, controllerId, controllerTx, stashId }, setBondInfo] = useState({}); const [{ nominateTx }, setNominateInfo] = useState({}); const [step, setStep] = useState(1); + const isDisabled = isInElection || !isFunction(api.tx.utility?.batch); const _nextStep = useCallback( () => setStep((step) => step + 1), @@ -54,7 +57,7 @@ function NewNominator ({ isInElection, next, targets, validators }: Props): Reac <>