22 MIT License http://www.opensource.org/licenses/mit-license.php
33 Author Tobias Koppers @sokra
44*/
5- /** @typedef {typeof import("./Module") } Module */
6- /** @typedef {typeof import("./Chunk") } Chunk */
7- /** @typedef {typeof import("./ModuleTemplate") } ModuleTemplate */
5+ /** @typedef {import("./Module") } Module */
6+ /** @typedef {import("./Chunk") } Chunk */
7+ /** @typedef {import("./ModuleTemplate") } ModuleTemplate */
88/** @typedef {import("webpack-sources").ConcatSource } ConcatSource */
99
1010const { ConcatSource } = require ( "webpack-sources" ) ;
11+ const HotUpdateChunk = require ( "./HotUpdateChunk" ) ;
1112
1213const START_LOWERCASE_ALPHABET_CODE = "a" . charCodeAt ( 0 ) ;
1314const START_UPPERCASE_ALPHABET_CODE = "A" . charCodeAt ( 0 ) ;
@@ -204,13 +205,11 @@ class Template {
204205 return arrayOverhead < objectOverhead ? [ minId , maxId ] : false ;
205206 }
206207
207- //TODO: replace any for Chunk and ModuleTemplate types instead.
208- //https://github.com/Microsoft/TypeScript/issues/23375
209208 /**
210209 *
211- * @param {any } chunk chunk whose modules will be rendered
210+ * @param {Chunk } chunk chunk whose modules will be rendered
212211 * @param {ModuleFilterPredicate } filterFn function used to filter modules from chunk to render
213- * @param {any } moduleTemplate ModuleTemplate instance used to render modules
212+ * @param {ModuleTemplate } moduleTemplate ModuleTemplate instance used to render modules
214213 * @param {any | any[] } dependencyTemplates templates needed for each module to render dependencies
215214 * @param {string= } prefix applying prefix strings
216215 * @return {ConcatSource } rendered chunk modules in a Source object
@@ -225,7 +224,9 @@ class Template {
225224 if ( ! prefix ) prefix = "" ;
226225 var source = new ConcatSource ( ) ;
227226 const modules = chunk . getModules ( ) . filter ( filterFn ) ;
228- var removedModules = chunk . removedModules ;
227+ if ( chunk instanceof HotUpdateChunk ) {
228+ var removedModules = chunk . removedModules ;
229+ }
229230 if (
230231 modules . length === 0 &&
231232 ( ! removedModules || removedModules . length === 0 )
0 commit comments