stream-from-array
v1.0.0
Published
Create streams from arrays of arbitrary Javascript values like strings, functions, arrays, etc.
Downloads
61,149
Maintainers
Readme
stream-from-array
Create streams from arrays of arbitrary Javascript values like strings, functions, arrays, etc.
npm install stream-from-array --save
Usage
Stream of array of String | Buffer
s
import StreamFromArray from 'stream-from-array';
StreamFromArray(['some', ' ', 'strings'])
.pipe(process.stdout); // output: some strings
StreamFromArray([new Buffer('some') , ' mixed ', new Buffer('strings')])
.pipe(process.stdout); // output: some mixed strings
Stream of (arbitrary) Javascript Values
import StreamFromArray from 'stream-from-array';
let i = 0;
StreamFromArray.obj(['some', 42, 'mixed', 'array', () => {}])
.on('data', data => {
console.log(i++ + ': ' + typeof data);
/* outputs:
0: string
1: number
2: string
3: string
4: function
*/
});
Stream of Gulp Files
Gulp files are vinyl files:
npm install vinyl
Test some awsome Gulp plugin:
import StreamFromArray from 'stream-from-array';
import File from 'vinyl';
const hello = new File({
cwd: '/',
base: '/hello/',
path: '/hello/hello.js',
contents: new Buffer('console.log("Hello");')
});
const world = new File({
cwd: '/',
base: '/hello/',
path: '/hello/world.js',
contents: new Buffer('console.log("world!");')
});
StreamFromArray.obj([hello, world])
.pipe(someAwsomeGulpPlugin())
.on('data', file => {
console.log(file.contents.toString()); // dunno what someAwsomeGulpPlugin does :)
});
See also stream-recorder for testing gulp plugins with stream-from-array.
API
Class: StreamFromArray
StreamFromArrays are Readable streams.
new StreamFromArray(array, [options])
- array
Array
Array of arbitrary Javascript values like numbers, strings, objects, functions, ... - options
Object
passed through new Readable([options])
Note: The new
operator can be omitted.
StreamFromArray#obj(array, [options])
A convenience wrapper for new StreamFromArray(array, {objectMode: true, ...})
.
License
MIT © Michael Mayer