From 1f8637ce0b16411689f3672bc5918c8946b32820 Mon Sep 17 00:00:00 2001 From: "alexander.akait" Date: Fri, 5 May 2023 16:28:57 +0300 Subject: [PATCH] fix: crash with importModule when CSS enabled --- lib/css/CssModulesPlugin.js | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/lib/css/CssModulesPlugin.js b/lib/css/CssModulesPlugin.js index 799cd432b..6645aef58 100644 --- a/lib/css/CssModulesPlugin.js +++ b/lib/css/CssModulesPlugin.js @@ -302,12 +302,20 @@ class CssModulesPlugin { } return result; }); - const enabledChunks = new WeakSet(); + const globalChunkLoading = compilation.outputOptions.chunkLoading; + const isEnabledForChunk = chunk => { + const options = chunk.getEntryOptions(); + const chunkLoading = + options && options.chunkLoading !== undefined + ? options.chunkLoading + : globalChunkLoading; + return chunkLoading === "jsonp"; + }; + const onceForChunkSet = new WeakSet(); const handler = (chunk, set) => { - if (enabledChunks.has(chunk)) { - return; - } - enabledChunks.add(chunk); + if (onceForChunkSet.has(chunk)) return; + onceForChunkSet.add(chunk); + if (!isEnabledForChunk(chunk)) return; set.add(RuntimeGlobals.publicPath); set.add(RuntimeGlobals.getChunkCssFilename);