map-stream

construct pipes of streams of events

Usage no npm install needed!

<script type="module">
  import mapStream from 'https://cdn.skypack.dev/map-stream';
</script>

README

MapStream

Refactored out of event-stream

map (asyncFunction[, options])

Create a through stream from an asyncronous function.

var map = require('map-stream')

map(function (data, callback) {
  //transform data
  // ...
  callback(null, data)
})

Each map MUST call the callback. It may callback with data, with an error or with no arguments,

  • callback() drop this data.
    this makes the map work like filter,
    note:callback(null,null) is not the same, and will emit null

  • callback(null, newData) turn data into newData

  • callback(error) emit an error for this item.

Note: if a callback is not called, map will think that it is still being processed,
every call must be answered or the stream will not know when to end.

Also, if the callback is called more than once, every call but the first will be ignored.

Options

  • failures - boolean continue mapping even if error occured. On error map-stream will emit failure event. (default: false)