diff --git a/package.json b/package.json index a71cf0034d..3ca9c3b6f0 100644 --- a/package.json +++ b/package.json @@ -33,10 +33,10 @@ "afterSign": "electron-builder-notarize" }, "resolutions": { - "@polkadot/api": "^2.1.2-17", - "@polkadot/api-contract": "^2.1.2-17", + "@polkadot/api": "^2.1.2-18", + "@polkadot/api-contract": "^2.1.2-18", "@polkadot/keyring": "^3.5.1", - "@polkadot/types": "^2.1.2-17", + "@polkadot/types": "^2.1.2-18", "@polkadot/util": "^3.5.1", "@polkadot/util-crypto": "^3.5.1", "@polkadot/wasm-crypto": "^1.4.1", diff --git a/packages/page-contracts/package.json b/packages/page-contracts/package.json index 2d76943aab..04b6428798 100644 --- a/packages/page-contracts/package.json +++ b/packages/page-contracts/package.json @@ -12,6 +12,6 @@ "license": "Apache-2.0", "dependencies": { "@babel/runtime": "^7.11.2", - "@polkadot/api-contract": "^2.1.2-17" + "@polkadot/api-contract": "^2.1.2-18" } } diff --git a/packages/page-contracts/src/Codes/Code.tsx b/packages/page-contracts/src/Codes/Code.tsx index 046da17912..caad7b29c6 100644 --- a/packages/page-contracts/src/Codes/Code.tsx +++ b/packages/page-contracts/src/Codes/Code.tsx @@ -1,11 +1,13 @@ // Copyright 2017-2020 @polkadot/app-staking authors & contributors // SPDX-License-Identifier: Apache-2.0 +import { Codec } from '@polkadot/types/types'; import { CodeStored } from '../types'; import React, { useCallback } from 'react'; import { Button, Card, Forget } from '@polkadot/react-components'; -import { useToggle } from '@polkadot/react-hooks'; +import { useApi, useCall, useToggle } from '@polkadot/react-hooks'; +import { Option } from '@polkadot/types'; import { ABI, CodeRow } from '../shared'; import RemoveABI from '../RemoveABI'; @@ -21,6 +23,8 @@ interface Props { function Code ({ className, code, onShowDeploy }: Props): React.ReactElement { const { t } = useTranslation(); + const { api } = useApi(); + const optCode = useCall>(api.query.contracts.codeStorage, [code.json.codeHash]); const [isForgetOpen, toggleIsForgetOpen] = useToggle(); const [isRemoveABIOpen, toggleIsRemoveABIOpen] = useToggle(); const { contractAbi, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi, code.contractAbi], code.json.codeHash, true); @@ -97,6 +101,11 @@ function Code ({ className, code, onShowDeploy }: Props): React.ReactElement + + {optCode && ( + optCode.isSome ? t('Available') : t('Not on-chain') + )} +