Bump API (contracts cleanups) (#3855)
* Bump API (contracts cleanups) * Remove unneeded JSON.parse
This commit is contained in:
parent
1ed570b221
commit
3152c8e026
@ -33,10 +33,10 @@
|
||||
"afterSign": "electron-builder-notarize"
|
||||
},
|
||||
"resolutions": {
|
||||
"@polkadot/api": "^2.1.2-20",
|
||||
"@polkadot/api-contract": "^2.1.2-20",
|
||||
"@polkadot/api": "^2.1.2-23",
|
||||
"@polkadot/api-contract": "^2.1.2-23",
|
||||
"@polkadot/keyring": "^3.5.1",
|
||||
"@polkadot/types": "^2.1.2-20",
|
||||
"@polkadot/types": "^2.1.2-23",
|
||||
"@polkadot/util": "^3.5.1",
|
||||
"@polkadot/util-crypto": "^3.5.1",
|
||||
"@polkadot/wasm-crypto": "^1.4.1",
|
||||
|
||||
@ -12,6 +12,6 @@
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.11.2",
|
||||
"@polkadot/api-contract": "^2.1.2-20"
|
||||
"@polkadot/api-contract": "^2.1.2-23"
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
// Copyright 2017-2020 @polkadot/app-contracts authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { Hash } from '@polkadot/types/interfaces';
|
||||
import { SubmittableExtrinsic } from '@polkadot/api/types';
|
||||
|
||||
import React, { useCallback, useState } from 'react';
|
||||
import { SubmittableResult } from '@polkadot/api';
|
||||
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
||||
import { CodePromise, CodeSubmittableResult } from '@polkadot/api-contract';
|
||||
import { InputAddress, InputFile, Modal, TxButton } from '@polkadot/react-components';
|
||||
import { useAccountId, useNonEmptyString } from '@polkadot/react-hooks';
|
||||
import { compactAddLength, isNull, isWasm } from '@polkadot/util';
|
||||
import { useAccountId, useApi, useNonEmptyString } from '@polkadot/react-hooks';
|
||||
import { isNull, isWasm } from '@polkadot/util';
|
||||
|
||||
import { ABI, InputName } from '../shared';
|
||||
import store from '../store';
|
||||
@ -20,42 +20,46 @@ interface Props {
|
||||
|
||||
function Upload ({ onClose }: Props): React.ReactElement {
|
||||
const { t } = useTranslation();
|
||||
const { api } = useApi();
|
||||
const [accountId, setAccountId] = useAccountId();
|
||||
const [uploadTx, setUploadTx] = useState<SubmittableExtrinsic<'promise'> | null>(null);
|
||||
const [[wasm, isWasmValid], setWasm] = useState<[Uint8Array | null, boolean]>([null, false]);
|
||||
const [name, isNameValid, setName] = useNonEmptyString();
|
||||
const { abi, contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi();
|
||||
const { contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi();
|
||||
|
||||
const code = useMemo(
|
||||
() => isAbiValid && isWasmValid && wasm && contractAbi
|
||||
? new CodePromise(api, contractAbi, wasm)
|
||||
: null,
|
||||
[api, contractAbi, isAbiValid, isWasmValid, wasm]
|
||||
);
|
||||
|
||||
useEffect((): void => {
|
||||
setUploadTx(() => code ? code.createBlueprint() : null);
|
||||
}, [code]);
|
||||
|
||||
const _onAddWasm = useCallback(
|
||||
(wasm: Uint8Array, name: string): void => {
|
||||
setWasm([compactAddLength(wasm), isWasm(wasm)]);
|
||||
setName(name.replace('.wasm', ''));
|
||||
setWasm([wasm, isWasm(wasm)]);
|
||||
setName(name.replace('.wasm', '').replace('_', ' '));
|
||||
},
|
||||
[setName]
|
||||
);
|
||||
|
||||
const _onSuccess = useCallback(
|
||||
(result: SubmittableResult): void => {
|
||||
const record = result.findRecord('contracts', 'CodeStored');
|
||||
|
||||
if (record) {
|
||||
const codeHash = record.event.data[0];
|
||||
|
||||
if (!codeHash || !name) {
|
||||
return;
|
||||
}
|
||||
|
||||
store
|
||||
.saveCode(codeHash as Hash, { abi, name, tags: [] })
|
||||
.then()
|
||||
.catch((error: any): void => {
|
||||
console.error('Unable to save code', error);
|
||||
});
|
||||
}
|
||||
(result: CodeSubmittableResult<'promise'>): void => {
|
||||
result.blueprint && store
|
||||
.saveCode(result.blueprint.codeHash, {
|
||||
abi: JSON.stringify(result.blueprint.abi.json),
|
||||
name: name || '<unknown>',
|
||||
tags: []
|
||||
})
|
||||
.catch(console.error);
|
||||
},
|
||||
[abi, name]
|
||||
[name]
|
||||
);
|
||||
|
||||
const isSubmittable = !!accountId && (!isNull(name) && isNameValid) && isWasmValid && isAbiSupplied && isAbiValid;
|
||||
const isSubmittable = !!accountId && (!isNull(name) && isNameValid) && isWasmValid && isAbiSupplied && isAbiValid && !!uploadTx;
|
||||
|
||||
return (
|
||||
<Modal header={t('Upload WASM')}>
|
||||
@ -98,13 +102,12 @@ function Upload ({ onClose }: Props): React.ReactElement {
|
||||
<Modal.Actions onCancel={onClose}>
|
||||
<TxButton
|
||||
accountId={accountId}
|
||||
extrinsic={uploadTx}
|
||||
icon='upload'
|
||||
isDisabled={!isSubmittable}
|
||||
label={t('Upload')}
|
||||
onClick={onClose}
|
||||
onSuccess={_onSuccess}
|
||||
params={[wasm]}
|
||||
tx='contracts.putCode'
|
||||
/>
|
||||
</Modal.Actions>
|
||||
</Modal>
|
||||
|
||||
@ -8,7 +8,7 @@ import BN from 'bn.js';
|
||||
import React, { useCallback, useState, useEffect } from 'react';
|
||||
import styled from 'styled-components';
|
||||
import { Button, Dropdown, Expander, InputAddress, InputBalance, Modal, TxButton } from '@polkadot/react-components';
|
||||
import { PromiseContract as ApiContract } from '@polkadot/api-contract';
|
||||
import { ContractPromise as ApiContract } from '@polkadot/api-contract';
|
||||
import { useAccountId, useFormField } from '@polkadot/react-hooks';
|
||||
import { BN_ZERO } from '@polkadot/util';
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ import { ContractInfo } from '@polkadot/types/interfaces';
|
||||
|
||||
import React, { useCallback } from 'react';
|
||||
import keyring from '@polkadot/ui-keyring';
|
||||
import { PromiseContract } from '@polkadot/api-contract';
|
||||
import { ContractPromise } from '@polkadot/api-contract';
|
||||
import { AddressInfo, AddressMini, Button, Forget } from '@polkadot/react-components';
|
||||
import { useApi, useCall, useToggle } from '@polkadot/react-hooks';
|
||||
import { Option } from '@polkadot/types';
|
||||
@ -17,7 +17,7 @@ import { useTranslation } from '../translate';
|
||||
|
||||
interface Props {
|
||||
className?: string;
|
||||
contract: PromiseContract;
|
||||
contract: ContractPromise;
|
||||
onCall: (index?: number) => void;
|
||||
}
|
||||
|
||||
|
||||
@ -5,7 +5,7 @@ import { StringOrNull } from '@polkadot/react-components/types';
|
||||
|
||||
import React, { useCallback, useMemo, useRef, useState } from 'react';
|
||||
import { ApiPromise } from '@polkadot/api';
|
||||
import { PromiseContract as ApiContract } from '@polkadot/api-contract';
|
||||
import { ContractPromise as ApiContract } from '@polkadot/api-contract';
|
||||
import { Table } from '@polkadot/react-components';
|
||||
import { useApi } from '@polkadot/react-hooks';
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ import { StringOrNull } from '@polkadot/react-components/types';
|
||||
|
||||
import React from 'react';
|
||||
import { ApiPromise } from '@polkadot/api';
|
||||
import { PromiseContract as Contract } from '@polkadot/api-contract';
|
||||
import { ContractPromise as Contract } from '@polkadot/api-contract';
|
||||
import { getContractAbi } from '@polkadot/react-components/util';
|
||||
|
||||
import MessageSignature from '../shared/MessageSignature';
|
||||
|
||||
@ -3,14 +3,11 @@
|
||||
|
||||
import { SubmittableExtrinsic } from '@polkadot/api/types';
|
||||
import { StringOrNull } from '@polkadot/react-components/types';
|
||||
import { AccountId } from '@polkadot/types/interfaces';
|
||||
import { CodeStored } from './types';
|
||||
|
||||
import BN from 'bn.js';
|
||||
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
||||
import { useHistory } from 'react-router-dom';
|
||||
import { SubmittableResult } from '@polkadot/api';
|
||||
import { PromiseBlueprint } from '@polkadot/api-contract';
|
||||
import { BlueprintPromise, BlueprintSubmittableResult } from '@polkadot/api-contract';
|
||||
import { Dropdown, InputAddress, InputBalance, Modal, TxButton } from '@polkadot/react-components';
|
||||
import { useFormField, useNonEmptyString, useNonZeroBn, useApi } from '@polkadot/react-hooks';
|
||||
import keyring from '@polkadot/ui-keyring';
|
||||
@ -23,17 +20,15 @@ import useWeight from './useWeight';
|
||||
import { ENDOWMENT } from './constants';
|
||||
|
||||
interface Props {
|
||||
basePath: string;
|
||||
codeHash: string;
|
||||
constructorIndex: number;
|
||||
onClose: () => void;
|
||||
setConstructorIndex: React.Dispatch<number>;
|
||||
}
|
||||
|
||||
function Deploy ({ basePath, codeHash, constructorIndex = 0, onClose, setConstructorIndex }: Props): React.ReactElement<Props> {
|
||||
function Deploy ({ codeHash, constructorIndex = 0, onClose, setConstructorIndex }: Props): React.ReactElement<Props> {
|
||||
const { t } = useTranslation();
|
||||
const { api } = useApi();
|
||||
const history = useHistory();
|
||||
const weight = useWeight();
|
||||
const [initTx, setInitTx] = useState<SubmittableExtrinsic<'promise'> | null>(null);
|
||||
const [params, setParams] = useState<any[]>([]);
|
||||
@ -50,13 +45,13 @@ function Deploy ({ basePath, codeHash, constructorIndex = 0, onClose, setConstru
|
||||
);
|
||||
|
||||
const [name, isNameValid, setName] = useNonEmptyString(code.json.name);
|
||||
const { abi, contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi, code.contractAbi], codeHash, true);
|
||||
const { contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi, code.contractAbi], codeHash, true);
|
||||
|
||||
const blueprint = useMemo(
|
||||
() => codeHash && contractAbi
|
||||
? new PromiseBlueprint(api, contractAbi, codeHash)
|
||||
() => isAbiValid && codeHash && contractAbi
|
||||
? new BlueprintPromise(api, contractAbi, codeHash)
|
||||
: null,
|
||||
[api, codeHash, contractAbi]
|
||||
[api, codeHash, contractAbi, isAbiValid]
|
||||
);
|
||||
|
||||
const constructOptions = useMemo(
|
||||
@ -79,7 +74,7 @@ function Deploy ({ basePath, codeHash, constructorIndex = 0, onClose, setConstru
|
||||
endowment && setInitTx((): SubmittableExtrinsic<'promise'> | null => {
|
||||
if (blueprint) {
|
||||
try {
|
||||
return blueprint.instantiate(constructorIndex, endowment, weight.weight, ...params);
|
||||
return blueprint.createContract(constructorIndex, endowment, weight.weight, ...params);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
|
||||
@ -92,30 +87,21 @@ function Deploy ({ basePath, codeHash, constructorIndex = 0, onClose, setConstru
|
||||
}, [blueprint, constructorIndex, endowment, params, weight]);
|
||||
|
||||
const _onSuccess = useCallback(
|
||||
(result: SubmittableResult): void => {
|
||||
const section = api.tx.contracts ? 'contracts' : 'contract';
|
||||
const records = result.filterRecords(section, 'Instantiated');
|
||||
|
||||
if (records.length) {
|
||||
// find the last EventRecord (in the case of multiple contracts deployed - we should really be
|
||||
// more clever here to find the exact contract deployed, this works for eg. Delegator)
|
||||
const address = records[records.length - 1].event.data[1] as unknown as AccountId;
|
||||
|
||||
keyring.saveContract(address.toString(), {
|
||||
(result: BlueprintSubmittableResult<'promise'>): void => {
|
||||
if (result.contract) {
|
||||
keyring.saveContract(result.contract.address.toString(), {
|
||||
contract: {
|
||||
abi,
|
||||
abi: JSON.stringify(result.contract.abi.json),
|
||||
genesisHash: api.genesisHash.toHex()
|
||||
},
|
||||
name,
|
||||
tags: []
|
||||
});
|
||||
|
||||
history.push(basePath);
|
||||
|
||||
onClose && onClose();
|
||||
}
|
||||
},
|
||||
[abi, api, basePath, history, name, onClose]
|
||||
[api, name, onClose]
|
||||
);
|
||||
|
||||
const isValid = isNameValid && isEndowmentValid && weight.isValid && isAccountIdValid;
|
||||
|
||||
@ -111,7 +111,6 @@ function ContractsApp ({ basePath, className = '' }: Props): React.ReactElement<
|
||||
/>
|
||||
{codeHash && isDeployOpen && (
|
||||
<Deploy
|
||||
basePath={basePath}
|
||||
codeHash={codeHash}
|
||||
constructorIndex={constructorIndex}
|
||||
onClose={_onCloseDeploy}
|
||||
|
||||
@ -80,17 +80,7 @@ function ABI (props: Props): React.ReactElement<Props> {
|
||||
onChange={onChange}
|
||||
placeholder={
|
||||
isSupplied && !isValid
|
||||
? (
|
||||
<>
|
||||
{t<string>('invalid ABI file selected')}
|
||||
{!!errorText && (
|
||||
<>
|
||||
{' — '}
|
||||
{t<string>(errorText)}
|
||||
</>
|
||||
)}
|
||||
</>
|
||||
)
|
||||
? <>{t<string>('invalid ABI file selected')}{!!errorText && ` — ${errorText}`}</>
|
||||
: t<string>('click to select or drag and drop a JSON ABI file')
|
||||
}
|
||||
/>
|
||||
|
||||
@ -6,7 +6,7 @@ import { ContractInfo } from '@polkadot/types/interfaces';
|
||||
|
||||
import React, { useCallback, useEffect, useState } from 'react';
|
||||
import styled from 'styled-components';
|
||||
import { Abi, PromiseContract } from '@polkadot/api-contract';
|
||||
import { Abi, ContractPromise } from '@polkadot/api-contract';
|
||||
import { Expander, IconLink } from '@polkadot/react-components';
|
||||
import { useApi, useCall } from '@polkadot/react-hooks';
|
||||
import { Option } from '@polkadot/types';
|
||||
@ -16,7 +16,7 @@ import { useTranslation } from '../translate';
|
||||
|
||||
export interface Props {
|
||||
className?: string;
|
||||
contract?: PromiseContract;
|
||||
contract?: ContractPromise;
|
||||
contractAbi: Abi;
|
||||
isLabelled?: boolean;
|
||||
isRemovable?: boolean;
|
||||
|
||||
@ -69,13 +69,9 @@ class Store extends EventEmitter {
|
||||
|
||||
private addCode (key: string, json: CodeJson): void {
|
||||
try {
|
||||
const abi = json.abi
|
||||
? JSON.parse(json.abi) as Record<string, any>
|
||||
: null;
|
||||
|
||||
this.allCode[json.codeHash] = {
|
||||
contractAbi: abi
|
||||
? new Abi(abi)
|
||||
contractAbi: json.abi
|
||||
? new Abi(json.abi)
|
||||
: undefined,
|
||||
json
|
||||
};
|
||||
|
||||
@ -8,7 +8,6 @@ import { Abi } from '@polkadot/api-contract';
|
||||
import { u8aToString } from '@polkadot/util';
|
||||
|
||||
import store from './store';
|
||||
import { useTranslation } from './translate';
|
||||
|
||||
interface UseAbi {
|
||||
abi: string | null;
|
||||
@ -22,7 +21,6 @@ interface UseAbi {
|
||||
}
|
||||
|
||||
export default function useAbi (initialValue: [string | null | undefined, Abi | null | undefined] = [null, null], codeHash: StringOrNull = null, isRequired = false): UseAbi {
|
||||
const { t } = useTranslation();
|
||||
const [[abi, contractAbi, isAbiSupplied, isAbiValid], setAbi] = useState<[string | null | undefined, Abi | null | undefined, boolean, boolean]>([initialValue[0], initialValue[1], !!initialValue[1], !isRequired || !!initialValue[1]]);
|
||||
const [[isAbiError, errorText], setError] = useState<[boolean, string | null]>([false, null]);
|
||||
|
||||
@ -38,13 +36,7 @@ export default function useAbi (initialValue: [string | null | undefined, Abi |
|
||||
const json = u8aToString(u8a);
|
||||
|
||||
try {
|
||||
const abi = JSON.parse(json) as Record<string, any>;
|
||||
|
||||
if (!abi.metadataVersion) {
|
||||
throw new Error(t('You are using an ABI with an outdated format. Please generate a new one.'));
|
||||
}
|
||||
|
||||
setAbi([json, new Abi(abi), true, true]);
|
||||
setAbi([json, new Abi(json), true, true]);
|
||||
|
||||
codeHash && store.saveCode(
|
||||
codeHash,
|
||||
@ -57,7 +49,7 @@ export default function useAbi (initialValue: [string | null | undefined, Abi |
|
||||
setError([true, error]);
|
||||
}
|
||||
},
|
||||
[codeHash, t]
|
||||
[codeHash]
|
||||
);
|
||||
|
||||
const onRemoveAbi = useCallback(
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/ui-reactive#readme",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.11.2",
|
||||
"@polkadot/api": "^2.1.2-20",
|
||||
"@polkadot/api": "^2.1.2-23",
|
||||
"@polkadot/extension-dapp": "^0.35.0-beta.12",
|
||||
"rxjs-compat": "^6.6.3"
|
||||
}
|
||||
|
||||
112
yarn.lock
112
yarn.lock
@ -2039,57 +2039,57 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api-contract@npm:^2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/api-contract@npm:2.1.2-20"
|
||||
"@polkadot/api-contract@npm:^2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/api-contract@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": 2.1.2-20
|
||||
"@polkadot/rpc-core": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/api": 2.1.2-23
|
||||
"@polkadot/rpc-core": 2.1.2-23
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
rxjs: ^6.6.3
|
||||
checksum: 138f3f2ec27b6772d87d988b2c69fcbc303c821f2c68d1e99af52afe6eb257a0d3395b3350c450a73f7abc8657cb79fe07f54ca073bf38c13d3dae14fb8b9910
|
||||
checksum: c7580494c919dcc521c69f480d0e2994b7c07cb3b7bd2217abb13ccc643d5fd0865540bda2e7dcbe3e9f90355100ae29eac66c92b3a6d5e5ca1c406792003bd2
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api-derive@npm:2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/api-derive@npm:2.1.2-20"
|
||||
"@polkadot/api-derive@npm:2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/api-derive@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": 2.1.2-20
|
||||
"@polkadot/rpc-core": 2.1.2-20
|
||||
"@polkadot/rpc-provider": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/api": 2.1.2-23
|
||||
"@polkadot/rpc-core": 2.1.2-23
|
||||
"@polkadot/rpc-provider": 2.1.2-23
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
"@polkadot/util-crypto": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: c3294b0cf54e499e260faaaf23ffea74b7188df80efc80b3f7ce8630b5afe55f2dfdb209b15a5e7edcba673e1a52837bfdc4f84e7f9b85d5d5fc6ca1560818a5
|
||||
checksum: a8ab3ef976aec27ba7aac21b4ebbe95b282728da94cdaea9ea56e161cf6a1f53d5623fc1cc1e86978a869c80fbd492b727a8c32273f0a987f43699f05821e013
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api@npm:^2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/api@npm:2.1.2-20"
|
||||
"@polkadot/api@npm:^2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/api@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api-derive": 2.1.2-20
|
||||
"@polkadot/api-derive": 2.1.2-23
|
||||
"@polkadot/keyring": ^3.5.1
|
||||
"@polkadot/metadata": 2.1.2-20
|
||||
"@polkadot/rpc-core": 2.1.2-20
|
||||
"@polkadot/rpc-provider": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/types-known": 2.1.2-20
|
||||
"@polkadot/metadata": 2.1.2-23
|
||||
"@polkadot/rpc-core": 2.1.2-23
|
||||
"@polkadot/rpc-provider": 2.1.2-23
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/types-known": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
"@polkadot/util-crypto": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
eventemitter3: ^4.0.7
|
||||
rxjs: ^6.6.3
|
||||
checksum: 680d0fe4d9e3613cc888cb309a44e2a589fc8bef6bb727bd3bfba8432242a485348691b2c78b83b591a5767e15d44164dc1f3b93856252e0e2053c26300617c0
|
||||
checksum: 00a752c764499df433dcff386895683a9faf31f12b789aac7456efc92d331c280723e2939b586a21dda8d2b9a5691667d7f2bef3d6fe298d960b2a26c0db2939
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -2145,7 +2145,7 @@ __metadata:
|
||||
resolution: "@polkadot/app-contracts@workspace:packages/page-contracts"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api-contract": ^2.1.2-20
|
||||
"@polkadot/api-contract": ^2.1.2-23
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
@ -2525,17 +2525,17 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/metadata@npm:2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/metadata@npm:2.1.2-20"
|
||||
"@polkadot/metadata@npm:2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/metadata@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/types-known": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/types-known": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
"@polkadot/util-crypto": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
checksum: f08a577035578d691f26142dd5e18ba3202849f176ec422ba2150a1cbdba939701f7e0a699cab4d9d188a165b1c3ddc9ff06f01f0c1663ab31ed44b5137fc0e5
|
||||
checksum: 874d82dd9bae258e122502efd3ebcb2a5060c2d410085fc30ca9b8b1aba6544561452ddbf6dde39b96379a7bd74e35f4d04382d8e0c1044d8bdcc9ee4c4a6fc7
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -2544,7 +2544,7 @@ __metadata:
|
||||
resolution: "@polkadot/react-api@workspace:packages/react-api"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": ^2.1.2-20
|
||||
"@polkadot/api": ^2.1.2-23
|
||||
"@polkadot/extension-dapp": ^0.35.0-beta.12
|
||||
rxjs-compat: ^6.6.3
|
||||
languageName: unknown
|
||||
@ -2667,35 +2667,35 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@polkadot/rpc-core@npm:2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/rpc-core@npm:2.1.2-20"
|
||||
"@polkadot/rpc-core@npm:2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/rpc-core@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 2.1.2-20
|
||||
"@polkadot/rpc-provider": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/metadata": 2.1.2-23
|
||||
"@polkadot/rpc-provider": 2.1.2-23
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: ff6126e73801ddbd01e9d7b5687be820ac5442be5c4a9d4f0ea1d54ef67cae11c1eff7a7b61bde713f279dfbb3d02217cb58a2b6d801844a1711c261171db14a
|
||||
checksum: c732fea7e17b7c14529984638d1a75f5728e3a830d67216317f58564b1eee101797137ddee4a26a0cec3b557788074b454835b982ecb2688bf36dc21f05692f5
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/rpc-provider@npm:2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/rpc-provider@npm:2.1.2-20"
|
||||
"@polkadot/rpc-provider@npm:2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/rpc-provider@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/metadata": 2.1.2-23
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
"@polkadot/util-crypto": ^3.5.1
|
||||
"@polkadot/x-fetch": ^0.3.2
|
||||
"@polkadot/x-ws": ^0.3.2
|
||||
bn.js: ^5.1.3
|
||||
eventemitter3: ^4.0.7
|
||||
checksum: 70033a1b200505cf8a743a7e223aff098aee574e31790e3a912f5f6b1eb2faaa13e851729a202b73f6b56d5eac69e257ad5eaca78e6db9e2deee5544e92b8709
|
||||
checksum: 5ce02ea0e875045016fe010a33865889715ec8e6e5c0834728dc44389068d33f735f5d67dfeb8d6c8addb8b96a9c8d9a0e3b372aa0559bd1715b6ff83878bbdb
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -2708,31 +2708,31 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/types-known@npm:2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/types-known@npm:2.1.2-20"
|
||||
"@polkadot/types-known@npm:2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/types-known@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/types": 2.1.2-20
|
||||
"@polkadot/types": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
checksum: 595324baab89b64a248b9b7a957bd84772ba1149ceeb62b95d9d4c4ef4c0c2be1467ebb8dd3debfb9db373d7610e50fb72b5abeed156e87319793f1e13dbac15
|
||||
checksum: bd61e8c289ec02ac19c82dbd06587897ec462a77427d78b29ae7051818464f42705c5cb10d5fd2d21d6adc499e1d0f3b1864fc6e63a6840e9effdc74156c922d
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/types@npm:^2.1.2-20":
|
||||
version: 2.1.2-20
|
||||
resolution: "@polkadot/types@npm:2.1.2-20"
|
||||
"@polkadot/types@npm:^2.1.2-23":
|
||||
version: 2.1.2-23
|
||||
resolution: "@polkadot/types@npm:2.1.2-23"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 2.1.2-20
|
||||
"@polkadot/metadata": 2.1.2-23
|
||||
"@polkadot/util": ^3.5.1
|
||||
"@polkadot/util-crypto": ^3.5.1
|
||||
"@types/bn.js": ^4.11.6
|
||||
bn.js: ^5.1.3
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: 16e9885e94e5537031788b7581fa3ebb7aaa8b989ae604b9f67637ed20ea018d1c90b31b06f996d1317ecce769abc71108e4cf0e68614efd596db31524c0541a
|
||||
checksum: 488d5222962f14907a4406215c34ff6f33cfd5c57e679341d3e7c66010ffc67645e55b1680ec867fe3083bb0aa9dea2f82883a1e9135f0a3a48640154ac1ee92
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user