* Don't log full error In `txwrapper` we can't always know if a payload is a signing payload or a signed tx so we first try one and then the other. When the former fails users get a scary-looking error. If upstream logs the error there's little we can do about it lest we [monkey patch `console.error`](https://github.com/paritytech/txwrapper-core/pull/22/files#diff-ea2d1c5845dd0e2fb9814e98a3464c2c63a43922983391e98fe9c20c328e979cR55) which is nasty af. Hence this PR that removes the log here so that downstream can choose what to do with the error message. * Add UnsafeOptions to let callers decide if they want errors logged or not * Update packages/api-contract/src/util.ts Co-authored-by: Jaco Greeff <jacogr@gmail.com> * Update packages/rpc-core/src/index.ts Co-authored-by: Jaco Greeff <jacogr@gmail.com> * Update packages/rpc-core/src/index.ts Co-authored-by: Jaco Greeff <jacogr@gmail.com> * Update packages/types/src/create/createType.ts Co-authored-by: Jaco Greeff <jacogr@gmail.com> Co-authored-by: Jaco Greeff <jacogr@gmail.com>
@polkadot/rpc-core
This library provides a clean wrapper around all the methods exposed by a Polkadot network client.
Usage
Installation -
yarn add @polkadot/rpc-core
Initialization -
import Rpc from '@polkadot/rpc-core';
import { WsProvider } from '@polkadot/rpc-provider/ws';
const provider = new WsProvider('http://127.0.0.1:9944');
const rpc = new Rpc(provider);
Retrieving the block header object for a given block header hash (a 0x-prefixed hex string with length of 64) -
rpc.chain
.getHeader('0x1234567890')
.subscribe(
(header) => console.log(header),
(error) => console.error('error:', error)
);
Retrieving the best block number, parent hash, state root hash, extrinsics root hash, and digest (once-off) -
rpc.chain
.getHead()
.pipe(
switchMap((headerHash) => {
return rpc.chain.getHeader(headerHash);
})
)
.subscribe(
(header) => {
console.log(`best #${header.number.toString()}`);
console.log(`parentHash: ${header.parentHash.toString()}`);
console.log(`stateRoot: ${header.stateRoot.toString()}`);
console.log(`extrinsicsRoot: ${header.extrinsicsRoot.toString()}`);
console.log(`digest: ${header.digest.toString()}`);
},
(error) => {
console.error('error:', error);
}
);
Retrieving best header via subscription -
api.chain
rpc
.subscribeNewHeads()
.subscribe(
(header) => {
console.log(`best #${header.number}`);
},
(error) => {
console.error('error subscribing:', error);
}
);