UNPKG

react-router-ga

Version:

[![Downloads](https://img.shields.io/npm/dm/react-router-ga)](https://npm.im/react-router-ga) [![Version](https://img.shields.io/npm/v/react-router-ga)](https://npm.im/react-router-ga) [![License](https://img.shields.io/npm/l/react-router-ga)](https://ope

42 lines (39 loc) 1.06 kB
/* 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); } } }); }); } };