@bundles/bundles-banner
v0.0.4
Published
A bundler plugin for Bundles which adds a comment banner to a file's content.
Downloads
2
Maintainers
Readme
Bundles Banner Bundler
This is a bundler plugin for use with Bundles. bundles-banner
prepends a file banner to the content for specified files.
Environment support
| Node | CLI | ES Module | Browser | UMD | | :--: | :-: | :-------: | :-----: | :-: | | ✓ | ✓ | ✓ | x | x |
Install
Make sure Bundles is installed.
npm install @bundles/bundles-banner -D
Usage
See configuring Bundles for how to configure Bundles and bundlers.
Configuration
The following properties are available in bundler.options
:
include
{String[]|Function} (['.js', '.css']
) Determines whether filepath should include a banner. If String Array matches the file extension, or if a Function returnstrue
, a banner is added.prefix
{String} ('/*! '
) Banner prefix.suffix
{String} (' */'
) Banner suffix.metadata
{String[]|Array[]|Function|Function[]} (['author', 'reference']
) Metadata to add to banner. Each item in the Array represents a parameter name, and the value of the parameter. Each item can be a String, an Array where item[0] is the parameter's name and item[1] is the value, or a Function which returns a String or Array. See example below.joinWith
{String} (' | '
) Character(s) to joinmetadata
with.paramNameChar
{String} ('@'
) Character(s) to prepend parameter name with.
Example
const bundle = {
input: [...],
bundlers: [{
run: '@bundles/bundles-banner',
include: ['.js'],
// Metadata can be String, Array, or Function.
metadata: ['author', ['my-param', 'This is my param.', (file) => {
if (file.data.myProp) return ['custom-param', 'Value is ' + file.data.myProp]
return false
}]],
joinWith: ' - '
}]
}
Assuming the following data:
author: Snoopy
myProp: true
the above example will return:
/*! @author Snoopy - @my-param This is my param. - @custom-param Value is true */