@@ -2129,6 +2129,9 @@ function vitePluginRscCss(
2129
2129
const importer = parsed . id
2130
2130
if ( this . environment . mode === 'dev' ) {
2131
2131
const result = collectCss ( server . environments . rsc ! , importer )
2132
+ for ( const file of [ importer , ...result . visitedFiles ] ) {
2133
+ this . addWatchFile ( file )
2134
+ }
2132
2135
const cssHrefs = result . hrefs . map ( ( href ) => href . slice ( 1 ) )
2133
2136
const deps = assetsURLOfDeps ( { css : cssHrefs , js : [ ] } , manager )
2134
2137
return generateResourcesCode (
@@ -2150,20 +2153,6 @@ function vitePluginRscCss(
2150
2153
}
2151
2154
}
2152
2155
} ,
2153
- hotUpdate ( ctx ) {
2154
- if ( this . environment . name === 'rsc' ) {
2155
- const { server } = manager
2156
- const mods = collectModuleDependents ( ctx . modules )
2157
- for ( const mod of mods ) {
2158
- if ( mod . id ) {
2159
- invalidteModuleById (
2160
- server . environments . rsc ! ,
2161
- `\0` + toCssVirtual ( { id : mod . id , type : 'rsc' } ) ,
2162
- )
2163
- }
2164
- }
2165
- }
2166
- } ,
2167
2156
} ,
2168
2157
createVirtualPlugin (
2169
2158
'vite-rsc/remove-duplicate-server-css' ,
@@ -2198,29 +2187,6 @@ export default function RemoveDuplicateServerCss() {
2198
2187
]
2199
2188
}
2200
2189
2201
- function invalidteModuleById ( environment : DevEnvironment , id : string ) {
2202
- const mod = environment . moduleGraph . getModuleById ( id )
2203
- if ( mod ) {
2204
- environment . moduleGraph . invalidateModule ( mod )
2205
- }
2206
- return mod
2207
- }
2208
-
2209
- function collectModuleDependents ( mods : EnvironmentModuleNode [ ] ) {
2210
- const visited = new Set < EnvironmentModuleNode > ( )
2211
- function recurse ( mod : EnvironmentModuleNode ) {
2212
- if ( visited . has ( mod ) ) return
2213
- visited . add ( mod )
2214
- for ( const importer of mod . importers ) {
2215
- recurse ( importer )
2216
- }
2217
- }
2218
- for ( const mod of mods ) {
2219
- recurse ( mod )
2220
- }
2221
- return [ ...visited ]
2222
- }
2223
-
2224
2190
function generateResourcesCode ( depsCode : string , manager : RscPluginManager ) {
2225
2191
const ResourcesFn = (
2226
2192
React : typeof import ( 'react' ) ,
0 commit comments