@@ -22,13 +22,17 @@ const CODE_GENERATION_RESULT = {
22
22
* @type WeakMap<webpack, CssModule>
23
23
*/
24
24
const cssModuleCache = new WeakMap ( ) ;
25
+ /**
26
+ * @type WeakMap<webpack, CssDependency>
27
+ */
28
+ const cssDependencyCache = new WeakMap ( ) ;
25
29
26
30
class MiniCssExtractPlugin {
27
31
static getCssModule ( webpack ) {
28
32
/**
29
33
* Prevent creation of multiple CssModule classes to allow other integrations to get the current CssModule.
30
34
*/
31
- if ( cssModuleCache . has ( webpack ) ) {
35
+ if ( cssModuleCache . has ( webpack ) ) {
32
36
return cssModuleCache . get ( webpack ) ;
33
37
}
34
38
class CssModule extends webpack . Module {
@@ -194,6 +198,12 @@ class MiniCssExtractPlugin {
194
198
}
195
199
196
200
static getCssDependency ( webpack ) {
201
+ /**
202
+ * Prevent creation of multiple CssDependency classes to allow other integrations to get the current CssDependency.
203
+ */
204
+ if ( cssDependencyCache . has ( webpack ) ) {
205
+ return cssDependencyCache . get ( webpack ) ;
206
+ }
197
207
// eslint-disable-next-line no-shadow
198
208
class CssDependency extends webpack . Dependency {
199
209
constructor (
@@ -244,6 +254,8 @@ class MiniCssExtractPlugin {
244
254
}
245
255
}
246
256
257
+ cssDependencyCache . set ( webpack , CssDependency ) ;
258
+
247
259
if (
248
260
webpack . util &&
249
261
webpack . util . serialization &&
0 commit comments