@strong-roots-capital/aggregating-stream
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.0 • Public • Published

    aggregating-stream Build status npm version codecov

    Transform stream that aggregates elements into larger chunks

    Install

    npm install @strong-roots-capital/aggregating-stream

    Use

    import { aggregatingStream } from '@strong-roots-capital/aggregating-stream'
     
    const source = new Readable({objectMode: true, read() {}})
     
    const aggregator = aggregatingStream(2, (chunks: number[]) => Math.max(...chunks))
     
    const sink = new Writable({
        objectMode: true,
        write(chunk: number, _: string, callback: any) {
            console.log(chunk)
            callback()
        }
    })
     
    source.pipe(aggregator).pipe(sink
     
    ;[1, 2, 3, 4, null].forEach(value => source.push(value))
    //=>2,
    //=>4

    Index

    Functions


    Functions

    aggregatingStream

    aggregatingStream<I,O>(chunksToAggregate: number, aggregate: function): Transform

    Defined in aggregating-stream.ts:17

    Aggregate specified number of received values with aggregating function and push the aggregated result.

    Type parameters:

    I

    O

    Parameters:

    Name Type Description
    chunksToAggregate number number of chunks to aggregate before each push
    aggregate function Function used to aggregate results into a single value

    Returns: Transform


    Install

    npm i @strong-roots-capital/aggregating-stream

    DownloadsWeekly Downloads

    0

    Version

    1.0.0

    License

    ISC

    Unpacked Size

    8.56 kB

    Total Files

    6

    Last publish

    Collaborators

    • amchelle
    • hamroctopus