2.1.0 • Published 9 years ago

gulp-asset-transform v2.1.0

Weekly downloads
24
License
ISC
Repository
github
Last release
9 years ago

A fully async Usemin-like Gulp library

Inspired by gulp-usemin

##Status

BuildStatus DependencyStatus TestCoverage

##Installation

Using npm:

npm install gulp-asset-transform

##Documentation

##Examples

var at = require('gulp-asset-transform');

Each start directive is composed of a few parts, some of which are optional. The required portion

<!-- at:some_pipeline_id -->

Additionally you can include a desired filename and a tag template to use in case you don't want to match on the extension of the desired filename.

<!-- at:some_pipeline_id >> tag_template_name:sub/path/and/filename.ext -->
<!-- at:id1 >> assets/site.css -->
<link rel="stylesheet/less" type="text/css" href="less/less1.less">
<link rel="stylesheet/less" type="text/css" href="less/less2.less">
<!-- at:end -->
<!-- at:id2 >> assets/site.js -->
<script src="js/js1.js"></script>
<script src="js/js2.js"></script>
<!-- at:end -->

<!-- at:remove -->
<script src="js/less.js"></script>
<!-- at:end -->

If you use the tasks array configuration, gulp-concat is provided for you via 'concat', and the filename is parsed from the tag field.

gulp.task('build', function () {
  gulp.src('./src/client/index.html')
    .pipe(at({
      less: {
        tasks: [
          less,
          minifyCss,
          function (filename) { return concat(filename); }
        ]
      }
    }))
    .pipe(gulp.dest('build/client'));
});
gulp.task('build', function() {
	gulp.src('./src/client/index.html')
		.pipe(at({
			id2: {
				stream:function(filestream, outputFilename){
					return filestream
						.pipe(uglify())
						.pipe(concat(outputFilename)); //concat is gulp-concat
				}
			}
		}))
		.pipe(gulp.dest('build/client'));
});
<!-- at:id >> assets/site.css -->
<link rel="stylesheet/less" type="text/css" href="less/less1.less">
<link rel="stylesheet/less" type="text/css" href="less/less2.less">
<!-- at:end -->

This will use the tag template assigned to 'css'.

These can be overridden by explicitly specifying a template reference before the desired filename.

<!-- at:id >> css1:assets/site.css -->
<link rel="stylesheet/less" type="text/css" href="less/less1.less">
<link rel="stylesheet/less" type="text/css" href="less/less2.less">
<!-- at:end -->

In this case, we expect to use a tag template called 'css1'. If you specify something other than css or js, you will need to provide the tag template.

2.1.0

9 years ago

2.0.0

9 years ago

1.6.3

10 years ago

1.6.2

11 years ago

1.6.1

11 years ago

1.6.0

11 years ago

1.5.0

11 years ago

1.4.0

11 years ago

1.3.2

11 years ago

1.3.1

11 years ago

1.3.0

11 years ago

1.2.0

11 years ago

1.1.0

11 years ago

1.0.0

11 years ago