Refactor api-promise/rx (#566)

* Use a generic abstract OnCall

* Add OnCall for Promise

* First run at fixing extrinsics

* Fix types

* Make submittable extrinsic work

* Move file

* Make derive work

* Fix types

* Only call metadata once

* Make tests pass

* Put event emitter in apirx

* Fix small bugs

* Fix tests

* Fix bug decorateStorage

* Make tests pass for tx

* Move rpc base to apirx

* Fix lint

* Fix small bugs

* Fix bug with isSubscription

* Fix codeclimate

* Revert

* Add tslint disable line

* Fix lint

* Skip e2e

* Typo

* Lint

* Re-add combinator back

* Add ._rx in Base

* Make extrinsics work

* Update derivex

* Fix bug lint

* Fix circular dep

* Fix bug e2e

* Remove useless check

* Add description comment

* Clean stuff

* Move assert to Base

* Bump version, update CHANGELOG

* Make _rx private

* Private emit
This commit is contained in:
Amaury Martiny
2019-01-16 15:42:59 +01:00
committed by Jaco Greeff
parent 38d2d06772
commit d07ed8ac38
49 changed files with 523 additions and 617 deletions
+3 -3
View File
@@ -4,7 +4,7 @@
import { Observable } from 'rxjs';
import { filter, map } from 'rxjs/operators';
import ApiRx from '@polkadot/api/rx';
import { ApiInterface$Rx } from '@polkadot/api/types';
import { BlockNumber, Header } from '@polkadot/types/index';
import { drr } from '../util/drr';
@@ -12,9 +12,9 @@ import { drr } from '../util/drr';
/**
* Get the latest block number.
*/
export function bestNumber (api: ApiRx) {
export function bestNumber (api: ApiInterface$Rx) {
return (): Observable<BlockNumber> =>
api.rpc.chain.subscribeNewHead()
(api.rpc.chain.subscribeNewHead() as Observable<Header>)
.pipe(
filter((header: Header) => header && !!header.blockNumber),
map(({ blockNumber }: Header) => blockNumber),
@@ -4,7 +4,7 @@
import { Observable } from 'rxjs';
import { filter, map } from 'rxjs/operators';
import ApiRx from '@polkadot/api/rx';
import { ApiInterface$Rx } from '@polkadot/api/types';
import { BlockNumber, Header } from '@polkadot/types/index';
import { drr } from '../util/drr';
@@ -12,9 +12,9 @@ import { drr } from '../util/drr';
/**
* Get the latest finalised block number.
*/
export function bestNumberFinalised (api: ApiRx) {
export function bestNumberFinalised (api: ApiInterface$Rx) {
return (): Observable<BlockNumber> =>
api.rpc.chain.subscribeFinalisedHeads()
(api.rpc.chain.subscribeFinalisedHeads() as Observable<Header>)
.pipe(
filter((header: Header) => header && !!header.blockNumber),
map(({ blockNumber }: Header) => blockNumber),