HotUpdateChunkTemplate.js 957 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. MIT License http://www.opensource.org/licenses/mit-license.php
  3. Author Tobias Koppers @sokra
  4. */
  5. "use strict";
  6. const Template = require("./Template");
  7. module.exports = class HotUpdateChunkTemplate extends Template {
  8. constructor(outputOptions) {
  9. super(outputOptions);
  10. }
  11. render(id, modules, removedModules, hash, moduleTemplate, dependencyTemplates) {
  12. const modulesSource = this.renderChunkModules({
  13. id: id,
  14. modules: modules,
  15. removedModules: removedModules
  16. }, moduleTemplate, dependencyTemplates);
  17. const core = this.applyPluginsWaterfall("modules", modulesSource, modules, removedModules, moduleTemplate, dependencyTemplates);
  18. const source = this.applyPluginsWaterfall("render", core, modules, removedModules, hash, id, moduleTemplate, dependencyTemplates);
  19. return source;
  20. }
  21. updateHash(hash) {
  22. hash.update("HotUpdateChunkTemplate");
  23. hash.update("1");
  24. this.applyPlugins("hash", hash);
  25. }
  26. };