@@ -6,8 +6,8 @@ import type {
66 ModuleRunnerHmr ,
77 ModuleRunnerOptions ,
88} from 'vite/module-runner'
9- import type { ViteDevServer } from '../../server'
109import type { DevEnvironment } from '../../server/environment'
10+ import type { ServerHMRChannel } from '../../server/hmr'
1111import { ServerHMRConnector } from './serverHmrConnector'
1212
1313/**
@@ -34,10 +34,10 @@ export interface ServerModuleRunnerOptions
3434}
3535
3636function createHMROptions (
37- server : ViteDevServer ,
37+ environment : DevEnvironment ,
3838 options : ServerModuleRunnerOptions ,
3939) {
40- if ( server . config . server . hmr === false || options . hmr === false ) {
40+ if ( environment . config . server . hmr === false || options . hmr === false ) {
4141 return false
4242 }
4343 if ( options . hmr ?. connection ) {
@@ -46,7 +46,8 @@ function createHMROptions(
4646 logger : options . hmr . logger ,
4747 }
4848 }
49- const connection = new ServerHMRConnector ( server )
49+ if ( ! ( 'api' in environment . hot ) ) return false
50+ const connection = new ServerHMRConnector ( environment . hot as ServerHMRChannel )
5051 return {
5152 connection,
5253 logger : options . hmr ?. logger ,
@@ -82,11 +83,10 @@ function resolveSourceMapOptions(options: ServerModuleRunnerOptions) {
8283 * @experimental
8384 */
8485export function createServerModuleRunner (
85- server : ViteDevServer ,
8686 environment : DevEnvironment ,
8787 options : ServerModuleRunnerOptions = { } ,
8888) : ModuleRunner {
89- const hmr = createHMROptions ( server , options )
89+ const hmr = createHMROptions ( environment , options )
9090 return new ModuleRunner (
9191 {
9292 ...options ,
0 commit comments