From 99368a6d4daba3a250d41343dc3788e23ed5d349 Mon Sep 17 00:00:00 2001 From: Jaco Greeff Date: Sat, 27 Jul 2019 08:05:11 +0200 Subject: [PATCH] createType allows multiple params (#1207) --- packages/api-derive/package.json | 2 +- packages/api-metadata/package.json | 6 ++-- .../src/consts/fromMetadata/index.ts | 2 +- .../fromMetadata/createUnchecked.ts | 4 +-- .../storage/fromMetadata/createFunction.ts | 6 ++-- packages/api/package.json | 4 +-- packages/api/src/SignerPayload.spec.ts | 4 +-- packages/api/src/SubmittableExtrinsic.ts | 4 +-- packages/api/src/checkTypes.manual.ts | 5 ++-- packages/api/test/util/SingleAccountSigner.ts | 4 +-- packages/rpc-core/package.json | 2 +- packages/rpc-core/src/index.ts | 12 ++++---- packages/rpc-provider/package.json | 6 ++-- packages/types/package.json | 6 ++-- packages/types/src/Metadata/util/testUtil.ts | 2 +- packages/types/src/codec/Vec.spec.ts | 4 +-- packages/types/src/codec/createType.spec.ts | 22 +++++++------- packages/types/src/codec/createType.ts | 16 +++++----- yarn.lock | 30 +++++++++---------- 19 files changed, 71 insertions(+), 70 deletions(-) diff --git a/packages/api-derive/package.json b/packages/api-derive/package.json index 7868a883d0..2b423ad364 100644 --- a/packages/api-derive/package.json +++ b/packages/api-derive/package.json @@ -32,6 +32,6 @@ "@polkadot/types": "^0.82.0-beta.96" }, "devDependencies": { - "@polkadot/keyring": "^0.94.1" + "@polkadot/keyring": "^0.95.0-beta.1" } } diff --git a/packages/api-metadata/package.json b/packages/api-metadata/package.json index 523b694852..92e771418d 100644 --- a/packages/api-metadata/package.json +++ b/packages/api-metadata/package.json @@ -28,10 +28,10 @@ "dependencies": { "@babel/runtime": "^7.5.5", "@polkadot/types": "^0.82.0-beta.96", - "@polkadot/util": "^0.94.1", - "@polkadot/util-crypto": "^0.94.1" + "@polkadot/util": "^0.95.0-beta.1", + "@polkadot/util-crypto": "^0.95.0-beta.1" }, "devDependencies": { - "@polkadot/keyring": "^0.94.1" + "@polkadot/keyring": "^0.95.0-beta.1" } } diff --git a/packages/api-metadata/src/consts/fromMetadata/index.ts b/packages/api-metadata/src/consts/fromMetadata/index.ts index 4b1bf3b003..edfef63720 100644 --- a/packages/api-metadata/src/consts/fromMetadata/index.ts +++ b/packages/api-metadata/src/consts/fromMetadata/index.ts @@ -23,7 +23,7 @@ export default function fromMetadata (metadata: Metadata): Constants { // For access, we change the index names, i.e. Democracy.EnactmentPeriod -> democracy.enactmentPeriod result[stringCamelCase(name.toString())] = moduleMetadata.constants.reduce((newModule, meta): ModuleConstants => { - const codec = createTypeUnsafe(meta.type.toString(), meta.value); + const codec = createTypeUnsafe(meta.type.toString(), [meta.value]); // This is not a perfect idea, however as it stands with number-only constants on the metadata // does not have any effect. However, this could become problematic in cases where items are diff --git a/packages/api-metadata/src/extrinsics/fromMetadata/createUnchecked.ts b/packages/api-metadata/src/extrinsics/fromMetadata/createUnchecked.ts index 492dfb9d66..c2933b5ee5 100644 --- a/packages/api-metadata/src/extrinsics/fromMetadata/createUnchecked.ts +++ b/packages/api-metadata/src/extrinsics/fromMetadata/createUnchecked.ts @@ -6,7 +6,7 @@ import { Method } from '@polkadot/types/interfaces'; import { FunctionMetadata } from '@polkadot/types/Metadata/v7/Calls'; import { MethodFunction } from '@polkadot/types/primitive/Generic/Method'; -import { ClassOf } from '@polkadot/types'; +import { createType } from '@polkadot/types'; import { assert, stringCamelCase } from '@polkadot/util'; /** @@ -33,7 +33,7 @@ export default function createDescriptor ( `Extrinsic ${section}.${funcName} expects ${expectedArgs.length.valueOf()} arguments, got ${args.length}.` ); - return new (ClassOf('Method'))({ + return createType('Method', { args, callIndex }, callMetadata); diff --git a/packages/api-metadata/src/storage/fromMetadata/createFunction.ts b/packages/api-metadata/src/storage/fromMetadata/createFunction.ts index fc4fe0c69a..5ffbd4dc81 100644 --- a/packages/api-metadata/src/storage/fromMetadata/createFunction.ts +++ b/packages/api-metadata/src/storage/fromMetadata/createFunction.ts @@ -70,9 +70,9 @@ export default function createFunction ({ meta, method, prefix, section }: Creat const [key1, key2] = arg as [CreateArgType, CreateArgType]; const type1 = meta.type.asDoubleMap.key1.toString(); const type2 = meta.type.asDoubleMap.key2.toString(); - const param1Encoded = u8aConcat(key, createTypeUnsafe(type1, key1).toU8a(true)); + const param1Encoded = u8aConcat(key, createTypeUnsafe(type1, [key1]).toU8a(true)); const param1Hashed = hasher(param1Encoded); - const param2Hashed = key2Hasher(createTypeUnsafe(type2, key2).toU8a(true)); + const param2Hashed = key2Hasher(createTypeUnsafe(type2, [key2]).toU8a(true)); return Compact.addLengthPrefix(u8aConcat(param1Hashed, param2Hashed)); } @@ -81,7 +81,7 @@ export default function createFunction ({ meta, method, prefix, section }: Creat assert(!isUndefined(arg) && !isNull(arg), `${meta.name} expects one argument`); const type = meta.type.asMap.key.toString(); - const param = createTypeUnsafe(type, arg).toU8a(); + const param = createTypeUnsafe(type, [arg]).toU8a(); key = u8aConcat(key, param); } diff --git a/packages/api/package.json b/packages/api/package.json index 6e71c702b3..70c91d0365 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -32,9 +32,9 @@ "@polkadot/rpc-core": "^0.82.0-beta.96", "@polkadot/rpc-provider": "^0.82.0-beta.96", "@polkadot/types": "^0.82.0-beta.96", - "@polkadot/util-crypto": "^0.94.1" + "@polkadot/util-crypto": "^0.95.0-beta.1" }, "devDependencies": { - "@polkadot/keyring": "^0.94.1" + "@polkadot/keyring": "^0.95.0-beta.1" } } diff --git a/packages/api/src/SignerPayload.spec.ts b/packages/api/src/SignerPayload.spec.ts index b4a3ea80e9..2903eb7688 100644 --- a/packages/api/src/SignerPayload.spec.ts +++ b/packages/api/src/SignerPayload.spec.ts @@ -3,7 +3,7 @@ // of the Apache-2.0 license. See the LICENSE file for details. import extrinsics from '@polkadot/api-metadata/extrinsics/static'; -import { createType, ClassOf, GenericMethod } from '@polkadot/types'; +import { createType, GenericMethod } from '@polkadot/types'; import SignerPayload from './SignerPayload'; @@ -66,7 +66,7 @@ describe('SignerPayload', (): void => { it('can be used as a feed to ExtrinsicPayload', (): void => { const signer = new SignerPayload(TEST).toPayload(); - const payload = new (ClassOf('ExtrinsicPayload'))(signer, { version: signer.version }); + const payload = createType('ExtrinsicPayload', signer, { version: signer.version }); expect(payload.era.toHex()).toEqual(TEST.era); expect(payload.method.toHex()).toEqual(TEST.method); diff --git a/packages/api/src/SubmittableExtrinsic.ts b/packages/api/src/SubmittableExtrinsic.ts index 78c8e2bbe1..285b09696a 100644 --- a/packages/api/src/SubmittableExtrinsic.ts +++ b/packages/api/src/SubmittableExtrinsic.ts @@ -9,7 +9,7 @@ import { ApiInterfaceRx, ApiTypes } from './types'; import BN from 'bn.js'; import { Observable, combineLatest, of } from 'rxjs'; import { first, map, mergeMap, switchMap, tap } from 'rxjs/operators'; -import { createType, ClassOf, Vec } from '@polkadot/types'; +import { createType, Vec } from '@polkadot/types'; import { isBn, isFunction, isNumber, isUndefined } from '@polkadot/util'; import filterEvents from './util/filterEvents'; @@ -113,7 +113,7 @@ export default function createSubmittableExtrinsic ( extrinsic: Method | Uint8Array | string, trackingCb?: Callback ): SubmittableExtrinsic { - const _extrinsic = new (ClassOf('Extrinsic'))(extrinsic, { version: api.extrinsicType }) as unknown as SubmittableExtrinsic; + const _extrinsic = createType('Extrinsic', extrinsic, { version: api.extrinsicType }) as unknown as SubmittableExtrinsic; const _noStatusCb = type === 'rxjs'; function updateSigner (updateId: number, status: Hash | ISubmittableResult): void { diff --git a/packages/api/src/checkTypes.manual.ts b/packages/api/src/checkTypes.manual.ts index ba0528b15d..88e6b9a662 100644 --- a/packages/api/src/checkTypes.manual.ts +++ b/packages/api/src/checkTypes.manual.ts @@ -99,7 +99,8 @@ export default async function test (): Promise { const compact = createType('Compact', 2); // const random = createType('RandomType', 2); // This one should deliberately show a TS error - const gasUnsafe = createTypeUnsafe('Gas', 2); - const overriddenUnsafe = createTypeUnsafe
('Gas', 2); + const gasUnsafe = createTypeUnsafe('Gas', [2]); + const overriddenUnsafe = createTypeUnsafe
('Gas', [2]); + console.log(balance, gas, compact, gasUnsafe, overriddenUnsafe); } diff --git a/packages/api/test/util/SingleAccountSigner.ts b/packages/api/test/util/SingleAccountSigner.ts index 10a8fbe367..fa85542ddc 100644 --- a/packages/api/test/util/SingleAccountSigner.ts +++ b/packages/api/test/util/SingleAccountSigner.ts @@ -5,7 +5,7 @@ import { Signer, SignerPayload, SignerResult } from '@polkadot/api/types'; import { KeyringPair } from '@polkadot/keyring/types'; -import { ClassOf } from '@polkadot/types'; +import { createType } from '@polkadot/types'; let id = 0; @@ -41,7 +41,7 @@ export default class SingleAccountSigner implements Signer { return new Promise((resolve): void => { setTimeout((): void => { - const signed = new (ClassOf('ExtrinsicPayload'))(payload, { version: payload.version }).sign(this.keyringPair); + const signed = createType('ExtrinsicPayload', payload, { version: payload.version }).sign(this.keyringPair); const result: SignerResult = { id: ++id, ...signed }; resolve(result); diff --git a/packages/rpc-core/package.json b/packages/rpc-core/package.json index 79d4735c96..b3838be4bc 100644 --- a/packages/rpc-core/package.json +++ b/packages/rpc-core/package.json @@ -30,7 +30,7 @@ "@polkadot/jsonrpc": "^0.82.0-beta.96", "@polkadot/rpc-provider": "^0.82.0-beta.96", "@polkadot/types": "^0.82.0-beta.96", - "@polkadot/util": "^0.94.1", + "@polkadot/util": "^0.95.0-beta.1", "rxjs": "^6.5.2" } } diff --git a/packages/rpc-core/src/index.ts b/packages/rpc-core/src/index.ts index a8489bd122..5264dd5e42 100644 --- a/packages/rpc-core/src/index.ts +++ b/packages/rpc-core/src/index.ts @@ -262,12 +262,12 @@ export default class Rpc implements RpcInterface { assert(inputs.length >= reqArgCount && inputs.length <= method.params.length, `Expected ${method.params.length} parameters${optText}, ${inputs.length} found instead`); return inputs.map((input, index): Codec => - createTypeUnsafe(method.params[index].type, input) + createTypeUnsafe(method.params[index].type, [input]) ); } private formatOutput (method: RpcMethod, params: Codec[], result?: any): Codec | (Codec | null | undefined)[] { - const base = createTypeUnsafe(method.type as string, result); + const base = createTypeUnsafe(method.type as string, [result]); if (method.type === 'StorageData') { const key = params[0] as StorageKey; @@ -310,11 +310,11 @@ export default class Rpc implements RpcInterface { if (meta.modifier.isOptional) { return new Option( createClass(type), - isNull ? null : createTypeUnsafe(type, base, true) + isNull ? null : createTypeUnsafe(type, [base], true) ); } - return createTypeUnsafe(type, isNull ? meta.fallback : base, true); + return createTypeUnsafe(type, [isNull ? meta.fallback : base], true); } private formatStorageSet (key: StorageKey, base: StorageChangeSet): Codec { @@ -337,10 +337,10 @@ export default class Rpc implements RpcInterface { if (meta.modifier.isOptional) { return new Option( createClass(type), - value.isNone ? null : createTypeUnsafe(type, value.unwrap(), true) + value.isNone ? null : createTypeUnsafe(type, [value.unwrap()], true) ); } - return createTypeUnsafe(type, value.unwrapOr(meta.fallback), true); + return createTypeUnsafe(type, [value.unwrapOr(meta.fallback)], true); } } diff --git a/packages/rpc-provider/package.json b/packages/rpc-provider/package.json index 3450bb9d4e..507352d29a 100644 --- a/packages/rpc-provider/package.json +++ b/packages/rpc-provider/package.json @@ -28,15 +28,15 @@ "dependencies": { "@babel/runtime": "^7.5.5", "@polkadot/api-metadata": "^0.82.0-beta.96", - "@polkadot/util": "^0.94.1", - "@polkadot/util-crypto": "^0.94.1", + "@polkadot/util": "^0.95.0-beta.1", + "@polkadot/util-crypto": "^0.95.0-beta.1", "@types/nock": "^10.0.3", "eventemitter3": "^4.0.0", "isomorphic-fetch": "^2.2.1", "websocket": "^1.0.29" }, "devDependencies": { - "@polkadot/keyring": "^0.94.1", + "@polkadot/keyring": "^0.95.0-beta.1", "mock-socket": "^8.0.5", "nock": "^10.0.4" } diff --git a/packages/types/package.json b/packages/types/package.json index 78671aa65a..efa4c8cdf8 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -27,12 +27,12 @@ "homepage": "https://github.com/polkadot-js/api/tree/master/packages/types#readme", "dependencies": { "@babel/runtime": "^7.5.5", - "@polkadot/util": "^0.94.1", - "@polkadot/util-crypto": "^0.94.1", + "@polkadot/util": "^0.95.0-beta.1", + "@polkadot/util-crypto": "^0.95.0-beta.1", "@types/memoizee": "^0.4.2", "memoizee": "^0.4.14" }, "devDependencies": { - "@polkadot/keyring": "^0.94.1" + "@polkadot/keyring": "^0.95.0-beta.1" } } diff --git a/packages/types/src/Metadata/util/testUtil.ts b/packages/types/src/Metadata/util/testUtil.ts index 3c23a7d5dd..415d76099f 100644 --- a/packages/types/src/Metadata/util/testUtil.ts +++ b/packages/types/src/Metadata/util/testUtil.ts @@ -62,7 +62,7 @@ export function defaultValues (rpcData: string): void { mod.storage.unwrap().items.forEach(({ fallback, name, type }): void => { it(`creates default types for ${mod.name}.${name}, type ${type}`, (): void => { expect( - (): Codec => createTypeUnsafe(type.toString(), fallback) + (): Codec => createTypeUnsafe(type.toString(), [fallback]) ).not.toThrow(); }); }); diff --git a/packages/types/src/codec/Vec.spec.ts b/packages/types/src/codec/Vec.spec.ts index 680a98fd10..8f7c57746d 100644 --- a/packages/types/src/codec/Vec.spec.ts +++ b/packages/types/src/codec/Vec.spec.ts @@ -53,9 +53,9 @@ describe('Vec', (): void => { }); it.skip('decodes a complex type via construction', (): void => { - const test = createTypeUnsafe('Vec<(PropIndex, Proposal, AccountId)>', new Uint8Array([ + const test = createTypeUnsafe('Vec<(PropIndex, Proposal, AccountId)>', [new Uint8Array([ 4, 10, 0, 0, 0, 0, 3, 80, 123, 10, 9, 34, 48, 120, 52, 50, 34, 58, 32, 34, 48, 120, 52, 51, 34, 10, 125, 10, 209, 114, 167, 76, 218, 76, 134, 89, 18, 195, 43, 160, 168, 10, 87, 174, 105, 171, 174, 65, 14, 92, 203, 89, 222, 232, 78, 47, 68, 50, 219, 79 - ])); + ])]); const first = (test as Vec)[0] as Tuple; expect((first[0] as PropIndex).toNumber()).toEqual(10); diff --git a/packages/types/src/codec/createType.spec.ts b/packages/types/src/codec/createType.spec.ts index 88f5ba98f4..2377528b0b 100644 --- a/packages/types/src/codec/createType.spec.ts +++ b/packages/types/src/codec/createType.spec.ts @@ -225,10 +225,10 @@ describe('createClass', (): void => { describe('createType', (): void => { it('allows creation of a Struct', (): void => { expect( - createTypeUnsafe('{"balance":"Balance","index":"u32"}', { + createTypeUnsafe('{"balance":"Balance","index":"u32"}', [{ balance: 1234, index: '0x10' - }).toJSON() + }]).toJSON() ).toEqual({ balance: 1234, index: 16 @@ -237,31 +237,31 @@ describe('createType', (): void => { it('allows creation of a Enum (simple)', (): void => { expect( - createTypeUnsafe('{"_enum": ["A", "B", "C"]}', 1).toJSON() + createTypeUnsafe('{"_enum": ["A", "B", "C"]}', [1]).toJSON() ).toEqual({ B: null }); }); it('allows creation of a Enum (parametrised)', (): void => { expect( - createTypeUnsafe('{"_enum": {"A": null, "B": "u32", "C": null} }', 1).toJSON() + createTypeUnsafe('{"_enum": {"A": null, "B": "u32", "C": null} }', [1]).toJSON() ).toEqual({ B: 0 }); }); it('allows creation of a Set', (): void => { expect( - createTypeUnsafe('{"_set": { "A": 1, "B": 2, "C": 4, "D": 8, "E": 16, "G": 32, "H": 64, "I": 128 } }', 1 + 4 + 16 + 64).strings + createTypeUnsafe('{"_set": { "A": 1, "B": 2, "C": 4, "D": 8, "E": 16, "G": 32, "H": 64, "I": 128 } }', [1 + 4 + 16 + 64]).strings ).toEqual(['A', 'C', 'E', 'H']); }); it('allows creation of a [u8; 8]', (): void => { expect( - createTypeUnsafe('[u8; 8]', [0x12, 0x00, 0x23, 0x00, 0x45, 0x00, 0x67, 0x00]).toHex() + createTypeUnsafe('[u8; 8]', [[0x12, 0x00, 0x23, 0x00, 0x45, 0x00, 0x67, 0x00]]).toHex() ).toEqual('0x1200230045006700'); }); it('allows creation of a [u16; 4]', (): void => { expect( - createTypeUnsafe('[u16; 4]', [0x1200, 0x2300, 0x4500, 0x6700]).toU8a() + createTypeUnsafe('[u16; 4]', [[0x1200, 0x2300, 0x4500, 0x6700]]).toU8a() ).toEqual(new Uint8Array([0x00, 0x12, 0x00, 0x23, 0x00, 0x45, 0x00, 0x67])); }); @@ -269,7 +269,7 @@ describe('createType', (): void => { const base = createType('StorageData', null); expect( - (): Codec => createTypeUnsafe('DoubleMap>', base, true) + (): Codec => createTypeUnsafe('DoubleMap>', [base], true) ).toThrow(/ Input doesn't match output, received 0x, created 0x00/); }); @@ -277,7 +277,7 @@ describe('createType', (): void => { const base = createType('StorageData', null); expect( - (): Codec => createTypeUnsafe('Vec<(BlockNumber,EventIndex)>', base, true) + (): Codec => createTypeUnsafe('Vec<(BlockNumber,EventIndex)>', [base], true) ).toThrow(/Input doesn't match output, received 0x, created 0x00/); }); @@ -298,12 +298,12 @@ describe('createType', (): void => { it('instanceof should work (complex type)', (): void => { const complexType = '{"balance":"Balance","account_id":"AccountId","log":"(u64, u32)","fromSrml":"Gas"}'; - const value = createTypeUnsafe(complexType, { + const value = createTypeUnsafe(complexType, [{ balance: 123, accountId: '', log: [456, 789], fromSrml: 0 - }); + }]); const ComplexType = createClass(complexType); expect(value instanceof ComplexType).toBe(true); diff --git a/packages/types/src/codec/createType.ts b/packages/types/src/codec/createType.ts index b3bf01ec72..82a1fe6844 100644 --- a/packages/types/src/codec/createType.ts +++ b/packages/types/src/codec/createType.ts @@ -328,9 +328,10 @@ export function getTypeClass (value: TypeDef, Fallback? throw new Error(`Unable to determine type from ${JSON.stringify(value)}`); } -function initType (Type: Constructor>, value?: any, isPedantic?: boolean): FromReg { +function initType (Type: Constructor>, params: any[] = [], isPedantic?: boolean): FromReg { try { - const created = new Type(value); + const created = new Type(...params); + const [value] = params; // in pedantic mode, actually check that the encoding matches that supplied - this // is much slower, but ensures that we have a 100% grasp on the actual provided value @@ -352,7 +353,7 @@ function initType (Type: Con return created; } catch (error) { if (Type.Fallback) { - return initType(Type.Fallback as Constructor>, value, isPedantic); + return initType(Type.Fallback as Constructor>, params, isPedantic); } throw error; @@ -364,11 +365,11 @@ function initType (Type: Con // runtime error. export function createTypeUnsafe ( type: K, - value?: any, + params: any[] = [], isPedantic?: boolean ): FromReg { try { - return initType(createClass(type), value, isPedantic); + return initType(createClass(type), params, isPedantic); } catch (error) { throw new Error(`createType(${type}):: ${error.message}`); } @@ -385,8 +386,7 @@ export function createTypeUnsafe ( type: K, - value?: any, - isPedantic?: boolean + ...params: any[] ): InterfaceRegistry[K] { - return createTypeUnsafe(type, value, isPedantic) as InterfaceRegistry[K]; + return createTypeUnsafe(type, params) as InterfaceRegistry[K]; } diff --git a/yarn.lock b/yarn.lock index 393473eb55..a9923e65c8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1853,14 +1853,14 @@ typescript "^3.5.3" vuepress "^1.0.2" -"@polkadot/keyring@^0.94.1": - version "0.94.1" - resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-0.94.1.tgz#f64743f295b0dc6b64fff6081a642174c87ade21" - integrity sha512-13BZoL6C3tg2U93HGpH44Lj8en3evrbcLCTlyM7A7mI+GPqembQtcgMnp7/gMWVXZApprhr12iBhgGsNizmcfg== +"@polkadot/keyring@^0.95.0-beta.1": + version "0.95.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-0.95.0-beta.1.tgz#f117e7dbcb3648d489b08400f72571bb3bc530a4" + integrity sha512-2Y3tdyX8qzEZ5hBuP0okeX9mapx4CtkAWxaJq10j4KlrYgNaaaAEvofzQDkJQnavcy76unwfXLcryJ2WDcKikA== dependencies: "@babel/runtime" "^7.5.5" - "@polkadot/util" "^0.94.1" - "@polkadot/util-crypto" "^0.94.1" + "@polkadot/util" "^0.95.0-beta.1" + "@polkadot/util-crypto" "^0.95.0-beta.1" "@polkadot/ts@^0.1.62": version "0.1.62" @@ -1869,13 +1869,13 @@ dependencies: "@types/chrome" "^0.0.86" -"@polkadot/util-crypto@^0.94.1": - version "0.94.1" - resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-0.94.1.tgz#64c076567060c15a752fe1bb046cc902d07a14ca" - integrity sha512-+JB2fjNQn6Kba29gd3R5Bg0GLo9dDsRqayumSkusq3AeXI9YEZmjwstze6gGbGZJscSoyuuoCTzljWOr/RIhzQ== +"@polkadot/util-crypto@^0.95.0-beta.1": + version "0.95.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-0.95.0-beta.1.tgz#d66fdf9c23aebf89056eaf30463108726d6c1fb7" + integrity sha512-KooBWOeTCAPxfDWnkcmskBArhfqyjMAaQltVGD8DfdOIBN2jji1ERq3tMi3PWzuyP6EUX8tP8CJ/6f43sJzKMg== dependencies: "@babel/runtime" "^7.5.5" - "@polkadot/util" "^0.94.1" + "@polkadot/util" "^0.95.0-beta.1" "@polkadot/wasm-crypto" "^0.13.1" "@types/bip39" "^2.4.2" "@types/bs58" "^4.0.0" @@ -1891,10 +1891,10 @@ tweetnacl "^1.0.1" xxhashjs "^0.2.2" -"@polkadot/util@^0.94.1": - version "0.94.1" - resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-0.94.1.tgz#5d1f73ffbf79b16009de45180e5184dfc2110800" - integrity sha512-HpKz0PDgYcvoh2xvT1e5n3H3soXce8vY5h3aq3vqmWfdSUoSo9wIfCfHrOo7Z130Z/qegqtAtJVj4+8434+Q8w== +"@polkadot/util@^0.95.0-beta.1": + version "0.95.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-0.95.0-beta.1.tgz#c36b0ea10e7385e31c89d400ae9cd5cc3ccfd32a" + integrity sha512-awFjVNZKvMWiezSg7PFpeED1NgcjQ3DuC7XjiI6tiUGfmcLAgJiG8zevIuU7dhLUAdMBUp8DfynV7S/r7+epWA== dependencies: "@babel/runtime" "^7.5.5" "@types/bn.js" "^4.11.5"