WebpackAssetManager.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var webpack_sources_1 = require("webpack-sources");
  4. var WebpackAssetManager = /** @class */ (function () {
  5. function WebpackAssetManager(outputFilename, licensesRenderer) {
  6. this.outputFilename = outputFilename;
  7. this.licensesRenderer = licensesRenderer;
  8. }
  9. WebpackAssetManager.prototype.writeChunkLicenses = function (modules, compilation, chunk) {
  10. var text = this.licensesRenderer.renderLicenses(modules);
  11. if (text && text.trim()) {
  12. var filename = compilation.getPath(this.outputFilename, { chunk: chunk });
  13. compilation.assets[filename] = new webpack_sources_1.RawSource(text);
  14. }
  15. };
  16. WebpackAssetManager.prototype.writeChunkBanners = function (modules, compilation, chunk) {
  17. var filename = compilation.getPath(this.outputFilename, { chunk: chunk });
  18. var text = this.licensesRenderer.renderBanner(filename, modules);
  19. if (text && text.trim()) {
  20. chunk.files
  21. .filter(function (file) { return /\.js$/.test(file); })
  22. .forEach(function (file) {
  23. compilation.assets[file] = new webpack_sources_1.ConcatSource(text, compilation.assets[file]);
  24. });
  25. }
  26. };
  27. WebpackAssetManager.prototype.writeAllLicenses = function (modules, compilation) {
  28. var text = this.licensesRenderer.renderLicenses(modules);
  29. if (text) {
  30. compilation.assets[this.outputFilename] = new webpack_sources_1.RawSource(text);
  31. }
  32. };
  33. return WebpackAssetManager;
  34. }());
  35. exports.WebpackAssetManager = WebpackAssetManager;