Package Exports
- vinyl-transform
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 (vinyl-transform) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
vinyl-transform 

vinyl-transform wraps standard text transform streams so you can write fewer gulp plugins. Fulfills a similar use case to vinyl-map and vinyl-source-stream.
This module lets you take your standard text transform streams from npm, (e.g. envify), and use them in a vinyl pipeline. It'll transparently take care of handling both buffered and streaming vinyl instances for you too.
Usage
createStream(transformFn)
Creates a vinyl transform stream. transformFn(filename) is a function which
takes the file's path and returns a text transform stream. If you've used
browserify's
transform API
you'll recognise this pattern: it's effectively the same API used here.
Here's an example of using this to... uppercase a bunch of files:
var transform = require('vinyl-tranform')
var map = require('map-stream')
var gulp = require('gulp')
gulp.task('uppercase', function() {
var uppercaser = transform(function(filename) {
return map(function(chunk, next) {
return next(null, chunk.toString().toUpperCase())
})
})
gulp.src('*.txt')
.pipe(uppercaser)
.pipe(gulp.dest('dist/'))
})And convert .gif images into .webm videos:
var createGIFStream = require('gif-video')
var transform = require('vinyl-transform')
var gulp = require('gulp')
gulp.task('gif-to-webm', function() {
gulp.src('images/*.gif')
.pipe(transform(createGIFStream))
.pipe(gulp.dest('dist/videos/'))
})Or inject scripts into your HTML:
var transform = require('vinyl-transform')
var inject = require('script-injector')
var gulp = require('gulp')
gulp.task('pages', function() {
var injector = transform(function() {
return inject(function() {
console.log('this script wasn\'t here before')
})
})
gulp.src('*.html')
.pipe(injector)
.pipe(gulp.dest('dist/'))
})License
MIT. See LICENSE.md for details.
