parent
474dd51487
commit
d6fa316406
@ -33,10 +33,10 @@
|
||||
"afterSign": "electron-builder-notarize"
|
||||
},
|
||||
"resolutions": {
|
||||
"@polkadot/api": "^2.1.2-13",
|
||||
"@polkadot/api-contract": "^2.1.2-13",
|
||||
"@polkadot/api": "^2.1.2-15",
|
||||
"@polkadot/api-contract": "^2.1.2-15",
|
||||
"@polkadot/keyring": "^3.5.1",
|
||||
"@polkadot/types": "^2.1.2-13",
|
||||
"@polkadot/types": "^2.1.2-15",
|
||||
"@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-13"
|
||||
"@polkadot/api-contract": "^2.1.2-15"
|
||||
}
|
||||
}
|
||||
|
||||
@ -16,41 +16,38 @@ import { useTranslation } from '../translate';
|
||||
interface Props {
|
||||
className?: string;
|
||||
code: CodeStored;
|
||||
onShowDeploy: (codeHash?: string, constructorIndex?: number) => () => void;
|
||||
onShowDeploy: (codeHash: string, constructorIndex: number) => void;
|
||||
}
|
||||
|
||||
function Code ({ className, code, onShowDeploy }: Props): React.ReactElement<Props> {
|
||||
const { json: { codeHash } } = code;
|
||||
const { t } = useTranslation();
|
||||
const [isForgetOpen, toggleIsForgetOpen] = useToggle();
|
||||
const [isRemoveABIOpen, toggleIsRemoveABIOpen] = useToggle();
|
||||
const { contractAbi, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi || null, code.contractAbi || null], codeHash, true);
|
||||
const { contractAbi, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi, code.contractAbi], code.json.codeHash, true);
|
||||
|
||||
const _onShowDeploy = useCallback(
|
||||
() => onShowDeploy(codeHash)(),
|
||||
[codeHash, onShowDeploy]
|
||||
() => onShowDeploy(code.json.codeHash, 0),
|
||||
[code, onShowDeploy]
|
||||
);
|
||||
|
||||
const _onDeployConstructor = useCallback(
|
||||
(constructorIndex = 0) => codeHash && onShowDeploy && onShowDeploy(codeHash, constructorIndex)(),
|
||||
[codeHash, onShowDeploy]
|
||||
(constructorIndex = 0): void => {
|
||||
onShowDeploy && onShowDeploy(code.json.codeHash, constructorIndex);
|
||||
},
|
||||
[code, onShowDeploy]
|
||||
);
|
||||
|
||||
const _onForget = useCallback(
|
||||
(): void => {
|
||||
if (!codeHash) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
store.forgetCode(codeHash);
|
||||
store.forgetCode(code.json.codeHash);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
} finally {
|
||||
toggleIsForgetOpen();
|
||||
}
|
||||
},
|
||||
[codeHash, toggleIsForgetOpen]
|
||||
[code, toggleIsForgetOpen]
|
||||
);
|
||||
|
||||
return (
|
||||
|
||||
@ -10,7 +10,7 @@ import { useTranslation } from '../translate';
|
||||
import Code from './Code';
|
||||
|
||||
interface Props {
|
||||
onShowDeploy: (codeHash?: string, constructorIndex?: number) => () => void;
|
||||
onShowDeploy: (codeHash: string, constructorIndex: number) => void;
|
||||
updated: number;
|
||||
}
|
||||
|
||||
@ -27,15 +27,13 @@ function Codes ({ onShowDeploy }: Props): React.ReactElement<Props> {
|
||||
empty={t<string>('No code hashes available')}
|
||||
header={headerRef.current}
|
||||
>
|
||||
{contracts.getAllCode().map((code): React.ReactNode => {
|
||||
return (
|
||||
<Code
|
||||
code={code}
|
||||
key={code.json.codeHash}
|
||||
onShowDeploy={onShowDeploy}
|
||||
/>
|
||||
);
|
||||
})}
|
||||
{contracts.getAllCode().map((code): React.ReactNode => (
|
||||
<Code
|
||||
code={code}
|
||||
key={code.json.codeHash}
|
||||
onShowDeploy={onShowDeploy}
|
||||
/>
|
||||
))}
|
||||
</Table>
|
||||
);
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
// Copyright 2017-2020 @polkadot/app-contracts authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { SubmittableExtrinsic } from '@polkadot/api/types';
|
||||
import { ContractCallOutcome } from '@polkadot/api-contract/types';
|
||||
import { StringOrNull } from '@polkadot/react-components/types';
|
||||
|
||||
@ -35,6 +36,7 @@ function Call ({ callContract, callMessageIndex, className = '', onChangeCallCon
|
||||
const [endowment, isEndowmentValid, setEndowment] = useFormField<BN>(BN_ZERO);
|
||||
const [isBusy, , setIsBusy] = useToggle();
|
||||
const [outcomes, setOutcomes] = useState<ContractCallOutcome[]>([]);
|
||||
const [execTx, setExecTx] = useState<SubmittableExtrinsic<'promise'> | null>(null);
|
||||
const [params, setParams] = useState<any[]>(callMessage ? callMessage.args.map(({ type }) => createValue({ type })) : []);
|
||||
const useWeightHook = useWeight();
|
||||
const { isValid: isWeightValid, weight } = useWeightHook;
|
||||
@ -46,8 +48,10 @@ function Call ({ callContract, callMessageIndex, className = '', onChangeCallCon
|
||||
}, [callContract, callMessageIndex]);
|
||||
|
||||
useEffect((): void => {
|
||||
setOutcomes([]);
|
||||
}, [callContract]);
|
||||
endowment && callContract.hasRpcContractsCall && callMessage.isMutating && setExecTx(
|
||||
() => callContract.exec(callMessage, endowment, weight, ...params)
|
||||
);
|
||||
}, [accountId, callContract, callMessage, endowment, weight, params]);
|
||||
|
||||
const _onChangeCallMessageIndexString = useCallback(
|
||||
(callMessageIndexString: string): void => {
|
||||
@ -58,17 +62,6 @@ function Call ({ callContract, callMessageIndex, className = '', onChangeCallCon
|
||||
[onChangeCallMessageIndex]
|
||||
);
|
||||
|
||||
const _constructTx = useCallback(
|
||||
(): unknown[] => {
|
||||
if (!accountId || !callMessage || !callContract.address) {
|
||||
return [];
|
||||
}
|
||||
|
||||
return [callContract.address.toString(), endowment, weight, callMessage(...params)];
|
||||
},
|
||||
[accountId, callContract, callMessage, endowment, weight, params]
|
||||
);
|
||||
|
||||
const _onSubmitRpc = useCallback(
|
||||
(): void => {
|
||||
if (!accountId || !callMessage || !endowment || !weight) return;
|
||||
@ -108,68 +101,64 @@ function Call ({ callContract, callMessageIndex, className = '', onChangeCallCon
|
||||
onClose={onClose}
|
||||
>
|
||||
<Modal.Content>
|
||||
{callContract && (
|
||||
<div className='contracts--CallControls'>
|
||||
<InputAddress
|
||||
defaultValue={accountId}
|
||||
help={t<string>('Specify the user account to use for this contract call. And fees will be deducted from this account.')}
|
||||
isDisabled={isBusy}
|
||||
label={t<string>('call from account')}
|
||||
onChange={setAccountId}
|
||||
type='account'
|
||||
value={accountId}
|
||||
/>
|
||||
<InputAddress
|
||||
help={t<string>('A deployed contract that has either been deployed or attached. The address and ABI are used to construct the parameters.')}
|
||||
isDisabled={isBusy}
|
||||
label={t<string>('contract to use')}
|
||||
onChange={onChangeCallContractAddress}
|
||||
type='contract'
|
||||
value={callContract.address.toString()}
|
||||
/>
|
||||
{callMessageIndex !== null && (
|
||||
<>
|
||||
<Dropdown
|
||||
defaultValue={`${callMessageIndex}`}
|
||||
help={t<string>('The message to send to this contract. Parameters are adjusted based on the ABI provided.')}
|
||||
isDisabled={isBusy}
|
||||
isError={callMessage === null}
|
||||
label={t<string>('message to send')}
|
||||
onChange={_onChangeCallMessageIndexString}
|
||||
options={getCallMessageOptions(callContract)}
|
||||
value={`${callMessageIndex}`}
|
||||
/>
|
||||
<Params
|
||||
isDisabled={isBusy}
|
||||
onChange={setParams}
|
||||
params={
|
||||
callMessage
|
||||
? callMessage.args
|
||||
: undefined
|
||||
}
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
{!isViaRpc && (
|
||||
<InputBalance
|
||||
help={t<string>('The allotted value for this contract, i.e. the amount transferred to the contract as part of this call.')}
|
||||
isDisabled={isBusy}
|
||||
isError={!isEndowmentValid}
|
||||
isZeroable
|
||||
label={t<string>('value')}
|
||||
onChange={setEndowment}
|
||||
value={endowment}
|
||||
/>
|
||||
)}
|
||||
<InputMegaGas
|
||||
help={t<string>('The maximum amount of gas to use for this contract call. If the call requires more, it will fail.')}
|
||||
label={t<string>('maximum gas allowed')}
|
||||
{...useWeightHook}
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
{outcomes.length > 0 && (
|
||||
<InputAddress
|
||||
defaultValue={accountId}
|
||||
help={t<string>('Specify the user account to use for this contract call. And fees will be deducted from this account.')}
|
||||
isDisabled={isBusy}
|
||||
label={t<string>('call from account')}
|
||||
onChange={setAccountId}
|
||||
type='account'
|
||||
value={accountId}
|
||||
/>
|
||||
<InputAddress
|
||||
help={t<string>('A deployed contract that has either been deployed or attached. The address and ABI are used to construct the parameters.')}
|
||||
isDisabled={isBusy}
|
||||
label={t<string>('contract to use')}
|
||||
onChange={onChangeCallContractAddress}
|
||||
type='contract'
|
||||
value={callContract.address.toString()}
|
||||
/>
|
||||
{callMessageIndex !== null && (
|
||||
<>
|
||||
<Dropdown
|
||||
defaultValue={`${callMessageIndex}`}
|
||||
help={t<string>('The message to send to this contract. Parameters are adjusted based on the ABI provided.')}
|
||||
isDisabled={isBusy}
|
||||
isError={callMessage === null}
|
||||
label={t<string>('message to send')}
|
||||
onChange={_onChangeCallMessageIndexString}
|
||||
options={getCallMessageOptions(callContract)}
|
||||
value={`${callMessageIndex}`}
|
||||
/>
|
||||
<Params
|
||||
isDisabled={isBusy}
|
||||
onChange={setParams}
|
||||
params={
|
||||
callMessage
|
||||
? callMessage.args
|
||||
: undefined
|
||||
}
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
{!isViaRpc && (
|
||||
<InputBalance
|
||||
help={t<string>('The allotted value for this contract, i.e. the amount transferred to the contract as part of this call.')}
|
||||
isDisabled={isBusy}
|
||||
isError={!isEndowmentValid}
|
||||
isZeroable
|
||||
label={t<string>('value')}
|
||||
onChange={setEndowment}
|
||||
value={endowment}
|
||||
/>
|
||||
)}
|
||||
<InputMegaGas
|
||||
help={t<string>('The maximum amount of gas to use for this contract call. If the call requires more, it will fail.')}
|
||||
label={t<string>('maximum gas allowed')}
|
||||
{...useWeightHook}
|
||||
/>
|
||||
{outcomes.length > 0 && (
|
||||
<div>
|
||||
<h3>
|
||||
{t<string>('Call results')}
|
||||
<IconLink
|
||||
@ -188,7 +177,7 @@ function Call ({ callContract, callMessageIndex, className = '', onChangeCallCon
|
||||
/>
|
||||
))}
|
||||
</div>
|
||||
</>
|
||||
</div>
|
||||
)}
|
||||
</Modal.Content>
|
||||
<Modal.Actions onCancel={onClose}>
|
||||
@ -204,14 +193,13 @@ function Call ({ callContract, callMessageIndex, className = '', onChangeCallCon
|
||||
: (
|
||||
<TxButton
|
||||
accountId={accountId}
|
||||
extrinsic={execTx}
|
||||
icon='sign-in-alt'
|
||||
isDisabled={!isValid}
|
||||
label={t('Execute')}
|
||||
onClick={(): void => setIsBusy(true)}
|
||||
onFailed={(): void => setIsBusy(false)}
|
||||
onSuccess={(): void => setIsBusy(false)}
|
||||
params={_constructTx}
|
||||
tx='contracts.call'
|
||||
withSpinner
|
||||
/>
|
||||
)
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
// Copyright 2017-2020 @polkadot/app-contracts authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { StringOrNull, VoidFn } from '@polkadot/react-components/types';
|
||||
import { StringOrNull } from '@polkadot/react-components/types';
|
||||
import { AccountId } from '@polkadot/types/interfaces';
|
||||
import { CodecArg } from '@polkadot/types/types';
|
||||
import { CodeStored } from './types';
|
||||
@ -21,16 +21,13 @@ import useAbi from './useAbi';
|
||||
import useWeight from './useWeight';
|
||||
import { ENDOWMENT } from './constants';
|
||||
|
||||
type CodeOptions = { text: string; value: string }[];
|
||||
type ConstructOptions = { key: string; text: React.ReactNode; value: string }[];
|
||||
|
||||
interface Props {
|
||||
basePath: string;
|
||||
allCodes: CodeStored[];
|
||||
codeHash: string;
|
||||
constructorIndex?: number;
|
||||
onClose: VoidFn;
|
||||
setCodeHash: React.Dispatch<string>;
|
||||
onClose: () => void;
|
||||
setConstructorIndex: React.Dispatch<number>;
|
||||
}
|
||||
|
||||
@ -38,7 +35,7 @@ function defaultContractName (name: string) {
|
||||
return `${name} (instance)`;
|
||||
}
|
||||
|
||||
function Deploy ({ allCodes, basePath, codeHash, constructorIndex = 0, onClose, setCodeHash, setConstructorIndex }: Props): React.ReactElement<Props> {
|
||||
function Deploy ({ basePath, codeHash, constructorIndex = 0, onClose, setConstructorIndex }: Props): React.ReactElement<Props> {
|
||||
const { t } = useTranslation();
|
||||
const { api } = useApi();
|
||||
const history = useHistory();
|
||||
@ -52,19 +49,12 @@ function Deploy ({ allCodes, basePath, codeHash, constructorIndex = 0, onClose,
|
||||
const [accountId, isAccountIdValid, setAccountId] = useFormField<StringOrNull>(null);
|
||||
const [endowment, isEndowmentValid, setEndowment] = useNonZeroBn(new BN(ENDOWMENT));
|
||||
const [name, isNameValid, setName] = useNonEmptyString(t(defaultContractName(code.json.name)));
|
||||
const { abi, contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi || null, code.contractAbi || null], codeHash, true);
|
||||
const { abi, contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi } = useAbi([code.json.abi, code.contractAbi], codeHash, true);
|
||||
|
||||
const isValid = useMemo(
|
||||
(): boolean => isNameValid && isEndowmentValid && isWeightValid && isAccountIdValid,
|
||||
() => isNameValid && isEndowmentValid && isWeightValid && isAccountIdValid,
|
||||
[isAccountIdValid, isEndowmentValid, isNameValid, isWeightValid]
|
||||
);
|
||||
const codeOptions = useMemo(
|
||||
(): CodeOptions => allCodes.map(({ json: { codeHash, name } }): { text: string; value: string } => ({
|
||||
text: `${name} (${codeHash})`,
|
||||
value: codeHash
|
||||
})),
|
||||
[allCodes]
|
||||
);
|
||||
|
||||
const constructOptions = useMemo(
|
||||
(): ConstructOptions => {
|
||||
@ -147,18 +137,6 @@ function Deploy ({ allCodes, basePath, codeHash, constructorIndex = 0, onClose,
|
||||
type='account'
|
||||
value={accountId}
|
||||
/>
|
||||
<Dropdown
|
||||
defaultValue={
|
||||
codeOptions.length
|
||||
? codeOptions[codeOptions.length - 1].value
|
||||
: undefined
|
||||
}
|
||||
help={t('The contract WASM previously deployed. Internally this is identified by the hash of the code, as either created or attached.')}
|
||||
label={t('code for this contract')}
|
||||
onChange={setCodeHash}
|
||||
options={codeOptions}
|
||||
value={codeHash}
|
||||
/>
|
||||
<InputName
|
||||
isContract
|
||||
isError={!isNameValid}
|
||||
|
||||
@ -40,12 +40,11 @@ function ContractsApp ({ basePath, className = '' }: Props): React.ReactElement<
|
||||
]);
|
||||
|
||||
const _onShowDeploy = useCallback(
|
||||
(codeHash?: string, constructorIndex = 0): () => void =>
|
||||
(): void => {
|
||||
setCodeHash(codeHash || (allCodes && allCodes[0] ? allCodes[0].json.codeHash : undefined));
|
||||
setConstructorIndex(constructorIndex);
|
||||
toggleDeploy();
|
||||
},
|
||||
(codeHash: string, constructorIndex: number): void => {
|
||||
setCodeHash(codeHash || (allCodes && allCodes[0] ? allCodes[0].json.codeHash : undefined));
|
||||
setConstructorIndex(constructorIndex);
|
||||
toggleDeploy();
|
||||
},
|
||||
[allCodes, toggleDeploy]
|
||||
);
|
||||
|
||||
@ -93,12 +92,6 @@ function ContractsApp ({ basePath, className = '' }: Props): React.ReactElement<
|
||||
label={t('Add an existing code hash')}
|
||||
onClick={toggleHash}
|
||||
/>
|
||||
{/* <Button
|
||||
icon='upload'
|
||||
isDisabled={!store.hasCode}
|
||||
label={t('Deploy code hash')}
|
||||
onClick={_onShowDeploy()}
|
||||
/> */}
|
||||
<Button
|
||||
icon='plus'
|
||||
label={t('Add an existing contract')}
|
||||
@ -116,12 +109,10 @@ function ContractsApp ({ basePath, className = '' }: Props): React.ReactElement<
|
||||
/>
|
||||
{codeHash && isDeployOpen && (
|
||||
<Deploy
|
||||
allCodes={allCodes}
|
||||
basePath={basePath}
|
||||
codeHash={codeHash}
|
||||
constructorIndex={constructorIndex}
|
||||
onClose={_onCloseDeploy}
|
||||
setCodeHash={setCodeHash}
|
||||
setConstructorIndex={setConstructorIndex}
|
||||
/>
|
||||
)}
|
||||
|
||||
@ -22,9 +22,9 @@ interface UseAbi {
|
||||
onRemoveAbi: () => void;
|
||||
}
|
||||
|
||||
export default function useAbi (initialValue: [string | null, Abi | null] = [null, null], codeHash: StringOrNull = null, isRequired = false): 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<[StringOrNull, Abi | null, boolean, boolean]>([initialValue[0], initialValue[1], !!initialValue[1], !isRequired || !!initialValue[1]]);
|
||||
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]);
|
||||
|
||||
useEffect(
|
||||
@ -77,6 +77,13 @@ export default function useAbi (initialValue: [string | null, Abi | null] = [nul
|
||||
);
|
||||
|
||||
return {
|
||||
abi, contractAbi, errorText, isAbiError, isAbiSupplied, isAbiValid, onChangeAbi, onRemoveAbi
|
||||
abi: abi || null,
|
||||
contractAbi: contractAbi || null,
|
||||
errorText,
|
||||
isAbiError,
|
||||
isAbiSupplied,
|
||||
isAbiValid,
|
||||
onChangeAbi,
|
||||
onRemoveAbi
|
||||
};
|
||||
}
|
||||
|
||||
@ -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-13",
|
||||
"@polkadot/api": "^2.1.2-15",
|
||||
"@polkadot/extension-dapp": "^0.35.0-beta.10",
|
||||
"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-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/api-contract@npm:2.1.2-13"
|
||||
"@polkadot/api-contract@npm:^2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/api-contract@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": 2.1.2-13
|
||||
"@polkadot/rpc-core": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/api": 2.1.2-15
|
||||
"@polkadot/rpc-core": 2.1.2-15
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@polkadot/util": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
rxjs: ^6.6.3
|
||||
checksum: 32b943e8cb9dfdf36f3a2030f52ac774ccc2c73da548ae652cc8a3adb2e0202900a29f70d5380e14dd77ef331ece36672b21592cb32d2c9ea9aecbcb55ffb787
|
||||
checksum: 8a591ba5a25abf47292d4dcfe7f5c52936c93d648c50c5887789e31e471fa3d378fc0f392129fc5efbbc580ef7afd297b541c388ceb923d1fc8fbcea677b8189
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api-derive@npm:2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/api-derive@npm:2.1.2-13"
|
||||
"@polkadot/api-derive@npm:2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/api-derive@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api": 2.1.2-13
|
||||
"@polkadot/rpc-core": 2.1.2-13
|
||||
"@polkadot/rpc-provider": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/api": 2.1.2-15
|
||||
"@polkadot/rpc-core": 2.1.2-15
|
||||
"@polkadot/rpc-provider": 2.1.2-15
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@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: 0081c2728856e35b0d59b20e0e50f77ba50cc0f5cb9380de102afff515812de7fd98f6425e13489b4b742b735781910c87584deaefed2844bbfec18efac03947
|
||||
checksum: 79f719fbd5479ab5cf9dcbac4ab5bbd605e1991094b9e04abb2eeddfc1f2ea0be7d1161a8c496529c27473c56c8360a9b6facded05b14c21d9d6aaf4856dcf83
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/api@npm:^2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/api@npm:2.1.2-13"
|
||||
"@polkadot/api@npm:^2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/api@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/api-derive": 2.1.2-13
|
||||
"@polkadot/api-derive": 2.1.2-15
|
||||
"@polkadot/keyring": ^3.5.1
|
||||
"@polkadot/metadata": 2.1.2-13
|
||||
"@polkadot/rpc-core": 2.1.2-13
|
||||
"@polkadot/rpc-provider": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/types-known": 2.1.2-13
|
||||
"@polkadot/metadata": 2.1.2-15
|
||||
"@polkadot/rpc-core": 2.1.2-15
|
||||
"@polkadot/rpc-provider": 2.1.2-15
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@polkadot/types-known": 2.1.2-15
|
||||
"@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: 609acbad67785e38b35dc5279678ecd99328cd0586a777a24f0dc0bc29f2365723eb51d44beb31507e6bad0451e0b1b7bf0d0b38ac42adc2d4c52089d57ffee5
|
||||
checksum: 35fdbc360022a1386e97f233bbf82e971ce98567d96cd93d75c506e706893551a7b5f41fe98ae9b880f5e3839fe91f4f68d160909d3d4b09ee2f98217575b378
|
||||
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-13
|
||||
"@polkadot/api-contract": ^2.1.2-15
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
@ -2525,17 +2525,17 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/metadata@npm:2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/metadata@npm:2.1.2-13"
|
||||
"@polkadot/metadata@npm:2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/metadata@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/types-known": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@polkadot/types-known": 2.1.2-15
|
||||
"@polkadot/util": ^3.5.1
|
||||
"@polkadot/util-crypto": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
checksum: 361d931c6d24fd02489b8aebe13a7d84ebc9f5b3820de254a5f1b7fb1ba3b6691a27b42bc92377eabcefe164383a130b667c0e64df630030c55254b0fff767bb
|
||||
checksum: 596d7a779ac2bd6d43dd384bfabcfdc3b9084a8e57acf82c164711fb4b9efc8d2d6a58a870b656e081dd157eb5f0a7bbb9189437c197f7380564263cfccb2375
|
||||
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-13
|
||||
"@polkadot/api": ^2.1.2-15
|
||||
"@polkadot/extension-dapp": ^0.35.0-beta.10
|
||||
rxjs-compat: ^6.6.3
|
||||
languageName: unknown
|
||||
@ -2667,35 +2667,35 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@polkadot/rpc-core@npm:2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/rpc-core@npm:2.1.2-13"
|
||||
"@polkadot/rpc-core@npm:2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/rpc-core@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 2.1.2-13
|
||||
"@polkadot/rpc-provider": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/metadata": 2.1.2-15
|
||||
"@polkadot/rpc-provider": 2.1.2-15
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@polkadot/util": ^3.5.1
|
||||
memoizee: ^0.4.14
|
||||
rxjs: ^6.6.3
|
||||
checksum: 1693a3b6148aa1bf75bc96818331690f08ff2bcaf6de8279f50a5e8f75e918ffa39975c5b6182b5c44b629ba54ddbfb964464fbeb08a3ab34951c570f6c3648e
|
||||
checksum: 31ab4cabe43ec89578a36bcd9ab4598935ec040c9e100c8250ee197d3a41486805372d93ea1ba0a970bd74d367775f67712f1996a053b77d5e5bd980afaa4a20
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/rpc-provider@npm:2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/rpc-provider@npm:2.1.2-13"
|
||||
"@polkadot/rpc-provider@npm:2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/rpc-provider@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/metadata": 2.1.2-15
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@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: e74e814df4969db09d5116f3b2b8ecf20bfd1b732a60fe6666a960aadf5c5db34b35284c95a0f938c7663c740059869b698403c382293c780a36f07e3d34824a
|
||||
checksum: e99ed2a7d6c8221d9cf0379ad74aadd57f27a9aae09559bba80e0b8076c40a3417fd668b5b2d7353429083208e4bcf5c6c1309751330cab69a8eb1d81da4eb8c
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@ -2708,31 +2708,31 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/types-known@npm:2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/types-known@npm:2.1.2-13"
|
||||
"@polkadot/types-known@npm:2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/types-known@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/types": 2.1.2-13
|
||||
"@polkadot/types": 2.1.2-15
|
||||
"@polkadot/util": ^3.5.1
|
||||
bn.js: ^5.1.3
|
||||
checksum: 5cf8a96a832339ff0382533be75921c7a56e3ddc469aa497ab769eab4489d4cb185f2a6714f095d5b3ee86fdd01a850dffc4802f0642b55f3e3e6212b6f04d22
|
||||
checksum: 96cd9f1780f31726f6d4a4665e735c666c9cb0f6aeec04176dbb5952971125dfcbb908493962298b939c9edd9d8be293250f0c6b8f7a29e449fd9e68ba46e020
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@polkadot/types@npm:^2.1.2-13":
|
||||
version: 2.1.2-13
|
||||
resolution: "@polkadot/types@npm:2.1.2-13"
|
||||
"@polkadot/types@npm:^2.1.2-15":
|
||||
version: 2.1.2-15
|
||||
resolution: "@polkadot/types@npm:2.1.2-15"
|
||||
dependencies:
|
||||
"@babel/runtime": ^7.11.2
|
||||
"@polkadot/metadata": 2.1.2-13
|
||||
"@polkadot/metadata": 2.1.2-15
|
||||
"@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: cb73c331ae1aa1aa0be6974dc5b19f5e55e61beac4800e902929c230be90cf6051686596809e049b4d2cdba0abb93a89a422141e87d3293b9891d53b4e50c6a6
|
||||
checksum: 68e4f792b2ff005c12475c683780b174880a2f48777b0f3bf213e36ff78fd226a34d1b5da3b4841bddfa447fb29eeb0e927249157add3e37d671463d395de50b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user