From 506b042f8cd4dfe6918df4da46e49065e8a38ee7 Mon Sep 17 00:00:00 2001 From: Jaco Greeff Date: Sun, 3 Nov 2019 11:38:36 +0100 Subject: [PATCH] Remove derive memos (#1538) * Remove derive memos * Remove outer memo * Over-eager replace --- packages/api-derive/package.json | 2 +- .../api-derive/src/accounts/idAndIndex.ts | 11 ++-- packages/api-derive/src/accounts/idToIndex.ts | 11 ++-- packages/api-derive/src/accounts/indexToId.ts | 29 +++++------ packages/api-derive/src/accounts/indexes.ts | 51 +++++++++---------- packages/api-derive/src/accounts/info.ts | 19 ++++--- packages/api-derive/src/balances/all.ts | 10 ++-- packages/api-derive/src/balances/fees.ts | 20 ++++---- .../api-derive/src/balances/votingBalances.ts | 10 ++-- .../balances/votingBalancesNominatorsFor.ts | 10 ++-- packages/api-derive/src/chain/bestNumber.ts | 11 ++-- .../src/chain/bestNumberFinalized.ts | 11 ++-- .../api-derive/src/chain/bestNumberLag.ts | 11 ++-- packages/api-derive/src/chain/getHeader.ts | 11 ++-- .../api-derive/src/chain/subscribeNewHeads.ts | 11 ++-- packages/api-derive/src/contracts/fees.ts | 10 ++-- .../src/democracy/referendumInfo.ts | 10 ++-- .../src/democracy/referendumInfos.ts | 10 ++-- .../src/democracy/referendumVotesFor.ts | 13 +++-- .../api-derive/src/democracy/referendums.ts | 15 +++--- packages/api-derive/src/democracy/votes.ts | 10 ++-- .../api-derive/src/elections/approvalsOf.ts | 11 ++-- .../api-derive/src/elections/approvalsOfAt.ts | 11 ++-- packages/api-derive/src/elections/info.ts | 11 ++-- .../src/elections/voterPositions.ts | 11 ++-- packages/api-derive/src/elections/voters.ts | 26 +++++----- .../src/imOnline/receivedHeartbeats.ts | 10 ++-- packages/api-derive/src/session/eraLength.ts | 11 ++-- .../api-derive/src/session/eraProgress.ts | 11 ++-- packages/api-derive/src/session/indexes.ts | 11 ++-- packages/api-derive/src/session/info.ts | 29 +++++------ .../api-derive/src/session/sessionProgress.ts | 11 ++-- .../api-derive/src/staking/controllers.ts | 11 ++-- packages/api-derive/src/staking/info.ts | 10 ++-- packages/api-derive/src/staking/infoStash.ts | 19 ++++--- packages/api-derive/src/staking/overview.ts | 11 ++-- .../api-derive/src/staking/recentlyOffline.ts | 11 ++-- packages/api-derive/src/staking/validators.ts | 11 ++-- packages/api-metadata/package.json | 6 +-- packages/api/package.json | 6 +-- packages/rpc-core/package.json | 2 +- packages/rpc-provider/package.json | 6 +-- packages/types/package.json | 6 +-- yarn.lock | 30 +++++------ 44 files changed, 273 insertions(+), 305 deletions(-) diff --git a/packages/api-derive/package.json b/packages/api-derive/package.json index acd263ac0c..9894071c36 100644 --- a/packages/api-derive/package.json +++ b/packages/api-derive/package.json @@ -32,6 +32,6 @@ "@polkadot/types": "^0.96.0-beta.23" }, "devDependencies": { - "@polkadot/keyring": "^1.6.1" + "@polkadot/keyring": "^1.7.0-beta.1" } } diff --git a/packages/api-derive/src/accounts/idAndIndex.ts b/packages/api-derive/src/accounts/idAndIndex.ts index bb85229b83..d3f7a69778 100644 --- a/packages/api-derive/src/accounts/idAndIndex.ts +++ b/packages/api-derive/src/accounts/idAndIndex.ts @@ -13,7 +13,7 @@ import { createType } from '@polkadot/types'; import { idToIndex } from './idToIndex'; import { indexToId } from './indexToId'; -import { drr, memo } from '../util'; +import { drr } from '../util'; interface Calls { idToIndexCall (accountId: string | AccountId): Observable; @@ -60,13 +60,12 @@ function retrieve (address: Address | AccountId | AccountIndex | string | null | * }); * ``` */ -export const idAndIndex = memo((api: ApiInterfaceRx): (address?: Address | AccountId | AccountIndex | string | null) => Observable => { +export function idAndIndex (api: ApiInterfaceRx): (address?: Address | AccountId | AccountIndex | string | null) => Observable { const calls = { idToIndexCall: idToIndex(api), indexToIdCall: indexToId(api) }; - return memo((address?: Address | AccountId | AccountIndex | string | null): Observable => - retrieve(address, calls).pipe(drr()) - ); -}, true); + return (address?: Address | AccountId | AccountIndex | string | null): Observable => + retrieve(address, calls).pipe(drr()); +} diff --git a/packages/api-derive/src/accounts/idToIndex.ts b/packages/api-derive/src/accounts/idToIndex.ts index 1a7be86160..a294a85fff 100644 --- a/packages/api-derive/src/accounts/idToIndex.ts +++ b/packages/api-derive/src/accounts/idToIndex.ts @@ -9,7 +9,7 @@ import { map, startWith } from 'rxjs/operators'; import { ApiInterfaceRx } from '@polkadot/api/types'; import { indexes, AccountIndexes } from './indexes'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name idToIndex @@ -25,16 +25,15 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const idToIndex = memo((api: ApiInterfaceRx): (accountId: AccountId | string) => Observable => { +export function idToIndex (api: ApiInterfaceRx): (accountId: AccountId | string) => Observable { const indexesCall = indexes(api); - return memo((accountId: AccountId | string): Observable => + return (accountId: AccountId | string): Observable => indexesCall().pipe( startWith({}), map((indexes: AccountIndexes): AccountIndex | undefined => (indexes || {})[accountId.toString()] ), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/accounts/indexToId.ts b/packages/api-derive/src/accounts/indexToId.ts index bbc93afbd1..d3d68c7cd5 100644 --- a/packages/api-derive/src/accounts/indexToId.ts +++ b/packages/api-derive/src/accounts/indexToId.ts @@ -10,7 +10,7 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { ENUMSET_SIZE } from '@polkadot/types/primitive/Generic/AccountIndex'; import { createType, ClassOf, Vec } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name indexToId @@ -25,21 +25,20 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const indexToId = memo((api: ApiInterfaceRx): (accountIndex: AccountIndex | string) => Observable => { - return memo((_accountIndex: AccountIndex | string): Observable => { - const querySection = api.query.indices || api.query.balances; +export function indexToId (api: ApiInterfaceRx): (accountIndex: AccountIndex | string) => Observable { + const querySection = api.query.indices || api.query.balances; + + return (_accountIndex: AccountIndex | string): Observable => { const accountIndex = _accountIndex instanceof ClassOf('AccountIndex') ? _accountIndex : createType('AccountIndex', _accountIndex); - return querySection - .enumSet>(accountIndex.div(ENUMSET_SIZE)) - .pipe( - startWith([]), - map((accounts): AccountId | undefined => - (accounts || [])[accountIndex.mod(ENUMSET_SIZE).toNumber()] - ), - drr() - ); - }); -}, true); + return querySection.enumSet>(accountIndex.div(ENUMSET_SIZE)).pipe( + startWith([]), + map((accounts): AccountId | undefined => + (accounts || [])[accountIndex.mod(ENUMSET_SIZE).toNumber()] + ), + drr() + ); + }; +} diff --git a/packages/api-derive/src/accounts/indexes.ts b/packages/api-derive/src/accounts/indexes.ts index 20f061821a..6874b54db2 100644 --- a/packages/api-derive/src/accounts/indexes.ts +++ b/packages/api-derive/src/accounts/indexes.ts @@ -10,7 +10,7 @@ import { map, switchMap } from 'rxjs/operators'; import { ENUMSET_SIZE } from '@polkadot/types/primitive/Generic/AccountIndex'; import { createType } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; export type AccountIndexes = Record; @@ -31,31 +31,28 @@ const enumsetSize = ENUMSET_SIZE.toNumber(); * }); * ``` */ -export const indexes = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => { - return api.query.indices - .nextEnumSet() - .pipe( - // use the nextEnumSet (which is a counter of the number of sets) to construct - // a range of values to query [0, 1, 2, ...]. Retrieve the full enum set for the - // specific index - each query can return up to ENUMSET_SIZE (64) records, each - // containing an AccountId - switchMap((next: AccountIndex): Observable => - api.query.indices.enumSet.multi([...Array(next.toNumber() + 1).keys()]) as Observable - ), - map((all: (AccountId[] | undefined)[]): AccountIndexes => - (all || []).reduce((result, list, outerIndex): AccountIndexes => { - (list || []).forEach((accountId, innerIndex): void => { - // re-create the index based on position 0 is [0][0] and likewise - // 64 (0..63 in first) is [1][0] (the first index value in set 2) - const index = (outerIndex * enumsetSize) + innerIndex; +export function indexes (api: ApiInterfaceRx): () => Observable { + return (): Observable => + api.query.indices.nextEnumSet().pipe( + // use the nextEnumSet (which is a counter of the number of sets) to construct + // a range of values to query [0, 1, 2, ...]. Retrieve the full enum set for the + // specific index - each query can return up to ENUMSET_SIZE (64) records, each + // containing an AccountId + switchMap((next: AccountIndex): Observable => + api.query.indices.enumSet.multi([...Array(next.toNumber() + 1).keys()]) as Observable + ), + map((all: (AccountId[] | undefined)[]): AccountIndexes => + (all || []).reduce((result, list, outerIndex): AccountIndexes => { + (list || []).forEach((accountId, innerIndex): void => { + // re-create the index based on position 0 is [0][0] and likewise + // 64 (0..63 in first) is [1][0] (the first index value in set 2) + const index = (outerIndex * enumsetSize) + innerIndex; - result[accountId.toString()] = createType('AccountIndex', index); - }); + result[accountId.toString()] = createType('AccountIndex', index); + }); - return result; - }, {} as AccountIndexes)), - drr() - ); - }); -}, true); + return result; + }, {} as AccountIndexes)), + drr() + ); +} diff --git a/packages/api-derive/src/accounts/info.ts b/packages/api-derive/src/accounts/info.ts index 5e9afe0635..91b59348d4 100644 --- a/packages/api-derive/src/accounts/info.ts +++ b/packages/api-derive/src/accounts/info.ts @@ -12,7 +12,7 @@ import { map, switchMap } from 'rxjs/operators'; import { Bytes, Option, u32 } from '@polkadot/types'; import { u8aToString } from '@polkadot/util'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { idAndIndex } from './idAndIndex'; function retrieveNick (api: ApiInterfaceRx): (accountId?: AccountId) => Observable | undefined> { @@ -26,18 +26,18 @@ function retrieveNick (api: ApiInterfaceRx): (accountId?: AccountId) => Observab * @name info * @description Returns aux. info with regards to an account, current that includes the accountId, accountIndex and nickname */ -export const info = memo((api: ApiInterfaceRx): (address?: AccountIndex | AccountId | Address | string | null) => Observable => { +export function info (api: ApiInterfaceRx): (address?: AccountIndex | AccountId | Address | string | null) => Observable { const idAndIndexCall = idAndIndex(api); const nickCall = retrieveNick(api); - return memo((address?: AccountIndex | AccountId | Address | string | null): Observable => + return (address?: AccountIndex | AccountId | Address | string | null): Observable => idAndIndexCall(address).pipe( - switchMap(([accountId, accountIndex]): Observable<[DeriveAccountInfo, Option<[Bytes, Balance] & Codec>?]> => { - return combineLatest([ + switchMap(([accountId, accountIndex]): Observable<[DeriveAccountInfo, Option<[Bytes, Balance] & Codec>?]> => + combineLatest([ of({ accountId, accountIndex }), nickCall(accountId) - ]); - }), + ]) + ), map(([{ accountId, accountIndex }, nameOf]): DeriveAccountInfo => ({ accountId, accountIndex, @@ -46,6 +46,5 @@ export const info = memo((api: ApiInterfaceRx): (address?: AccountIndex | Accoun : undefined })), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/balances/all.ts b/packages/api-derive/src/balances/all.ts index 2f645247ce..b789cae5cf 100644 --- a/packages/api-derive/src/balances/all.ts +++ b/packages/api-derive/src/balances/all.ts @@ -14,7 +14,7 @@ import { bnMax } from '@polkadot/util'; import { info } from '../accounts/info'; import { bestNumber } from '../chain/bestNumber'; import { DerivedBalances } from '../types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; type ResultBalance = [Balance, Balance, BalanceLock[], Option]; type Result = [AccountId, BlockNumber, ResultBalance, Index]; @@ -77,11 +77,11 @@ function queryBalances (api: ApiInterfaceRx, accountId: AccountId): Observable Observable => { +export function all (api: ApiInterfaceRx): (address: AccountIndex | AccountId | Address | string) => Observable { const bestNumberCall = bestNumber(api); const infoCall = info(api); - return memo((address: AccountIndex | AccountId | Address | string): Observable => { + return (address: AccountIndex | AccountId | Address | string): Observable => { return infoCall(address).pipe( switchMap(({ accountId }): Observable => (accountId @@ -102,5 +102,5 @@ export const all = memo((api: ApiInterfaceRx): (address: AccountIndex | AccountI map(calcBalances), drr() ); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/balances/fees.ts b/packages/api-derive/src/balances/fees.ts index f6d5d30fa0..85b2ae01ae 100644 --- a/packages/api-derive/src/balances/fees.ts +++ b/packages/api-derive/src/balances/fees.ts @@ -9,7 +9,7 @@ import { DerivedFees } from '../types'; import { Observable, of } from 'rxjs'; import { map } from 'rxjs/operators'; -import { drr, memo } from '../util'; +import { drr } from '../util'; type Result = [Balance, Balance, Balance, Balance, Balance]; @@ -51,13 +51,13 @@ function queryV1 (api: ApiInterfaceRx): Observable { * }); * ``` */ -export const fees = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => { - return ( - api.consts.balances - ? queryV2(api) - : queryV1(api) - ).pipe( +export function fees (api: ApiInterfaceRx): () => Observable { + const query = api.consts.balances + ? queryV2 + : queryV1; + + return (): Observable => { + return query(api).pipe( map(([creationFee, existentialDeposit, transferFee, transactionBaseFee, transactionByteFee]): DerivedFees => ({ creationFee, existentialDeposit, @@ -67,5 +67,5 @@ export const fees = memo((api: ApiInterfaceRx): () => Observable => })), drr() ); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/balances/votingBalances.ts b/packages/api-derive/src/balances/votingBalances.ts index 263eacf54d..d886a03529 100644 --- a/packages/api-derive/src/balances/votingBalances.ts +++ b/packages/api-derive/src/balances/votingBalances.ts @@ -8,11 +8,11 @@ import { combineLatest, Observable, of } from 'rxjs'; import { ApiInterfaceRx } from '@polkadot/api/types'; import { DerivedBalances } from '../types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { all } from './all'; -export const votingBalances = memo((api: ApiInterfaceRx): (addresses?: (AccountId | AccountIndex | Address | string)[]) => Observable => { - return memo((addresses?: (AccountId | AccountIndex | Address | string)[]): Observable => { +export function votingBalances (api: ApiInterfaceRx): (addresses?: (AccountId | AccountIndex | Address | string)[]) => Observable { + return (addresses?: (AccountId | AccountIndex | Address | string)[]): Observable => { return ( !addresses || !addresses.length ? of([] as DerivedBalances[]) @@ -20,5 +20,5 @@ export const votingBalances = memo((api: ApiInterfaceRx): (addresses?: (AccountI ).pipe( drr() ); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/balances/votingBalancesNominatorsFor.ts b/packages/api-derive/src/balances/votingBalancesNominatorsFor.ts index 295a3d9d31..88302f684c 100644 --- a/packages/api-derive/src/balances/votingBalancesNominatorsFor.ts +++ b/packages/api-derive/src/balances/votingBalancesNominatorsFor.ts @@ -11,13 +11,13 @@ import { Vec } from '@polkadot/types'; import { info } from '../accounts/info'; import { DerivedBalances } from '../types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { votingBalances } from './votingBalances'; -export const votingBalancesNominatorsFor = memo((api: ApiInterfaceRx): (address: AccountId | AccountIndex | Address | string) => Observable => { +export function votingBalancesNominatorsFor (api: ApiInterfaceRx): (address: AccountId | AccountIndex | Address | string) => Observable { const infoCall = info(api); - return memo((address: AccountId | AccountIndex | Address | string): Observable => { + return (address: AccountId | AccountIndex | Address | string): Observable => { return infoCall(address).pipe( switchMap(({ accountId }): Observable => accountId @@ -27,5 +27,5 @@ export const votingBalancesNominatorsFor = memo((api: ApiInterfaceRx): (address: switchMap(votingBalances(api)), drr() ); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/chain/bestNumber.ts b/packages/api-derive/src/chain/bestNumber.ts index 19e16f3dd8..fcf06ed9ab 100644 --- a/packages/api-derive/src/chain/bestNumber.ts +++ b/packages/api-derive/src/chain/bestNumber.ts @@ -8,7 +8,7 @@ import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { ApiInterfaceRx } from '@polkadot/api/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name bestNumber @@ -22,11 +22,10 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const bestNumber = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => +export function bestNumber (api: ApiInterfaceRx): () => Observable { + return (): Observable => api.rpc.chain.subscribeNewHeads().pipe( map((header): BlockNumber => header.number.unwrap()), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/chain/bestNumberFinalized.ts b/packages/api-derive/src/chain/bestNumberFinalized.ts index 60f89b366c..6462c6ec6b 100644 --- a/packages/api-derive/src/chain/bestNumberFinalized.ts +++ b/packages/api-derive/src/chain/bestNumberFinalized.ts @@ -8,7 +8,7 @@ import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { ApiInterfaceRx } from '@polkadot/api/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name bestNumberFinalized @@ -23,11 +23,10 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const bestNumberFinalized = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => +export function bestNumberFinalized (api: ApiInterfaceRx): () => Observable { + return (): Observable => api.rpc.chain.subscribeFinalizedHeads().pipe( map((header): BlockNumber => header.number.unwrap()), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/chain/bestNumberLag.ts b/packages/api-derive/src/chain/bestNumberLag.ts index cb3f5cd78e..9be067e986 100644 --- a/packages/api-derive/src/chain/bestNumberLag.ts +++ b/packages/api-derive/src/chain/bestNumberLag.ts @@ -9,7 +9,7 @@ import { map } from 'rxjs/operators'; import { ApiInterfaceRx } from '@polkadot/api/types'; import { createType } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { bestNumber } from './bestNumber'; import { bestNumberFinalized } from './bestNumberFinalized'; @@ -26,11 +26,11 @@ import { bestNumberFinalized } from './bestNumberFinalized'; * }); * ``` */ -export const bestNumberLag = memo((api: ApiInterfaceRx): () => Observable => { +export function bestNumberLag (api: ApiInterfaceRx): () => Observable { const bestNumberCall = bestNumber(api); const bestNumberFinalizedCall = bestNumberFinalized(api); - return memo((): Observable => + return (): Observable => combineLatest([ bestNumberCall(), bestNumberFinalizedCall() @@ -39,6 +39,5 @@ export const bestNumberLag = memo((api: ApiInterfaceRx): () => Observable Observable => { - return memo((hash: Uint8Array | string): Observable => +export function getHeader (api: ApiInterfaceRx): (hash: Uint8Array | string) => Observable { + return (hash: Uint8Array | string): Observable => combineLatest([ api.rpc.chain.getHeader(hash), api.query.session.validators.at(hash) as Observable> @@ -43,6 +43,5 @@ export const getHeader = memo((api: ApiInterfaceRx): (hash: Uint8Array | string) of() ), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/chain/subscribeNewHeads.ts b/packages/api-derive/src/chain/subscribeNewHeads.ts index d6e5be43ec..37cb7abec6 100644 --- a/packages/api-derive/src/chain/subscribeNewHeads.ts +++ b/packages/api-derive/src/chain/subscribeNewHeads.ts @@ -10,7 +10,7 @@ import { map } from 'rxjs/operators'; import { Vec } from '@polkadot/types'; import { HeaderExtended } from '../type'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name subscribeNewHeads @@ -25,8 +25,8 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const subscribeNewHeads = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => +export function subscribeNewHeads (api: ApiInterfaceRx): () => Observable { + return (): Observable => combineLatest([ api.rpc.chain.subscribeNewHeads(), api.query.session.validators>() @@ -35,6 +35,5 @@ export const subscribeNewHeads = memo((api: ApiInterfaceRx): () => Observable { * }); * ``` */ -export const fees = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => { +export function fees (api: ApiInterfaceRx): () => Observable { + return (): Observable => { if (api.query.contract && !api.query.contract.rentByteFee) { return queryV1(api); } @@ -122,5 +122,5 @@ export const fees = memo((api: ApiInterfaceRx): () => Observable): Option { const info = optionInfo @@ -27,8 +27,8 @@ export function constructInfo (index: BN | number, optionInfo?: Option Observable> => { - return memo((index: BN | number): Observable> => { +export function referendumInfo (api: ApiInterfaceRx): (index: BN | number) => Observable> { + return (index: BN | number): Observable> => { return (api.query.democracy.referendumInfoOf>(index)) .pipe( map((optionInfo): Option => @@ -36,5 +36,5 @@ export const referendumInfo = memo((api: ApiInterfaceRx): (index: BN | number) = ), drr() ); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/democracy/referendumInfos.ts b/packages/api-derive/src/democracy/referendumInfos.ts index f4ca188a7b..8b49e80e1c 100644 --- a/packages/api-derive/src/democracy/referendumInfos.ts +++ b/packages/api-derive/src/democracy/referendumInfos.ts @@ -11,11 +11,11 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { Option, Vec } from '@polkadot/types'; import { ReferendumInfoExtended } from '../type'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { constructInfo } from './referendumInfo'; -export const referendumInfos = memo((api: ApiInterfaceRx): (ids?: (BN | number)[]) => Observable[]> => { - return memo((ids: (BN | number)[] = []): Observable[]> => { +export function referendumInfos (api: ApiInterfaceRx): (ids?: (BN | number)[]) => Observable[]> { + return (ids: (BN | number)[] = []): Observable[]> => { return ( !ids || !ids.length ? of([] as Option[]) @@ -28,5 +28,5 @@ export const referendumInfos = memo((api: ApiInterfaceRx): (ids?: (BN | number)[ ), drr() ); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/democracy/referendumVotesFor.ts b/packages/api-derive/src/democracy/referendumVotesFor.ts index db08af2faa..acf8762933 100644 --- a/packages/api-derive/src/democracy/referendumVotesFor.ts +++ b/packages/api-derive/src/democracy/referendumVotesFor.ts @@ -11,16 +11,16 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { Vec, createType } from '@polkadot/types'; import { DerivedBalances, DerivedReferendumVote } from '../types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { votes } from './votes'; import { votingBalances } from '../balances/votingBalances'; -export const referendumVotesFor = memo((api: ApiInterfaceRx): (referendumId: BN | number) => Observable => { +export function referendumVotesFor (api: ApiInterfaceRx): (referendumId: BN | number) => Observable { const votesCall = votes(api); const votingBalancesCall = votingBalances(api); - return memo((referendumId: BN | number): Observable => - (api.query.democracy.votersFor>(referendumId)).pipe( + return (referendumId: BN | number): Observable => + api.query.democracy.votersFor>(referendumId).pipe( switchMap((votersFor): Observable<[Vec, Vote[], DerivedBalances[]]> => combineLatest([ of(votersFor), @@ -36,6 +36,5 @@ export const referendumVotesFor = memo((api: ApiInterfaceRx): (referendumId: BN } as unknown as DerivedReferendumVote)) ), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/democracy/referendums.ts b/packages/api-derive/src/democracy/referendums.ts index ccc93cf392..edccf12e03 100644 --- a/packages/api-derive/src/democracy/referendums.ts +++ b/packages/api-derive/src/democracy/referendums.ts @@ -11,17 +11,17 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { Option } from '@polkadot/types'; import { ReferendumInfoExtended } from '../type'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { referendumInfos } from './referendumInfos'; -export const referendums = memo((api: ApiInterfaceRx): () => Observable[]> => { +export function referendums (api: ApiInterfaceRx): () => Observable[]> { const referendumInfosCall = referendumInfos(api); - return memo((): Observable[]> => - (api.queryMulti([ + return (): Observable[]> => + api.queryMulti<[ReferendumIndex, ReferendumIndex]>([ api.query.democracy.nextTally, api.query.democracy.referendumCount - ]) as Observable<[ReferendumIndex?, ReferendumIndex?]>).pipe( + ]).pipe( switchMap(([nextTally, referendumCount]): Observable[]> => referendumCount && nextTally && referendumCount.gt(nextTally) && referendumCount.gtn(0) ? referendumInfosCall( @@ -32,6 +32,5 @@ export const referendums = memo((api: ApiInterfaceRx): () => Observable Observable => { - return memo((referendumId: BN, accountIds: AccountId[] = []): Observable => { +export function votes (api: ApiInterfaceRx): (referendumId: BN, accountIds?: AccountId[]) => Observable { + return (referendumId: BN, accountIds: AccountId[] = []): Observable => { return (( !accountIds || !accountIds.length ? of([]) @@ -22,5 +22,5 @@ export const votes = memo((api: ApiInterfaceRx): (referendumId: BN, accountIds?: ) ) ) as Observable>).pipe(drr()); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/elections/approvalsOf.ts b/packages/api-derive/src/elections/approvalsOf.ts index 168eb4f08d..8893438d53 100644 --- a/packages/api-derive/src/elections/approvalsOf.ts +++ b/packages/api-derive/src/elections/approvalsOf.ts @@ -9,7 +9,7 @@ import { Observable } from 'rxjs'; import { Vec } from '@polkadot/types'; import { switchMap, map } from 'rxjs/operators'; import { approvalFlagsToBools } from '../util/approvalFlagsToBools'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name approvalsOf @@ -23,8 +23,8 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const approvalsOf = memo((api: ApiInterfaceRx): (who: AccountId) => Observable => { - return memo((who: AccountId | string): Observable => +export function approvalsOf (api: ApiInterfaceRx): (who: AccountId) => Observable { + return (who: AccountId | string): Observable => api.query.elections.nextVoterSet().pipe( switchMap((nextVoterSet: SetIndex): Observable[]> => api.query.elections.approvalsOf.multi( @@ -39,6 +39,5 @@ export const approvalsOf = memo((api: ApiInterfaceRx): (who: AccountId) => Obser ) ), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/elections/approvalsOfAt.ts b/packages/api-derive/src/elections/approvalsOfAt.ts index 1257f2a566..ec4021f1e7 100644 --- a/packages/api-derive/src/elections/approvalsOfAt.ts +++ b/packages/api-derive/src/elections/approvalsOfAt.ts @@ -11,7 +11,7 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { Vec } from '@polkadot/types'; import { approvalFlagsToBools } from '../util/approvalFlagsToBools'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name approvalsOfAt @@ -25,11 +25,10 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const approvalsOfAt = memo((api: ApiInterfaceRx): (who: AccountId, at: SetIndex) => Observable => { - return memo((who: AccountId | string, at: SetIndex | BN | number): Observable => +export function approvalsOfAt (api: ApiInterfaceRx): (who: AccountId, at: SetIndex) => Observable { + return (who: AccountId | string, at: SetIndex | BN | number): Observable => api.query.elections.approvalsOf>([who.toString(), at]).pipe( map((flags: Vec): boolean[] => approvalFlagsToBools(flags)), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/elections/info.ts b/packages/api-derive/src/elections/info.ts index 6160a0fbe2..dca1141a73 100644 --- a/packages/api-derive/src/elections/info.ts +++ b/packages/api-derive/src/elections/info.ts @@ -11,7 +11,7 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { createType, Vec, u32 } from '@polkadot/types'; import { DerivedElectionsInfo } from '../types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; type ResultElectionsInner = [u32, u32, Vec<[AccountId, BlockNumber] & Codec>, SetIndex, BlockNumber, VoteIndex, SetIndex]; type ResultElections = [Vec, ResultElectionsInner]; @@ -89,10 +89,9 @@ function queryPhragmen (api: ApiInterfaceRx): Observable { * }); * ``` */ -export const info = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => { - return api.query.electionsPhragmen +export function info (api: ApiInterfaceRx): () => Observable { + return (): Observable => + api.query.electionsPhragmen ? queryPhragmen(api) : queryElections(api); - }); -}, true); +} diff --git a/packages/api-derive/src/elections/voterPositions.ts b/packages/api-derive/src/elections/voterPositions.ts index fd0284ece8..a734cfee14 100644 --- a/packages/api-derive/src/elections/voterPositions.ts +++ b/packages/api-derive/src/elections/voterPositions.ts @@ -11,7 +11,7 @@ import BN from 'bn.js'; import { of, combineLatest, Observable } from 'rxjs'; import { switchMap, map } from 'rxjs/operators'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @name voterPositions @@ -26,8 +26,8 @@ import { drr, memo } from '../util'; * }); * ``` */ -export const voterPositions = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => +export function voterPositions (api: ApiInterfaceRx): () => Observable { + return (): Observable => api.query.elections.nextVoterSet().pipe( switchMap((nextVoterSet: SetIndex): Observable<[BN, Vec>[]]> => combineLatest( of(api.consts.elections.voterSetSize) as any as Observable, @@ -54,6 +54,5 @@ export const voterPositions = memo((api: ApiInterfaceRx): () => Observable Observable> => { +export function voters (api: ApiInterfaceRx): () => Observable> { const voterPositionsCall = voterPositions(api); - return memo((): Observable> => + return (): Observable> => voterPositionsCall().pipe( - map( - (voterPositions: DerivedVoterPositions): Vec => - createType( - 'Vec', - Object.entries(voterPositions) - .sort((a, b): 0 | 1 | -1 => a[1].globalIndex.cmp(b[1].globalIndex)) - .map(([accountId]): AccountId => createType('AccountId', accountId)) - ) + map((voterPositions: DerivedVoterPositions): Vec => + createType( + 'Vec', + Object.entries(voterPositions) + .sort((a, b): number => a[1].globalIndex.cmp(b[1].globalIndex)) + .map(([accountId]): AccountId => createType('AccountId', accountId)) + ) ), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/imOnline/receivedHeartbeats.ts b/packages/api-derive/src/imOnline/receivedHeartbeats.ts index 7d590f1e2e..5dd069e6e7 100644 --- a/packages/api-derive/src/imOnline/receivedHeartbeats.ts +++ b/packages/api-derive/src/imOnline/receivedHeartbeats.ts @@ -11,15 +11,15 @@ import { ApiInterfaceRx } from '@polkadot/api/types'; import { Bytes, Option, u32 } from '@polkadot/types'; import { overview as stakingOverview } from '../staking'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @description Return a boolean array indicating whether the passed accounts had received heartbeats in the current session */ -export const receivedHeartbeats = memo((api: ApiInterfaceRx): () => Observable => { +export function receivedHeartbeats (api: ApiInterfaceRx): () => Observable { const stakingOverviewvCall = stakingOverview(api); - return memo((): Observable => { + return (): Observable => { return api.query.imOnline && api.query.imOnline.receivedHeartbeats && api.query.imOnline.authoredBlocks ? stakingOverviewvCall().pipe( switchMap(({ currentIndex, validators }): Observable<[AccountId[], Option[], u32[]]> => @@ -42,5 +42,5 @@ export const receivedHeartbeats = memo((api: ApiInterfaceRx): () => Observable Observable => { +export function eraLength (api: ApiInterfaceRx): () => Observable { const infoCall = info(api); - return memo((): Observable => + return (): Observable => infoCall().pipe( map(({ eraLength }): BlockNumber => eraLength), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/session/eraProgress.ts b/packages/api-derive/src/session/eraProgress.ts index f07cc3cadb..7f790219f9 100644 --- a/packages/api-derive/src/session/eraProgress.ts +++ b/packages/api-derive/src/session/eraProgress.ts @@ -8,16 +8,15 @@ import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { ApiInterfaceRx } from '@polkadot/api/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { info } from './info'; -export const eraProgress = memo((api: ApiInterfaceRx): () => Observable => { +export function eraProgress (api: ApiInterfaceRx): () => Observable { const infoCall = info(api); - return memo((): Observable => + return (): Observable => infoCall().pipe( map(({ eraProgress }): BlockNumber => eraProgress), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/session/indexes.ts b/packages/api-derive/src/session/indexes.ts index ae503eae5f..199a358a24 100644 --- a/packages/api-derive/src/session/indexes.ts +++ b/packages/api-derive/src/session/indexes.ts @@ -10,10 +10,10 @@ import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { u32 } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; -export const indexes = memo((api: ApiInterfaceRx): () => Observable => { - return memo((): Observable => +export function indexes (api: ApiInterfaceRx): () => Observable { + return (): Observable => api.queryMulti<[SessionIndex, EraIndex, u32]>([ api.query.session.currentIndex, api.query.staking.currentEra, @@ -23,6 +23,5 @@ export const indexes = memo((api: ApiInterfaceRx): () => Observable Observable => { +export function info (api: ApiInterfaceRx): () => Observable { const calls = { bestNumberCall: bestNumber(api), indexesCall: indexes(api) }; + const query = api.consts.staking + ? api.consts.babe + ? infoLatestBabe // 2.x with Babe + : infoLatestAura // 2.x with Aura (not all info there) + : infoV1; - return memo((): Observable => { - return api.consts.staking - ? api.consts.babe - ? infoLatestBabe(api, calls) // 2.x with Babe - : infoLatestAura(api, calls) // 2.x with Aura (not all info there) - : infoV1(api, calls); // 1.x - }); -}, true); + return (): Observable => + query(api, calls).pipe(drr()); +} diff --git a/packages/api-derive/src/session/sessionProgress.ts b/packages/api-derive/src/session/sessionProgress.ts index 5bdb8c1624..eded8c991a 100644 --- a/packages/api-derive/src/session/sessionProgress.ts +++ b/packages/api-derive/src/session/sessionProgress.ts @@ -8,16 +8,15 @@ import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { ApiInterfaceRx } from '@polkadot/api/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { info } from './info'; -export const sessionProgress = memo((api: ApiInterfaceRx): () => Observable => { +export function sessionProgress (api: ApiInterfaceRx): () => Observable { const infoCall = info(api); - return memo((): Observable => + return (): Observable => infoCall().pipe( map(({ sessionProgress }): BlockNumber => sessionProgress), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/staking/controllers.ts b/packages/api-derive/src/staking/controllers.ts index 1c6c66d82b..438c0edcea 100644 --- a/packages/api-derive/src/staking/controllers.ts +++ b/packages/api-derive/src/staking/controllers.ts @@ -10,13 +10,13 @@ import { Observable, combineLatest, of } from 'rxjs'; import { switchMap } from 'rxjs/operators'; import { Option } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; /** * @description From the list of stash accounts, retrieve the list of controllers */ -export const controllers = memo((api: ApiInterfaceRx): () => Observable<[AccountId[], Option[]]> => { - return memo((): Observable<[AccountId[], Option[]]> => +export function controllers (api: ApiInterfaceRx): () => Observable<[AccountId[], Option[]]> { + return (): Observable<[AccountId[], Option[]]> => api.query.staking.validators<[AccountId[]] & Codec>().pipe( switchMap(([stashIds]): Observable<[AccountId[], Option[]]> => combineLatest([ @@ -28,6 +28,5 @@ export const controllers = memo((api: ApiInterfaceRx): () => Observable<[Account ]) ), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-derive/src/staking/info.ts b/packages/api-derive/src/staking/info.ts index 47e8ff25fd..c75bc1dac1 100644 --- a/packages/api-derive/src/staking/info.ts +++ b/packages/api-derive/src/staking/info.ts @@ -18,7 +18,7 @@ import { isUndefined } from '@polkadot/util'; import { bestNumber } from '../chain/bestNumber'; import { eraLength } from '../session/eraLength'; import { recentlyOffline } from './recentlyOffline'; -import { drr, memo } from '../util'; +import { drr } from '../util'; interface Calls { bestNumberCall (): Observable; @@ -224,18 +224,18 @@ function retrieveV2 (api: ApiInterfaceRx, calls: Calls, stashId: AccountId): Obs /** * @description From a stash, retrieve the controllerId and fill in all the relevant staking details */ -export const info = memo((api: ApiInterfaceRx): (_accountId: Uint8Array | string) => Observable => { +export function info (api: ApiInterfaceRx): (_accountId: Uint8Array | string) => Observable { const calls = { eraLengthCall: eraLength(api), bestNumberCall: bestNumber(api), recentlyOfflineCall: recentlyOffline(api) }; - return memo((_accountId: Uint8Array | string): Observable => { + return (_accountId: Uint8Array | string): Observable => { const accountId = createType('AccountId', _accountId); return api.consts.session ? retrieveV2(api, calls, accountId) : retrieveV1(api, calls, accountId); - }); -}, true); + }; +} diff --git a/packages/api-derive/src/staking/infoStash.ts b/packages/api-derive/src/staking/infoStash.ts index 0dee1fda17..d5ae594c4e 100644 --- a/packages/api-derive/src/staking/infoStash.ts +++ b/packages/api-derive/src/staking/infoStash.ts @@ -11,7 +11,7 @@ import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { Option, Vec } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; // NOTE Unused ATM, preparing for V2-only @@ -52,15 +52,14 @@ function retrieveV2 (api: ApiInterfaceRx, stashId: AccountId): Observable Observable => { - return memo((stashId: AccountId): Observable => { - return ( - api.consts.session - ? retrieveV2(api, stashId) - : retrieveV1(api, stashId) - ).pipe( +export function infoStash (api: ApiInterfaceRx): (stashId: AccountId) => Observable { + const query = api.consts.session + ? retrieveV2 + : retrieveV1; + + return (stashId: AccountId): Observable => + query(api, stashId).pipe( map((result): DerivedStakingStash => parse(stashId, result)), drr() ); - }); -}, true); +} diff --git a/packages/api-derive/src/staking/overview.ts b/packages/api-derive/src/staking/overview.ts index 116101cdfd..9a8dcba7b2 100644 --- a/packages/api-derive/src/staking/overview.ts +++ b/packages/api-derive/src/staking/overview.ts @@ -10,16 +10,16 @@ import { Observable, combineLatest, of } from 'rxjs'; import { map, switchMap } from 'rxjs/operators'; import { createType, Vec } from '@polkadot/types'; -import { drr, memo } from '../util'; +import { drr } from '../util'; import { indexes as sessionIndexes } from '../session'; /** * @description Retrieve the staking overview, including elected and points earned */ -export const overview = memo((api: ApiInterfaceRx): () => Observable => { +export function overview (api: ApiInterfaceRx): () => Observable { const sessionIndexesCall = sessionIndexes(api); - return memo((): Observable => + return (): Observable => combineLatest([ sessionIndexesCall(), api.queryMulti<[Vec, Vec]>([ @@ -40,6 +40,5 @@ export const overview = memo((api: ApiInterfaceRx): () => Observable Observable => { - return memo((): Observable => +export function recentlyOffline (api: ApiInterfaceRx): () => Observable { + return (): Observable => ( // TODO recentlyOffline has been dropped for 2.x and replaced, figure out the // replacement as actually use and implement it @@ -46,6 +46,5 @@ export const recentlyOffline = memo((api: ApiInterfaceRx): () => Observable Observable => { +export function validators (api: ApiInterfaceRx): () => Observable { const overviewCall = overview(api); - return memo((): Observable => + return (): Observable => overviewCall().pipe( map(({ validators }): AccountId[] => validators), drr() - ) - ); -}, true); + ); +} diff --git a/packages/api-metadata/package.json b/packages/api-metadata/package.json index fa0f4ce86b..e2d6ccf6de 100644 --- a/packages/api-metadata/package.json +++ b/packages/api-metadata/package.json @@ -28,10 +28,10 @@ "dependencies": { "@babel/runtime": "^7.6.3", "@polkadot/types": "^0.96.0-beta.23", - "@polkadot/util": "^1.6.1", - "@polkadot/util-crypto": "^1.6.1" + "@polkadot/util": "^1.7.0-beta.1", + "@polkadot/util-crypto": "^1.7.0-beta.1" }, "devDependencies": { - "@polkadot/keyring": "^1.6.1" + "@polkadot/keyring": "^1.7.0-beta.1" } } diff --git a/packages/api/package.json b/packages/api/package.json index 50a35e2798..04cb6aca83 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -29,13 +29,13 @@ "@babel/runtime": "^7.6.3", "@polkadot/api-derive": "^0.96.0-beta.23", "@polkadot/api-metadata": "^0.96.0-beta.23", - "@polkadot/keyring": "^1.6.1", + "@polkadot/keyring": "^1.7.0-beta.1", "@polkadot/rpc-core": "^0.96.0-beta.23", "@polkadot/rpc-provider": "^0.96.0-beta.23", "@polkadot/types": "^0.96.0-beta.23", - "@polkadot/util-crypto": "^1.6.1" + "@polkadot/util-crypto": "^1.7.0-beta.1" }, "devDependencies": { - "@polkadot/keyring": "^1.6.1" + "@polkadot/keyring": "^1.7.0-beta.1" } } diff --git a/packages/rpc-core/package.json b/packages/rpc-core/package.json index 685d1e5ae1..9571c7e33f 100644 --- a/packages/rpc-core/package.json +++ b/packages/rpc-core/package.json @@ -30,7 +30,7 @@ "@polkadot/jsonrpc": "^0.96.0-beta.23", "@polkadot/rpc-provider": "^0.96.0-beta.23", "@polkadot/types": "^0.96.0-beta.23", - "@polkadot/util": "^1.6.1", + "@polkadot/util": "^1.7.0-beta.1", "rxjs": "^6.5.3" } } diff --git a/packages/rpc-provider/package.json b/packages/rpc-provider/package.json index bc6d87e385..596f916781 100644 --- a/packages/rpc-provider/package.json +++ b/packages/rpc-provider/package.json @@ -28,15 +28,15 @@ "dependencies": { "@babel/runtime": "^7.6.3", "@polkadot/api-metadata": "^0.96.0-beta.23", - "@polkadot/util": "^1.6.1", - "@polkadot/util-crypto": "^1.6.1", + "@polkadot/util": "^1.7.0-beta.1", + "@polkadot/util-crypto": "^1.7.0-beta.1", "@types/nock": "^11.1.0", "eventemitter3": "^4.0.0", "isomorphic-fetch": "^2.2.1", "websocket": "^1.0.30" }, "devDependencies": { - "@polkadot/keyring": "^1.6.1", + "@polkadot/keyring": "^1.7.0-beta.1", "mock-socket": "^9.0.2", "nock": "^11.4.0" } diff --git a/packages/types/package.json b/packages/types/package.json index d6ffc3659a..c36a144016 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.6.3", - "@polkadot/util": "^1.6.1", - "@polkadot/util-crypto": "^1.6.1", + "@polkadot/util": "^1.7.0-beta.1", + "@polkadot/util-crypto": "^1.7.0-beta.1", "@types/memoizee": "^0.4.3", "memoizee": "^0.4.14" }, "devDependencies": { - "@polkadot/keyring": "^1.6.1" + "@polkadot/keyring": "^1.7.0-beta.1" } } diff --git a/yarn.lock b/yarn.lock index 7a41b39f40..cd90862ab6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1835,14 +1835,14 @@ typescript "^3.6.4" vuepress "^1.2.0" -"@polkadot/keyring@^1.6.1": - version "1.6.1" - resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-1.6.1.tgz#35966afba142b647b31767e3a349652947c57a90" - integrity sha512-ortPbweoaANKTKZR0JDbO796U6B3JGjj87yZD+ghlFRUWjMjlbP+LOWnfNyXHcI87yxNC23nK3YDv1KCl0eDUQ== +"@polkadot/keyring@^1.7.0-beta.1": + version "1.7.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/keyring/-/keyring-1.7.0-beta.1.tgz#b57e006b0233d5ec7630876b1bc282c63aceab37" + integrity sha512-Twh21/kDHy6duT7PCeMKQv/rw0oHD/qSs6Hu3VYTItGXjtQqTntYYT0aRDfY5n3LHJl5uAHfDiqJBm3pCUhgxg== dependencies: "@babel/runtime" "^7.6.3" - "@polkadot/util" "^1.6.1" - "@polkadot/util-crypto" "^1.6.1" + "@polkadot/util" "^1.7.0-beta.1" + "@polkadot/util-crypto" "^1.7.0-beta.1" "@polkadot/ts@^0.1.83": version "0.1.83" @@ -1851,13 +1851,13 @@ dependencies: "@types/chrome" "^0.0.91" -"@polkadot/util-crypto@^1.6.1": - version "1.6.1" - resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-1.6.1.tgz#6d924c5eaecbf98f971da1aac69fb60b17a4bf55" - integrity sha512-Dbo5qsIGKO82HpkysFKh9GDY0w6O6tX9h5HPRDy4KIaTaCo3H5QTmxit+hPU9n3PIHsxGhnyPq8q1i2wD/iWYQ== +"@polkadot/util-crypto@^1.7.0-beta.1": + version "1.7.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/util-crypto/-/util-crypto-1.7.0-beta.1.tgz#e0a6b7725b74aacad5e74524d148fa70f2aa2634" + integrity sha512-T5XW8aQLAkikLtbn4+pPhiX6F+5yz9o+3/+Fwbpd6mpfzq608fY7tZyqFKPglulRtKHRTauaqYpbqqFMGpVmRQ== dependencies: "@babel/runtime" "^7.6.3" - "@polkadot/util" "^1.6.1" + "@polkadot/util" "^1.7.0-beta.1" "@polkadot/wasm-crypto" "^0.14.1" "@types/bip39" "^2.4.2" "@types/bs58" "^4.0.0" @@ -1873,10 +1873,10 @@ tweetnacl "^1.0.1" xxhashjs "^0.2.2" -"@polkadot/util@^1.6.1": - version "1.6.1" - resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-1.6.1.tgz#8110c12a1670e564c5d6a1c19347cbb0dba8a3ce" - integrity sha512-uKRfapAXwZMcWQ24MdV+zg8jrYtidbKxJhUbq0G77Yy27d45OID8d+JcI3Q+d6d2pmC/h733iSeCqdiLYCKqMw== +"@polkadot/util@^1.7.0-beta.1": + version "1.7.0-beta.1" + resolved "https://registry.yarnpkg.com/@polkadot/util/-/util-1.7.0-beta.1.tgz#a3528b357548d7b916edded02b1d6e9db180ade7" + integrity sha512-5n0A+DgA8odmnft8bZm8o62Oly2ZmbAou3DWmu6AWrkjGrCUN1To95GBd10OwsH3sYh1iO0ZuZg8VlFJuaoKOw== dependencies: "@babel/runtime" "^7.6.3" "@types/bn.js" "^4.11.5"