Package Exports
- gulp-piece
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (gulp-piece) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Combine your gulp transform stream into a single one. 
Combine transform actions (stream), just in buffer mode.
It could let you custom 'pack' your gulp's pipe. Even your 'packed' stream could include another one.
Install
$ npm install --save-dev gulp-pieceUsage
Just don't want too many pipe here.
var gulp = require('gulp');
var piece = require('gulp-piece');
var uglify = require('gulp-uglify');
var rev = require('gulp-rev');
gulp.src('**/*.js')
.pipe(piece([
rev(),
uglify()
]))
.pipe(gulp.dest('dist/'));
// Or, it would also work well whitout the array wrap []...
gulp.src('**/*.js')
.pipe(piece(
uglify()
rev()
))
.pipe(gulp.dest('dist/'));
Sometimes, you just want to left them in another js file, and want to invoke them in gulp code style.
task/js-process.js
var piece = require('gulp-piece');
var uglify = require('gulp-uglify');
var rev = require('gulp-rev');
module.exports = function () {
return piece(
uglify(),
rev()
);
};
gulpfile.js
var gulp = require('gulp');
var jspr = require('./task/js-process');
gulp.src('**/*.js')
.pipe(jspr())
.pipe(gulp.dest('dist/'));
Piece in piece ?
task/js-process.js
var piece = require('gulp-piece');
var uglify = require('gulp-uglify');
var filter = require('gulp-filter');
module.exports = function () {
var jsFilter = filter('**/*.js', {restore: true});
return piece(
jsFilter,
uglify(),
jsFilter.restore
);
};
task/css-process.js
var piece = require('gulp-piece');
var csso = require('gulp-csso');
var filter = require('gulp-filter');
module.exports = function () {
var cssFilter = filter('**/*.css', {restore: true});
return piece(
cssFilter,
csso(),
cssFilter.restore
);
};
task/process.js
var piece = require('gulp-piece');
var jspr = require('./task/js-process');
var csspr = require('./task/css-process');
module.exports = function () {
return piece(
jspr(),
csspr()
);
};
gulpfile.js
var gulp = require('gulp');
var process = require('./task/process');
gulp.src('**/*.(js|css)')
.pipe(process())
.pipe(gulp.dest('dist/'));
API
piece([stream...])
Returns a transform stream.
pattern
Type: array, stream
Accepts a streams array or stream-arguments.
License
MIT © Joo Wu