diff --git a/packages/app-explorer/package.json b/packages/app-explorer/package.json index e71335f2ef..3416fcbe46 100644 --- a/packages/app-explorer/package.json +++ b/packages/app-explorer/package.json @@ -11,9 +11,9 @@ "test": "jest --coverage" }, "devDependencies": { - "@polkadot/primitives": "^0.12.4", - "@polkadot/primitives-codec": "^0.12.4", - "@polkadot/primitives-json": "^0.12.4", + "@polkadot/primitives": "^0.12.6", + "@polkadot/primitives-codec": "^0.12.6", + "@polkadot/primitives-json": "^0.12.6", "@polkadot/ui-react-app": "^0.1.7", "@polkadot/util-crypto": "^0.19.4" } diff --git a/packages/app-extrinsics/package.json b/packages/app-extrinsics/package.json index 9f6ff003de..cb31ca322a 100644 --- a/packages/app-extrinsics/package.json +++ b/packages/app-extrinsics/package.json @@ -11,8 +11,8 @@ "test": "jest --coverage" }, "devDependencies": { - "@polkadot/extrinsics": "^0.12.4", - "@polkadot/extrinsics-codec": "^0.12.4", + "@polkadot/extrinsics": "^0.12.6", + "@polkadot/extrinsics-codec": "^0.12.6", "@polkadot/ui-react-app": "^0.1.7", "react-dropzone": "^4.2.9" } diff --git a/packages/app-extrinsics/src/App.js b/packages/app-extrinsics/src/App.js index 5de9c0af24..68e899bbe0 100644 --- a/packages/app-extrinsics/src/App.js +++ b/packages/app-extrinsics/src/App.js @@ -10,18 +10,37 @@ import React from 'react'; import { BehaviorSubject } from 'rxjs/BehaviorSubject'; import withObservable from '@polkadot/rx-react/with/observable'; -import Submission from './Submission'; import Signer from './Signer'; +import Submission from './Submission'; +import Status from './Status'; import translate from './translate'; type Props = I18nProps & {}; +const CLOSE_STATUS = ['cancelled', 'error', 'sent']; + const queue: rxjs$BehaviorSubject = new BehaviorSubject(({ isValid: false, status: 'incomplete' }: $Shape)); const QueuedSigner = withObservable(queue)(Signer); +const QueuedStatus = withObservable(queue)(Status); + +queue.subscribe(({ status }) => { + if (CLOSE_STATUS.includes(status)) { + setTimeout(() => { + const tx = queue.getValue(); + + if (CLOSE_STATUS.includes(tx.status)) { + queue.next({ + ...tx, + status: 'incomplete' + }); + } + }, 5000); + } +}); function App ({ className, style }: Props): React$Node { return ( @@ -31,6 +50,7 @@ function App ({ className, style }: Props): React$Node { > + ); } diff --git a/packages/app-extrinsics/src/Extrinsic/index.js b/packages/app-extrinsics/src/Extrinsic/index.js index ca9116499f..191917dc92 100644 --- a/packages/app-extrinsics/src/Extrinsic/index.js +++ b/packages/app-extrinsics/src/Extrinsic/index.js @@ -64,7 +64,9 @@ export default class Extrinsic extends React.PureComponent { values[index].isValid; }, !!values); const raw = values.map((param) => param && param.value); - const data = extrinsic.params && encodeExtrinsic(extrinsic, raw); + const data = extrinsic.params + ? encodeExtrinsic(extrinsic, raw) + : new Uint8Array([]); this.props.subject.next({ data, diff --git a/packages/app-extrinsics/src/Status.js b/packages/app-extrinsics/src/Status.js new file mode 100644 index 0000000000..2f47f8b10f --- /dev/null +++ b/packages/app-extrinsics/src/Status.js @@ -0,0 +1,37 @@ +// Copyright 2017-2018 Jaco Greeff +// This software may be modified and distributed under the terms +// of the ISC license. See the LICENSE file for details. +// @flow + +import type { I18nProps } from '@polkadot/ui-react-app/types'; +import type { QueueTx } from './types'; + +import React from 'react'; + +import translate from './translate'; + +type Props = I18nProps & { + value: QueueTx +} + +function Status ({ className, style, value: { extrinsic, isValid, status } }: Props): React$Node { + if (!isValid || ['incomplete'].includes(status)) { + return null; + } + + return ( +
+
+ {extrinsic.section}_{extrinsic.name} +
+
+ {status} +
+
+ ); +} + +export default translate(Status); diff --git a/packages/app-extrinsics/src/Submission/index.js b/packages/app-extrinsics/src/Submission/index.js index d5ae9d91bf..485b98d14a 100644 --- a/packages/app-extrinsics/src/Submission/index.js +++ b/packages/app-extrinsics/src/Submission/index.js @@ -35,14 +35,15 @@ class Submission extends React.PureComponent { } componentWillMount () { + this.subjects.index.subscribe(this.onChange); this.subjects.method.subscribe(this.onChange); this.subjects.sender.subscribe(this.onChange); } onChange = (): void => { - const publicKey = this.subjects.sender.getValue(); - const message = this.subjects.method.getValue(); const index = this.subjects.index.getValue(); + const message = this.subjects.method.getValue(); + const publicKey = this.subjects.sender.getValue(); const isValid = !!(publicKey && publicKey.length && message && message.isValid); this.subjects.call.next({ diff --git a/packages/app-extrinsics/src/index.css b/packages/app-extrinsics/src/index.css index cbfaf0204b..0a8a7b6fe8 100644 --- a/packages/app-extrinsics/src/index.css +++ b/packages/app-extrinsics/src/index.css @@ -5,3 +5,23 @@ .extrinsics--App { padding: 1em; } + +.extrinsics--Status { + background: #bcdaf0; + display: inline-block; + padding: 0.5rem 1rem; + position: fixed; + bottom: 0.125rem; + right: 0.125rem; + text-align: center; + z-index: 1001; +} + +.extrinsics--Status .status { + font-weight: 700; +} + +.extrinsics--Status.error { + background: red; + color: white; +} diff --git a/packages/ui-react-app/package.json b/packages/ui-react-app/package.json index ce7b0a4594..4af94c6102 100644 --- a/packages/ui-react-app/package.json +++ b/packages/ui-react-app/package.json @@ -11,8 +11,9 @@ "test": "jest --coverage" }, "dependencies": { - "@polkadot/extrinsics-substrate": "^0.12.4", - "@polkadot/rx-react": "^0.5.2", + "@polkadot/extrinsics-substrate": "^0.12.6", + "@polkadot/rx-react": "^0.5.3", + "@polkadot/storage-substrate": "^0.12.6", "@polkadot/ui-react": "^0.10.2", "@polkadot/util": "^0.19.4", "@polkadot/util-keyring": "^0.19.4", @@ -25,5 +26,8 @@ "react-router-dom": "^4.2.2", "semantic-ui-css": "^2.3.1", "semantic-ui-react": "^0.79.1" + }, + "devDepependencies": { + "@polkadot/primitives": "^0.12.6" } } diff --git a/packages/ui-react-app/src/InputExtrinsic/SelectMethod.js b/packages/ui-react-app/src/InputExtrinsic/SelectMethod.js index e384c883cc..55328eb6ab 100644 --- a/packages/ui-react-app/src/InputExtrinsic/SelectMethod.js +++ b/packages/ui-react-app/src/InputExtrinsic/SelectMethod.js @@ -23,6 +23,7 @@ type Props = I18nProps & { }; function SelectMethod ({ className, isError, label = '', onChange, style, subject, t, type, value }: Props): React$Node { + // $FlowFixMe string vs ... if (!value || !extrinsics[value.section]) { return null; } diff --git a/packages/ui-react-app/src/InputExtrinsic/index.js b/packages/ui-react-app/src/InputExtrinsic/index.js index 1b5ae59845..f131147dd7 100644 --- a/packages/ui-react-app/src/InputExtrinsic/index.js +++ b/packages/ui-react-app/src/InputExtrinsic/index.js @@ -5,7 +5,7 @@ // TODO: We have a lot shared between this and InputExtrinsic -import type { Extrinsic, ExtrinsicSectionName } from '@polkadot/extrinsics/types'; +import type { Extrinsic } from '@polkadot/extrinsics/types'; import type { I18nProps } from '../types'; import './InputExtrinsic.css'; @@ -30,7 +30,7 @@ type Props = I18nProps & { }; class InputExtrinsic extends React.PureComponent { - sectionSubject: rxjs$Subject; + sectionSubject: rxjs$Subject; SelectMethod: React$ComponentType<*>; subscriptions: Array @@ -55,6 +55,7 @@ class InputExtrinsic extends React.PureComponent { const options = methodOptions(section, type); subject.next( + // $FlowFixMe we have string to be generix, but... map[section].methods[type][options[0].value] ); }) diff --git a/packages/ui-react-app/src/InputExtrinsic/options/method.js b/packages/ui-react-app/src/InputExtrinsic/options/method.js index 34b79d560a..f0a27fc365 100644 --- a/packages/ui-react-app/src/InputExtrinsic/options/method.js +++ b/packages/ui-react-app/src/InputExtrinsic/options/method.js @@ -8,14 +8,21 @@ import type { ExtrinsicSectionName } from '@polkadot/extrinsics/types'; import React from 'react'; import map from '@polkadot/extrinsics-substrate'; -export default function createOptions (sectionName: ExtrinsicSectionName, type: 'private' | 'public'): Array<*> { - const methods = map[sectionName].methods[type]; +// flowlint-next-line unclear-type:off +export default function createOptions (sectionName: any, type: 'private' | 'public'): Array<*> { + const section = map[(sectionName: ExtrinsicSectionName)]; + + if (!section) { + return []; + } + + const methods = section.methods[type]; return Object .keys(methods) .sort() .map((name) => { - const { description, params = {} } = methods[name]; + const { description = '', params = {} } = methods[name]; const inputs = Object.keys(params).join(', '); return { diff --git a/packages/ui-react-app/src/InputStorage/SelectKey.js b/packages/ui-react-app/src/InputStorage/SelectKey.js index 50b8006789..69c5e89764 100644 --- a/packages/ui-react-app/src/InputStorage/SelectKey.js +++ b/packages/ui-react-app/src/InputStorage/SelectKey.js @@ -22,6 +22,7 @@ type Props = I18nProps & { }; function SelectKey ({ className, isError, label = '', onChange, style, subject, t, value }: Props): React$Node { + // $FlowFixMe string vs ... if (!value || !map[value.section]) { return null; } diff --git a/packages/ui-react-app/src/InputStorage/index.js b/packages/ui-react-app/src/InputStorage/index.js index b0de7143c5..06d491b391 100644 --- a/packages/ui-react-app/src/InputStorage/index.js +++ b/packages/ui-react-app/src/InputStorage/index.js @@ -5,7 +5,7 @@ // TODO: We have a lot shared between this and InputExtrinsic -import type { StorageDef$Key, StateDb$SectionNames } from '@polkadot/storage/types'; +import type { StorageDef$Key } from '@polkadot/storage/types'; import type { I18nProps } from '../types'; import './InputStorage.css'; @@ -29,7 +29,7 @@ type Props = I18nProps & { }; class InputStorage extends React.PureComponent { - sectionSubject: rxjs$Subject; + sectionSubject: rxjs$Subject; subscriptions: Array SelectKey: React$ComponentType<*>; @@ -53,6 +53,7 @@ class InputStorage extends React.PureComponent { const options = keyOptions(section); subject.next( + // $FlowFixMe we have string to be generix, but... map[section].keys[options[0].value] ); }) diff --git a/packages/ui-react-app/src/InputStorage/options/key.js b/packages/ui-react-app/src/InputStorage/options/key.js index f14c0df3d5..0f76f70120 100644 --- a/packages/ui-react-app/src/InputStorage/options/key.js +++ b/packages/ui-react-app/src/InputStorage/options/key.js @@ -8,8 +8,13 @@ import type { StateDb$SectionNames } from '@polkadot/storage/types'; import React from 'react'; import map from '@polkadot/storage-substrate/keys'; -export default function createOptions (sectionName: StateDb$SectionNames): Array<*> { - const section = map[sectionName]; +// flowlint-next-line unclear-type:off +export default function createOptions (sectionName: any): Array<*> { + const section = map[(sectionName: StateDb$SectionNames)]; + + if (!section) { + return []; + } return Object .keys(section.keys) @@ -20,7 +25,7 @@ export default function createOptions (sectionName: StateDb$SectionNames): Array return !isDeprecated && !isHidden && Object.keys(params).length === 0; }) .map((name) => { - const { description, params = {} } = section.keys[name]; + const { description = '', params = {} } = section.keys[name]; const inputs = Object.keys(params).join(', '); return { diff --git a/packages/ui-react-app/src/Params/Param/File.js b/packages/ui-react-app/src/Params/Param/File.js index fba2e9f6c4..e57820e1f2 100644 --- a/packages/ui-react-app/src/Params/Param/File.js +++ b/packages/ui-react-app/src/Params/Param/File.js @@ -9,6 +9,8 @@ import type { RawParam } from '../types'; import React from 'react'; import Dropzone from 'react-dropzone'; import withObservable from '@polkadot/rx-react/with/observable'; +import bnToU8a from '@polkadot/util/bn/toU8a'; +import u8aConcat from '@polkadot/util/u8a/concat'; import translate from '../../translate'; import Base from './Base'; @@ -30,9 +32,13 @@ function BytesFile ({ className, isError = false, label, onChange, subject, t }: files.forEach((file) => { const reader = new FileReader(); - reader.onload = () => + reader.onload = () => { // flowlint-next-line unclear-type:off - onChange(file, new Uint8Array((((reader.result): any): ArrayBuffer))); + const data = new Uint8Array((((reader.result): any): ArrayBuffer)); + const vec = u8aConcat(bnToU8a(data.length, 32, true), data); + + onChange(file, vec); + }; reader.onabort = () => onChange(); reader.onerror = () => diff --git a/packages/ui-react-app/src/Params/index.js b/packages/ui-react-app/src/Params/index.js index fa63386ad0..858a2c93e7 100644 --- a/packages/ui-react-app/src/Params/index.js +++ b/packages/ui-react-app/src/Params/index.js @@ -45,7 +45,9 @@ class Params extends React.PureComponent { } static getDerivedStateFromProps (props: Props, prevState: State): $Shape | null { - if (!props.value || Object.keys(props.value.params || {}).length === 0) { + const { value: { params = {} } = {}, subject } = props; + + if (Object.keys(params).length === 0) { Params.unsubscribe(prevState.subscriptions); return { @@ -54,12 +56,12 @@ class Params extends React.PureComponent { }; } - const subjects = createSubjects(props.value.params, props.subject); + const subjects = createSubjects(params, subject); let subscriptions; - if (props.subject) { + if (subject) { const onChange = (): void => { - props.subject.next( + subject.next( subjects.map((s) => s.getValue()) ); }; @@ -85,8 +87,8 @@ class Params extends React.PureComponent { return null; } - const { name, params } = value; - const paramNames = Object.keys(params || {}); + const { name, params = {} } = value; + const paramNames = Object.keys(params); if (paramNames.length === 0) { return null; diff --git a/packages/ui-react-app/src/Params/subjects.js b/packages/ui-react-app/src/Params/subjects.js index 6595fda59d..bc6d69e74c 100644 --- a/packages/ui-react-app/src/Params/subjects.js +++ b/packages/ui-react-app/src/Params/subjects.js @@ -3,7 +3,7 @@ // of the ISC license. See the LICENSE file for details. // @flow -import type { Extrinsic$Params } from '@polkadot/extrinsics/types'; +import type { Params } from '@polkadot/primitives/param'; import type { RawParam } from './types'; import { BehaviorSubject } from 'rxjs/BehaviorSubject'; @@ -11,7 +11,7 @@ import isUndefined from '@polkadot/util/is/undefined'; import getInitValue from './initValue'; -export default function subjects (params: Extrinsic$Params, subject: rxjs$BehaviorSubject>): Array> { +export default function subjects (params: Params, subject: rxjs$BehaviorSubject>): Array> { return Object .keys(params) .map((name: string): rxjs$BehaviorSubject => { diff --git a/yarn.lock b/yarn.lock index 58a6640fbe..2c226c866c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -622,25 +622,25 @@ call-me-maybe "^1.0.1" glob-to-regexp "^0.3.0" -"@polkadot/api-format@^0.9.13": - version "0.9.13" - resolved "https://registry.yarnpkg.com/@polkadot/api-format/-/api-format-0.9.13.tgz#3f0bb7a1a3775bd026793903aff72a63ca040c31" +"@polkadot/api-format@^0.9.15": + version "0.9.15" + resolved "https://registry.yarnpkg.com/@polkadot/api-format/-/api-format-0.9.15.tgz#25d21f5d06dba64d00b614ee2a314ef4cbfbd782" dependencies: - "@polkadot/primitives-json" "^0.12.4" + "@polkadot/primitives-json" "^0.12.6" "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/api-jsonrpc@^0.9.13": - version "0.9.13" - resolved "https://registry.yarnpkg.com/@polkadot/api-jsonrpc/-/api-jsonrpc-0.9.13.tgz#4bf1de6a3a4cb0103bd5da3777eb4a656b3ce673" +"@polkadot/api-jsonrpc@^0.9.15": + version "0.9.15" + resolved "https://registry.yarnpkg.com/@polkadot/api-jsonrpc/-/api-jsonrpc-0.9.15.tgz#e210f5ce82d7c41c11ddf3cd83e521ede9f1ddae" dependencies: babel-runtime "^6.26.0" -"@polkadot/api-provider@^0.9.13": - version "0.9.13" - resolved "https://registry.yarnpkg.com/@polkadot/api-provider/-/api-provider-0.9.13.tgz#b09f68d491b1f6d07d4f70e26f56eb536765bd9c" +"@polkadot/api-provider@^0.9.15": + version "0.9.15" + resolved "https://registry.yarnpkg.com/@polkadot/api-provider/-/api-provider-0.9.15.tgz#b641c2e83fb0cf966b4ecfa2500b7e5d816cefed" dependencies: - "@polkadot/storage-substrate" "^0.12.4" + "@polkadot/storage-substrate" "^0.12.6" "@polkadot/util" "^0.19.4" "@polkadot/util-crypto" "^0.19.4" "@polkadot/util-keyring" "^0.19.4" @@ -649,13 +649,13 @@ isomorphic-fetch "^2.2.1" websocket "^1.0.25" -"@polkadot/api@^0.9.13": - version "0.9.13" - resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-0.9.13.tgz#0ea002e6a8fa9c1bedf8e31e6217d846ec537e6d" +"@polkadot/api@^0.9.15": + version "0.9.15" + resolved "https://registry.yarnpkg.com/@polkadot/api/-/api-0.9.15.tgz#0a372b488f11c06d00b1e174633d304e16c94f6e" dependencies: - "@polkadot/api-format" "^0.9.13" - "@polkadot/api-jsonrpc" "^0.9.13" - "@polkadot/api-provider" "^0.9.13" + "@polkadot/api-format" "^0.9.15" + "@polkadot/api-jsonrpc" "^0.9.15" + "@polkadot/api-provider" "^0.9.15" "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" @@ -697,108 +697,108 @@ stylelint "^9.1.1" stylelint-config-standard "^18.2.0" -"@polkadot/extrinsics-codec@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/extrinsics-codec/-/extrinsics-codec-0.12.4.tgz#ab14f34a140f347089bfe48d439d74ecb7107fcb" +"@polkadot/extrinsics-codec@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/extrinsics-codec/-/extrinsics-codec-0.12.6.tgz#c4d0fb859fe189ddf57b2a993663fa7847a6fc1f" dependencies: "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" bn.js "^4.11.8" -"@polkadot/extrinsics-substrate@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/extrinsics-substrate/-/extrinsics-substrate-0.12.4.tgz#d32a06b7c6a39f5cd5c50124c4a29062bc2429b0" +"@polkadot/extrinsics-substrate@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/extrinsics-substrate/-/extrinsics-substrate-0.12.6.tgz#36d35000053695e27c92dab6172e7f3a968f2ca8" dependencies: - "@polkadot/extrinsics" "^0.12.4" + "@polkadot/extrinsics" "^0.12.6" babel-runtime "^6.26.0" -"@polkadot/extrinsics@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/extrinsics/-/extrinsics-0.12.4.tgz#1c80415c6588ffcb5580b039e8fe014ca0bd2778" +"@polkadot/extrinsics@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/extrinsics/-/extrinsics-0.12.6.tgz#627ad928da9ea8adf74c1abb313883544b75f7ef" dependencies: - "@polkadot/primitives" "^0.12.4" + "@polkadot/primitives" "^0.12.6" "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/primitives-builder@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/primitives-builder/-/primitives-builder-0.12.4.tgz#213ee92bcc2ee3b248d3fcd02c0f2ac463d27c50" +"@polkadot/primitives-builder@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/primitives-builder/-/primitives-builder-0.12.6.tgz#e6bfd80ce811d65ed1cafde910f45df9661b9f44" dependencies: - "@polkadot/primitives" "^0.12.4" - "@polkadot/primitives-codec" "^0.12.4" + "@polkadot/primitives" "^0.12.6" + "@polkadot/primitives-codec" "^0.12.6" "@polkadot/util" "^0.19.4" "@polkadot/util-crypto" "^0.19.4" "@polkadot/util-triehash" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/primitives-codec@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/primitives-codec/-/primitives-codec-0.12.4.tgz#358bf9e2299c01d4e36ccc6369d755aae5a6711b" +"@polkadot/primitives-codec@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/primitives-codec/-/primitives-codec-0.12.6.tgz#d64ad268f32ea734bd3ef77310412f269648e75f" dependencies: - "@polkadot/primitives" "^0.12.4" - "@polkadot/primitives-builder" "^0.12.4" - "@polkadot/primitives-rlp" "^0.12.4" + "@polkadot/primitives" "^0.12.6" + "@polkadot/primitives-builder" "^0.12.6" + "@polkadot/primitives-rlp" "^0.12.6" "@polkadot/util" "^0.19.4" "@polkadot/util-keyring" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/primitives-json@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/primitives-json/-/primitives-json-0.12.4.tgz#8e83799db0750df3d6f011bebae16e0cbffad159" +"@polkadot/primitives-json@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/primitives-json/-/primitives-json-0.12.6.tgz#f58149578e4bbb970469272cae80c26be24fbe7d" dependencies: - "@polkadot/primitives" "^0.12.4" - "@polkadot/primitives-builder" "^0.12.4" + "@polkadot/primitives" "^0.12.6" + "@polkadot/primitives-builder" "^0.12.6" "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/primitives-rlp@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/primitives-rlp/-/primitives-rlp-0.12.4.tgz#0a936925a9afc32e1ad6b78540eff19b47b1a22e" +"@polkadot/primitives-rlp@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/primitives-rlp/-/primitives-rlp-0.12.6.tgz#ceaddeeb42bd6e35664ea5a5a548123c0ef4403a" dependencies: - "@polkadot/primitives" "^0.12.4" - "@polkadot/primitives-builder" "^0.12.4" - "@polkadot/primitives-json" "^0.12.4" + "@polkadot/primitives" "^0.12.6" + "@polkadot/primitives-builder" "^0.12.6" + "@polkadot/primitives-json" "^0.12.6" "@polkadot/util" "^0.19.4" "@polkadot/util-crypto" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/primitives@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/primitives/-/primitives-0.12.4.tgz#7aa00e2ae19c44cc6c1e30a999342ac6cc5afbb8" +"@polkadot/primitives@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/primitives/-/primitives-0.12.6.tgz#717b062853eb08370f1cb5a6cba37a612fd47829" dependencies: "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/rx-api@^0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@polkadot/rx-api/-/rx-api-0.5.2.tgz#df4f16d849f3fa1bb1842158dca70bf5e07ed6a7" +"@polkadot/rx-api@^0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@polkadot/rx-api/-/rx-api-0.5.3.tgz#d635f80e01f695b1af85a1bc0cfcb14aaef0dbd6" dependencies: - "@polkadot/api" "^0.9.13" - "@polkadot/api-provider" "^0.9.13" + "@polkadot/api" "^0.9.15" + "@polkadot/api-provider" "^0.9.15" rxjs "^5.5.10" -"@polkadot/rx-react@^0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@polkadot/rx-react/-/rx-react-0.5.2.tgz#9c65b1d329f20273b294238c19bfa3fe2e7a615e" +"@polkadot/rx-react@^0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@polkadot/rx-react/-/rx-react-0.5.3.tgz#f553c618a5f9849819d85ffeff9fb3a8a24dfd5f" dependencies: - "@polkadot/primitives" "^0.12.4" - "@polkadot/rx-api" "^0.5.2" - "@polkadot/storage-substrate" "^0.12.4" + "@polkadot/primitives" "^0.12.6" + "@polkadot/rx-api" "^0.5.3" + "@polkadot/storage-substrate" "^0.12.6" "@polkadot/util" "^0.19.4" -"@polkadot/storage-substrate@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/storage-substrate/-/storage-substrate-0.12.4.tgz#a48ee75ef88a2c8119fd712bd7fca59c67b728e7" +"@polkadot/storage-substrate@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/storage-substrate/-/storage-substrate-0.12.6.tgz#5aff477494ef6a4fef883accd6ad9382c3fa22cf" dependencies: - "@polkadot/storage" "^0.12.4" + "@polkadot/storage" "^0.12.6" "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0" -"@polkadot/storage@^0.12.4": - version "0.12.4" - resolved "https://registry.yarnpkg.com/@polkadot/storage/-/storage-0.12.4.tgz#ec50733ea6fa4efeabc9238fd32aa3b60e39001b" +"@polkadot/storage@^0.12.6": + version "0.12.6" + resolved "https://registry.yarnpkg.com/@polkadot/storage/-/storage-0.12.6.tgz#d65661cc10d3af5120516c7d252c5413ef89db6f" dependencies: - "@polkadot/primitives" "^0.12.4" + "@polkadot/primitives" "^0.12.6" "@polkadot/util" "^0.19.4" babel-runtime "^6.26.0"