s4s-packager / src /build /add-build-id-to-output-plugin.js
soiz1's picture
Upload 225 files
7aec436 verified
const RawSource = require('webpack-sources').RawSource;
const PLUGIN_NAME = 'AddBuildIDToOutputPlugin';
class AddBuildIDToOutputPlugin {
constructor (id) {
this.magic = `\n// ${id} =^..^=`;
}
apply(compiler) {
compiler.hooks.emit.tap(PLUGIN_NAME, (compilation) => {
for (const assetName of Object.keys(compilation.assets)) {
if (assetName.endsWith('.js')) {
const asset = compilation.getAsset(assetName);
const source = asset.source.source().toString();
const newSource = `${source}${this.magic}`;
compilation.updateAsset(assetName, new RawSource(newSource));
}
}
});
}
}
module.exports = AddBuildIDToOutputPlugin;