bower-license-webpack-plugin
v0.3.0
Published
Outputs licenses from 3rd party libraries to a file
Downloads
1
Readme
License Webpack Plugin
This webpack plugin finds all 3rd party libraries used in a webpack build whose licenses match a given regex, and outputs the licenses for each package in your webpack build directory.
Installation
npm install bower-license-webpack-plugin --save-dev
Usage
First, import the plugin into your webpack configuration:
var LicenseWebpackPlugin = require('bower-license-webpack-plugin');
The plugin requires you to specify a regular expression for licenses to match under the pattern property.
To use the plugin, simply add it to your webpack config's plugin list.
The below example matches MIT, ISC, and any license starting with BSD.
new LicenseWebpackPlugin({
pattern: /^(MIT|ISC|BSD.*)$/
});
Below are all options that can be passed to the plugin:
pattern
A regular expression of license names to match. The license is read from thelicense
property inpackage.json
for each module used in your webpack output.filename
This is the output filename which gets written your webpack build directory. The default is3rdpartylicenses.txt
.includeUndefined
whether include packages without license or not. The default isfalse
addLicenseText
whether include license text to output file or not. The default istrue
addUrl
whether include url to repository to output file or not. The default isfalse
licenseFilenames
A list of license filenames to match, in order of priority. The default is['LICENSE', 'LICENSE.md', 'LICENSE.txt', 'license', 'license.md', 'license.txt']
licenseTemplateDir
Directory containing .txt files corresponding to SPDX license identifiers. This directory is referred to when the plugin cannot find a license file per thelicenseFilenames
property. Typically you would clone the SPDX master files repository and use the resulting directory containing all the various license.txt
as thelicenseTemplateDir
for the plugin.licenseOverrides
An object whose keys are module names and values are filenames to use for the license file. Used when you want to override a license file for a particular module.suppressErrors
(default:false
) Set totrue
to avoid having the plugin write error messages to the console
If a license file cannot be found and includeUndefined
property is set to false
,
the plugin will write whatever the license
property contains in the module's package.json
and print an error.