Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 0 additions & 40 deletions packages/vite/src/node/server/hmr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1140,43 +1140,3 @@ export function createServerHotChannel(): ServerHotChannel {
},
}
}

/** @deprecated use `environment.hot` instead */
export interface HotBroadcaster extends NormalizedHotChannel {
readonly channels: NormalizedHotChannel[]
/**
* A noop.
* @deprecated
*/
addChannel(channel: HotChannel): HotBroadcaster
close(): Promise<unknown[]>
}

export function createDeprecatedHotBroadcaster(
ws: NormalizedHotChannel,
): HotBroadcaster {
const broadcaster: HotBroadcaster = {
on: ws.on,
off: ws.off,
listen: ws.listen,
send: ws.send,
setInvokeHandler: ws.setInvokeHandler,
handleInvoke: async () => ({
error: {
name: 'TransportError',
message: 'handleInvoke not implemented',
stack: new Error().stack,
},
}),
get channels() {
return [ws]
},
addChannel() {
return broadcaster
},
close() {
return Promise.all(broadcaster.channels.map((channel) => channel.close()))
},
}
return broadcaster
}
18 changes: 6 additions & 12 deletions packages/vite/src/node/server/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -87,12 +87,8 @@ import { ModuleGraph } from './mixedModuleGraph'
import type { ModuleNode } from './mixedModuleGraph'
import { notFoundMiddleware } from './middlewares/notFound'
import { buildErrorMessage, errorMiddleware } from './middlewares/error'
import type { HmrOptions, HotBroadcaster } from './hmr'
import {
createDeprecatedHotBroadcaster,
handleHMRUpdate,
updateModules,
} from './hmr'
import type { HmrOptions, NormalizedHotChannel } from './hmr'
import { handleHMRUpdate, updateModules } from './hmr'
import { openBrowser as _openBrowser } from './openBrowser'
import type { TransformOptions, TransformResult } from './transformRequest'
import { transformRequest } from './transformRequest'
Expand Down Expand Up @@ -278,12 +274,10 @@ export interface ViteDevServer {
*/
ws: WebSocketServer
/**
* HMR broadcaster that can be used to send custom HMR messages to the client
*
* Always sends a message to at least a WebSocket client. Any third party can
* add a channel to the broadcaster to process messages
* An alias to `server.environments.client.hot`.
* If you want to interact with all environments, loop over `server.environments`.
*/
hot: HotBroadcaster
hot: NormalizedHotChannel
/**
* Rollup plugin container that can run plugin hooks on a given file
*/
Expand Down Expand Up @@ -567,7 +561,7 @@ export async function _createServer(
httpServer,
watcher,
ws,
hot: createDeprecatedHotBroadcaster(ws),
hot: ws,

environments,
pluginContainer,
Expand Down