gulp-multinject
v0.1.0
Published
Inject scripts, stylesheets and more into templates and htmls, with support for namespaces
Downloads
75
Readme
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 followingtemplateMap
: 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 injectionurlPrefix
:String
. Defaults to"/"
. A string to prepend to the injected file url.relative
:Boolean
. Defaults tofalse
. If true the injected path will be relative to the file it is injected into.defaultExtension
:String
. Defaults tonull
. 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