@nuintun/switch-stream

A stream condition for switch/case.

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
10Feb 27, 2019Oct 16, 2015Minified + gzip package size for @nuintun/switch-stream in KB

Readme

switch-stream

A stream condition for switch/case

NPM Version Download Status Dependencies

Usage

switch.png

const switchStream = require('switch-stream');

process.in
  .pipe(
    switchStream(
      buf => {
        if (buf > 0) {
          return 'case1';
        } else if (buf < 0) {
          return 'case2';
        }
      },
      {
        case1: streamA,
        case2: streamB
      }
    )
  )
  .pipe(process.stdout);

If buf great than 0, then pipe to streamA. If buf less than 0, then pipe to streamB. Otherwise buf equal to 0, pipe to output directly.

API

switchStream(switch, cases, options)

  • switch

    Switch condition determine which case will be choose. Switch can be any type, if switch is function, it will be called.

  • cases

    Choose which stream will be piped to by key switch return.

  • options The stream options settings.

Reference

Modify from popomore's stream-switch, but use stream3.

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.