@cita/observables

Observable based [CITA RPC](https://cryptape.github.io/cita/usage-guide/rpc/) toolkit

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
10Aug 14, 2018Apr 3, 2018Minified + gzip package size for @cita/observables in KB

Readme

Build Status npm npm type definitions npm

CITA-Observables

Observable based CITA RPC toolkit

Features

  • Supports Observable API

Installing

$ yarn add @cita/observables

Example

import CITAObservables from 'cita-observables'

const SERVER = 'localhost:1337'
const INTERVAL = 10
const RESERVED_RECORDS = 10

const citaObservables = new CITAObservables({
  server: SERVER,
  interval: INTERVAL,
  reservedRecords: RESERVED_RECORDS,
})

/**
 * @function peerCount
 * @description subscribe to the count of peer
 * @param {string} interval - interval of observable
 * @param {boolean} observed - switch of observable, default to true, observing the peerCount
 * @return {string} count - peer count
 */
citaObservables.peerCount(INTERVAL).subscribe(count => {
  console.log(count)
})

/**
 * @function newBlockNumber
 * @description subscribe to the latest block number
 * @param {string} interval - interval of observable
 * @param {boolean} observed - switch of observable, default to true, observing the new block number
 * @return {string} blockNumber - block number
 */
citaObservables.newBlockNumber(INTERVAL).subscribe(blockNumber => {
  console.log(blockNumber)
})

/**
 * @function blockByNumber
 * @description request block by block number
 * @param {string} blockNumber
 * @return {object} block
 */
citaObservables.blockByNumber(blockNumber).subscribe(block => {
  console.log(block)
})

/**
 * @function newBlockByNumber
 * @description subscribe to lastest block
 * @param {string} interval - interval of observable
 * @param {boolean} observed - switch of observable, default to true, observing the new block
 * @return {object} block
 */
citaObservables.newBlockByNumber(INTERVAL).subscribe(block => {
  console.log(block)
})

/**
 * @function blockByHash
 * @description request block by block hash
 * @param {string} hash - block hash
 * @return {object} block
 */
citaObservables.blockByHash(HASH).subscribe(block => {
  console.log(block)
})

/**
 * @function newBlockByNumberSubject
 * @description subscribe to new block
 */
citaObservable.newBlockByNumberSubject.subscribe(console.log)
citaObservable.newBlockByNumberSubject.connect()

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.