| 1234567891011121314151617181920212223242526272829303132333435363738394041 | 
							- /*
 
- 	MIT License http://www.opensource.org/licenses/mit-license.php
 
- 	Author Tobias Koppers @sokra
 
- */
 
- "use strict";
 
- module.exports = class RuntimeChunkPlugin {
 
- 	constructor(options) {
 
- 		this.options = Object.assign(
 
- 			{
 
- 				name: entrypoint => `runtime~${entrypoint.name}`
 
- 			},
 
- 			options
 
- 		);
 
- 	}
 
- 	apply(compiler) {
 
- 		compiler.hooks.thisCompilation.tap("RuntimeChunkPlugin", compilation => {
 
- 			compilation.hooks.optimizeChunksAdvanced.tap("RuntimeChunkPlugin", () => {
 
- 				for (const entrypoint of compilation.entrypoints.values()) {
 
- 					const chunk = entrypoint.getRuntimeChunk();
 
- 					let name = this.options.name;
 
- 					if (typeof name === "function") {
 
- 						name = name(entrypoint);
 
- 					}
 
- 					if (
 
- 						chunk.getNumberOfModules() > 0 ||
 
- 						!chunk.preventIntegration ||
 
- 						chunk.name !== name
 
- 					) {
 
- 						const newChunk = compilation.addChunk(name);
 
- 						newChunk.preventIntegration = true;
 
- 						entrypoint.unshiftChunk(newChunk);
 
- 						newChunk.addGroup(entrypoint);
 
- 						entrypoint.setRuntimeChunk(newChunk);
 
- 					}
 
- 				}
 
- 			});
 
- 		});
 
- 	}
 
- };
 
 
  |