import { ChatController } from "./ChatController"; import { WebviewMessage } from "./models"; export class WebviewMessageRouter { constructor(private readonly controller: ChatController) {} async handle(message: WebviewMessage): Promise { switch (message.type) { case "ready": await this.controller.handleReady(); break; case "send": await this.controller.sendMessage(String(message.text || "")); break; case "clear": await this.controller.startNewSession(); break; case "menu": await this.controller.handleMenu(String(message.action || "")); break; case "set-process-version": this.controller.setProcessVersion(String(message.value || "v2")); break; default: break; } } }