@@ -135,7 +135,7 @@ export class DevEnvironment extends BaseEnvironment {
135
135
this . hot . on (
136
136
'vite:invalidate' ,
137
137
async ( { path, message, firstInvalidatedBy } ) => {
138
- invalidateModule ( this , {
138
+ this . invalidateModule ( {
139
139
path,
140
140
message,
141
141
firstInvalidatedBy,
@@ -232,6 +232,36 @@ export class DevEnvironment extends BaseEnvironment {
232
232
}
233
233
}
234
234
235
+ private invalidateModule ( m : {
236
+ path : string
237
+ message ?: string
238
+ firstInvalidatedBy : string
239
+ } ) : void {
240
+ const mod = this . moduleGraph . urlToModuleMap . get ( m . path )
241
+ if (
242
+ mod &&
243
+ mod . isSelfAccepting &&
244
+ mod . lastHMRTimestamp > 0 &&
245
+ ! mod . lastHMRInvalidationReceived
246
+ ) {
247
+ mod . lastHMRInvalidationReceived = true
248
+ this . logger . info (
249
+ colors . yellow ( `hmr invalidate ` ) +
250
+ colors . dim ( m . path ) +
251
+ ( m . message ? ` ${ m . message } ` : '' ) ,
252
+ { timestamp : true } ,
253
+ )
254
+ const file = getShortName ( mod . file ! , this . config . root )
255
+ updateModules (
256
+ this ,
257
+ file ,
258
+ [ ...mod . importers ] ,
259
+ mod . lastHMRTimestamp ,
260
+ m . firstInvalidatedBy ,
261
+ )
262
+ }
263
+ }
264
+
235
265
async close ( ) : Promise < void > {
236
266
this . _closing = true
237
267
@@ -273,39 +303,6 @@ export class DevEnvironment extends BaseEnvironment {
273
303
}
274
304
}
275
305
276
- function invalidateModule (
277
- environment : DevEnvironment ,
278
- m : {
279
- path : string
280
- message ?: string
281
- firstInvalidatedBy : string
282
- } ,
283
- ) {
284
- const mod = environment . moduleGraph . urlToModuleMap . get ( m . path )
285
- if (
286
- mod &&
287
- mod . isSelfAccepting &&
288
- mod . lastHMRTimestamp > 0 &&
289
- ! mod . lastHMRInvalidationReceived
290
- ) {
291
- mod . lastHMRInvalidationReceived = true
292
- environment . logger . info (
293
- colors . yellow ( `hmr invalidate ` ) +
294
- colors . dim ( m . path ) +
295
- ( m . message ? ` ${ m . message } ` : '' ) ,
296
- { timestamp : true } ,
297
- )
298
- const file = getShortName ( mod . file ! , environment . config . root )
299
- updateModules (
300
- environment ,
301
- file ,
302
- [ ...mod . importers ] ,
303
- mod . lastHMRTimestamp ,
304
- m . firstInvalidatedBy ,
305
- )
306
- }
307
- }
308
-
309
306
const callCrawlEndIfIdleAfterMs = 50
310
307
311
308
interface CrawlEndFinder {
0 commit comments