* #9901 - Fix issue with Contracts tab for polkadot-v1.0.0 based chain * #9901 - Fix to support both pre and post polkadot-v1.0.0
This commit is contained in:
parent
34a3594c41
commit
2fe717160f
@ -24,7 +24,7 @@ interface Props {
|
||||
function Code ({ className, code, onShowDeploy }: Props): React.ReactElement<Props> {
|
||||
const { t } = useTranslation();
|
||||
const { api } = useApi();
|
||||
const optCode = useCall<Option<Codec>>(api.query.contracts.codeStorage, [code.json.codeHash]);
|
||||
const optCode = useCall<Option<Codec>>(api.query.contracts.pristineCode || api.query.contracts.codeStorage, [code.json.codeHash]);
|
||||
const [isForgetOpen, toggleIsForgetOpen] = useToggle();
|
||||
const { contractAbi } = useAbi([code.json.abi, code.contractAbi], code.json.codeHash, true);
|
||||
|
||||
|
||||
@ -22,11 +22,11 @@ interface Props {
|
||||
function ValidateCode ({ codeHash, onChange }: Props): React.ReactElement<Props> | null {
|
||||
const { api } = useApi();
|
||||
const { t } = useTranslation();
|
||||
const codeStorage = useCall<Option<PrefabWasmModule>>((api.query.contracts || api.query.contract).codeStorage, [codeHash]);
|
||||
const optCode = useCall<Option<PrefabWasmModule>>((api.query.contracts || api.query.contract).pristineCode || (api.query.contracts || api.query.contract).codeStorage, [codeHash]);
|
||||
const [isValidHex, isValid] = useMemo(
|
||||
(): [boolean, boolean] => {
|
||||
const isValidHex = !!codeHash && isHex(codeHash) && codeHash.length === 66;
|
||||
const isStored = !!codeStorage && codeStorage.isSome;
|
||||
const isStored = !!optCode && optCode.isSome;
|
||||
const isValid = isValidHex && isStored;
|
||||
|
||||
onChange(isValid);
|
||||
@ -36,7 +36,7 @@ function ValidateCode ({ codeHash, onChange }: Props): React.ReactElement<Props>
|
||||
isValid
|
||||
];
|
||||
},
|
||||
[codeHash, codeStorage, onChange]
|
||||
[codeHash, optCode, onChange]
|
||||
);
|
||||
|
||||
if (isValid || !isValidHex) {
|
||||
|
||||
@ -30,7 +30,7 @@ function Summary ({ trigger }: Props): React.ReactElement<Props> {
|
||||
}, [api, accountCounter]);
|
||||
|
||||
useEffect((): void => {
|
||||
api.query.contracts.codeStorage
|
||||
(api.query.contracts.pristineCode || api.query.contracts.codeStorage)
|
||||
.keys()
|
||||
.then((arr) => setNumHashes(arr.length))
|
||||
.catch(console.error);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user