Skip to content

mariocasciaro/gulp-multinject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status NPM version Dependency Status

gulp-multinject

Inject scripts, stylesheets and more into templates and htmls, with support for namespaces.

Install

Install with npm.

npm install --save-dev gulp-multinject

Examples

The example below will scan all the .html and .jade files and will inject the provided scripts and styles.

var gulp = require('gulp');
var gulpMultinject = require('gulp-multinject');

gulp.task('default', function () {
  gulp.src(['assets/**/*.html', 'assets/**/*.jade'])
    .pipe(gulpMultinject([
        'assets/bundle.js',
        'http://example.com/test.js',
        'assets/styles/style.css'
      ],
      'adminNamespace'
    ))
    .pipe(gulp.dest('out/'));
});

For .html files it will inject between the tags:

  <!--INJECT:adminNamespace-->
  <!--END INJECT-->

For .jade files it will inject between the tags:

  //INJECT:adminNamespace
  //END INJECT

**At the moment only .html and .jade files are supported by default, but you can override the templates using the templateMap option (or submitting a PR) **

API

gulpMultinject(injectList, namespace, options)

Create a new gulp-multinject transform stream.

Arguments

  • injectList: Array. A list of URLs or files to inject.
  • namespace: String. The namespace to use for the inject tags.
  • Options: Object|undefined. An object containing the following
    • templateMap: A map used for resolving the tag and templates to use for the injection. For an example of a template map look into the default template map
  • base : String. Defaults to "". The base directory for the injected files. It will be removed from the provided path before the injection
  • urlPrefix: String. Defaults to "/". A string to prepend to the injected file url.
  • relative: Boolean. Defaults to false. If true the injected path will be relative to the file it is injected into.
  • defaultExtension: String. Defaults to null. Sometimes if you are injecting some URLs, for example from a CDN, they don't contain an extension, in this case gulp-multinject will use this options to resolve the proper template to use for the injection.

License

MIT @ Mario Casciaro


Bitdeli Badge

About

Inject scripts, stylesheets and more into templates and htmls, with support for namespaces

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published