Base plugin for iterating over an array of 'files' objects in a declarative configuration and writing them to the file system.
Install with npm:
$ npm install --save base-files-each
var files = require('base-files-each');
var expand = require('expand-files');
var Base = require('base');
var pipeline = require('base-pipeline');
var each = require('base-files-each');
var vfs = require('base-fs');
var app = new Base();
app.use(pipeline());
app.use(each());
app.use(vfs());
// register pipeline plugins using the `.plugin` method
app.plugin('foo', function(options) {
return through.obj(function(file, enc, next) {
// do plugin stuff
next(null, file);
});
});
// use `expand-files` to expand a declarative configuration object
config = expand({
cwd: fixtures,
src: '*.txt',
dest: actual
});
// pass the config object to `.each()`
app.each(config)
.on('end', function() {
console.log('done!');
});
Iterate over an array of files objects in a declarative configuration, optionally run them through a plugin pipline, then write the files to the file system.
Params
config {Object}cb {Function}: Optional callback function. If callback is not passed, .eachStream is called and a stream is returned.Example
var expand = require('expand-files');
var config = expand.config({src: '*', dest: 'foo/'});
generate.each({files: [config]}, function(err) {
if (err) throw err;
console.log('done!');
});
// or
generate.each({files: [config]})
.on('end', function() {
console.log('done!');
});
Generate files configurations in series.
Params
config {Object}cb {Function}Example
var expand = require('expand-files');
var config = expand.config({src: '*', dest: 'foo/'});
generate.eachSeries({files: [config]}, function(err) {
if (err) throw err;
console.log('done!');
});
Generate files configurations in parallel.
Params
config {Object}returns {Stream}: returns stream with all process filesExample
var expand = require('expand-files');
var config = expand.config({src: '*', dest: 'foo/'});
generate.eachStream({files: [config]}, options)
.on('error', console.error)
.on('end', function() {
console.log('done!');
});
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
(This document was generated by verb-generate-readme (a verb generator), please don't edit the readme directly. Any changes to the readme must be made in .verb.md.)
To generate the readme and API documentation with verb:
$ npm install -g verb verb-generate-readme && verb
Install dev dependencies:
$ npm install -d && npm test
Jon Schlinkert
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v0.9.0, on July 18, 2016.