Add Option handler to param inputs (#1686)

* Add Option handler to param inputs

* Remove stray debug log

* Linting cleanups

* Bump deps
This commit is contained in:
Jaco Greeff 2019-10-02 14:06:25 +02:00 committed by GitHub
parent 17fafc63ef
commit 7c6a4b1b07
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 232 additions and 199 deletions

View File

@ -10,10 +10,10 @@
"packages/*"
],
"resolutions": {
"@polkadot/api": "^0.94.0-beta.1",
"@polkadot/api-contract": "^0.94.0-beta.1",
"@polkadot/api": "^0.94.0-beta.8",
"@polkadot/api-contract": "^0.94.0-beta.8",
"@polkadot/keyring": "^1.5.1",
"@polkadot/types": "^0.94.0-beta.1",
"@polkadot/types": "^0.94.0-beta.8",
"@polkadot/util": "^1.5.1",
"@polkadot/util-crypto": "^1.5.1",
"@types/styled-components": "4.1.8",

View File

@ -12,7 +12,7 @@
"dependencies": {
"@babel/runtime": "^7.6.2",
"@polkadot/react-components": "^0.36.0-beta.51",
"@polkadot/react-qr": "^0.45.1",
"@polkadot/react-qr": "^0.46.0-beta.0",
"@types/file-saver": "^2.0.0",
"@types/yargs": "^13.0.2",
"babel-plugin-module-resolver": "^3.1.1",

View File

@ -11,7 +11,7 @@
"license": "Apache-2.0",
"dependencies": {
"@babel/runtime": "^7.6.2",
"@polkadot/api-contract": "^0.94.0-beta.1",
"@polkadot/api-contract": "^0.94.0-beta.8",
"@polkadot/react-components": "^0.36.0-beta.51"
}
}

View File

@ -267,7 +267,9 @@ class Vote extends TxModal<Props, State> {
return;
}
api.derive.elections.approvalsOfAt(accountId, voteCount)
// FIXME This any is a mismatch in api-derive
api.derive.elections
.approvalsOfAt(accountId as any, voteCount)
.then((approvals: boolean[]): void => {
if ((voterPositions && voterPositions[accountId.toString()]) && approvals && approvals.length && approvals !== this.state.approvals) {
this.setState({

View File

@ -133,7 +133,6 @@ function Referendum ({ chain_bestNumber, className, democracy_enactmentPeriod, d
</Static>
<VoteThreshold
isDisabled
isOptional={false}
defaultValue={{ isValid: true, value: value.threshold }}
label={t('vote threshold')}
name='voteThreshold'

View File

@ -13,13 +13,14 @@ import { getTypeDef } from '@polkadot/types';
import { Button, InputStorage, TxComponent } from '@polkadot/react-components';
import Params from '@polkadot/react-params';
import { withApi, withMulti } from '@polkadot/react-api';
import { isUndefined } from '@polkadot/util';
import { isNull, isUndefined } from '@polkadot/util';
import translate from '../translate';
interface Props extends ComponentProps, ApiProps, I18nProps {}
interface State {
isLinked: boolean;
isValid: boolean;
key: StorageEntryPromise;
defaultValues?: RawParams | null;
@ -39,6 +40,7 @@ class Modules extends TxComponent<Props, State> {
this.defaultValue = api.query.timestamp.now;
this.state = {
isLinked: false,
isValid: true,
key: this.defaultValue,
values: [],
@ -112,15 +114,23 @@ class Modules extends TxComponent<Props, State> {
};
}
const hasParam = key.creator.meta.type.isMap;
const isValid = values.length === (hasParam ? 1 : 0) && areParamsValid();
const isMap = key.creator.meta.type.isMap;
const isLinked = isMap && key.creator.meta.type.asMap.linked.isTrue;
const isValid = values.length === (isMap ? 1 : 0) && areParamsValid();
return {
defaultValues: null,
isLinked,
isValid,
key,
params: hasParam
? [{ type: getTypeDef(key.creator.meta.type.asMap.key.toString()) }]
params: isMap
? [{
type: getTypeDef(
isLinked
? `Option<${key.creator.meta.type.asMap.key.toString()}>`
: key.creator.meta.type.asMap.key.toString()
)
}]
: [],
values
};
@ -145,12 +155,12 @@ class Modules extends TxComponent<Props, State> {
private onAdd = (): void => {
const { onAdd } = this.props;
const { key, values } = this.state;
const { isLinked, key, values } = this.state;
onAdd({
isConst: false,
key,
params: values
params: values.filter(({ value }): boolean => !isLinked || !isNull(value))
});
}

View File

@ -9,9 +9,10 @@ import { QueueTxRpcAdd } from '@polkadot/react-components/Status/types';
import React from 'react';
import rpc from '@polkadot/jsonrpc';
import { getTypeDef } from '@polkadot/types';
import { Button, InputRpc, TxComponent } from '@polkadot/react-components';
import Params from '@polkadot/react-params';
import { getTypeDef } from '@polkadot/types';
import { isNull } from '@polkadot/util';
import translate from './translate';
@ -40,7 +41,6 @@ class Selection extends TxComponent<Props, State> {
const { t } = this.props;
const { isValid, rpc } = this.state;
const params = rpc.params.map(({ isOptional, name, type }): ParamDef => ({
isOptional,
name,
type: getTypeDef(isOptional ? `Option<${type}>` : type)
}));
@ -64,7 +64,6 @@ class Selection extends TxComponent<Props, State> {
isDisabled={!isValid}
isPrimary
onClick={this.onSubmit}
label={t('Submit RPC call')}
icon='sign-in'
ref={this.button}
@ -111,7 +110,9 @@ class Selection extends TxComponent<Props, State> {
queueRpc({
accountId,
rpc,
values: values.map(({ value }): any => value)
values: values
.filter(({ value }): boolean => !isNull(value))
.map(({ value }): any => value)
});
}
}

View File

@ -16,7 +16,7 @@
"@babel/runtime": "^7.6.2",
"@polkadot/react-components": "^0.36.0-beta.51",
"@polkadot/react-signer": "^0.36.0-beta.51",
"@polkadot/ui-assets": "^0.45.1",
"@polkadot/ui-assets": "^0.46.0-beta.0",
"query-string": "^6.8.3"
}
}

View File

@ -31,7 +31,7 @@
"homepage": "https://github.com/polkadot-js/ui/tree/master/packages/ui-reactive#readme",
"dependencies": {
"@babel/runtime": "^7.6.2",
"@polkadot/api": "^0.94.0-beta.1",
"@polkadot/api": "^0.94.0-beta.8",
"@polkadot/extension-dapp": "^0.12.0-beta.2",
"edgeware-node-types": "^1.0.10",
"rxjs-compat": "^6.5.3"

View File

@ -13,10 +13,10 @@
"@babel/runtime": "^7.6.2",
"@polkadot/keyring": "^1.5.1",
"@polkadot/react-api": "^0.36.0-beta.51",
"@polkadot/react-identicon": "^0.45.1",
"@polkadot/react-identicon": "^0.46.0-beta.0",
"@polkadot/react-query": "^0.36.0-beta.51",
"@polkadot/ui-keyring": "^0.45.1",
"@polkadot/ui-settings": "^0.45.1",
"@polkadot/ui-keyring": "^0.46.0-beta.0",
"@polkadot/ui-settings": "^0.46.0-beta.0",
"@types/chart.js": "^2.8.5",
"@types/i18next": "^13.0.0",
"@types/react-copy-to-clipboard": "^4.2.6",

View File

@ -11,7 +11,7 @@ import { Button } from '@polkadot/react-components';
import BaseBytes from './BaseBytes';
import File from './File';
export default function Bytes ({ className, defaultValue, isDisabled, isOptional, isError, label, name, onChange, onEnter, style, type, withLabel }: Props): React.ReactElement<Props> {
export default function Bytes ({ className, defaultValue, isDisabled, isError, label, name, onChange, onEnter, style, type, withLabel }: Props): React.ReactElement<Props> {
const [isFileDrop, setIsFileDrop] = useState(false);
const _toggleFile = (): void => setIsFileDrop(true);
@ -40,7 +40,6 @@ export default function Bytes ({ className, defaultValue, isDisabled, isOptional
defaultValue={defaultValue}
isDisabled={isDisabled}
isError={isError}
isOptional={isOptional}
label={label}
length={-1}
name={name}

View File

@ -9,13 +9,12 @@ import React from 'react';
import Bytes from './Bytes';
import BytesFile from './File';
function renderDisabled ({ className, defaultValue, isError, isOptional, label, onEnter, style, type, withLabel }: Props): React.ReactNode {
function renderDisabled ({ className, defaultValue, isError, label, onEnter, style, type, withLabel }: Props): React.ReactNode {
return (
<Bytes
className={className}
defaultValue={defaultValue}
isError={isError}
isOptional={isOptional}
label={label}
onEnter={onEnter}
style={style}

View File

@ -8,14 +8,13 @@ import React from 'react';
import BaseBytes from './BaseBytes';
export default function Hash ({ className, defaultValue, isDisabled, isError, isOptional, label, name, onChange, onEnter, style, type, withLabel }: Props): React.ReactElement<Props> {
export default function Hash ({ className, defaultValue, isDisabled, isError, label, name, onChange, onEnter, style, type, withLabel }: Props): React.ReactElement<Props> {
return (
<BaseBytes
className={className}
defaultValue={defaultValue}
isDisabled={isDisabled}
isError={isError}
isOptional={isOptional}
label={label}
length={32}
name={name}

View File

@ -8,9 +8,9 @@ import { Props as BaseProps, RawParam } from '../types';
import React, { useState } from 'react';
import { WithTranslation } from 'react-i18next';
import { Vec } from '@polkadot/types';
import translate from '@polkadot/react-components/translate';
import { assert, isHex, u8aToHex, u8aToString } from '@polkadot/util';
import translate from '../translate';
import Base from './Base';
import Bytes from './Bytes';
import File from './File';
@ -76,7 +76,6 @@ function KeyValueArray ({ className, defaultValue, isDisabled, isError, label, o
<Bytes
defaultValue={{ value } as unknown as RawParam}
isDisabled
isOptional={false}
key={keyHex}
label={keyHex}
name={keyHex}

View File

@ -49,7 +49,6 @@ export default function Code (props: Props): React.ReactNode {
className={className}
defaultValue={defaultValue}
isDisabled={isDisabled}
isOptional={false}
isError={isError}
label={label}
onChange={onChange(props)}

View File

@ -0,0 +1,65 @@
// Copyright 2017-2019 @polkadot/react-components authors & contributors
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
import { TypeDef } from '@polkadot/types/types';
import { I18nProps } from '@polkadot/react-components/types';
import { Props as CProps } from '../types';
import React, { useEffect, useState } from 'react';
import styled from 'styled-components';
import { Toggle } from '@polkadot/react-components';
import translate from '../translate';
import Param from './index';
interface Props extends CProps, I18nProps {}
function Option ({ className, defaultValue, isDisabled, name, onChange, onEnter, t, type: { sub } }: Props): React.ReactElement<Props> {
const [isActive, setIsActive] = useState(true);
useEffect((): void => {
!isActive && onChange && onChange({
isValid: true,
value: null
});
}, [isActive]);
return (
<div className={className}>
<Param
defaultValue={defaultValue}
isDisabled={isDisabled || !isActive}
isOptional={!isActive}
name={name}
onChange={onChange}
onEnter={onEnter}
type={sub as TypeDef}
/>
{!isDisabled && (
<Toggle
className='ui--Param-Option-toggle'
label={
isActive
? t('include option')
: t('exclude option')
}
onChange={setIsActive}
value={isActive}
/>
)}
</div>
);
}
export default translate(
styled(Option)`
position: relative;
.ui--Param-Option-toggle {
position: absolute;
right: 3.5rem;
top: 0.5rem;
}
`
);

View File

@ -7,8 +7,8 @@ import { Props as BareProps, RawParam } from '../types';
import React from 'react';
import { Static } from '@polkadot/react-components';
import translate from '@polkadot/react-components/translate';
import translate from '../translate';
import Bare from './Bare';
interface Props extends BareProps, WithTranslation {
@ -28,7 +28,7 @@ function StaticParam ({ asHex, className, defaultValue, label, style, t }: Props
<Static
className='full'
label={label}
value={value || t('empty')}
value={value || t('<empty>')}
/>
</Bare>
);

View File

@ -66,7 +66,6 @@ export default class Tuple extends React.PureComponent<Props, State> {
<Component
defaultValue={values[index] || {}}
isDisabled={isDisabled}
isOptional={false}
key={index}
label={sub[index]}
onChange={this.onChange(index)}

View File

@ -15,7 +15,7 @@ interface Props extends BareProps {
}
export default function Unknown (props: Props): React.ReactElement<Props> {
const { className, defaultValue, isDisabled, isError, isOptional, label, name, onChange, onEnter, style, type } = props;
const { className, defaultValue, isDisabled, isError, label, name, onChange, onEnter, style, type } = props;
if (isDisabled) {
return <Static {...props} />;
@ -28,7 +28,6 @@ export default function Unknown (props: Props): React.ReactElement<Props> {
defaultValue={defaultValue}
isDisabled={isDisabled}
isError={isError}
isOptional={isOptional}
label={label}
length={-1}
name={name}

View File

@ -8,9 +8,9 @@ import { Props as BareProps, RawParam } from '../types';
import React, { useEffect, useState } from 'react';
import { Button } from '@polkadot/react-components';
import translate from '@polkadot/react-components/translate';
import { isUndefined } from '@polkadot/util';
import translate from '../translate';
import getInitValue from '../initValue';
import Base from './Base';
import findComponent from './findComponent';
@ -86,7 +86,6 @@ function Vector ({ className, defaultValue, isDisabled = false, label, onChange,
<Component
defaultValue={value}
isDisabled={isDisabled}
isOptional={false}
key={index}
label={`${index}: ${subType.type}`}
onChange={

View File

@ -22,6 +22,7 @@ import Proposal from './Proposal';
import KeyValue from './KeyValue';
import KeyValueArray from './KeyValueArray';
import Null from './Null';
import Option from './Option';
import Struct from './Struct';
import Text from './Text';
import Tuple from './Tuple';
@ -49,6 +50,7 @@ const components: ComponentMap = ([
{ c: KeyValueArray, t: ['Vec<KeyValue>'] },
{ c: Moment, t: ['Moment', 'MomentOf'] },
{ c: Null, t: ['Null'] },
{ c: Option, t: ['Option'] },
{ c: Proposal, t: ['Proposal'] },
{ c: Text, t: ['String', 'Text'] },
{ c: Struct, t: ['Struct'] },
@ -71,9 +73,11 @@ export default function findComponent (def: TypeDef, overrides: ComponentMap = {
const type = (({ info, sub, type }: TypeDef): string => {
switch (info) {
case TypeDefInfo.Compact:
case TypeDefInfo.Option:
return (sub as TypeDef).type;
case TypeDefInfo.Option:
return 'Option';
case TypeDefInfo.Enum:
return 'Enum';

View File

@ -7,13 +7,15 @@ import { BaseProps, Props as CProps, ComponentMap } from '../types';
import React, { useRef } from 'react';
import { classes } from '@polkadot/react-components/util';
import translate from '@polkadot/react-components/translate';
import { isUndefined } from '@polkadot/util';
import translate from '../translate';
import findComponent from './findComponent';
import Static from './Static';
interface Props extends I18nProps, BaseProps {
isDisabled?: boolean;
isOptional?: boolean;
overrides?: ComponentMap;
}
@ -24,25 +26,32 @@ function Param ({ className, defaultValue, isDisabled, isOptional, name, onChang
return null;
}
return (
<compRef.current
className={classes('ui--Param', className)}
defaultValue={defaultValue}
key={`${name}:${type}`}
isDisabled={isDisabled}
isOptional={isOptional}
label={
isUndefined(name)
? type.type
: `${name}: ${type.type}`
}
name={name}
onChange={onChange}
onEnter={onEnter}
style={style}
type={type}
/>
);
const label = isUndefined(name)
? type.type
: `${name}: ${type.type}`;
return isOptional
? (
<Static
defaultValue={defaultValue}
label={label}
type={type}
/>
)
: (
<compRef.current
className={classes('ui--Param', className)}
defaultValue={defaultValue}
key={`${name}:${type}`}
isDisabled={isDisabled}
label={label}
name={name}
onChange={onChange}
onEnter={onEnter}
style={style}
type={type}
/>
);
}
export default translate(Param);

View File

@ -5,7 +5,7 @@
.ui--Params {
border-left: 0.25rem solid #f2f2f2;
.ui--Param label {
.ui--Param .ui--Labelled label {
text-transform: none !important;
font-family: monospace;
}

View File

@ -9,11 +9,10 @@ import './Params.css';
import React from 'react';
import styled from 'styled-components';
import { Toggle } from '@polkadot/react-components';
import { classes } from '@polkadot/react-components/util';
import translate from '@polkadot/react-components/translate';
import Param from './Param';
import translate from './translate';
import { createValue } from './values';
interface Props extends I18nProps {
@ -27,16 +26,11 @@ interface Props extends I18nProps {
interface State {
handlersChange?: RawParamOnChange[];
handlersOption?: ((value: boolean) => void)[];
onChangeOption: (at: number, value: boolean) => void;
onChangeParam: (at: number, next: RawParamOnChangeValue) => void;
optional?: boolean[];
params?: ParamDef[];
values?: RawParams;
}
const DISABLED_OPTIONAL = { isValid: true, value: undefined };
class Params extends React.PureComponent<Props, State> {
public state: State;
@ -44,7 +38,6 @@ class Params extends React.PureComponent<Props, State> {
super(props);
this.state = {
onChangeOption: this.onChangeOption,
onChangeParam: this.onChangeParam
};
}
@ -72,18 +65,8 @@ class Params extends React.PureComponent<Props, State> {
prevState.onChangeParam(index, value)
);
const optional = params.map(({ isOptional }): boolean => !isOptional);
const handlersOption = params.map(
(_, index): (value: boolean) => void =>
(value: boolean): void =>
prevState.onChangeOption(index, value)
);
return {
handlersChange,
handlersOption,
optional,
params,
values: newValues
};
@ -107,7 +90,7 @@ class Params extends React.PureComponent<Props, State> {
public render (): React.ReactNode {
const { className, isDisabled, onEnter, overrides, params, style } = this.props;
const { handlersChange = [], handlersOption = [], optional = [], values = this.props.values } = this.state;
const { handlersChange = [], values = this.props.values } = this.state;
if (!params || params.length === 0) {
return null;
@ -119,12 +102,11 @@ class Params extends React.PureComponent<Props, State> {
style={style}
>
<div className='ui--Params-Content'>
{params.map(({ isOptional = false, name, type }: ParamDef, index: number): React.ReactNode => {
{params.map(({ name, type }: ParamDef, index: number): React.ReactNode => {
if (!values || values.length === 0) {
return null;
}
const isDisabledOptional = isOptional && !optional[index];
const key = `${name}:${type}:${index}`;
return (
@ -133,13 +115,8 @@ class Params extends React.PureComponent<Props, State> {
key={key}
>
<Param
defaultValue={
isDisabledOptional
? DISABLED_OPTIONAL
: values[index]
}
isDisabled={isDisabled || isDisabledOptional}
isOptional={isOptional}
defaultValue={values[index]}
isDisabled={isDisabled}
key={`input:${key}`}
name={name}
onChange={handlersChange[index]}
@ -147,18 +124,6 @@ class Params extends React.PureComponent<Props, State> {
overrides={overrides}
type={type}
/>
{isOptional && (
<Toggle
className='ui--Param-overlay'
key={`option:${key}`}
label={
optional[index]
? 'include option'
: 'exclude option'
}
onChange={handlersOption[index]}
/>
)}
</div>
);
})}
@ -168,33 +133,14 @@ class Params extends React.PureComponent<Props, State> {
}
private extractValues (): RawParam[] {
const { optional, values } = this.state;
const { values } = this.state;
const { isDisabled } = this.props;
if (isDisabled || !optional || !values) {
if (isDisabled || !values) {
return [];
}
return values
.map((value, index): RawParam | null =>
optional[index]
? value
: null
)
.filter((value): boolean => !!value) as RawParam[];
}
private onChangeOption = (at: number, value: boolean): void => {
this.setState(
(prevState: State): Pick<State, never> => ({
optional: (prevState.optional || []).map((prev, index): boolean =>
index !== at
? prev
: value
)
}),
this.triggerUpdate
);
return values;
}
private onChangeParam = (at: number, newValue: RawParamOnChangeValue): void => {
@ -219,10 +165,10 @@ class Params extends React.PureComponent<Props, State> {
}
private triggerUpdate = (): void => {
const { optional, values } = this.state;
const { values } = this.state;
const { onChange, isDisabled } = this.props;
if (isDisabled || !optional || !values) {
if (isDisabled || !values) {
return;
}

View File

@ -0,0 +1,7 @@
// Copyright 2017-2019 @polkadot/react-components authors & contributors
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
import { withTranslation } from 'react-i18next';
export default withTranslation(['ui-params']);

View File

@ -29,7 +29,6 @@ export type RawParams = RawParam[];
export interface BaseProps extends BareProps {
defaultValue: RawParam;
isOptional: boolean;
name?: string;
onChange?: RawParamOnChange;
onEnter?: RawParamOnEnter;
@ -49,7 +48,6 @@ export type Size = 'full' | 'large' | 'medium' | 'small';
export type ComponentMap = Record<string, React.ComponentType<Props>>;
export interface ParamDef {
isOptional?: boolean;
name?: string;
type: TypeDef;
}

View File

@ -12,6 +12,6 @@
"dependencies": {
"@babel/runtime": "^7.6.2",
"@polkadot/react-components": "^0.36.0-beta.51",
"@polkadot/react-qr": "^0.45.1"
"@polkadot/react-qr": "^0.46.0-beta.0"
}
}

142
yarn.lock
View File

@ -2006,45 +2006,45 @@
once "^1.4.0"
universal-user-agent "^4.0.0"
"@polkadot/api-contract@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/api-contract/-/api-contract-0.94.0-beta.1.tgz#ef6876a16336967f12d5c98a5f9b8f572a1653f1"
integrity sha512-OtXejC1gZWCywDxJhZeO6Bdj7EeUAnQfGKRLIEMTlToP100eHp87TMTt6Dky2iG+I3OB6Yc9D3Mgc9RaIMHonw==
"@polkadot/api-contract@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/api-contract/-/api-contract-0.94.0-beta.8.tgz#0429ff9e02cbe0cb3e33b30c58458b31f8d0b2a9"
integrity sha512-4N9KS30ivcEpxcUcKwRuBfhES1Oaao9nYb615cloI7HUcsswKy3VDoQI5gWbc+aIho5s5M1n2zoSosOUNZew8A==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/types" "^0.94.0-beta.1"
"@polkadot/types" "^0.94.0-beta.8"
"@polkadot/api-derive@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/api-derive/-/api-derive-0.94.0-beta.1.tgz#0dc866bf8caea3d592adbc61a46cebc6cc11117e"
integrity sha512-Q0vOa+fufKx3XztMuY/MnW3UAsxKcjGT1w5N2lr/1F+AcV+o+h1Mc4p506UrqmEplebaTJibDShHFLN5GX7uOA==
"@polkadot/api-derive@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/api-derive/-/api-derive-0.94.0-beta.8.tgz#363e46fe68abdeb73d9e7b43a4752e53ef26d1c5"
integrity sha512-SrAL//PKcJgQjfyTjDBFobbBA9xMqK3Z92YFM4do96vv1XmG7Bj030+At4N6fMnJPJ9slaAm/NV2pFJYEH0UmA==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/api" "^0.94.0-beta.1"
"@polkadot/types" "^0.94.0-beta.1"
"@polkadot/api" "^0.94.0-beta.8"
"@polkadot/types" "^0.94.0-beta.8"
"@polkadot/api-metadata@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/api-metadata/-/api-metadata-0.94.0-beta.1.tgz#5f43d261506132ca97d80472462613dd4b2e72fa"
integrity sha512-wEz5pMoSASjNjkBvuZjbgMYl5yXTxvRAvbL/krljc/9hQIlFQOEaECUyNBisVvpfGKteXPt/Xv+n55NO2NSnCA==
"@polkadot/api-metadata@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/api-metadata/-/api-metadata-0.94.0-beta.8.tgz#23fc442c080beff270641c9269ac7b2447081ad3"
integrity sha512-shLLZuI/IWBfh6au55UB+akTh/7GyHsP3nzyuFSJlFLnnBCpyqfc9AEJRUckD3nPcqNuBcU0C27jSesivqkBKQ==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/types" "^0.94.0-beta.1"
"@polkadot/types" "^0.94.0-beta.8"
"@polkadot/util" "^1.5.1"
"@polkadot/util-crypto" "^1.5.1"
"@polkadot/api@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-0.94.0-beta.1.tgz#68a74658b755f3298c6bd55b5a790e929c0e6cce"
integrity sha512-elFNKgT2Bwu6TPFfi5FoQ8cIRXKHHFvLd4DiU2OSTtQOiqC15lMulifmdV4+M3xTOe/cEQn36gb+OotXZLYOpw==
"@polkadot/api@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-0.94.0-beta.8.tgz#dd690b5b0745d2cc131af751c770094cf6703985"
integrity sha512-OdgQfOkP7M9o137M61S4RNgS2vOyG7WKEfspjqexlINqYpfNq/7cayUAU3WwWOC8LwJjt+koIA8iAm4nZ3V6Ng==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/api-derive" "^0.94.0-beta.1"
"@polkadot/api-metadata" "^0.94.0-beta.1"
"@polkadot/api-derive" "^0.94.0-beta.8"
"@polkadot/api-metadata" "^0.94.0-beta.8"
"@polkadot/keyring" "^1.5.1"
"@polkadot/rpc-core" "^0.94.0-beta.1"
"@polkadot/rpc-provider" "^0.94.0-beta.1"
"@polkadot/types" "^0.94.0-beta.1"
"@polkadot/rpc-core" "^0.94.0-beta.8"
"@polkadot/rpc-provider" "^0.94.0-beta.8"
"@polkadot/types" "^0.94.0-beta.8"
"@polkadot/util-crypto" "^1.5.1"
"@polkadot/dev-react@^0.31.1":
@ -2143,10 +2143,10 @@
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/jsonrpc@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/jsonrpc/-/jsonrpc-0.94.0-beta.1.tgz#053925013b30821ecb30685b04ea439230faabcc"
integrity sha512-dZlj4n++uNGxdHG2w1vJxF8d5PATqSUzLfF0diRQ5IgTE5EyZ24k63JvUYGH0Df9LFqF01WWm5pVJG01ccU4rg==
"@polkadot/jsonrpc@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/jsonrpc/-/jsonrpc-0.94.0-beta.8.tgz#e02c4e694b5fcd6f5c0adfda9b5e47c1d3a71466"
integrity sha512-csDQCirPRsmijmAILzKpTuecbR6OdRY2yH1yzRt1q34K8WrbtBdwpbOq8UXa5OsDM/2o+ptqfuxpr1v7NlIwgw==
dependencies:
"@babel/runtime" "^7.6.2"
@ -2159,14 +2159,14 @@
"@polkadot/util" "^1.5.1"
"@polkadot/util-crypto" "^1.5.1"
"@polkadot/react-identicon@^0.45.1":
version "0.45.1"
resolved "https://registry.yarnpkg.com/@polkadot/react-identicon/-/react-identicon-0.45.1.tgz#3bca5d3dcc5109a4bb5cb7347b2ee898b737fc6c"
integrity sha512-8qz4s15cTGS1i/GlYE4DoecrOHu3/BoOK8MnQF/2ZKY28k7Ha5BtSdR/eJi9mGhMrnVZyiUzykhm9ut73flB+w==
"@polkadot/react-identicon@^0.46.0-beta.0":
version "0.46.0-beta.0"
resolved "https://registry.yarnpkg.com/@polkadot/react-identicon/-/react-identicon-0.46.0-beta.0.tgz#76f041d7b2e7bf8ce2a701f505a41907c15daa5b"
integrity sha512-mX8HX2iU1Rv+w4/RhlmnTZPtXVdhNf5HAqpaZN4EDJU4Ru9kNtgaUwLJ/59AGWC5xfvczDrG0xHINqp5qin0dw==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/ui-settings" "^0.45.1"
"@polkadot/ui-shared" "^0.45.1"
"@polkadot/ui-settings" "^0.46.0-beta.0"
"@polkadot/ui-shared" "^0.46.0-beta.0"
"@types/color" "^3.0.0"
"@types/react-copy-to-clipboard" "^4.2.6"
color "^3.1.2"
@ -2174,35 +2174,35 @@
react-copy-to-clipboard "^5.0.1"
styled-components "^4.4.0"
"@polkadot/react-qr@^0.45.1":
version "0.45.1"
resolved "https://registry.yarnpkg.com/@polkadot/react-qr/-/react-qr-0.45.1.tgz#31f704f48755659fbeb35380a6155568cc55cc88"
integrity sha512-C2ZvdnHZVSUm78/YcvgI7cb7IweLKT5/Kl9tV6HQULKO4Pag3dVYeViTabYCcEgSqYIdFnPBfhbkvZgP3GUUeg==
"@polkadot/react-qr@^0.46.0-beta.0":
version "0.46.0-beta.0"
resolved "https://registry.yarnpkg.com/@polkadot/react-qr/-/react-qr-0.46.0-beta.0.tgz#e8358bfdd0cdfd598f9286f3732d9d1f4a45566e"
integrity sha512-NacVC6I/MERhCSduXcKMe4PLRcHdWuzCx8kw+936KLBvbcaLLhZpKiowAaVu8YdmB2mdyZ41+cxX9+DVLfDFtQ==
dependencies:
"@babel/runtime" "^7.6.2"
"@types/react-qr-reader" "^2.1.1"
qrcode-generator "^1.4.4"
react-qr-reader "^2.2.1"
"@polkadot/rpc-core@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/rpc-core/-/rpc-core-0.94.0-beta.1.tgz#4eb55243ef18b6f62225d042e337fe0be36b658e"
integrity sha512-J8mZ07xgYmVXwefcSjAHziNgIi1jvn613x+rLoCvUGmIf1kgkB2TAVs+smgRlpCkDfdDM2EQWO1V/i2t1r8GDA==
"@polkadot/rpc-core@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/rpc-core/-/rpc-core-0.94.0-beta.8.tgz#e795abd14d0c1802d261788692b2eccfbb59eb19"
integrity sha512-1uU+tCQlzdRtRAKW+PtpeXlr4LJqi0/XJJ7s8Wo0L4KZA7fhY7bjuWgFXszyIn/Odt4FA4xQVmWjZCejIdBiJg==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/jsonrpc" "^0.94.0-beta.1"
"@polkadot/rpc-provider" "^0.94.0-beta.1"
"@polkadot/types" "^0.94.0-beta.1"
"@polkadot/jsonrpc" "^0.94.0-beta.8"
"@polkadot/rpc-provider" "^0.94.0-beta.8"
"@polkadot/types" "^0.94.0-beta.8"
"@polkadot/util" "^1.5.1"
rxjs "^6.5.3"
"@polkadot/rpc-provider@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/rpc-provider/-/rpc-provider-0.94.0-beta.1.tgz#151bde79c691a600c6b91321ff9a18d9023de541"
integrity sha512-N0RroG1OTigZYYCaIl2h2lnSl23fj0Zh6pvpPPN+wvMyK1/PHwonhe/zvlrWYveE6pq5T5JMDd7eclkpL4NDGg==
"@polkadot/rpc-provider@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/rpc-provider/-/rpc-provider-0.94.0-beta.8.tgz#4313ebea0e913efeb4080fd556b18d378d7b07de"
integrity sha512-mq6QH8p2Ukff19fmyySCO8j9SrVFsE+GosQCbcKLd2KpquuUXHPp1U9e1lE+Zg0QQHKFijoA2MlZDOhnGfWYLg==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/api-metadata" "^0.94.0-beta.1"
"@polkadot/api-metadata" "^0.94.0-beta.8"
"@polkadot/util" "^1.5.1"
"@polkadot/util-crypto" "^1.5.1"
"@types/nock" "^11.1.0"
@ -2217,10 +2217,10 @@
dependencies:
"@types/chrome" "^0.0.89"
"@polkadot/types@^0.94.0-beta.1":
version "0.94.0-beta.1"
resolved "https://registry.yarnpkg.com/@polkadot/types/-/types-0.94.0-beta.1.tgz#fdf185effd75602edce4d3299408a809d146012f"
integrity sha512-+6qVFsAqUDyR+Uh44SWh998jMZywZpmZyX5Z1K4CLdW5CZ3AgLgXP4hKzcC3WfybJvSE7g6cq6WAJUb5vbCFgQ==
"@polkadot/types@^0.94.0-beta.8":
version "0.94.0-beta.8"
resolved "https://registry.yarnpkg.com/@polkadot/types/-/types-0.94.0-beta.8.tgz#c17b1a69d3c66c15b81e589ad6aca2fd9a1cb997"
integrity sha512-7XNdn7KemITpn4U4sxlBMF4NS9GuMfXGb0CsruaanNRqRElCFzo8j66Kxy9naWbr433LADREdu2Kh6mYIq9PjQ==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/util" "^1.5.1"
@ -2228,17 +2228,17 @@
"@types/memoizee" "^0.4.3"
memoizee "^0.4.14"
"@polkadot/ui-assets@^0.45.1":
version "0.45.1"
resolved "https://registry.yarnpkg.com/@polkadot/ui-assets/-/ui-assets-0.45.1.tgz#d6e23ede41096a62af639e7bac2cd87af0008ea0"
integrity sha512-xuR7Mj3d5ElqjWA+XZjH2kNWuIqjEOd8mAPYEJM6um5wdK9csjpEzj7YRZMfxid7h2LHY+f5z1Z1T6eGt+SUgA==
"@polkadot/ui-assets@^0.46.0-beta.0":
version "0.46.0-beta.0"
resolved "https://registry.yarnpkg.com/@polkadot/ui-assets/-/ui-assets-0.46.0-beta.0.tgz#2ac11e99df009508c6d36a8ca7afdde4c7e935b0"
integrity sha512-yaJIrHW39tKad2oQd9m1DVBOytYfhl+IXHE/HDsi0W8s3pTFsGVZKcXWv+XRWpyHn2JvJglEVpE2e5uvNzhafg==
dependencies:
"@babel/runtime" "^7.6.2"
"@polkadot/ui-keyring@^0.45.1":
version "0.45.1"
resolved "https://registry.yarnpkg.com/@polkadot/ui-keyring/-/ui-keyring-0.45.1.tgz#0d0e1db99fad750c2854dac6ed0f917fc8b60f3a"
integrity sha512-B7nc5L990em2iB9nNLfex0nlTbxAqKjzO0dRgSGQpWsumkmYecfeQ2YV/ni5GhBNT3NznB7KlDwRKGUCRyUflA==
"@polkadot/ui-keyring@^0.46.0-beta.0":
version "0.46.0-beta.0"
resolved "https://registry.yarnpkg.com/@polkadot/ui-keyring/-/ui-keyring-0.46.0-beta.0.tgz#c9cc74426a83fd75292c5a6897e0fef13ec15a97"
integrity sha512-cPXsak3bkmoazxMcPWzg7auXiQlJ0nwBztuD/tDYQPTZxziXABItXJKPo27SiZaaKSkD9Ug6eqFfaIseNgRGog==
dependencies:
"@babel/runtime" "^7.6.2"
"@ledgerhq/hw-transport-u2f" "^4.70.0"
@ -2254,19 +2254,19 @@
optionalDependencies:
"@ledgerhq/hw-transport-node-hid" "^4.70.0"
"@polkadot/ui-settings@^0.45.1":
version "0.45.1"
resolved "https://registry.yarnpkg.com/@polkadot/ui-settings/-/ui-settings-0.45.1.tgz#1d4b38c82c78aaf093372af40600d783bfb9dae9"
integrity sha512-a50fjB5eq6AEaeL29x7ibpSzO20nWltNrph3fgf+2dv34ucaTsSBJIi1fgmD1JYy2tFI8bPZurXCrTOcyPfnVQ==
"@polkadot/ui-settings@^0.46.0-beta.0":
version "0.46.0-beta.0"
resolved "https://registry.yarnpkg.com/@polkadot/ui-settings/-/ui-settings-0.46.0-beta.0.tgz#1dc3aeed14092de221256fba414c9d8249c6750c"
integrity sha512-+rK8pPiyAvXGvS1UTiWsfPiIIex2Hp5BDRfcm/8jysW7FBBdhrSYgCZKPOxce8l+Fff52jQ11x7HzDkQGqh10Q==
dependencies:
"@babel/runtime" "^7.6.2"
"@types/store" "^2.0.2"
store "^2.0.12"
"@polkadot/ui-shared@^0.45.1":
version "0.45.1"
resolved "https://registry.yarnpkg.com/@polkadot/ui-shared/-/ui-shared-0.45.1.tgz#bfee1d85070948c86d34774cc3e365b2dfc54b87"
integrity sha512-/5z5o+GkEbwrzSDWhh1XdJpAgNmanrssFEnOw5obp42qfbNp12M64N0VEjyT76qxoXa9OcimmnNkmBG+Zqpw8Q==
"@polkadot/ui-shared@^0.46.0-beta.0":
version "0.46.0-beta.0"
resolved "https://registry.yarnpkg.com/@polkadot/ui-shared/-/ui-shared-0.46.0-beta.0.tgz#2c2900f697b037eaef6ac157543f1dc8f19a16f5"
integrity sha512-IafyzwcwUGPNsoorg/UWvmwth7WXB3sC2keIThQlctL+6pTj5IYoZqbeaUWlYhCqLhNK+DBRszTc18ZSS+khOA==
dependencies:
"@babel/runtime" "^7.6.2"
"@types/color" "^3.0.0"