steem-efficient-stream
Efficient way to stream blocks and account history from steem blockchain
Installation:
$ npm i --save steem-efficient-stream
It already includes typescript types. There is no need to install them separately.
Streaming account history
Key features of steem-efficient-stream:
- Iterate over single transactions. The library fetches next batch when it is needed.
- Join operations that belongs to the same transaction
- Maintains correct order of operations in transaction
- Joins operations of single transaction that are split across two batches: uses overlapping buffer to join them. The option
overlapDepth
specifies the max number of operations of single transaction that are spread on the edge of batches. - Unified format for transactions. Transactions streamed from block cache or from account_history are unified into single UnifiedSteemTransaction format.
There are two ways to fetch account history: via AsyncIterator or via ChainableSupplier
the AsyncIterator way
/* tslint:disable:no-console */; ;;; ;
the ChainableSupplier ways
/* tslint:disable:no-console */; ;;; chainableSupplier .chain new SimpleTaker, .catch; ;
Streaming blocks
(!) Streaming blocks is not moved from steem-wise-sql and steem-wise-core, but will be moved, merged and tested soon.