27 lines
1.1 KiB
JavaScript
27 lines
1.1 KiB
JavaScript
/**
|
|
* A Browserify plugin that hooks in to the Browserify build pipeline and injects
|
|
* your icons and a tag as a require()-able module.
|
|
*
|
|
* Originally I wanted to find a way to just have Babel shove this in, but I
|
|
* couldn't figure out a way to do it cleanly so this works.
|
|
*
|
|
* Note: you almost never need to call this yourself; you really just wanna pass
|
|
* it to Browserify instead. See the full documentation for more details.
|
|
*
|
|
* @param {Object} browserify An instance of Browserify for this to hook into.
|
|
* @param {Object} opts Options for the icon packer instance itself.
|
|
* @returns {Object} browserify The instance being operated on.
|
|
*/
|
|
module.exports = function(browserify, opts) {
|
|
this.update(opts);
|
|
|
|
var startListeningToThisCompleteMessOfALibraryAgain = function() {
|
|
browserify.pipeline.get('pack').unshift(this.compileForBrowserify());
|
|
}.bind(this);
|
|
|
|
browserify.external('react-iconpack');
|
|
browserify.external('react-iconpack-icons');
|
|
browserify.on('reset', startListeningToThisCompleteMessOfALibraryAgain);
|
|
startListeningToThisCompleteMessOfALibraryAgain();
|
|
return browserify;
|
|
};
|